homebrew-cask/Casks/v/virtualbox.rb

75 lines
2.4 KiB
Ruby

cask "virtualbox" do
version "7.0.18,162988"
sha256 "496002f5d9b4280ffaec9269eeae97b301c3cb30ec569a904d430808cd72c7e2"
url "https://download.virtualbox.org/virtualbox/#{version.csv.first}/VirtualBox-#{version.csv.first}-#{version.csv.second}-OSX.dmg"
name "Oracle VirtualBox"
desc "Virtualiser for x86 hardware"
homepage "https://www.virtualbox.org/"
livecheck do
url "https://www.virtualbox.org/wiki/Downloads"
strategy :page_match do |page|
match = page.match(/href=.*?VirtualBox[._-]v?(\d+(?:\.\d+)+)[._-](\d+)[._-]OSX.dmg/)
next if match.blank?
"#{match[1]},#{match[2]}"
end
end
conflicts_with cask: [
"virtualbox@6",
"virtualbox@beta",
]
depends_on macos: ">= :catalina"
depends_on arch: :x86_64
pkg "VirtualBox.pkg",
choices: [
{
"choiceIdentifier" => "choiceVBoxKEXTs",
"choiceAttribute" => "selected",
"attributeSetting" => 1,
},
{
"choiceIdentifier" => "choiceVBox",
"choiceAttribute" => "selected",
"attributeSetting" => 1,
},
{
"choiceIdentifier" => "choiceVBoxCLI",
"choiceAttribute" => "selected",
"attributeSetting" => 1,
},
{
"choiceIdentifier" => "choiceOSXFuseCore",
"choiceAttribute" => "selected",
"attributeSetting" => 0,
},
]
postflight do
# If VirtualBox is installed before `/usr/local/lib/pkgconfig` is created by Homebrew, it creates it itself
# with incorrect permissions that break other packages
# See https://github.com/Homebrew/homebrew-cask/issues/68730#issuecomment-534363026
set_ownership "/usr/local/lib/pkgconfig"
end
uninstall script: {
executable: "VirtualBox_Uninstall.tool",
args: ["--unattended"],
sudo: true,
},
pkgutil: "org.virtualbox.pkg.*",
delete: "/usr/local/bin/vboximg-mount"
zap trash: [
"/Library/Application Support/VirtualBox",
"~/Library/Application Support/com.apple.sharedfilelist/com.apple.LSSharedFileList.ApplicationRecentDocuments/org.virtualbox.app.virtualbox*",
"~/Library/Preferences/org.virtualbox.app.VirtualBox*",
"~/Library/Saved Application State/org.virtualbox.app.VirtualBox*",
"~/Library/VirtualBox",
],
rmdir: "~/VirtualBox VMs"
end