diff options
| author | Adam Vandenberg | 2010-06-09 12:09:34 -0700 |
|---|---|---|
| committer | Adam Vandenberg | 2010-06-09 13:53:50 -0700 |
| commit | 870ba9fa4b51919484500c7db78bb7745a7248b5 (patch) | |
| tree | 1da4dcd0123a274789d251b74feac2b713be5958 /Library | |
| parent | 9f9219a142f44b137a42afc12dcfa62ca45bbc90 (diff) | |
| download | brew-870ba9fa4b51919484500c7db78bb7745a7248b5.tar.bz2 | |
External command: brew linkapps
This command looks for Cocoa Applications (.app bundles) in the prefix
of all installed formulae. If any are found, they are linked into
"~/Applications", the system-defined location for per-user apps.
Diffstat (limited to 'Library')
| -rwxr-xr-x | Library/Contributions/examples/brew-linkapps.rb | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/Library/Contributions/examples/brew-linkapps.rb b/Library/Contributions/examples/brew-linkapps.rb new file mode 100755 index 000000000..bcaf7a9e3 --- /dev/null +++ b/Library/Contributions/examples/brew-linkapps.rb @@ -0,0 +1,28 @@ +# Links any Applications (.app) found in installed prefixes to ~/Applications +require "formula" + +unless File.exist? File.expand_path("~/Applications") + opoo File.expand_path("~/Applications")+" does not exist, stopping." + exit 1 +end + +HOMEBREW_CELLAR.subdirs.each do |keg| + next unless keg.subdirs + name = keg.basename.to_s + + if ((f = Formula.factory(name)).installed? rescue false) + Dir["#{f.prefix}/*.app"].each do |p| + puts "Linking #{p}" + appname = File.basename(p) + target = File.expand_path("~/Applications")+"/"+appname + if File.exist? target + if File.symlink? target + system "rm", target + else + onoe "#{target} already exists, skipping." + end + end + system "ln", "-s", p, File.expand_path("~/Applications") + end + end +end |
