diff --git a/Library/Homebrew/cmd/fetch.rb b/Library/Homebrew/cmd/fetch.rb index 3179932a26..4ba8df003f 100644 --- a/Library/Homebrew/cmd/fetch.rb +++ b/Library/Homebrew/cmd/fetch.rb @@ -166,8 +166,8 @@ module Homebrew SimulateSystem.with os: os, arch: arch do cask = Cask::CaskLoader.load(ref) - if cask.depends_on.macos&.satisfied? == false - opoo "#{cask.token}: #{cask.depends_on.macos.message(type: :cask)}" + if cask.url.nil? + opoo "Cask #{cask} is not supported on os #{os} and arch #{arch}" next end diff --git a/Library/Homebrew/dev-cmd/audit.rb b/Library/Homebrew/dev-cmd/audit.rb index ee11cb649e..698bbd309f 100644 --- a/Library/Homebrew/dev-cmd/audit.rb +++ b/Library/Homebrew/dev-cmd/audit.rb @@ -242,10 +242,17 @@ module Homebrew next [] if os == :linux SimulateSystem.with os: os, arch: arch do + simulated_cask = Cask::CaskLoader.load(path) + + if simulated_cask.url.nil? + opoo "Cask #{cask} is not supported on os #{os} and arch #{arch}" + next [] + end + odebug "Auditing Cask #{cask} on os #{os} and arch #{arch}" Cask::Auditor.audit( - Cask::CaskLoader.load(path), + simulated_cask, # For switches, we add `|| nil` so that `nil` will be passed # instead of `false` if they aren't set. # This way, we can distinguish between "not set" and "set to false".