syncthing: correct path for systemd units

The systemd files included with syncthing are "library" and not
"configuration" units, so they should be placed in lib/systemd
rather than etc/systemd, so that they can be customised by creating
unit files in etc/. This also corresponds to how syncthing's own
build script installs them.
This commit is contained in:
Linus Heckemann 2017-05-09 13:58:17 +01:00
parent 8584a16922
commit adf76dbc54
2 changed files with 7 additions and 7 deletions

View File

@ -25,20 +25,20 @@ stdenv.mkDerivation rec {
'';
installPhase = ''
mkdir -p $out/bin $out/etc/systemd/{system,user}
mkdir -p $out/bin $out/lib/systemd/{system,user}
cp bin/* $out/bin
'' + lib.optionalString (stdenv.isLinux) ''
substitute etc/linux-systemd/system/syncthing-resume.service \
$out/etc/systemd/system/syncthing-resume.service \
$out/lib/systemd/system/syncthing-resume.service \
--replace /usr/bin/pkill ${pkgs.procps}/bin/pkill
substitute etc/linux-systemd/system/syncthing@.service \
$out/etc/systemd/system/syncthing@.service \
$out/lib/systemd/system/syncthing@.service \
--replace /usr/bin/syncthing $out/bin/syncthing
substitute etc/linux-systemd/user/syncthing.service \
$out/etc/systemd/user/syncthing.service \
$out/lib/systemd/user/syncthing.service \
--replace /usr/bin/syncthing $out/bin/syncthing
'';

View File

@ -16,14 +16,14 @@ buildGoPackage rec {
goDeps = ./inotify-deps.nix;
postInstall = ''
mkdir -p $bin/etc/systemd/{system,user}
mkdir -p $bin/lib/systemd/{system,user}
substitute $src/etc/linux-systemd/system/syncthing-inotify@.service \
$bin/etc/systemd/system/syncthing-inotify@.service \
$bin/lib/systemd/system/syncthing-inotify@.service \
--replace /usr/bin/syncthing-inotify $bin/bin/syncthing-inotify
substitute $src/etc/linux-systemd/user/syncthing-inotify.service \
$bin/etc/systemd/user/syncthing-inotify.service \
$bin/lib/systemd/user/syncthing-inotify.service \
--replace /usr/bin/syncthing-inotify $bin/bin/syncthing-inotify
'' + stdenv.lib.optionalString stdenv.isDarwin ''
install_name_tool -delete_rpath $out/lib -add_rpath $bin $bin/bin/syncthing-inotify