Skip to content
Snippets Groups Projects
Commit aee23ccb authored by EricFromCanada's avatar EricFromCanada
Browse files

Add more flags and descriptions to man pages.

parent c349b37b
No related branches found
No related tags found
No related merge requests found
#: * `install` [`--debug`] [`--env=`<std>|<super>] [`--ignore-dependencies`] [`--only-dependencies`] [`--cc=`<compiler>] [`--build-from-source`] [`--devel`|`--HEAD`] [`--keep-tmp`] <formula>:
#: * `install` [`--debug`] [`--env=`(`std`|`super`)] [`--ignore-dependencies`|`--only-dependencies`] [`--cc=`<compiler>] [`--build-from-source`|`--force-bottle`] [`--devel`|`--HEAD`] [`--keep-tmp`] [`--build-bottle`] <formula>:
#: Install <formula>.
#:
#: <formula> is usually the name of the formula to install, but it can be specified
......@@ -44,6 +44,9 @@
#: If `--keep-tmp` is passed, the temporary files created during installation
#: are not deleted.
#:
#: If `--build-bottle` is passed, prepare the formula for eventual bottling
#: during installation.
#:
#: * `install` `--interactive` [`--git`] <formula>:
#: Download and patch <formula>, then open a shell. This allows the user to
#: run `./configure --help` and otherwise determine how to turn the software
......
#: * `sh` [`--env=std`]:
#: Instantiate a Homebrew build environment. Uses our years-battle-hardened
#: Start a Homebrew build environment shell. Uses our years-battle-hardened
#: Homebrew build logic to help your `./configure && make && make install`
#: or even your `gem install` succeed. Especially handy if you run Homebrew
#: in an Xcode-only configuration since it adds tools like `make` to your `PATH`
#: which otherwise build-systems would not find.
#: which otherwise build systems would not find.
#:
#: If `--env=std` is passed, use the standard `PATH` instead of superenv's.
require "extend/ENV"
require "formula"
......@@ -20,13 +22,13 @@ module Homebrew
end
ENV.setup_build_environment
if superenv?
# superenv stopped adding brew's bin but generally user's will want it
# superenv stopped adding brew's bin but generally users will want it
ENV["PATH"] = ENV["PATH"].split(File::PATH_SEPARATOR).insert(1, "#{HOMEBREW_PREFIX}/bin").join(File::PATH_SEPARATOR)
end
ENV["PS1"] = 'brew \[\033[1;32m\]\w\[\033[0m\]$ '
ENV["VERBOSE"] = "1"
puts <<-EOS.undent_________________________________________________________72
Your shell has been configured to use Homebrew's build environment:
Your shell has been configured to use Homebrew's build environment;
this should help you build stuff. Notably though, the system versions of
gem and pip will ignore our configuration and insist on using the
environment they were built under (mostly). Sadly, scons will also
......
#: * `bottle` [`--verbose`] [`--no-rebuild`] [`--keep-old`] [`--skip-relocation`] [`--root-url=`<URL>] [`--force-core-tap`]:
#: * `bottle` `--merge` [`--no-commit`] [`--keep-old`] [`--write`]:
#: * `bottle` [`--verbose`] [`--no-rebuild`|`--keep-old`] [`--skip-relocation`] [`--root-url=`<URL>] [`--force-core-tap`] <formulae>:
#: Generate a bottle (binary package) from a formula installed with
#: `--build-bottle`.
#:
#: If the formula specifies a rebuild version, it will be incremented in the
#: generated DSL. Passing `--keep-old` will attempt to keep it at its
#: original value, while `--no-rebuild` will remove it.
#:
#: If `--verbose` is passed, print the bottling commands and any warnings
#: encountered.
#:
#: If `--skip-relocation` is passed, do not check if the bottle can be marked
#: as relocatable.
#:
#: If `--root-url` is passed, use the specified <URL> as the root of the
#: bottle's URL instead of Homebrew's default.
#:
#: If `--force-core-tap` is passed, build a bottle even if <formula> is not
#: in homebrew/core or any installed taps.
#:
#: * `bottle` `--merge` [`--keep-old`] [`--write` [`--no-commit`]] <formulae>:
#: Generate a bottle from a formula and print the new DSL merged into the
#: existing formula.
#:
#: If `--write` is passed, write the changes to the formula file. A new
#: commit will then be generated unless `--no-commit` is passed.
require "formula"
require "utils/bottles"
......
#: * `tests` [`-v`] [`--coverage`] [`--generic`] [`--no-compat`] [`--only=`<test_script>`:`<line_number>] [`--seed` <seed>] [`--online`] [`--official-cmd-taps`]:
#: Run Homebrew's unit and integration tests.
#: * `tests` [`--verbose`] [`--coverage`] [`--generic`] [`--no-compat`] [`--only=`<test_script>[`:`<line_number>]] [`--seed` <seed>] [`--online`] [`--official-cmd-taps`]:
#: Run Homebrew's unit and integration tests. If provided,
#: `--only=`<test_script> runs only <test_script>_spec.rb, and `--seed`
#: randomizes tests with the provided value instead of a random seed.
#:
#: If `--verbose` is passed, print the command that runs the tests.
#:
#: If `--coverage` is passed, also generate code coverage reports.
#:
#: If `--generic` is passed, only run OS-agnostic tests.
#:
#: If `--no-compat` is passed, do not load the compatibility layer when
#: running tests.
#:
#: If `--online` is passed, include tests that use the GitHub API.
#:
#: If `--official-cmd-taps` is passed, include tests that use any of the
#: taps for official external commands.
require "fileutils"
require "tap"
......
#: * `update-test` [`--commit=`<commit>] [`--before=`<date>] [`--keep-tmp`]:
#: * `update-test` [`--commit=`<commit>] [`--before=`<date>] [`--to-tag`] [`--keep-tmp`]:
#: Runs a test of `brew update` with a new repository clone.
#:
#: If no arguments are passed, use `origin/master` as the start commit.
......
......@@ -65,7 +65,7 @@ With `--verbose` or `-v`, many commands print extra debugging information. Note
<https://github.com/caskroom/homebrew-cask>
* `services`:
Integrates Homebrew formulae with macOS's `launchctl` manager:
Integrates Homebrew formulae with macOS's `launchctl`(1) manager:
<https://github.com/Homebrew/homebrew-services>
## CUSTOM EXTERNAL COMMANDS
......
......@@ -152,7 +152,7 @@ information on all installed formulae.</p>
<p>See the docs for examples of using the JSON output:
<a href="http://docs.brew.sh/Querying-Brew.html" data-bare-link="true">http://docs.brew.sh/Querying-Brew.html</a></p></dd>
<dt><code>install</code> [<code>--debug</code>] [<code>--env=</code><var>std</var>|<var>super</var>] [<code>--ignore-dependencies</code>] [<code>--only-dependencies</code>] [<code>--cc=</code><var>compiler</var>] [<code>--build-from-source</code>] [<code>--devel</code>|<code>--HEAD</code>] [<code>--keep-tmp</code>] <var>formula</var></dt><dd><p>Install <var>formula</var>.</p>
<dt><code>install</code> [<code>--debug</code>] [<code>--env=</code>(<code>std</code>|<code>super</code>)] [<code>--ignore-dependencies</code>|<code>--only-dependencies</code>] [<code>--cc=</code><var>compiler</var>] [<code>--build-from-source</code>|<code>--force-bottle</code>] [<code>--devel</code>|<code>--HEAD</code>] [<code>--keep-tmp</code>] [<code>--build-bottle</code>] <var>formula</var></dt><dd><p>Install <var>formula</var>.</p>
<p><var>formula</var> is usually the name of the formula to install, but it can be specified
in several different ways. See <a href="#SPECIFYING-FORMULAE" title="SPECIFYING FORMULAE" data-bare-link="true">SPECIFYING FORMULAE</a>.</p>
......@@ -195,7 +195,10 @@ for installation.</p>
aka master, trunk, unstable.</p>
<p>If <code>--keep-tmp</code> is passed, the temporary files created during installation
are not deleted.</p></dd>
are not deleted.</p>
<p>If <code>--build-bottle</code> is passed, prepare the formula for eventual bottling
during installation.</p></dd>
<dt><code>install</code> <code>--interactive</code> [<code>--git</code>] <var>formula</var></dt><dd><p>Download and patch <var>formula</var>, then open a shell. This allows the user to
run <code>./configure --help</code> and otherwise determine how to turn the software
package into a Homebrew formula.</p>
......@@ -301,11 +304,13 @@ The search for <var>text</var> is extended online to some popular taps.</p>
<p>If <code>--desc</code> is passed, browse available packages matching <var>text</var> including a
description for each.</p></dd>
<dt><code>search</code> (<code>--debian</code>|<code>--fedora</code>|<code>--fink</code>|<code>--macports</code>|<code>--opensuse</code>|<code>--ubuntu</code>) <var>text</var></dt><dd><p>Search for <var>text</var> in the given package manager's list.</p></dd>
<dt><code>sh</code> [<code>--env=std</code>]</dt><dd><p>Instantiate a Homebrew build environment. Uses our years-battle-hardened
<dt><code>sh</code> [<code>--env=std</code>]</dt><dd><p>Start a Homebrew build environment shell. Uses our years-battle-hardened
Homebrew build logic to help your <code>./configure &amp;&amp; make &amp;&amp; make install</code>
or even your <code>gem install</code> succeed. Especially handy if you run Homebrew
in an Xcode-only configuration since it adds tools like <code>make</code> to your <code>PATH</code>
which otherwise build-systems would not find.</p></dd>
which otherwise build systems would not find.</p>
<p>If <code>--env=std</code> is passed, use the standard <code>PATH</code> instead of superenv's.</p></dd>
<dt><code>style</code> [<code>--fix</code>] [<code>--display-cop-names</code>] [<var>files</var>|<var>taps</var>|<var>formulae</var>]</dt><dd><p>Check formulae or files for conformance to Homebrew style guidelines.</p>
<p><var>formulae</var> and <var>files</var> may not be combined. If both are omitted, style will run
......@@ -478,9 +483,29 @@ name of the file or formula being audited, to make the output easy to grep.</p>
<p><code>audit</code> exits with a non-zero status if any errors are found. This is useful,
for instance, for implementing pre-commit hooks.</p></dd>
<dt><code>bottle</code> [<code>--verbose</code>] [<code>--no-rebuild</code>] [<code>--keep-old</code>] [<code>--skip-relocation</code>] [<code>--root-url=</code><var>URL</var>] [<code>--force-core-tap</code>]:</dt><dd><p></p></dd>
<dt><code>bottle</code> <code>--merge</code> [<code>--no-commit</code>] [<code>--keep-old</code>] [<code>--write</code>]</dt><dd><p>Generate a bottle (binary package) from a formula installed with
<code>--build-bottle</code>.</p></dd>
<dt><code>bottle</code> [<code>--verbose</code>] [<code>--no-rebuild</code>|<code>--keep-old</code>] [<code>--skip-relocation</code>] [<code>--root-url=</code><var>URL</var>] [<code>--force-core-tap</code>] <var>formulae</var></dt><dd><p>Generate a bottle (binary package) from a formula installed with
<code>--build-bottle</code>.</p>
<p>If the formula specifies a rebuild version, it will be incremented in the
generated DSL. Passing <code>--keep-old</code> will attempt to keep it at its
original value, while <code>--no-rebuild</code> will remove it.</p>
<p>If <code>--verbose</code> is passed, print the bottling commands and any warnings
encountered.</p>
<p>If <code>--skip-relocation</code> is passed, do not check if the bottle can be marked
as relocatable.</p>
<p>If <code>--root-url</code> is passed, use the specified <var>URL</var> as the root of the
bottle's URL instead of Homebrew's default.</p>
<p>If <code>--force-core-tap</code> is passed, build a bottle even if <var>formula</var> is not
in homebrew/core or any installed taps.</p></dd>
<dt><code>bottle</code> <code>--merge</code> [<code>--keep-old</code>] [<code>--write</code> [<code>--no-commit</code>]] <var>formulae</var></dt><dd><p>Generate a bottle from a formula and print the new DSL merged into the
existing formula.</p>
<p>If <code>--write</code> is passed, write the changes to the formula file. A new
commit will then be generated unless <code>--no-commit</code> is passed.</p></dd>
<dt><code>bump-formula-pr</code> [<code>--devel</code>] [<code>--dry-run</code> [<code>--write</code>]] [<code>--audit</code>|<code>--strict</code>] [<code>--mirror=</code><var>URL</var>] [<code>--version=</code><var>version</var>] [<code>--message=</code><var>message</var>] (<code>--url=</code><var>URL</var> <code>--sha256=</code><var>sha-256</var>|<code>--tag=</code><var>tag</var> <code>--revision=</code><var>revision</var>) <var>formula</var></dt><dd><p>Creates a pull request to update the formula with a new URL or a new tag.</p>
<p>If a <var>URL</var> is specified, the <var>sha-256</var> checksum of the new download must
......@@ -612,8 +637,24 @@ launched with access to IRB or a shell inside the temporary test directory.</p>
not deleted.</p>
<p>Example: <code>brew install jruby &amp;&amp; brew test jruby</code></p></dd>
<dt><code>tests</code> [<code>-v</code>] [<code>--coverage</code>] [<code>--generic</code>] [<code>--no-compat</code>] [<code>--only=</code><var>test_script</var><code>:</code><var>line_number</var>] [<code>--seed</code> <var>seed</var>] [<code>--online</code>] [<code>--official-cmd-taps</code>]</dt><dd><p>Run Homebrew's unit and integration tests.</p></dd>
<dt><code>update-test</code> [<code>--commit=</code><var>commit</var>] [<code>--before=</code><var>date</var>] [<code>--keep-tmp</code>]</dt><dd><p>Runs a test of <code>brew update</code> with a new repository clone.</p>
<dt><code>tests</code> [<code>--verbose</code>] [<code>--coverage</code>] [<code>--generic</code>] [<code>--no-compat</code>] [<code>--only=</code><var>test_script</var>[<code>:</code><var>line_number</var>]] [<code>--seed</code> <var>seed</var>] [<code>--online</code>] [<code>--official-cmd-taps</code>]</dt><dd><p>Run Homebrew's unit and integration tests. If provided,
<code>--only=</code><var>test_script</var> runs only <var>test_script</var>_spec.rb, and <code>--seed</code>
randomizes tests with the provided value instead of a random seed.</p>
<p>If <code>--verbose</code> is passed, print the command that runs the tests.</p>
<p>If <code>--coverage</code> is passed, also generate code coverage reports.</p>
<p>If <code>--generic</code> is passed, only run OS-agnostic tests.</p>
<p>If <code>--no-compat</code> is passed, do not load the compatibility layer when
running tests.</p>
<p>If <code>--online</code> is passed, include tests that use the GitHub API.</p>
<p>If <code>--official-cmd-taps</code> is passed, include tests that use any of the
taps for official external commands.</p></dd>
<dt><code>update-test</code> [<code>--commit=</code><var>commit</var>] [<code>--before=</code><var>date</var>] [<code>--to-tag</code>] [<code>--keep-tmp</code>]</dt><dd><p>Runs a test of <code>brew update</code> with a new repository clone.</p>
<p>If no arguments are passed, use <code>origin/master</code> as the start commit.</p>
......@@ -637,7 +678,7 @@ the new repository clone.</p></dd>
<a href="https://github.com/Homebrew/homebrew-bundle" data-bare-link="true">https://github.com/Homebrew/homebrew-bundle</a></p></dd>
<dt class="flush"><code>cask</code></dt><dd><p>Install macOS applications distributed as binaries:
<a href="https://github.com/caskroom/homebrew-cask" data-bare-link="true">https://github.com/caskroom/homebrew-cask</a></p></dd>
<dt><code>services</code></dt><dd><p>Integrates Homebrew formulae with macOS's <code>launchctl</code> manager:
<dt><code>services</code></dt><dd><p>Integrates Homebrew formulae with macOS's <code>launchctl</code>(1) manager:
<a href="https://github.com/Homebrew/homebrew-services" data-bare-link="true">https://github.com/Homebrew/homebrew-services</a></p></dd>
</dl>
......
......@@ -216,7 +216,7 @@ Pass \fB\-\-all\fR to get information on all formulae, or \fB\-\-installed\fR to
See the docs for examples of using the JSON output: \fIhttp://docs\.brew\.sh/Querying\-Brew\.html\fR
.
.TP
\fBinstall\fR [\fB\-\-debug\fR] [\fB\-\-env=\fR\fIstd\fR|\fIsuper\fR] [\fB\-\-ignore\-dependencies\fR] [\fB\-\-only\-dependencies\fR] [\fB\-\-cc=\fR\fIcompiler\fR] [\fB\-\-build\-from\-source\fR] [\fB\-\-devel\fR|\fB\-\-HEAD\fR] [\fB\-\-keep\-tmp\fR] \fIformula\fR
\fBinstall\fR [\fB\-\-debug\fR] [\fB\-\-env=\fR(\fBstd\fR|\fBsuper\fR)] [\fB\-\-ignore\-dependencies\fR|\fB\-\-only\-dependencies\fR] [\fB\-\-cc=\fR\fIcompiler\fR] [\fB\-\-build\-from\-source\fR|\fB\-\-force\-bottle\fR] [\fB\-\-devel\fR|\fB\-\-HEAD\fR] [\fB\-\-keep\-tmp\fR] [\fB\-\-build\-bottle\fR] \fIformula\fR
Install \fIformula\fR\.
.
.IP
......@@ -258,6 +258,9 @@ If \fB\-\-HEAD\fR is passed, and \fIformula\fR defines it, install the HEAD vers
.IP
If \fB\-\-keep\-tmp\fR is passed, the temporary files created during installation are not deleted\.
.
.IP
If \fB\-\-build\-bottle\fR is passed, prepare the formula for eventual bottling during installation\.
.
.TP
\fBinstall\fR \fB\-\-interactive\fR [\fB\-\-git\fR] \fIformula\fR
Download and patch \fIformula\fR, then open a shell\. This allows the user to run \fB\./configure \-\-help\fR and otherwise determine how to turn the software package into a Homebrew formula\.
......@@ -406,7 +409,10 @@ Search for \fItext\fR in the given package manager\'s list\.
.
.TP
\fBsh\fR [\fB\-\-env=std\fR]
Instantiate a Homebrew build environment\. Uses our years\-battle\-hardened Homebrew build logic to help your \fB\./configure && make && make install\fR or even your \fBgem install\fR succeed\. Especially handy if you run Homebrew in an Xcode\-only configuration since it adds tools like \fBmake\fR to your \fBPATH\fR which otherwise build\-systems would not find\.
Start a Homebrew build environment shell\. Uses our years\-battle\-hardened Homebrew build logic to help your \fB\./configure && make && make install\fR or even your \fBgem install\fR succeed\. Especially handy if you run Homebrew in an Xcode\-only configuration since it adds tools like \fBmake\fR to your \fBPATH\fR which otherwise build systems would not find\.
.
.IP
If \fB\-\-env=std\fR is passed, use the standard \fBPATH\fR instead of superenv\'s\.
.
.TP
\fBstyle\fR [\fB\-\-fix\fR] [\fB\-\-display\-cop\-names\fR] [\fIfiles\fR|\fItaps\fR|\fIformulae\fR]
......@@ -653,12 +659,30 @@ If \fB\-\-display\-filename\fR is passed, every line of output is prefixed with
\fBaudit\fR exits with a non\-zero status if any errors are found\. This is useful, for instance, for implementing pre\-commit hooks\.
.
.TP
\fBbottle\fR [\fB\-\-verbose\fR] [\fB\-\-no\-rebuild\fR] [\fB\-\-keep\-old\fR] [\fB\-\-skip\-relocation\fR] [\fB\-\-root\-url=\fR\fIURL\fR] [\fB\-\-force\-core\-tap\fR]:
\fBbottle\fR [\fB\-\-verbose\fR] [\fB\-\-no\-rebuild\fR|\fB\-\-keep\-old\fR] [\fB\-\-skip\-relocation\fR] [\fB\-\-root\-url=\fR\fIURL\fR] [\fB\-\-force\-core\-tap\fR] \fIformulae\fR
Generate a bottle (binary package) from a formula installed with \fB\-\-build\-bottle\fR\.
.
.IP
If the formula specifies a rebuild version, it will be incremented in the generated DSL\. Passing \fB\-\-keep\-old\fR will attempt to keep it at its original value, while \fB\-\-no\-rebuild\fR will remove it\.
.
.IP
If \fB\-\-verbose\fR is passed, print the bottling commands and any warnings encountered\.
.
.IP
If \fB\-\-skip\-relocation\fR is passed, do not check if the bottle can be marked as relocatable\.
.
.IP
If \fB\-\-root\-url\fR is passed, use the specified \fIURL\fR as the root of the bottle\'s URL instead of Homebrew\'s default\.
.
.IP
If \fB\-\-force\-core\-tap\fR is passed, build a bottle even if \fIformula\fR is not in homebrew/core or any installed taps\.
.
.TP
\fBbottle\fR \fB\-\-merge\fR [\fB\-\-no\-commit\fR] [\fB\-\-keep\-old\fR] [\fB\-\-write\fR]
Generate a bottle (binary package) from a formula installed with \fB\-\-build\-bottle\fR\.
\fBbottle\fR \fB\-\-merge\fR [\fB\-\-keep\-old\fR] [\fB\-\-write\fR [\fB\-\-no\-commit\fR]] \fIformulae\fR
Generate a bottle from a formula and print the new DSL merged into the existing formula\.
.
.IP
If \fB\-\-write\fR is passed, write the changes to the formula file\. A new commit will then be generated unless \fB\-\-no\-commit\fR is passed\.
.
.TP
\fBbump\-formula\-pr\fR [\fB\-\-devel\fR] [\fB\-\-dry\-run\fR [\fB\-\-write\fR]] [\fB\-\-audit\fR|\fB\-\-strict\fR] [\fB\-\-mirror=\fR\fIURL\fR] [\fB\-\-version=\fR\fIversion\fR] [\fB\-\-message=\fR\fImessage\fR] (\fB\-\-url=\fR\fIURL\fR \fB\-\-sha256=\fR\fIsha\-256\fR|\fB\-\-tag=\fR\fItag\fR \fB\-\-revision=\fR\fIrevision\fR) \fIformula\fR
......@@ -816,11 +840,29 @@ If \fB\-\-keep\-tmp\fR is passed, the temporary files created for the test are n
Example: \fBbrew install jruby && brew test jruby\fR
.
.TP
\fBtests\fR [\fB\-v\fR] [\fB\-\-coverage\fR] [\fB\-\-generic\fR] [\fB\-\-no\-compat\fR] [\fB\-\-only=\fR\fItest_script\fR\fB:\fR\fIline_number\fR] [\fB\-\-seed\fR \fIseed\fR] [\fB\-\-online\fR] [\fB\-\-official\-cmd\-taps\fR]
Run Homebrew\'s unit and integration tests\.
\fBtests\fR [\fB\-\-verbose\fR] [\fB\-\-coverage\fR] [\fB\-\-generic\fR] [\fB\-\-no\-compat\fR] [\fB\-\-only=\fR\fItest_script\fR[\fB:\fR\fIline_number\fR]] [\fB\-\-seed\fR \fIseed\fR] [\fB\-\-online\fR] [\fB\-\-official\-cmd\-taps\fR]
Run Homebrew\'s unit and integration tests\. If provided, \fB\-\-only=\fR\fItest_script\fR runs only \fItest_script\fR_spec\.rb, and \fB\-\-seed\fR randomizes tests with the provided value instead of a random seed\.
.
.IP
If \fB\-\-verbose\fR is passed, print the command that runs the tests\.
.
.IP
If \fB\-\-coverage\fR is passed, also generate code coverage reports\.
.
.IP
If \fB\-\-generic\fR is passed, only run OS\-agnostic tests\.
.
.IP
If \fB\-\-no\-compat\fR is passed, do not load the compatibility layer when running tests\.
.
.IP
If \fB\-\-online\fR is passed, include tests that use the GitHub API\.
.
.IP
If \fB\-\-official\-cmd\-taps\fR is passed, include tests that use any of the taps for official external commands\.
.
.TP
\fBupdate\-test\fR [\fB\-\-commit=\fR\fIcommit\fR] [\fB\-\-before=\fR\fIdate\fR] [\fB\-\-keep\-tmp\fR]
\fBupdate\-test\fR [\fB\-\-commit=\fR\fIcommit\fR] [\fB\-\-before=\fR\fIdate\fR] [\fB\-\-to\-tag\fR] [\fB\-\-keep\-tmp\fR]
Runs a test of \fBbrew update\fR with a new repository clone\.
.
.IP
......@@ -850,7 +892,7 @@ Install macOS applications distributed as binaries: \fIhttps://github\.com/caskr
.
.TP
\fBservices\fR
Integrates Homebrew formulae with macOS\'s \fBlaunchctl\fR manager: \fIhttps://github\.com/Homebrew/homebrew\-services\fR
Integrates Homebrew formulae with macOS\'s \fBlaunchctl\fR(1) manager: \fIhttps://github\.com/Homebrew/homebrew\-services\fR
.
.SH "CUSTOM EXTERNAL COMMANDS"
Homebrew, like \fBgit\fR(1), supports external commands\. These are executable scripts that reside somewhere in the \fBPATH\fR, named \fBbrew\-\fR\fIcmdname\fR or \fBbrew\-\fR\fIcmdname\fR\fB\.rb\fR, which can be invoked like \fBbrew\fR \fIcmdname\fR\. This allows you to create your own commands without modifying Homebrew\'s internals\.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment