cask "blender" do arch = Hardware::CPU.intel? ? "x64" : "arm64" version "3.0.0" url "https://download.blender.org/release/Blender#{version.major_minor}/blender-#{version}-macos-#{arch}.dmg" if Hardware::CPU.intel? sha256 "ab34d1d1d9aa728e844b78c4673483adc34c4fe0ea61d45e57a386b8a7a5cfc6" else sha256 "ef21aca34fe399c09b343da32572c5ef75fe38e7d5180d3237066ef3b20be7da" end name "Blender" desc "3D creation suite" homepage "https://www.blender.org/" livecheck do url "https://www.blender.org/download/" regex(%r{href=.*?/blender[._-]v?(\d+(?:\.\d+)+)[._-]macos[._-]#{arch}\.dmg}i) end conflicts_with cask: "homebrew/cask-versions/blender-lts" depends_on macos: ">= :high_sierra" app "Blender.app" # shim script (https://github.com/Homebrew/homebrew-cask/issues/18809) shimscript = "#{staged_path}/blender.wrapper.sh" binary shimscript, target: "blender" preflight do # make __pycache__ directories writable, otherwise uninstall fails FileUtils.chmod "u+w", Dir.glob("#{staged_path}/*.app/**/__pycache__") File.write shimscript, <<~EOS #!/bin/bash '#{appdir}/Blender.app/Contents/MacOS/Blender' "$@" EOS end zap trash: [ "~/Library/Application Support/Blender", "~/Library/Saved Application State/org.blenderfoundation.blender.savedState", ] end