49 lines
1.7 KiB
Ruby
49 lines
1.7 KiB
Ruby
cask "wezterm" do
|
|
version "20240203-110809,5046fc22"
|
|
sha256 "e77388cad55f2e9da95a220a89206a6c58f865874a629b7c3ea3c162f5692224"
|
|
|
|
url "https://github.com/wez/wezterm/releases/download/#{version.csv.first}-#{version.csv.second}/WezTerm-macos-#{version.csv.first}-#{version.csv.second}.zip",
|
|
verified: "github.com/wez/wezterm/"
|
|
name "WezTerm"
|
|
desc "GPU-accelerated cross-platform terminal emulator and multiplexer"
|
|
homepage "https://wezfurlong.org/wezterm/"
|
|
|
|
livecheck do
|
|
url :url
|
|
regex(/^(\d+(?:[.-]\d+)+)-(\h+)$/i)
|
|
strategy :github_latest do |json, regex|
|
|
json["tag_name"]&.scan(regex)&.map { |match| "#{match[0]},#{match[1]}" }
|
|
end
|
|
end
|
|
|
|
conflicts_with cask: "homebrew/cask-versions/wezterm-nightly"
|
|
|
|
app "WezTerm.app"
|
|
%w[
|
|
wezterm
|
|
wezterm-gui
|
|
wezterm-mux-server
|
|
strip-ansi-escapes
|
|
].each do |tool|
|
|
binary "#{appdir}/WezTerm.app/Contents/MacOS/#{tool}"
|
|
end
|
|
|
|
binary "WezTerm.app/Contents/Resources/shell-completion/zsh",
|
|
target: "#{HOMEBREW_PREFIX}/share/zsh/site-functions/_wezterm"
|
|
binary "WezTerm.app/Contents/Resources/shell-completion/bash",
|
|
target: "#{HOMEBREW_PREFIX}/etc/bash_completion.d/wezterm"
|
|
binary "WezTerm.app/Contents/Resources/shell-completion/fish",
|
|
target: "#{HOMEBREW_PREFIX}/share/fish/vendor_completions.d/wezterm.fish"
|
|
|
|
preflight do
|
|
# Move "WezTerm-macos-#{version}/WezTerm.app" out of the subfolder
|
|
staged_subfolder = staged_path.glob(["WezTerm-*", "wezterm-*"]).first
|
|
if staged_subfolder
|
|
FileUtils.mv(staged_subfolder/"WezTerm.app", staged_path)
|
|
FileUtils.rm_rf(staged_subfolder)
|
|
end
|
|
end
|
|
|
|
zap trash: "~/Library/Saved Application State/com.github.wez.wezterm.savedState"
|
|
end
|