Permalink
Browse files

Deprecate brew (un)linkapps.

Unfortunately `brew linkapps` cannot behave nicely with e.g. Spotlight
using either aliases or symlinks and Homebrew formulae do not build
"proper" `.app` bundles that can be relocated. Instead, please consider
using `brew cask` and migrate formulae using `.app`s to casks.
  • Loading branch information...
1 parent 9cce341 commit f5b63f4a8dd3e22ffc405a1a6119a961f8332578 @MikeMcQuaid MikeMcQuaid committed Jan 9, 2017
Showing with 47 additions and 6 deletions.
  1. +15 −1 Library/Homebrew/cmd/linkapps.rb
  2. +12 −1 Library/Homebrew/cmd/unlinkapps.rb
  3. +12 −2 docs/brew.1.html
  4. +8 −2 manpages/brew.1
@@ -1,6 +1,11 @@
#: * `linkapps` [`--local`] [<formulae>]:
#: Find installed formulae that provide `.app`-style macOS apps and symlink them
-#: into `/Applications`, allowing for easier access.
+#: into `/Applications`, allowing for easier access (deprecated).
+#:
+#: Unfortunately `brew linkapps` cannot behave nicely with e.g. Spotlight using
+#: either aliases or symlinks and Homebrew formulae do not build "proper" `.app`
+#: bundles that can be relocated. Instead, please consider using `brew cask` and
+#: migrate formulae using `.app`s to casks.
#:
#: If no <formulae> are provided, all of them will have their apps symlinked.
#:
@@ -14,6 +19,15 @@ module Homebrew
module_function
def linkapps
+ opoo <<-EOS.undent
+ `brew linkapps` has been deprecated and will eventually be removed!
+
+ Unfortunately `brew linkapps` cannot behave nicely with e.g. Spotlight using
+ either aliases or symlinks and Homebrew formulae do not build "proper" `.app`
+ bundles that can be relocated. Instead, please consider using `brew cask` and
+ migrate formulae using `.app`s to casks.
+ EOS
+
target_dir = linkapps_target(local: ARGV.include?("--local"))
unless target_dir.directory?
@@ -1,5 +1,10 @@
#: * `unlinkapps` [`--local`] [`--dry-run`] [<formulae>]:
-#: Remove symlinks created by `brew linkapps` from `/Applications`.
+#: Remove symlinks created by `brew linkapps` from `/Applications` (deprecated).
+#:
+#: Unfortunately `brew linkapps` cannot behave nicely with e.g. Spotlight using
+#: either aliases or symlinks and Homebrew formulae do not build "proper" `.app`
+#: bundles that can be relocated. Instead, please consider using `brew cask` and
+#: migrate formulae using `.app`s to casks.
#:
#: If no <formulae> are provided, all linked apps will be removed.
#:
@@ -15,6 +20,12 @@ module Homebrew
module_function
def unlinkapps
+ opoo <<-EOS.undent
+ `brew unlinkapps` has been deprecated and will eventually be removed!
+
+ Unfortunately `brew linkapps` cannot behave nicely with e.g. Spotlight using either aliases or symlinks and Homebrew formulae do not build "proper" `.app` bundles that can be relocated. Instead, please consider using `brew cask` and migrate formulae using `.app`s to casks.
+ EOS
+
target_dir = linkapps_target(local: ARGV.include?("--local"))
unlinkapps_from_dir(target_dir, dry_run: ARGV.dry_run?)
View
@@ -223,7 +223,12 @@ <h2 id="COMMANDS">COMMANDS</h2>
<p>If <code>--force</code> is passed, Homebrew will allow keg-only formulae to be linked.</p></dd>
<dt><code>linkapps</code> [<code>--local</code>] [<var>formulae</var>]</dt><dd><p>Find installed formulae that provide <code>.app</code>-style macOS apps and symlink them
-into <code>/Applications</code>, allowing for easier access.</p>
+into <code>/Applications</code>, allowing for easier access (deprecated).</p>
+
+<p>Unfortunately <code>brew linkapps</code> cannot behave nicely with e.g. Spotlight using
+either aliases or symlinks and Homebrew formulae do not build "proper" <code>.app</code>
+bundles that can be relocated. Instead, please consider using <code>brew cask</code> and
+migrate formulae using <code>.app</code>s to casks.</p>
<p>If no <var>formulae</var> are provided, all of them will have their apps symlinked.</p>
@@ -369,7 +374,12 @@ <h2 id="COMMANDS">COMMANDS</h2>
<p>If <code>--dry-run</code> or <code>-n</code> is passed, Homebrew will list all files which would
be unlinked, but will not actually unlink or delete any files.</p></dd>
-<dt><code>unlinkapps</code> [<code>--local</code>] [<code>--dry-run</code>] [<var>formulae</var>]</dt><dd><p>Remove symlinks created by <code>brew linkapps</code> from <code>/Applications</code>.</p>
+<dt><code>unlinkapps</code> [<code>--local</code>] [<code>--dry-run</code>] [<var>formulae</var>]</dt><dd><p>Remove symlinks created by <code>brew linkapps</code> from <code>/Applications</code> (deprecated).</p>
+
+<p>Unfortunately <code>brew linkapps</code> cannot behave nicely with e.g. Spotlight using
+either aliases or symlinks and Homebrew formulae do not build "proper" <code>.app</code>
+bundles that can be relocated. Instead, please consider using <code>brew cask</code> and
+migrate formulae using <code>.app</code>s to casks.</p>
<p>If no <var>formulae</var> are provided, all linked apps will be removed.</p>
View
@@ -294,7 +294,10 @@ If \fB\-\-force\fR is passed, Homebrew will allow keg\-only formulae to be linke
.
.TP
\fBlinkapps\fR [\fB\-\-local\fR] [\fIformulae\fR]
-Find installed formulae that provide \fB\.app\fR\-style macOS apps and symlink them into \fB/Applications\fR, allowing for easier access\.
+Find installed formulae that provide \fB\.app\fR\-style macOS apps and symlink them into \fB/Applications\fR, allowing for easier access (deprecated)\.
+.
+.IP
+Unfortunately \fBbrew linkapps\fR cannot behave nicely with e\.g\. Spotlight using either aliases or symlinks and Homebrew formulae do not build "proper" \fB\.app\fR bundles that can be relocated\. Instead, please consider using \fBbrew cask\fR and migrate formulae using \fB\.app\fRs to casks\.
.
.IP
If no \fIformulae\fR are provided, all of them will have their apps symlinked\.
@@ -508,7 +511,10 @@ If \fB\-\-dry\-run\fR or \fB\-n\fR is passed, Homebrew will list all files which
.
.TP
\fBunlinkapps\fR [\fB\-\-local\fR] [\fB\-\-dry\-run\fR] [\fIformulae\fR]
-Remove symlinks created by \fBbrew linkapps\fR from \fB/Applications\fR\.
+Remove symlinks created by \fBbrew linkapps\fR from \fB/Applications\fR (deprecated)\.
+.
+.IP
+Unfortunately \fBbrew linkapps\fR cannot behave nicely with e\.g\. Spotlight using either aliases or symlinks and Homebrew formulae do not build "proper" \fB\.app\fR bundles that can be relocated\. Instead, please consider using \fBbrew cask\fR and migrate formulae using \fB\.app\fRs to casks\.
.
.IP
If no \fIformulae\fR are provided, all linked apps will be removed\.

0 comments on commit f5b63f4

Please sign in to comment.