Commit graph

8 commits

Author SHA1 Message Date
dc78da4d03
feat(pipewire): Add alsa integration
Any programs running through alsa only (such as spotify_player on
voidlinux) should now also work correctly through the pipewire stack.
2025-03-13 11:24:16 +01:00
317b931de0
feat(basic): Add socklog service
Allows the primary user to read syslogs (and daemon logs which get
transferred to syslogs).
2025-03-13 11:24:15 +01:00
afac310f21
ref(roles): All roles use desired package state
By setting the `desired_package_state` variable we can change if ansible
should only ensure that the packages exist on the system (`present`) or
that they are also updated to their latest version (`latest`).
2025-03-13 11:24:14 +01:00
5817a81f40
fix(playbooks): Remove duplicated play keys 2025-03-13 11:24:14 +01:00
030b8ec291
ref(inventory): Split up inventory into group vars
One inventory targets a local machine (`inv-local.yaml`, chosen by default)
while the other targets a chrooted installation accessible from another
system, usually in the `/mnt/void` directory (`inv-chroot.yaml`, has to
be called like `ansible-playbook -i inv-chroot.yaml`).
2025-03-13 11:24:13 +01:00
19162e2af3
feat(backup): Add restic backup
Restic backup creates a snapper snapshot of the root system which it
then chroots into and starts a restic backup to a (wasabi) S3 bucket to.

Intended to roughly follow this
<https://codeberg.org/silmaril/my-restic-solution> solution to achieve
restic backup of the _newest_ snapshot of my live root system.
2025-03-13 11:24:13 +01:00
2400bbf1af
feat(backup): Default to root user using snapper
If no primary user is defined in the playbooks, we give only the root
user access to the snapper command by default.
2025-03-13 11:24:12 +01:00
b3b280fbe4
ref(playbook): Change to role-based structure 2025-03-13 11:24:08 +01:00