r/linux • u/raid5atemyhomework • 17h ago
Software Release [Announce] zfsbootmenu-installer 1.1.0: Root-on-ZFS AND Secure Boot installation of ANY(*) Debian- and Ubuntu-derived distro! Just give it the distro's Live .iso file!
github.com(*) Terms and conditions apply. See post for details.
Specifically:
x86_64. Sorry ARM enthusiasts!- Uses
apt, which is probably true for ~every Debian-derivative. - Currently the Debian-derivative must be using SystemD. I know ZFS includes scripts that work in sysvinit, but I'm not familiar with how Debian-derivatives add those scripts to rc directories; help from a Devuan native wanted.
- The Live ISO MUST use a specific layout and
install technique.
Most Live ISOs use Casper to create an in-memory Live
filesystem overlay, and then use Calamares to install
the distro.
- Most Casper uses have a directory
casper/in the Live ISO, containingfilesystem.squashfsas the root filesystem, and optionallyfilesystem.manifest-removefor packages to remove after installation. - Most Calamares uses will just copy the root
filesystem underneath the Casper overlay into the
new root partition on the persistent storage, then
uninstall Live packages (sometimes listed in the
filesystem.manifest-removefile). Usually the distro only changes the Calamares branding. - Live ISOs which use the above pattern, which is
nearly all Debian- and Ubuntu-derivatives, can be
used with the
...FromISOoption. - SlimbookOS and especially TUXEDO-OS (Ubuntu-derived version) have a variant of the above technique; the script detects when those variants are in use and will adapt to their Live ISOs automatically.
- Ironically, neither Debian nor Ubuntu use this
technique for their Live ISOs; instead they
debootstrapinto the new rootfs, indicating the on-USB apt cache as a (temporary) repository. Some Debian installers even forget to remove the temporary repository after installing. - You can just select Ubuntu26.04 or Debian13 on
the directly-supported distro list if you want
those; they use the classic
debootstraptechnique.
- Most Casper uses have a directory
- The script automatically detects the ZFS situation
of your distro:
- ZFS in kernel package --- does not separately install ZFS, only its utility tools.
- ZFS in
zfs-dkmspackage in distro repo - No ZFS in distro repo --- compile OpenZFS from source.
- The script automatically handles signing of
installed kernels and DKMS kernel modules for
Secure Boot.
- You need to install a Machine Owner Key once, on first reboot. Just "Enrol MOK" when prompted and select "Continue" then enter your password.
__ ___ _ __ . ,
'/ |_ (_' |_) |_ |\ /| _ _ -INSTALLER
/_ | ._) |_)()()|_ | \/ |(=| ||_|
The script is intended to be used primarily for daily-driver laptops and personal / family desktops.
You might think "isn't ZFS for big servers and
won't I need tons of ECC memory and at least
three disk bays?"
But you get SNAPSHOTS, and for a typical
modern daily-driver system with an SSD, you can
get away with a small zfs_arc_max of 10% of
your memory or less (1Gb ARC max is fine for a
typical SSD daily-driver).
The script provides direct support for:
- Ubuntu26.04 / KUbuntu26.04 (Resolute)
- Debian13 (Trixie)
- SlimbookOS26
- Pop!_OS24.04
- TUXEDO-OS 2026/09 (Ubuntu version)
- PureOS11
- elementaryOS8
For everything other than Ubuntu / KUbuntu and Debian13, the script actually just downloads and validates the .iso file and then uses the "install from ISO file" path internally.
In addition, it has been tested (in a virtual machine) to be able to install from the following Live .iso files:
Zorin-OS-18.1-Core-64-bit.isolinuxmint-22.3-cinnamon-64bit.iso
Note that the script makes an effort to remove grub
and os-prober, both of which will annoy you with
warnings when they can't find a Grub bootloader in
the ESP every time you apt upgrade the kernel.
Unfortunately, some distros make them a strong
dependency of their distro-specific packages:
tuxedo-base-fileszorin-os-desktop
If the distro has such strong package dependencies on grub and/or os-prober, the script does not remove them as this can lead to broken installs. You'll just have to tolerate the nagging.
Pop!_OS24.04 Cosmic has a known issue where auto-login will disable screen locking until you log out and log in again. Please ask System76 to fix it.
The script automatically installs
zfs-auto-snapshot, because automatically-managed
snapshots are AWESOME.
If you want to disable it completely:
- On distros where ZFS is available either in-kernel
or in
zfs-dkms, justsudo apt remove zfs-auto-snapshot. - On distros without ZFS,
zfsbootmenu-installerwill installzfs-auto-snapshot-activateandzfs-auto-snapshot-deactivatescripts to completely activate or deactivatezfs-auto-snapshot. Run those as root.