diff --git a/modules/system/launchd.nix b/modules/system/launchd.nix index 35c1f601..5e5b2624 100644 --- a/modules/system/launchd.nix +++ b/modules/system/launchd.nix @@ -23,6 +23,9 @@ let else echo "creating service $(basename ${target} .plist)" >&2 fi + if test -L '/Library/${basedir}/${target}'; then + rm '/Library/${basedir}/${target}' + fi cp -f '${cfg.build.launchd}/Library/${basedir}/${target}' '/Library/${basedir}/${target}' launchctl load -w '/Library/${basedir}/${target}' fi @@ -36,6 +39,9 @@ let else echo "creating user service $(basename ${target} .plist)" >&2 fi + if test -L ~/Library/LaunchAgents/${target}; then + rm ~/Library/LaunchAgents/${target} + fi cp -f '${cfg.build.launchd}/user/Library/LaunchAgents/${target}' ~/Library/LaunchAgents/${target} launchctl load -w ~/Library/LaunchAgents/${target} fi