ubborg-sysd-wants
v0.1.2
Published
Plan a symlink to express a systemd "wants" relation between two units, and/or (un)mask a unit.
Readme
ubborg-sysd-wants
Plan a symlink to express a systemd "wants" relation between two units, and/or (un)mask a unit.
API
This module exports one function that holds another function:
sysdWants([opt, ]who, wants, what)
opt: Common options, see below.who(string¹): Unit ID of the systemd trigger unit, e.g.'local-fs.target'.wants(boolean): Whetherwho"wants"what.true= request the symlink exists and points towhat,false= request its absence.what(object¹):filespec of the systemd unit that shall be triggered.
.mask([opt, ]unitName, masked)
Usually, masking should not be required.
You can enable or disable units in an overridable manner using
systemd presets (man 5 systemd.preset).
Also consider using drop-in files to add specific conditions to a unit.
opt: Common options, see below.unitName(string¹): The name of the symlink to be created or removed in/etc/systemd/system/.masked(boolean): Whether the unit shall be masked.true= request the symlink exists and points to'/dev/null',false= request its absence.
Common options
The options object, and all of its options, are optional.
The options object argument must be either omitted or be a plain object, i.e. not an array.
Supported options are:
sysdPre(string): Path prefix to the systemd config dir to use, e.g.'/etc'or'/lib'.
¹) May also be an array, in which case an array will be returned with the results of each possible combination with the other argument(s).
Known issues
- Needs more/better tests and docs.
License
ISC
