Skip to content
Snippets Groups Projects
Commit 9342a423 authored by Mike McQuaid's avatar Mike McQuaid
Browse files

Fix startup plist instructions.

Closes Homebrew/homebrew#16369.
parent 21dfef7e
No related branches found
No related tags found
No related merge requests found
......@@ -175,16 +175,12 @@ class FormulaInstaller
end
if f.plist or keg.plist_installed?
if f.plist_startup and false
destination = '/Library/LaunchDaemons'
else
destination = '~/Library/LaunchAgents'
end
destination = f.plist_startup ? '/Library/LaunchDaemons' \
: '~/Library/LaunchAgents'
plist_filename = f.plist_path.basename
plist_link = "#{destination}/#{plist_filename}"
plist_domain = f.plist_path.basename('.plist')
launchctl_load = "launchctl load -w #{plist_link}"
destination_path = Pathname.new File.expand_path destination
plist_path = destination_path/plist_filename
s = []
......@@ -192,22 +188,42 @@ class FormulaInstaller
# we readlink because this path probably doesn't exist since caveats
# occurs before the link step of installation
if not (plist_path).file? and not (plist_path).symlink?
s << "To have launchd start #{f.name} at login:"
s << " mkdir -p #{destination}" unless destination_path.directory?
s << " ln -sfv #{HOMEBREW_PREFIX}/opt/#{f.name}/*.plist #{destination}" #sudo
if f.plist_startup
s << "To have launchd start #{f.name} at startup:"
s << " sudo mkdir -p #{destination}" unless destination_path.directory?
s << " sudo cp -fv #{HOMEBREW_PREFIX}/opt/#{f.name}/*.plist #{destination}"
else
s << "To have launchd start #{f.name} at login:"
s << " mkdir -p #{destination}" unless destination_path.directory?
s << " ln -sfv #{HOMEBREW_PREFIX}/opt/#{f.name}/*.plist #{destination}"
end
s << "Then to load #{f.name} now:"
s << " #{launchctl_load}"
if f.plist_startup
s << " sudo launchctl load #{plist_link}"
else
s << " launchctl load #{plist_link}"
end
if f.plist_manual
s << "Or, if you don't want/need launchctl, you can just run:"
s << " #{f.plist_manual}"
end
elsif Kernel.system "/bin/launchctl list #{plist_domain} &>/dev/null"
s << "You should reload #{f.name}:"
s << " launchctl unload -w #{plist_link}"
s << " #{launchctl_load}"
if f.plist_startup
s << " sudo launchctl unload #{plist_link}"
s << " sudo cp -fv #{HOMEBREW_PREFIX}/opt/#{f.name}/*.plist #{destination}"
s << " sudo launchctl load #{plist_link}"
else
s << " launchctl unload #{plist_link}"
s << " launchctl load #{plist_link}"
end
else
s << "To load #{f.name}:"
s << " #{launchctl_load}"
if f.plist_startup
s << " sudo launchctl load #{plist_link}"
else
s << " launchctl load #{plist_link}"
end
end
ohai 'Caveats', s
......
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