forked from mirrors/nixpkgs
systemd-lib: add Install WantedBy section to make units similar to upstream ones
and make them better grepable
This commit is contained in:
parent
7c19f30a07
commit
9fbf82d9cb
|
@ -360,9 +360,13 @@ in rec {
|
|||
};
|
||||
};
|
||||
|
||||
commonUnitText = def: ''
|
||||
commonUnitText = def: lines: ''
|
||||
[Unit]
|
||||
${attrsToSection def.unitConfig}
|
||||
'' + lines + lib.optionalString (def.wantedBy != [ ]) ''
|
||||
|
||||
[Install]
|
||||
WantedBy=${concatStringsSep " " def.wantedBy}
|
||||
'';
|
||||
|
||||
targetToUnit = name: def:
|
||||
|
@ -376,7 +380,7 @@ in rec {
|
|||
|
||||
serviceToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy enable overrideStrategy;
|
||||
text = commonUnitText def + ''
|
||||
text = commonUnitText def (''
|
||||
[Service]
|
||||
'' + (let env = cfg.globalEnvironment // def.environment;
|
||||
in concatMapStrings (n:
|
||||
|
@ -392,45 +396,41 @@ in rec {
|
|||
'' else "")
|
||||
+ optionalString (def ? stopIfChanged && !def.stopIfChanged) ''
|
||||
X-StopIfChanged=false
|
||||
'' + attrsToSection def.serviceConfig;
|
||||
'' + attrsToSection def.serviceConfig);
|
||||
};
|
||||
|
||||
socketToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy enable overrideStrategy;
|
||||
text = commonUnitText def +
|
||||
''
|
||||
[Socket]
|
||||
${attrsToSection def.socketConfig}
|
||||
${concatStringsSep "\n" (map (s: "ListenStream=${s}") def.listenStreams)}
|
||||
${concatStringsSep "\n" (map (s: "ListenDatagram=${s}") def.listenDatagrams)}
|
||||
'';
|
||||
text = commonUnitText def ''
|
||||
[Socket]
|
||||
${attrsToSection def.socketConfig}
|
||||
${concatStringsSep "\n" (map (s: "ListenStream=${s}") def.listenStreams)}
|
||||
${concatStringsSep "\n" (map (s: "ListenDatagram=${s}") def.listenDatagrams)}
|
||||
'';
|
||||
};
|
||||
|
||||
timerToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy enable overrideStrategy;
|
||||
text = commonUnitText def +
|
||||
''
|
||||
[Timer]
|
||||
${attrsToSection def.timerConfig}
|
||||
'';
|
||||
text = commonUnitText def ''
|
||||
[Timer]
|
||||
${attrsToSection def.timerConfig}
|
||||
'';
|
||||
};
|
||||
|
||||
pathToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy enable overrideStrategy;
|
||||
text = commonUnitText def +
|
||||
''
|
||||
[Path]
|
||||
${attrsToSection def.pathConfig}
|
||||
'';
|
||||
text = commonUnitText def ''
|
||||
[Path]
|
||||
${attrsToSection def.pathConfig}
|
||||
'';
|
||||
};
|
||||
|
||||
mountToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy enable overrideStrategy;
|
||||
text = commonUnitText def +
|
||||
''
|
||||
[Mount]
|
||||
${attrsToSection def.mountConfig}
|
||||
'';
|
||||
text = commonUnitText def ''
|
||||
[Mount]
|
||||
${attrsToSection def.mountConfig}
|
||||
'';
|
||||
};
|
||||
|
||||
automountToUnit = name: def:
|
||||
|
@ -444,11 +444,10 @@ in rec {
|
|||
|
||||
sliceToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy enable overrideStrategy;
|
||||
text = commonUnitText def +
|
||||
''
|
||||
[Slice]
|
||||
${attrsToSection def.sliceConfig}
|
||||
'';
|
||||
text = commonUnitText def ''
|
||||
[Slice]
|
||||
${attrsToSection def.sliceConfig}
|
||||
'';
|
||||
};
|
||||
|
||||
# Create a directory that contains systemd definition files from an attrset
|
||||
|
|
Loading…
Reference in a new issue