docker: use serviceConfig.ExecStart instead of script (#390681)

WilliButz 6ba10ff2 4edfeafa

Changed files
+10 -6
nixos
modules
virtualisation
+10 -6
nixos/modules/virtualisation/docker.nix
···
# Systemd services for docker.
-
{ config, lib, pkgs, ... }:
+
{ config, lib, utils, pkgs, ... }:
with lib;
···
restartIfChanged = false;
unitConfig.X-StopOnRemoval = false;
-
serviceConfig.Type = "oneshot";
-
-
script = ''
-
${cfg.package}/bin/docker system prune -f ${toString cfg.autoPrune.flags}
-
'';
+
serviceConfig = {
+
Type = "oneshot";
+
ExecStart = utils.escapeSystemdExecArgs ([
+
(lib.getExe cfg.package)
+
"system"
+
"prune"
+
"-f"
+
] ++ cfg.autoPrune.flags);
+
};
startAt = optional cfg.autoPrune.enable cfg.autoPrune.dates;
after = [ "docker.service" ];