* feat(systemd): Add support for masking services * Use unit term in README * Fix README grammar * Note about unmasking * Fix typo in README * Add unmask & more info about systemctl commands Address: https://github.com/ublue-os/bling/pull/88#discussion_r1436877565 https://github.com/ublue-os/bling/pull/88#discussion_r1436917124 * docs: clarify purpose of unmasking * docs: Fix systemd module README typo --------- Co-authored-by: xyny <60004820+xynydev@users.noreply.github.com>
2.2 KiB
systemd Module for Startingpoint
The systemd module streamlines the management of systemd units during image building. Units are divided into system and user categories, with system units managed directly using systemctl and user units using systemctl --user. You can specify which units to enable/disable or unmask/mask under each category.
Example Configuration
type: systemd
system:
enabled:
- example.service
disabled:
- example.target
unmasked:
- example.service
masked:
- example.service
user:
enabled:
- example.timer
disabled:
- example.service
unmasked:
- example.service
masked:
- example.service
In this example:
System Units
example.service: Enabled (runs on system boot)example.target: Disabled (does not run on system boot, unless other unit strictly requires it)example.service: Unmasked (runs on system boot, even if previously masked)example.service: Masked (does not run on system boot, under any circumstances)
User Units
example.timer: Enabled (runs for the user)example.service: Disabled (does not run for the user, unless other unit strictly requires it)example.service: Unmasked (runs for the user, even if previously masked)example.service: Masked (does not run for the user, under any circumstances)
This configuration achieves the same results as the following commands:
# System Units
systemctl enable example.service
systemctl disable example.target
systemctl unmask example.service
systemctl mask example.service
# User Units
systemctl --global enable example.timer
systemctl --global disable example.service
systemctl --global unmask example.service
systemctl --global mask example.service
For more information about these systemctl commands, please visit: https://www.freedesktop.org/software/systemd/man/latest/systemctl.html#enable%20UNIT%E2%80%A6 https://www.freedesktop.org/software/systemd/man/latest/systemctl.html#disable%20UNIT%E2%80%A6 https://www.freedesktop.org/software/systemd/man/latest/systemctl.html#unmask%20UNIT%E2%80%A6 https://www.freedesktop.org/software/systemd/man/latest/systemctl.html#mask%20UNIT%E2%80%A6