brew-linkapps creates symlinks again
Revert "Prevent linkapps from creating duplicate aliases" Revert "linkapp: create Finder aliases" This reverts commit e1a68f1ffbac9dc8209cc9ac2c8f2e34d11867af. This reverts commit bf2e6023d1bac08739b4562e19e07db448f0aba3. Closes Homebrew/homebrew#15308.
This commit is contained in:
parent
2ad5069bab
commit
b7121f0abc
@ -9,19 +9,6 @@ unless File.exist? HOME_APPS
|
||||
exit 1
|
||||
end
|
||||
|
||||
FINDER_ALIAS_MAGIC_PREFIX = "book\x00\x00\x00\x00mark\x00\x00\x00\x00"
|
||||
|
||||
def finder_alias?(filename)
|
||||
return false if not File.file? filename
|
||||
File.open(filename) do |f|
|
||||
return f.read(FINDER_ALIAS_MAGIC_PREFIX.length) == FINDER_ALIAS_MAGIC_PREFIX
|
||||
end
|
||||
end
|
||||
|
||||
def create_finder_alias(from, to)
|
||||
system %Q{osascript -e 'tell application "Finder" to make alias file to POSIX file "#{from}" at POSIX file "#{to}"' > /dev/null}
|
||||
end
|
||||
|
||||
HOMEBREW_CELLAR.subdirs.each do |keg|
|
||||
next unless keg.subdirs
|
||||
name = keg.basename.to_s
|
||||
@ -29,16 +16,16 @@ HOMEBREW_CELLAR.subdirs.each do |keg|
|
||||
if ((f = Formula.factory(name)).installed? rescue false)
|
||||
Dir["#{f.installed_prefix}/*.app", "#{f.installed_prefix}/bin/*.app", "#{f.installed_prefix}/libexec/*.app"].each do |p|
|
||||
puts "Linking #{p}"
|
||||
appname = File.basename(p, ".app")
|
||||
appname = File.basename(p)
|
||||
target = HOME_APPS+"/"+appname
|
||||
if File.exist? target
|
||||
if File.symlink?(target) || finder_alias?(target)
|
||||
if File.symlink? target
|
||||
system "rm", target
|
||||
else
|
||||
onoe "#{target} already exists, skipping."
|
||||
end
|
||||
end
|
||||
create_finder_alias(p, HOME_APPS)
|
||||
system "ln", "-s", p, HOME_APPS
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user