cask "rustrover" do arch arm: "-aarch64" version "2025.1.5,251.26927.79" sha256 arm: "9386f41063a209d4634098bc14e8e63d3cf030b3f8b83524b61d99bf992905d1", intel: "320183fdab31207bf56396e97ba4c15549feec71885f5f390a70a1c1cd81ecc7" url "https://download.jetbrains.com/rustrover/RustRover-#{version.csv.first}#{arch}.dmg" name "RustRover" desc "Rust IDE" homepage "https://www.jetbrains.com/rust/" livecheck do url "https://data.services.jetbrains.com/products/releases?code=RR&latest=true&type=release" strategy :json do |json| json["RR"]&.map do |release| version = release["version"] build = release["build"] next if version.blank? || build.blank? "#{version},#{build}" end end end auto_updates true depends_on macos: ">= :high_sierra" app "RustRover.app" # shim script (https://github.com/Homebrew/homebrew-cask/issues/18809) shimscript = "#{staged_path}/rustrover.wrapper.sh" binary shimscript, target: "rustrover" preflight do File.write shimscript, <<~EOS #!/bin/sh exec '#{appdir}/RustRover.app/Contents/MacOS/rustrover' "$@" EOS end zap trash: [ "~/Library/Application Support/JetBrains/RustRover#{version.major_minor}", "~/Library/Caches/JetBrains/RustRover#{version.major_minor}", "~/Library/Logs/JetBrains/RustRover#{version.major_minor}", "~/Library/Preferences/com.jetbrains.rustrover.plist", "~/Library/Saved Application State/com.jetbrains.rustrover.savedState", ] end