From 903493e09cf33b845e7cf497ecf9cfc9709087ee Mon Sep 17 00:00:00 2001 From: commitay Date: Sun, 23 Sep 2018 10:04:06 +1000 Subject: [PATCH] various: remove hyphen from `homebrew-cask` (#52346) --- .github/ISSUE_TEMPLATE/02_feature_request.md | 2 +- CONTRIBUTING.md | 4 ++-- Casks/cocoapods-app.rb | 2 +- USAGE.md | 16 +++++++-------- developer/bin/cask_pr_manual_check | 4 ++-- doc/cask_language_reference/readme.md | 4 ++-- .../stanzas/caveats.md | 2 +- doc/cask_language_reference/stanzas/pkg.md | 2 +- .../stanzas/uninstall.md | 2 +- doc/cask_language_reference/stanzas/url.md | 6 +++--- .../token_reference.md | 4 ++-- doc/development/adding_a_cask.md | 4 ++-- doc/development/hacking.md | 20 +++++++++---------- doc/development/maintaining.md | 10 +++++----- doc/faq/apps_with_malware.md | 4 ++-- doc/faq/not_a_discoverability_service.md | 6 +++--- doc/reporting_bugs/a_cask_fails_to_install.md | 6 +++--- doc/reporting_bugs/curl_error_fix_wont_fix.md | 2 +- .../permission_denied_error_fix_appdir.md | 2 +- 19 files changed, 51 insertions(+), 51 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/02_feature_request.md b/.github/ISSUE_TEMPLATE/02_feature_request.md index 01347d9660..559ef8b621 100644 --- a/.github/ISSUE_TEMPLATE/02_feature_request.md +++ b/.github/ISSUE_TEMPLATE/02_feature_request.md @@ -1,6 +1,6 @@ --- name: Feature Request -about: Suggest a feature for Homebrew-Cask +about: Suggest a feature for Homebrew Cask --- diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 5fc71011e5..41540d082d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -11,7 +11,7 @@ ## Updating a Cask -Notice an application that's out-of-date in Homebrew-Cask? In most cases, it's very simple to update it. We have a [script](https://github.com/vitorgalvao/tiny-scripts/blob/master/cask-repair) that will ask for the new version number, and take care of updating the Cask file and submitting a pull request to us: +Notice an application that's out-of-date in Homebrew Cask? In most cases, it's very simple to update it. We have a [script](https://github.com/vitorgalvao/tiny-scripts/blob/master/cask-repair) that will ask for the new version number, and take care of updating the Cask file and submitting a pull request to us: ```bash # install and setup script - only needed once @@ -46,7 +46,7 @@ $ git remote add "${github_user}" "https://github.com/${github_user}/homebrew-ca ## Adding a Cask -Notice an application that's not in Homebrew-Cask yet? Make sure it's not yet in [Homebrew/cask-versions](https://github.com/Homebrew/homebrew-cask-versions) or [Homebrew/core](https://github.com/Homebrew/homebrew-core) (can be searched with `brew search`). Mac App Store apps can't be installed via Homebrew-Cask, but check out [mas](https://github.com/mas-cli/mas) for an alternative. +Notice an application that's not in Homebrew Cask yet? Make sure it's not yet in [Homebrew/cask-versions](https://github.com/Homebrew/homebrew-cask-versions) or [Homebrew/core](https://github.com/Homebrew/homebrew-core) (can be searched with `brew search`). Mac App Store apps can't be installed via Homebrew Cask, but check out [mas](https://github.com/mas-cli/mas) for an alternative. With a bit of work, you can create a Cask for it. [This document](doc/development/adding_a_cask.md) will walk you through creating a new Cask, testing it, and submitting it to us. diff --git a/Casks/cocoapods-app.rb b/Casks/cocoapods-app.rb index 68ab56eae0..79523930f6 100644 --- a/Casks/cocoapods-app.rb +++ b/Casks/cocoapods-app.rb @@ -12,7 +12,7 @@ cask 'cocoapods-app' do binary "#{appdir}/CocoaPods.app/Contents/Helpers/pod" postflight do - # Because Homebrew-Cask symlinks the binstub directly, stop the app from asking the user to install the binstub. + # Because Homebrew Cask symlinks the binstub directly, stop the app from asking the user to install the binstub. system_command '/usr/bin/defaults', args: ['write', 'org.cocoapods.CocoaPods', 'CPDoNotRequestCLIToolInstallationAgain', '-bool', 'true'] end diff --git a/USAGE.md b/USAGE.md index ff62a04bfc..5b676b25fd 100644 --- a/USAGE.md +++ b/USAGE.md @@ -1,4 +1,4 @@ -# How to Use Homebrew-Cask +# How to Use Homebrew Cask ## Getting Started @@ -11,7 +11,7 @@ $ brew --version ## Frequently Used Commands -Homebrew-Cask is implemented as a subcommand of Homebrew. All Homebrew-Cask commands begin with `brew cask`. Homebrew-Cask has its own set of command verbs many of which are similar to Homebrew’s. The most frequently-used +Homebrew Cask is implemented as a subcommand of Homebrew. All Homebrew Cask commands begin with `brew cask`. Homebrew Cask has its own set of command verbs many of which are similar to Homebrew’s. The most frequently-used commands are: * `install` — installs the given Cask @@ -67,7 +67,7 @@ Note that `uninstall --force` is currently imperfect. See the man page for more * `fetch` — downloads remote application files for the given Cask to the local cache (with `--force`, re-download even if already cached) * `doctor` — checks for configuration issues * `cleanup` — cleans up cached downloads (with `--outdated`, only cleans old downloads) -* `home` — opens the homepage of the given Cask; or with no arguments, the Homebrew-Cask project page +* `home` — opens the homepage of the given Cask; or with no arguments, the Homebrew Cask project page * `zap` — try to remove *all* files associated with a Cask (may include resources shared with other applications) * `outdated` - lists all outdated Casks * `upgrade` - updates all outdated Casks @@ -88,7 +88,7 @@ The following aliases and abbreviations are provided for convenience: ## Tab Completion -Homebrew-Cask comes with `bash` and `zsh` completion for the `brew cask` command. +Homebrew Cask comes with `bash` and `zsh` completion for the `brew cask` command. See https://docs.brew.sh/Shell-Completion for more information. @@ -123,17 +123,17 @@ Caffeine.app (app) ## Updating/Upgrading Casks -Since the Homebrew-Cask repository is a Homebrew Tap, you’ll pull down the latest Casks every time you issue the regular Homebrew command `brew update`. You can check for outdated Casks with `brew cask outdated` and install the outdated Casks with `brew cask upgrade`. Many applications update themselves, so their Casks are ignored by `brew cask outdated` and `brew cask upgrade`. This behaviour can be overridden by adding `--greedy` to the command. +Since the Homebrew Cask repository is a Homebrew Tap, you’ll pull down the latest Casks every time you issue the regular Homebrew command `brew update`. You can check for outdated Casks with `brew cask outdated` and install the outdated Casks with `brew cask upgrade`. Many applications update themselves, so their Casks are ignored by `brew cask outdated` and `brew cask upgrade`. This behaviour can be overridden by adding `--greedy` to the command. It is generally safe to run updates from within an application. -## Updating/Upgrading the Homebrew-Cask Tool +## Updating/Upgrading the Homebrew Cask Tool -Homebrew [automatically taps and keeps Homebrew-Cask updated](https://github.com/Homebrew/homebrew-cask/pull/15381). `brew update` is all that is required. +Homebrew [automatically taps and keeps Homebrew Cask updated](https://github.com/Homebrew/homebrew-cask/pull/15381). `brew update` is all that is required. ## Additional Taps (optional) -The primary Homebrew-Cask Tap includes most of the Casks that a typical user will be interested in. There are a few additional Taps where we store different kinds of Casks. +The primary Homebrew Cask Tap includes most of the Casks that a typical user will be interested in. There are a few additional Taps where we store different kinds of Casks. | Tap name | description | | -------- | ----------- | diff --git a/developer/bin/cask_pr_manual_check b/developer/bin/cask_pr_manual_check index ffb3d7ec8c..ae4650786d 100755 --- a/developer/bin/cask_pr_manual_check +++ b/developer/bin/cask_pr_manual_check @@ -6,8 +6,8 @@ require 'tmpdir' pr_url = ARGV[0] -abort 'You need to give the script exactly one argument, the URL to a pull request from an official Homebrew-Cask tap' if ARGV[0].empty? -abort 'URL is not from an official Homebrew-Cask tap' if pr_url !~ %r{^https://github.com/Homebrew/homebrew-cask.*} +abort 'You need to give the script exactly one argument, the URL to a pull request from an official Homebrew Cask tap' if ARGV[0].empty? +abort 'URL is not from an official Homebrew Cask tap' if pr_url !~ %r{^https://github.com/Homebrew/homebrew-cask.*} pr_api = pr_url.sub(%r{^https://github.com/([^/]+)/([^/]+)/pull/([^/]+).*}, 'https://api.github.com/repos/\1/\2/pulls/\3/files') pr_json = JSON.parse(open(pr_api).read) diff --git a/doc/cask_language_reference/readme.md b/doc/cask_language_reference/readme.md index 9a60eda56c..2d17d81cd9 100644 --- a/doc/cask_language_reference/readme.md +++ b/doc/cask_language_reference/readme.md @@ -20,7 +20,7 @@ end ## The Cask Language Is Declarative -Each Cask contains a series of stanzas (or “fields”) which *declare* how the software is to be obtained and installed. In a declarative language, the author does not need to worry about **order**. As long as all the needed fields are present, Homebrew-Cask will figure out what needs to be done at install time. +Each Cask contains a series of stanzas (or “fields”) which *declare* how the software is to be obtained and installed. In a declarative language, the author does not need to worry about **order**. As long as all the needed fields are present, Homebrew Cask will figure out what needs to be done at install time. To make maintenance easier, the most-frequently-updated stanzas are usually placed at the top. But that’s a convention, not a rule. @@ -95,7 +95,7 @@ end This should be used sparingly: any method which is needed by two or more Casks should instead be rolled into the core. Care must also be taken that such methods be very efficient. -Variables and methods should not be defined outside the `Utils` namespace, as they may collide with Homebrew-Cask internals. +Variables and methods should not be defined outside the `Utils` namespace, as they may collide with Homebrew Cask internals. ## Header Line Details diff --git a/doc/cask_language_reference/stanzas/caveats.md b/doc/cask_language_reference/stanzas/caveats.md index c98786fbcb..1a61311192 100644 --- a/doc/cask_language_reference/stanzas/caveats.md +++ b/doc/cask_language_reference/stanzas/caveats.md @@ -1,6 +1,6 @@ # caveats -Sometimes there are particularities with the installation of a piece of software that cannot or should not be handled programmatically by Homebrew-Cask. In those instances, `caveats` is the way to inform the user. Information in `caveats` is displayed when a cask is invoked with either `install` or `info`. +Sometimes there are particularities with the installation of a piece of software that cannot or should not be handled programmatically by Homebrew Cask. In those instances, `caveats` is the way to inform the user. Information in `caveats` is displayed when a cask is invoked with either `install` or `info`. To avoid flooding users with too many messages (thus desensitising them to the important ones), `caveats` should be used sparingly and exclusively for installation-related matters. If you’re not sure a `caveat` you find pertinent is installation-related or not, ask a maintainer. As a general rule, if your case isn’t already covered in our comprehensive [`caveats Mini-DSL`](#caveats-mini-dsl), it’s unlikely to be accepted. diff --git a/doc/cask_language_reference/stanzas/pkg.md b/doc/cask_language_reference/stanzas/pkg.md index 73f74445fd..0bc1077937 100644 --- a/doc/cask_language_reference/stanzas/pkg.md +++ b/doc/cask_language_reference/stanzas/pkg.md @@ -14,7 +14,7 @@ Subsequent arguments to `pkg` are key/value pairs which modify the install proce `pkg allow_untrusted: true` can be used to install the `.pkg` with an untrusted certificate passing `-allowUntrusted` to `/usr/sbin/installer`. -This option is not permitted in official Homebrew-Cask taps, it is only provided for use in third-party taps or local Casks. +This option is not permitted in official Homebrew Cask taps, it is only provided for use in third-party taps or local Casks. Example ([alinof-timer.rb](https://github.com/Homebrew/homebrew-cask/blob/312ae841f1f1b2ec07f4d88b7dfdd7fbdf8d4f94/Casks/alinof-timer.rb#L10)): diff --git a/doc/cask_language_reference/stanzas/uninstall.md b/doc/cask_language_reference/stanzas/uninstall.md index 95e5220758..6bd731e631 100644 --- a/doc/cask_language_reference/stanzas/uninstall.md +++ b/doc/cask_language_reference/stanzas/uninstall.md @@ -39,7 +39,7 @@ Since `pkg` installers can do arbitrary things, different techniques are needed Each `uninstall` technique is applied according to the order above. The order in which `uninstall` keys appear in the Cask file is ignored. -For assistance filling in the right values for `uninstall` keys, there are several helper scripts found under `developer/bin` in the Homebrew-Cask repository. Each of these scripts responds to the `-help` option with additional documentation. +For assistance filling in the right values for `uninstall` keys, there are several helper scripts found under `developer/bin` in the Homebrew Cask repository. Each of these scripts responds to the `-help` option with additional documentation. The easiest way to work out an `uninstall` stanza is on a system where the `pkg` is currently installed and operational. To operate on an uninstalled `pkg` file, see [Working With a pkg File Manually](#working-with-a-pkg-file-manually), below. diff --git a/doc/cask_language_reference/stanzas/url.md b/doc/cask_language_reference/stanzas/url.md index b139841fad..180c75ac15 100644 --- a/doc/cask_language_reference/stanzas/url.md +++ b/doc/cask_language_reference/stanzas/url.md @@ -30,13 +30,13 @@ When the hostnames of `url` and `homepage` differ, the discrepancy should be doc Where `URL_SECTION` is the smallest possible portion of the URL that uniquely identifies the app or vendor. Examples can be seen in [`airfoil.rb`](https://github.com/Homebrew/homebrew-cask/blob/1666993ee93e2a43f00a4dfc3c727da7c0b5ada9/Casks/airfoil.rb#L5), [`knockknock.rb`](https://github.com/Homebrew/homebrew-cask/blob/6645a6090d1cb8fc026f243a47048749b31c32bf/Casks/knockknock.rb#L5), [`lightpaper.rb`](https://github.com/Homebrew/homebrew-cask/blob/7a75f4e84c01bf192bd55f251b96cf2c1e086281/Casks/lightpaper.rb#L5), [`airtool.rb`](https://github.com/Homebrew/homebrew-cask/blob/355211a8a3ea54046ae45022bcf71980bd2d5432/Casks/airtool.rb#L5), [`screencat.rb`](https://github.com/Homebrew/homebrew-cask/blob/5fc818752c30c156c00f79b04b66406189ab2f30/Casks/screencat.rb#L5), [`0ad.rb`](https://github.com/Homebrew/homebrew-cask/blob/7a75f4e84c01bf192bd55f251b96cf2c1e086281/Casks/0ad.rb#L5). -These comments must be added so a user auditing the cask knows the URL was verified by the Homebrew-Cask team as the one provided by the vendor, even though it may look unofficial or suspicious. It is our responsibility as Homebrew-Cask maintainers to verify both the `url` and `homepage` information when first added (or subsequently modified, apart from versioning). +These comments must be added so a user auditing the cask knows the URL was verified by the Homebrew Cask team as the one provided by the vendor, even though it may look unofficial or suspicious. It is our responsibility as Homebrew Cask maintainers to verify both the `url` and `homepage` information when first added (or subsequently modified, apart from versioning). The comment doesn’t mean you should trust the source blindly, but we only approve casks in which users can easily verify its authenticity with basic means, such as checking the official homepage or public repository. Occasionally, slightly more elaborate techniques may be used, such as inspecting an [`appcast`](appcast.md) we established as official. Cases where such quick verifications aren’t possible (e.g. when the download URL is behind a registration wall) are [treated in a stricter manner](../../development/adding_a_cask.md#unofficial-vendorless-and-walled-builds). ## Difficulty Finding a URL -Web browsers may obscure the direct `url` download location for a variety of reasons. Homebrew-Cask supplies a script which can read extended file attributes to extract the actual source URL for most files downloaded by a browser on macOS. The script usually emits multiple candidate URLs; you may have to test each of them: +Web browsers may obscure the direct `url` download location for a variety of reasons. Homebrew Cask supplies a script which can read extended file attributes to extract the actual source URL for most files downloaded by a browser on macOS. The script usually emits multiple candidate URLs; you may have to test each of them: ```bash $ $(brew --repository)/Library/Taps/Homebrew/homebrew-cask/developer/bin/list_url_attributes_on_file @@ -100,7 +100,7 @@ Some providers use disposable URLs, which a Cask author cannot know in advance. In theory, one can write arbitrary Ruby code right in the Cask definition to fetch and construct a disposable URL. -However, this typically involves an HTTP/S round trip to a landing site, which may take a long time. Because of the way Homebrew-Cask loads and parses Casks, it is not acceptable that such expensive operations be performed directly in the body of a Cask definition. +However, this typically involves an HTTP/S round trip to a landing site, which may take a long time. Because of the way Homebrew Cask loads and parses Casks, it is not acceptable that such expensive operations be performed directly in the body of a Cask definition. ### Using a Block to Defer Code Execution diff --git a/doc/cask_language_reference/token_reference.md b/doc/cask_language_reference/token_reference.md index bd202f7c71..fc2504aa18 100644 --- a/doc/cask_language_reference/token_reference.md +++ b/doc/cask_language_reference/token_reference.md @@ -81,7 +81,7 @@ Details of software names and brands will inevitably be lost in the conversion t ### Simplified Names of non-App Software -* Currently, rules for generating a token are not well-defined for Preference Panes, QuickLook plugins, and several other types of software installable by Homebrew-Cask. Just create the best name you can, based on the filename on disk or the vendor’s web page. Watch out for duplicates. +* Currently, rules for generating a token are not well-defined for Preference Panes, QuickLook plugins, and several other types of software installable by Homebrew Cask. Just create the best name you can, based on the filename on disk or the vendor’s web page. Watch out for duplicates. Non-app tokens should become more standardized in the future. @@ -147,7 +147,7 @@ When the token for a new Cask would otherwise conflict with the token of an alre ## Token Overlap With a Formula -If a Homebrew formula and a Homebrew-Cask cask both exist with the same token and they both refer to the same app — respectively a CLI and a GUI — and the GUI app is simply a wrapper of the CLI tool but has been decided to provide enough value to warrant the inclusion of both the formula and the cask, the cask will have the `-app` suffix. This is the only instance where an `-app` suffix is allowed, precisely so the “why” is clear when you know the rule. +If a Homebrew formula and a Homebrew Cask cask both exist with the same token and they both refer to the same app — respectively a CLI and a GUI — and the GUI app is simply a wrapper of the CLI tool but has been decided to provide enough value to warrant the inclusion of both the formula and the cask, the cask will have the `-app` suffix. This is the only instance where an `-app` suffix is allowed, precisely so the “why” is clear when you know the rule. ## Potentially Misleading Name diff --git a/doc/development/adding_a_cask.md b/doc/development/adding_a_cask.md index 66776e62fe..5abb7c45b0 100644 --- a/doc/development/adding_a_cask.md +++ b/doc/development/adding_a_cask.md @@ -168,7 +168,7 @@ $ brew cask style Casks/my-new-cask.rb [--fix] Keep in mind all of these checks will be made when you submit your PR, so by doing them in advance you’re saving everyone a lot of time and trouble. -If your application and Homebrew-Cask do not work well together, feel free to [file an issue](https://github.com/Homebrew/homebrew-cask#reporting-bugs) after checking out open issues. +If your application and Homebrew Cask do not work well together, feel free to [file an issue](https://github.com/Homebrew/homebrew-cask#reporting-bugs) after checking out open issues. ## Finding a Home For Your Cask @@ -269,7 +269,7 @@ See [a note about git commit messages](http://tbaggery.com/2008/04/19/a-note-abo The first line of a commit message becomes the **title** of a pull request on GitHub, like the subject line of an email. Including the key info in the first line will help us respond faster to your pull. -For Cask commits in the Homebrew-Cask project, we like to include the Application name, version number (or `:latest`), and purpose of the commit in the first line. +For Cask commits in the Homebrew Cask project, we like to include the Application name, version number (or `:latest`), and purpose of the commit in the first line. Examples of good, clear commit summaries: diff --git a/doc/development/hacking.md b/doc/development/hacking.md index 67a95fc10d..e41368d958 100644 --- a/doc/development/hacking.md +++ b/doc/development/hacking.md @@ -1,21 +1,21 @@ -# Hacking on Homebrew-Cask +# Hacking on Homebrew Cask If you’d like to hack on the Ruby code that drives this project, please join us, we’d love to have you! ## Goals, Design, and Philosophy -Homebrew-Cask is an attempt to make a Linux-style package manager for precompiled macOS software. Homebrew-Cask is not yet as featureful as `apt` or `yum`, but we are trying to be as close as we can get to those tools from the user’s point of view. +Homebrew Cask is an attempt to make a Linux-style package manager for precompiled macOS software. Homebrew Cask is not yet as featureful as `apt` or `yum`, but we are trying to be as close as we can get to those tools from the user’s point of view. -Homebrew-Cask is designed to work like a traditional Unix tool: +Homebrew Cask is designed to work like a traditional Unix tool: * All functionality should be accessible from the CLI. The user should be freed (**freed!**) from interacting with a GUI. -* Homebrew-Cask should itself be scriptable. +* Homebrew Cask should itself be scriptable. ## Project Status -Homebrew-Cask is still young, and should be considered in alpha. +Homebrew Cask is still young, and should be considered in alpha. -We have good support for a variety of artifacts such as apps, pkgs, binaries, plugins, and [fonts](https://github.com/Homebrew/homebrew-cask-fonts/). Homebrew-Cask can install and uninstall any of those. However, these commands don’t work well with multiple versions, and most importantly, we currently can’t `upgrade` ([but are working on it](https://github.com/Homebrew/homebrew-cask/issues/29301)). +We have good support for a variety of artifacts such as apps, pkgs, binaries, plugins, and [fonts](https://github.com/Homebrew/homebrew-cask-fonts/). Homebrew Cask can install and uninstall any of those. However, these commands don’t work well with multiple versions, and most importantly, we currently can’t `upgrade` ([but are working on it](https://github.com/Homebrew/homebrew-cask/issues/29301)). ### Casks and Formulae @@ -31,9 +31,9 @@ For software with unusual needs that are not covered by the DSL, we generally ac ### Setup -The Homebrew-Cask core code is included in [Homebrew](https://github.com/Homebrew/brew). Consult Homebrew’s [documentation for contributors](https://github.com/Homebrew/brew/tree/master/docs#contributors) for more information. +The Homebrew Cask core code is included in [Homebrew](https://github.com/Homebrew/brew). Consult Homebrew’s [documentation for contributors](https://github.com/Homebrew/brew/tree/master/docs#contributors) for more information. -### Forcing a Specific Homebrew-Cask Subcommand +### Forcing a Specific Homebrew Cask Subcommand If you are developing a subcommand, you can force `brew cask` to dispatch a specific file by giving a fully-qualified path to the file containing the subcommand, like this: @@ -59,13 +59,13 @@ The first line of a commit message (the summary line) is like the subject line o ## External Commands -Advanced users may create their own external commands for Homebrew-Cask by following conventions similar to external commands for git or Homebrew. An external command may be any executable on your `$PATH` which follows the form `brewcask-`. (So long as `` does not conflict with an existing command.) The command will be invoked by `exec` and passed any unprocessed arguments from the original command-line. An external command may also be implemented as an executable Ruby file, on your `$PATH`, which follows the form `brewcask-.rb`. The Ruby file will be `required` and will have full access to the Ruby environments of both Homebrew-Cask and Homebrew. +Advanced users may create their own external commands for Homebrew Cask by following conventions similar to external commands for git or Homebrew. An external command may be any executable on your `$PATH` which follows the form `brewcask-`. (So long as `` does not conflict with an existing command.) The command will be invoked by `exec` and passed any unprocessed arguments from the original command-line. An external command may also be implemented as an executable Ruby file, on your `$PATH`, which follows the form `brewcask-.rb`. The Ruby file will be `required` and will have full access to the Ruby environments of both Homebrew Cask and Homebrew. Instead of in the `$PATH`, an external command can also be located in the `cmd` subdirectory of a Tap. ### The Internal Command `_stanza` -[`_stanza`](https://github.com/Homebrew/brew/blob/master/Library/Homebrew/cask/lib/hbc/cli/internal_stanza.rb) is a useful command to contributors who want to build a tool that leans on the information from Homebrew-Cask. It extracts and renders a specific stanza for either a given Cask or every Cask. +[`_stanza`](https://github.com/Homebrew/brew/blob/master/Library/Homebrew/cask/lib/hbc/cli/internal_stanza.rb) is a useful command to contributors who want to build a tool that leans on the information from Homebrew Cask. It extracts and renders a specific stanza for either a given Cask or every Cask. The syntax is diff --git a/doc/development/maintaining.md b/doc/development/maintaining.md index 937abbb97b..d0dac8046a 100644 --- a/doc/development/maintaining.md +++ b/doc/development/maintaining.md @@ -1,4 +1,4 @@ -# Maintaining Homebrew-Cask +# Maintaining Homebrew Cask __vv NOTE - DRAFT DOC! vv__ @@ -6,7 +6,7 @@ This doc is just at a starting point. The maintainers team will be collaborating __^^ NOTE - DRAFT DOC! ^^__ -As a relatively large open source project with plenty of daily activity, Homebrew-Cask requires regular care and feeding. This includes reviewing and merging PRs, diagnosing bugs, improving documentation, discussing project policy and features, and plenty more! +As a relatively large open source project with plenty of daily activity, Homebrew Cask requires regular care and feeding. This includes reviewing and merging PRs, diagnosing bugs, improving documentation, discussing project policy and features, and plenty more! This responsibility is shared by @Homebrew/cask - a team of humans spanning the globe each of whom has agreed to dedicate some of their spare time to helping our dear users. What a kind and friendly bunch they must be! (It’s true, they are.) @@ -39,18 +39,18 @@ Label | Description | Issues | Pull Requests **cask** | Relates directly to a cask. Must always be accompanied by **bug** or **enhancement**. | ✓ | ✓ **cask request** | Either a request for a new cask or a call for correction in an existing one. | ✓ | **chief bug** | When multiple people open new issues for the same bug, the main issue where its progression is being tracked should have this label. Every other one should be marked **duplicate** and closed. | ✓ | -**core** | Relates directly to the code of the core, Homebrew-Cask itself. Must always be accompanied by **bug** or **enhancement**. | ✓ | ✓ +**core** | Relates directly to the code of the core, Homebrew Cask itself. Must always be accompanied by **bug** or **enhancement**. | ✓ | ✓ **discussion** | A matter that benefits from discussion before a decision is to be made. Any opinion should be given by users and maintainers alike, even if that opinion is “I have no strong feelings on the matter”. | ✓ | **documentation** | Relates to the documentation. | ✓ | ✓ **duplicate** | An issue or pull request that is essentially the same as another. Should be immediately closed. | ✓ | ✓ **enhancement** | Something we want implemented. Must always be accompanied by **cask** or **core**. | ✓ | ✓ **future** | Something that can currently only be referenced and will only be possible to act upon in the future, after certain conditions are met. Currently references [changes to the installation behaviour](https://github.com/Homebrew/homebrew-cask/issues/13201). To be used sparingly. | ✓ | ✓ -**meta** | Relates to Homebrew-Cask itself as a project and its policies/decisions. | ✓ | +**meta** | Relates to Homebrew Cask itself as a project and its policies/decisions. | ✓ | **on hold** | A pull request that depends on another being merged before it itself can be as well. | | ✓ **roadmap** | Roadmap for feature implementation. | ✓ | **ready to implement** | Usually accompanied by the closing of a **discussion** issue. It succinctly describes in points the implementation of something yet to be written, be it a feature or a documentation section. Anyone looking at such an issue can safely ignore every post following the top one, as it should always be kept up-to-date with the discussion. | ✓ | **travis** | Bug related to [Travis CI](https://travis-ci.org/). Must always be accompanied by **bug** or **enhancement**. | ✓ | ✓ -**upstream** | Something we have no hand in, and can only be fixed with intervention from developers outside Homebrew-Cask. Always refers to a cask, and never to the core. | ✓ | ✓ +**upstream** | Something we have no hand in, and can only be fixed with intervention from developers outside Homebrew Cask. Always refers to a cask, and never to the core. | ✓ | ✓ **awaiting maintainer feedback** | A maintainer requires input from other maintainers to proceed. Other maintainers should occasionally check this label and give their feedback on the subject, if able. | ✓ | ✓ **awaiting user reply** | A maintainer requires further action or information from the original poster to proceed. Particularly useful to weed out those cases where issues and pull requests would otherwise be left open indefinitely because the original poster never replies. | ✓ | ✓ **awaiting verification** | A pull request that [requires verification](https://github.com/Homebrew/homebrew-cask/blob/master/doc/cask_language_reference/stanzas/sha256.md#updating-the-sha256) of a `sha256` change. | | ✓ diff --git a/doc/faq/apps_with_malware.md b/doc/faq/apps_with_malware.md index 0713532e64..8f1688e805 100644 --- a/doc/faq/apps_with_malware.md +++ b/doc/faq/apps_with_malware.md @@ -1,10 +1,10 @@ # Apps that bundle malware -Unfortunately, in the world of software there are bad actors that bundle malware with their apps. Even so, Homebrew-Cask has long decided it is not a gatekeeper ([macOS already has one](https://support.apple.com/en-us/HT202491)) and [users are expected to know about the software they are installing](not_a_discoverability_service.md). This means we will not remove casks that link to these apps. We have several reasons for this, summarised in [a comment on issue #21399](https://github.com/Homebrew/homebrew-cask/issues/21399#issuecomment-223148829). +Unfortunately, in the world of software there are bad actors that bundle malware with their apps. Even so, Homebrew Cask has long decided it is not a gatekeeper ([macOS already has one](https://support.apple.com/en-us/HT202491)) and [users are expected to know about the software they are installing](not_a_discoverability_service.md). This means we will not remove casks that link to these apps. We have several reasons for this, summarised in [a comment on issue #21399](https://github.com/Homebrew/homebrew-cask/issues/21399#issuecomment-223148829). Within that context, we would still like for users to enjoy some kind of protection while minimising occurrences of legitimate developers being branded as malware carriers. We feel removing casks is an ineffective band-aid and the issue needs to be tackled earlier in the chain: at the macOS level. -If an app that bundles malware was not signed with an Apple Developer ID and you purposefully disabled or bypassed Gatekeeper, no action will be taken on our part. When you disable security features, you do so at your own risk. If, however, an app that bundles malware is signed, Apple can revoke its permissions and it will no longer run on the computers of users that keep security features on — we all benefit, Homebrew-Cask users or not. **Note that for the time being, Homebrew-Cask will not quarantine download files. See [issue #22388](https://github.com/Homebrew/homebrew-cask/issues/22388)**. +If an app that bundles malware was not signed with an Apple Developer ID and you purposefully disabled or bypassed Gatekeeper, no action will be taken on our part. When you disable security features, you do so at your own risk. If, however, an app that bundles malware is signed, Apple can revoke its permissions and it will no longer run on the computers of users that keep security features on — we all benefit, Homebrew Cask users or not. **Note that for the time being, Homebrew Cask will not quarantine download files. See [issue #22388](https://github.com/Homebrew/homebrew-cask/issues/22388)**. To report a signed app that bundles malware, follow these steps: diff --git a/doc/faq/not_a_discoverability_service.md b/doc/faq/not_a_discoverability_service.md index 1126f4f992..75b92bf698 100644 --- a/doc/faq/not_a_discoverability_service.md +++ b/doc/faq/not_a_discoverability_service.md @@ -1,13 +1,13 @@ -# Homebrew-Cask is not a discoverability service +# Homebrew Cask is not a discoverability service -From the inception of Homebrew-Cask, various requests fell under the umbrella of this reply. Though a somewhat popular request, after careful consideration on multiple occasions we’ve always come back to the same conclusion: we’re not a discoverability service and our users are expected to have reasonable knowledge about the apps they’re installing through us before doing so. +From the inception of Homebrew Cask, various requests fell under the umbrella of this reply. Though a somewhat popular request, after careful consideration on multiple occasions we’ve always come back to the same conclusion: we’re not a discoverability service and our users are expected to have reasonable knowledge about the apps they’re installing through us before doing so. Examples of requests under this same theme: + [Separate by categories](https://github.com/Homebrew/homebrew-cask/issues/5425). + [Add descriptions](https://github.com/Homebrew/homebrew-cask/issues/16089). -Amongst other things, the logistics of such requests are unsustainable for Homebrew-Cask. Before making a request of this nature, you must read through those issues, as well as any other issues they link to, to get a full understanding of why that is the case, and why “but project *x* does *y*” arguments aren’t applicable, and not every package manager is the same. +Amongst other things, the logistics of such requests are unsustainable for Homebrew Cask. Before making a request of this nature, you must read through those issues, as well as any other issues they link to, to get a full understanding of why that is the case, and why “but project *x* does *y*” arguments aren’t applicable, and not every package manager is the same. You should also be able to present clear actionable fixes to those concerns. Simply asking for it without solutions will get your issue closed. diff --git a/doc/reporting_bugs/a_cask_fails_to_install.md b/doc/reporting_bugs/a_cask_fails_to_install.md index eb64766c1e..9c328b0c37 100644 --- a/doc/reporting_bugs/a_cask_fails_to_install.md +++ b/doc/reporting_bugs/a_cask_fails_to_install.md @@ -14,7 +14,7 @@ If the error output includes something like curl: (22) The requested URL returned error: 403 Forbidden ``` -the problem was with the downloading itself (see how the error came from `curl`). Homebrew-Cask itself is fine and the problem is generally one of: +the problem was with the downloading itself (see how the error came from `curl`). Homebrew Cask itself is fine and the problem is generally one of: 1. App vendor or file in their server is down. 2. Cask is outdated. @@ -32,7 +32,7 @@ If the error output includes something like Error: Permission denied - (/usr/local/Caskroom/someapp/0.1/Someapp.app, /Applications/Someapp.app) ``` -the problem isn’t with Homebrew-Cask itself, but some permissions on your system. +the problem isn’t with Homebrew Cask itself, but some permissions on your system. [Continue to the fix](permission_denied_error_fix_appdir.md) @@ -63,7 +63,7 @@ If the error output includes something like Error: It seems the App source is not there: '/usr/local/Caskroom/…' ``` -the directory structure inside the app’s archive changed in some way. It must be fixed in Homebrew-Cask. +the directory structure inside the app’s archive changed in some way. It must be fixed in Homebrew Cask. [Continue to the fix](source_is_not_there_fix.md) diff --git a/doc/reporting_bugs/curl_error_fix_wont_fix.md b/doc/reporting_bugs/curl_error_fix_wont_fix.md index c02b9adfec..f4c3e5d5ad 100644 --- a/doc/reporting_bugs/curl_error_fix_wont_fix.md +++ b/doc/reporting_bugs/curl_error_fix_wont_fix.md @@ -1,6 +1,6 @@ [Go back](curl_error_fix_vendor.md) -This means the issue isn’t in any way related to Homebrew-Cask, but with the vendor or your connection. +This means the issue isn’t in any way related to Homebrew Cask, but with the vendor or your connection. Start by diagnosing your connection (try to download other casks, go around the web). If the problem is with your connection, try a website like [Ask Different](https://apple.stackexchange.com/) to ask for advice. diff --git a/doc/reporting_bugs/permission_denied_error_fix_appdir.md b/doc/reporting_bugs/permission_denied_error_fix_appdir.md index fe04b25b74..509e1ed099 100644 --- a/doc/reporting_bugs/permission_denied_error_fix_appdir.md +++ b/doc/reporting_bugs/permission_denied_error_fix_appdir.md @@ -1,6 +1,6 @@ [Go back](a_cask_fails_to_install.md#permission-denied-error) -In this case, it’s likely you’re a standard user and don’t have permissions to write to `/Applications` (which is now our default). If you never changed your default installation directory for apps and were using Homebrew-Cask before we changed our behaviour to moving apps instead of linking, you should have some symlinks in your `~/Applications` directory, which you do have permission to write to. +In this case, it’s likely you’re a standard user and don’t have permissions to write to `/Applications` (which is now our default). If you never changed your default installation directory for apps and were using Homebrew Cask before we changed our behaviour to moving apps instead of linking, you should have some symlinks in your `~/Applications` directory, which you do have permission to write to. You can use `--appdir=~/Applications` when installing to bring back the old behaviour. For a permanent change, [follow the `Options` section in `USAGE.md`](https://github.com/Homebrew/homebrew-cask/blob/1de4657a0ed35463602b31061b0c16dc9078b8a0/USAGE.md#options). Specifically, you’ll want to set `export HOMEBREW_CASK_OPTS="--appdir=~/Applications"` in your shell’s startup file.