feat(systemd): Add support for unmasking & masking units (#88)
* 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>
This commit is contained in:
parent
9357cf17f1
commit
33226b9b73
2 changed files with 55 additions and 5 deletions
|
|
@ -1,6 +1,6 @@
|
|||
# `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 or disable under each category.
|
||||
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
|
||||
|
||||
|
|
@ -11,22 +11,34 @@ system:
|
|||
- 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)
|
||||
- `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)
|
||||
- `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:
|
||||
|
||||
|
|
@ -34,8 +46,18 @@ 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 --user enable example.timer
|
||||
systemctl --user disable example.service
|
||||
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
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue