Homebrew / homebrew-cask

🍻 A CLI workflow for the administration of macOS applications distributed as binaries
https://brew.sh
BSD 2-Clause "Simplified" License
20.93k stars 10.71k forks source link

zoom (cask) installer launches app post-installation #95713

Closed alexreg closed 3 years ago

alexreg commented 3 years ago

General troubleshooting steps

Description of issue

The zoom (cask) installer should not auto-run Zoom after installing.

Perhaps it would make sense to use the IT installer instead of the usual one?

Command that failed

brew install --cask zoom

Output of brew doctor --verbose

==> Cask Environment Variables:
BUNDLE_PATH
CHRUBY_VERSION
GEM_HOME
GEM_PATH
HOMEBREW_CASK_OPTS
LC_ALL
PATH
RBENV_VERSION
RUBYLIB
RUBYOPT
RUBYPATH
SHELL
==> $LOAD_PATHS
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/thor-1.0.1/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/sorbet-runtime-stub-0.2.0/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/ruby-macho-2.5.0/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/rubocop-sorbet-0.5.1/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/rubocop-rspec-2.0.1/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/rubocop-rails-2.9.1/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/rubocop-performance-1.9.1/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/ruby-progressbar-1.10.1/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/rspec-wait-0.0.9/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/rspec-retry-0.6.2/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/rspec-its-1.3.0/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/ronn-0.7.3/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/rack-2.2.3/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/plist-3.5.0/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/patchelf-1.3.0/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/rainbow-3.0.0/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/mustache-1.1.1/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/mechanize-2.7.6/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/webrobots-0.1.2/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/ntlm-http-0.1.1/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/mini_portile2-2.4.0/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/net-http-digest_auth-1.4.1/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/mime-types-3.3.1/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/http-cookie-1.0.3/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/hpricot-0.8.6/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/elftools-1.1.3/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/domain_name-0.5.20190701/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/unf-0.1.4/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/simplecov_json_formatter-0.1.2/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/docile-1.3.2/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/bindata-2.4.8/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/activesupport-6.1.0/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/zeitwerk-2.4.2/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/tzinfo-2.0.3/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/i18n-1.8.5/lib
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/bundler/../ruby/2.6.0/gems/concurrent-ruby-1.1.7/lib/concurrent-ruby
/Library/Ruby/Site/2.6.0
/Library/Ruby/Site/2.6.0/universal-darwin20
/Library/Ruby/Site
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/vendor_ruby/2.6.0
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/vendor_ruby/2.6.0/universal-darwin20
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/vendor_ruby
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/universal-darwin20
/usr/local/Homebrew/Library/Homebrew
==> Homebrew Version
2.6.2-72-gfbe0910
==> macOS
11.1
==> SIP
Enabled
==> Java
1.8.0_60
==> Homebrew Cask Staging Location
/usr/local/Caskroom
==> Homebrew Cask Taps:
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask (3761 casks)
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask-versions (171 casks)
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask-drivers (167 casks)
/usr/local/Homebrew/Library/Taps/zkokaja/homebrew-brewlet (1 cask)
/usr/local/Homebrew/Library/Taps/dteoh/homebrew-sqa (1 cask)
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!

Warning: Some installed kegs have no formulae!
This means they were either deleted or installed with `brew diy`.
You should find replacements for the following formulae:
  unrar

Warning: Some installed formulae are deprecated or disabled.
You should find replacements for the following formulae:
  dep
  fondu

Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and which additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew-provided
script of the same name. We found the following "config" scripts:
  /Users/alex/.cargo/bin/cargo-install-update-config

Output of brew tap

alexreg/utilities
apjanke/ronn-ng
brewsci/bio
cjbassi/ytop
dteoh/sqa
eblot/armeabi
homebrew/cask
homebrew/cask-drivers
homebrew/cask-versions
homebrew/core
homebrew/services
sbdchd/skim
teamookla/speedtest
termapps/tap
zkokaja/brewlet
vitorgalvao commented 3 years ago

The zoom (cask) installer should not auto-run Zoom after installing.

Complain to Zoom. They’re the ones with repeating unrepentant user-hostile behaviour; we’re not the ones starting the app.

Perhaps it would make sense to use the IT installer instead of the usual one?

https://github.com/Homebrew/homebrew-cask/blob/master/Casks/zoom-for-it-admins.rb

alexreg commented 3 years ago

Hey, I'm not accusing you of anything. No need to be defensive. I was just hoping we might be able to disable this default behaviour through some setting. But yes, sounds fair to complain to Zoom!

Thanks for pointing out the zoom-for-it-admins cask.

vitorgalvao commented 3 years ago

Hey, I'm not accusing you of anything.

Yes, I know, I didn’t think you were.

No need to be defensive.

I wasn’t defensive. I pointed you to where the issue lies; that it’s one we can’t fix on our end; and that realistically you shouldn‘t hold your breath that upstream will do it.

I was just hoping we might be able to disable this default behaviour through some setting.

Maybe you can, and we have documentation on how to investigate that. But if they don’t show the option when installing manually and no one has done it by now (it’s a popular cask), it’s probably not there.

alexreg commented 3 years ago

Ah, good good. Easy to misinterpret tone (on both ends) online, of course.

I'll have a look into things. Appreciate the pointers.

alexreg commented 3 years ago

Unsurprisingly, a pretty paltry offering of choices:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
    <dict>
        <key>childItems</key>
        <array>
            <dict>
                <key>childItems</key>
                <array>
                    <dict>
                        <key>childItems</key>
                        <array/>
                        <key>choiceIdentifier</key>
                        <string>us.zoom.pkg.videomeeting</string>
                        <key>choiceIsEnabled</key>
                        <true/>
                        <key>choiceIsSelected</key>
                        <integer>1</integer>
                        <key>choiceIsVisible</key>
                        <false/>
                        <key>choiceSizeInKilobytes</key>
                        <integer>62371</integer>
                        <key>pathsOfActivePackagesInChoice</key>
                        <array>
                            <string>file://localhost/Users/alex/Downloads/Zoom.pkg#zoomus.pkg</string>
                        </array>
                    </dict>
                </array>
                <key>choiceIdentifier</key>
                <string>default</string>
                <key>choiceIsEnabled</key>
                <true/>
                <key>choiceIsSelected</key>
                <integer>1</integer>
                <key>choiceIsVisible</key>
                <true/>
                <key>choiceSizeInKilobytes</key>
                <integer>0</integer>
                <key>pathsOfActivePackagesInChoice</key>
                <array/>
            </dict>
        </array>
        <key>choiceIdentifier</key>
        <string>__ROOT_CHOICE_IDENT_SU_TITLE</string>
        <key>choiceIsEnabled</key>
        <true/>
        <key>choiceIsSelected</key>
        <integer>1</integer>
        <key>choiceIsVisible</key>
        <true/>
        <key>choiceSizeInKilobytes</key>
        <integer>0</integer>
        <key>choiceTitle</key>
        <string>Zoom</string>
        <key>pathsOfActivePackagesInChoice</key>
        <array/>
    </dict>
</array>
</plist>