cups: Use systemd files provided by CUPS

This commit is contained in:
Jascha Geerds 2015-04-28 20:37:34 +02:00 committed by Domen Kožar
parent 5f5ba7dda0
commit 4ac95ab328
2 changed files with 16 additions and 6 deletions

View file

@ -183,10 +183,10 @@ in
# gets loaded, and then cups cannot access the printers.
boot.blacklistedKernelModules = [ "usblp" ];
systemd.services.cups =
{ description = "CUPS Printing Daemon";
systemd.packages = [ cups ];
wantedBy = [ "multi-user.target" ];
systemd.services.cups =
{ wantedBy = [ "multi-user.target" ];
wants = [ "network.target" ];
after = [ "network.target" ];
@ -200,9 +200,6 @@ in
mkdir -m 0755 -p ${cfg.tempDir}
'';
serviceConfig.Type = "forking";
serviceConfig.ExecStart = "@${cups}/sbin/cupsd cupsd";
restartTriggers =
[ config.environment.etc."cups/cups-files.conf".source
config.environment.etc."cups/cupsd.conf".source

View file

@ -58,6 +58,19 @@ stdenv.mkDerivation {
''
# Delete obsolete stuff that conflicts with cups-filters.
rm -rf $out/share/cups/banners $out/share/cups/data/testprint
# Rename systemd files provided by CUPS
for f in $out/lib/systemd/system/*; do
substituteInPlace "$f" \
--replace "org.cups.cupsd" "cups" \
--replace "org.cups." ""
if [[ "$f" =~ .*cupsd\..* ]]; then
mv "$f" "''${f/org\.cups\.cupsd/cups}"
else
mv "$f" "''${f/org\.cups\./}"
fi
done
'';
meta = {