cask "zulu@21" do arch arm: "aarch64", intel: "x64" version "21.0.7,21.42.19" sha256 arm: "27b304e85b0b7aabdecca3b9d265f4b4b83281065ecf020a160c8a5de325d1b5", intel: "f228def4177675a78b4687b52651f4e09251b8da8c44f4dcc754c1c023abb64d" url "https://cdn.azul.com/zulu/bin/zulu#{version.csv.second}-ca-jdk#{version.csv.first}-macosx_#{arch}.dmg", referer: "https://www.azul.com/downloads/" name "Azul Zulu Java Standard Edition Development Kit" desc "OpenJDK distribution from Azul" homepage "https://www.azul.com/downloads/" livecheck do url "https://api.azul.com/metadata/v1/zulu/packages?java_version=#{version.major}&os=macos&arch=#{arch}&archive_type=dmg&java_package_type=jdk&javafx_bundled=false&latest=true&release_status=ga&availability_types=ca" regex(/zulu(\d+(?:[._]\d+)*)-ca-jdk(\d+(?:\.\d+)*)-macosx_#{arch}\.dmg/i) strategy :json do |json, regex| json.map do |item| match = item["download_url"]&.match(regex) next if match.blank? "#{match[2]},#{match[1]}" end end end no_autobump! because: :requires_manual_review depends_on macos: ">= :big_sur" pkg "Double-Click to Install Azul Zulu JDK #{version.major}.pkg" uninstall pkgutil: "com.azulsystems.zulu.#{version.major}" zap trash: "~/Library/Saved Application State/com.azul.zulu.#{version.major}*.java.savedState" end