cask "openvpn-connect" do arch arm: "arm64", intel: "x86_64" version "3.7.1,5558" sha256 "c5e9fd457272e5aa2c99ac6127e0437d2b385a2c066548955e215d9e0a7888e4" url "https://swupdate.openvpn.net/downloads/connect/openvpn-connect-#{version.csv.first}.#{version.csv.second}_signed.dmg" name "OpenVPN Connect client" desc "Client program for the OpenVPN Access Server" homepage "https://openvpn.net/client-connect-vpn-for-mac-os/" livecheck do url "https://openvpn.net/downloads/openvpn-connect-v#{version.major}-macos.dmg" regex(%r{/openvpn[._-]connect[._-]v?(\d+(?:\.\d+)+)\.(\d+)[._-]signed\.dmg}i) strategy :header_match do |headers, regex| match = headers["location"]&.match(regex) next if match.blank? "#{match[1]},#{match[2]}" end end pkg "OpenVPN_Connect_#{version.csv.first.dots_to_underscores}(#{version.csv.second})_#{arch}_Installer_signed.pkg" uninstall launchctl: [ "org.openvpn.client", "org.openvpn.helper", ], quit: "org.openvpn.client.app", login_item: "OpenVPN Connect", pkgutil: [ "org.openvpn.client.pkg", "org.openvpn.client_framework.pkg", "org.openvpn.client_launch.pkg", "org.openvpn.client_uninstall.pkg", "org.openvpn.helper_framework.pkg", "org.openvpn.helper_launch.pkg", ], delete: [ "/Applications/OpenVPN Connect", "/Applications/OpenVPN Connect.app", ] zap script: { executable: "security", args: ["delete-keychain", "openvpn.keychain-db"], must_succeed: false, }, trash: [ "~/Library/Application Support/OpenVPN Connect", "~/Library/Logs/OpenVPN Connect", "~/Library/Preferences/org.openvpn.client.app.helper.plist", "~/Library/Preferences/org.openvpn.client.app.plist", "~/Library/Saved Application State/org.openvpn.client.app.savedState", ] end