🌎 External changes: - 🚀 Upgrade SystemRescue to v12.00 and archzfs to v2.3.1. - ➕ Add a no-firewall boot entry to the GRUB and SYSLINUX menus. (If you'd like to vote for this to become the default boot entry, leave a 👀 reaction on this release.) - 🪶 Replace Firefox with the more lightweight GNOME Web (`epiphany`). - ✂️ Remove packages `b43-fwcutter`, `darkhttpd`, `discount`, `dkms`, `geany`, `irssi`, `keepassxc`, `linux-atm`, `qtpass`, `xorg-bdftopcf`, `xorg-mkfontscale`, `xorg-sessreg`, `xorg-smproxy`, `xorg-x11perf`, `xorg-xcmsdb`, `xorg-xcursorgen`, `xorg-xdriinfo`, `xorg-xgamma`, `xorg-xkbevd`, `xorg-xkbprint`, `xorg-xkbutils`, `xorg-xlsatoms`, `xorg-xlsclients`, `xorg-xpr`, `xorg-xrefresh`, `xorg-xsetroot`, `xorg-xvinfo`, `xorg-xwd`, `xorg-xwud`, `yubikey-manager`, and `yubikey-personalization-gui`. - 🛠️ Fix reference to Featherpad (now Mousepad) left behind in `issue(5)` by v11.02+2.2.6. - 🛠️ Make the image's volume label ISO-9660-compliant. Closes #17.
2.6 KiB
Overview
SystemRescue+ZFS is a fork of the SystemRescue distribution (based on Arch Linux) with the following improvements:
- ZFS supported out of the box
- Serial console enabled for all boot options, including Memtest86+
- EFI boot progress indicators for the kernel/initramfs/system stages
- ISO image below 1 GiB in size
Serial console
A serial terminal is enabled out of the box on ttyS0/COM1 at 115,200 baud. If these settings are unsuitable, adjust the configuration of the appropriate bootloader and the kernel, then build a new image.
Bootloader
| GRUB (EFI boot) | SYSLINUX (legacy boot) |
|---|---|
📍 efiboot/grub/grubsrcd.cfgserial --unit=0 --speed=115200 … |
📍 syslinux/sysresccd_head.cfgSERIAL 0 115200 |
Kernel
📍 build.shconsoles='console=ttyS0,115200 …'
Building
$ sudo ./build.sh [-d] [-v]
-d: Use fast compression, significantly speeding up development builds.-v: Print more information while building (strongly recommended).
Dependencies
Arch Linux with the following packages installed:
arch-install-scriptsarchisofrom the custom SystemRescue repository ⚠️base-develedk2-shellgrubhugoisomd5summtools
Rebuilds
The state of successful build steps is persisted in work/build.make_* files. If such a file exists for a given build step, build.sh skips that step indefinitely. State files must be manually deleted for any steps that one wants reexecuted.
Full rebuild
$ sudo rm work/build.make_*
Partial rebuild
Delete the state file for the desired step and any downstream steps. For example, if you have customized the GRUB configuration, you must remove build.make_efi and its successors build.make_efiboot and build.make_iso.
Steps
make_pacman_confmake_basefsmake_documentationmake_packagesmake_customize_airootfsmake_setup_mkinitcpiomake_bootmake_boot_extramake_syslinuxmake_isolinuxmake_efimake_efibootmake_preparemake_imageinfomake_iso