Systemd also has a newer feature named sysupdate which allows systemd to manage the host operating system. It has some really nice features around integrity and trusted boot.<p><a href="https://man.archlinux.org/man/systemd-sysupdate.8.en" rel="nofollow">https://man.archlinux.org/man/systemd-sysupdate.8.en</a><p>Here is a discussion about why they chose it for building an appliance like operating system for GNOME:<p><a href="https://discourse.gnome.org/t/why-did-gnome-os-choose-systemd-sysupdate-over-bootc/24642" rel="nofollow">https://discourse.gnome.org/t/why-did-gnome-os-choose-system...</a><p>Alternatively, there is also bootable containers:<p><a href="https://docs.fedoraproject.org/en-US/bootc/getting-started/" rel="nofollow">https://docs.fedoraproject.org/en-US/bootc/getting-started/</a>