SystemRescue+ZFS 12.00+2.3.1
🌎 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.
2024-11-26 05:28:21 +01:00
# Overview
**SystemRescue+ZFS** is a fork of the [SystemRescue ](http://www.system-rescue.org/ ) distribution (based on [Arch Linux ](https://archlinux.org/ )) with the following improvements:
- [ZFS ](https://github.com/archzfs/archzfs/ ) supported out of the box
- [Serial console ](#serial-console ) enabled for all boot options, including [Memtest86+ ](https://www.memtest.org/ )
- EFI boot progress indicators for the kernel/initramfs/system stages
- [ISO image ](https://github.com/nchevsky/systemrescue-zfs/releases ) 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 ](https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html ), then [build ](#building ) a new image.
## Bootloader
| [GRUB ](https://www.gnu.org/software/grub/manual/grub/grub.html ) (EFI boot) | [SYSLINUX ](https://wiki.syslinux.org/wiki/index.php?title=SYSLINUX ) (legacy boot) |
| --- | --- |
| 📍 [`efiboot/grub/grubsrcd.cfg` ](efiboot/grub/grubsrcd.cfg )< br /> `serial --unit=0 --speed=115200 …` | 📍 [`syslinux/sysresccd_head.cfg` ](syslinux/sysresccd_head.cfg )< br /> `SERIAL 0 115200` |
## Kernel
📍 [`build.sh` ](build.sh )< br /> `consoles='console=ttyS0,115200 …'`
# Building
```sh
$ sudo ./build.sh [-d] [-v]
2022-02-26 18:38:12 +01:00
```
2022-02-26 17:14:18 +01:00
SystemRescue+ZFS 12.00+2.3.1
🌎 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.
2024-11-26 05:28:21 +01:00
- `-d` : Use fast compression, significantly speeding up development builds.
- `-v` : Print more information while building (strongly recommended).
## Dependencies
2021-05-24 20:44:44 +02:00
SystemRescue+ZFS 12.00+2.3.1
🌎 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.
2024-11-26 05:28:21 +01:00
[Arch Linux ](https://archlinux.org/download/ ) with the following packages installed:
- `arch-install-scripts`
- `archiso` from the custom [SystemRescue repository ](https://sysrescuerepo.system-rescue.org/ ) ⚠️
- `base-devel`
- `edk2-shell`
- `grub`
- `hugo`
- `isomd5sum`
- `mtools`
2023-01-29 18:19:21 +01:00
SystemRescue+ZFS 12.00+2.3.1
🌎 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.
2024-11-26 05:28:21 +01:00
## Rebuilds
2023-01-29 18:19:21 +01:00
SystemRescue+ZFS 12.00+2.3.1
🌎 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.
2024-11-26 05:28:21 +01:00
The state of successful [build steps ](#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
```sh
$ sudo rm work/build.make_*
```
2023-01-29 18:19:21 +01:00
SystemRescue+ZFS 12.00+2.3.1
🌎 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.
2024-11-26 05:28:21 +01:00
### 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
1. `make_pacman_conf`
2. `make_basefs`
3. `make_documentation`
4. `make_packages`
5. `make_customize_airootfs`
6. `make_setup_mkinitcpio`
7. `make_boot`
8. `make_boot_extra`
9. `make_syslinux`
10. `make_isolinux`
11. `make_efi`
12. `make_efiboot`
13. `make_prepare`
14. `make_imageinfo`
15. `make_iso`