homebrew-cask/Casks/k/kaleidoscope.rb

51 lines
1.9 KiB
Ruby

cask "kaleidoscope" do
version "4.2.1,4845"
sha256 "3343b340ff0e15cc047faeb665d4161f0135ebc5a45618048ef2477218c9af0c"
url "https://updates.kaleidoscope.app/v#{version.major}/prod/Kaleidoscope-#{version.csv.first}-#{version.csv.second}.app.zip"
name "Kaleidoscope"
desc "Spot and merge differences in text and image files or folders"
homepage "https://kaleidoscope.app/"
livecheck do
url "https://updates.kaleidoscope.app/v#{version.major}/prod/appcast"
regex(/Kaleidoscope[._-]v?(\d+(?:\.\d+)+)[._-](\d+)\.app\.zip/i)
strategy :page_match do |page, regex|
page.scan(regex).map { |match| "#{match[0]},#{match[1]}" }
end
end
auto_updates true
conflicts_with cask: [
"ksdiff",
"homebrew/cask-versions/kaleidoscope2",
"homebrew/cask-versions/ksdiff2",
]
depends_on macos: ">= :big_sur"
app "Kaleidoscope.app"
postflight do
contents = "#{appdir}/Kaleidoscope.app/Contents"
system_command "#{contents}/Resources/Integration/scripts/install_ksdiff",
args: ["#{contents}/MacOS", "#{HOMEBREW_PREFIX}/bin"]
end
uninstall quit: "app.kaleidoscope.v#{version.major}",
pkgutil: "app.kaleidoscope.uninstall_ksdiff"
zap trash: [
"~/Library/Application Support/app.kaleidoscope.v*",
"~/Library/Application Support/com.blackpixel.kaleidoscope",
"~/Library/Application Support/Kaleidoscope",
"~/Library/Caches/app.kaleidoscope.v*",
"~/Library/Caches/com.blackpixel.kaleidoscope",
"~/Library/Caches/com.plausiblelabs.crashreporter.data/com.blackpixel.kaleidoscope",
"~/Library/Preferences/app.kaleidoscope.v*.plist",
"~/Library/Preferences/com.blackpixel.kaleidoscope.plist",
"~/Library/Saved Application State/app.kaleidoscope.v*.savedState",
"~/Library/Saved Application State/com.blackpixel.kaleidoscope.savedState",
"~/Library/WebKit/app.kaleidoscope.v*",
]
end