From 4a5b02661a4797708926157150b16705b432db23 Mon Sep 17 00:00:00 2001 From: "Isabell (Issy) Long" Date: Tue, 21 May 2019 07:12:09 +0100 Subject: [PATCH] [Linux] Don't prompt users to `brew cask install` MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - I tried to install `keybase`, thinking I'd get the CLI. On Linux, casks don't work, yet I was still prompted to `brew cask install keybase`. When I tried that (just to make sure), I got the "casks are only supported on MacOS" error. - This change makes it so we don't prompt people to install casks if they're on platforms other than MacOS. Before: ``` ╭─issyl0@grus /home/linuxbrew/.linuxbrew/Homebrew ‹master› ╰─ $ brew install keybase Error: No available formula with the name "keybase" Found a cask named "keybase" instead. ``` After: ``` Error: No available formula with the name "keybase" ==> Searching for a previously deleted formula (in the last month)... Warning: homebrew/core is shallow clone. To get complete history run: git -C "$(brew --repo homebrew/core)" fetch --unshallow Error: No previously deleted formula found. ==> Searching for similarly named formulae... Error: No similarly named formulae found. ==> Searching taps... ==> Searching taps on GitHub... Error: No formulae found in taps. ``` --- Library/Homebrew/extend/os/mac/missing_formula.rb | 11 +++++++++++ Library/Homebrew/missing_formula.rb | 11 +---------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/Library/Homebrew/extend/os/mac/missing_formula.rb b/Library/Homebrew/extend/os/mac/missing_formula.rb index 5e4879b728..81f71ac004 100644 --- a/Library/Homebrew/extend/os/mac/missing_formula.rb +++ b/Library/Homebrew/extend/os/mac/missing_formula.rb @@ -13,6 +13,17 @@ module Homebrew generic_blacklisted_reason(name) end end + + def cask_reason(name, silent: false, show_info: false) + return if silent + + cask = Cask::CaskLoader.load(name) + reason = +"Found a cask named \"#{name}\" instead.\n" + reason << Cask::Cmd::Info.get_info(cask) if show_info + reason.freeze + rescue Cask::CaskUnavailableError + nil + end end end end diff --git a/Library/Homebrew/missing_formula.rb b/Library/Homebrew/missing_formula.rb index 7fe246c338..27545e7c90 100644 --- a/Library/Homebrew/missing_formula.rb +++ b/Library/Homebrew/missing_formula.rb @@ -196,16 +196,7 @@ module Homebrew end end - def cask_reason(name, silent: false, show_info: false) - return if silent - - cask = Cask::CaskLoader.load(name) - reason = +"Found a cask named \"#{name}\" instead.\n" - reason << Cask::Cmd::Info.get_info(cask) if show_info - reason.freeze - rescue Cask::CaskUnavailableError - nil - end + def cask_reason(name, silent: false, show_info: false); end require "extend/os/missing_formula" end