You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 70bdc29
Browse filesBrowse the repository at this point in the historyBrowse files
linux_name2
committed
docs: decouple from systemd-boot, clarify bootloader-agnostic UKI support
Atomic system upgrades for Arch Linux on Btrfs + UKI + Secure Boot.
6
+
Atomic system upgrades for Arch Linux on Btrfs + UKI + optional Secure Boot.
7
7
8
-
NixOS/Silverblue-style generational updates on plain Arch: Btrfs snapshot → chroot → upgrade → build UKI → sign → reboot. Rollback is selecting a previous entry in systemd-boot.
8
+
NixOS/Silverblue-style generational updates on plain Arch: Btrfs snapshot → chroot → upgrade → build UKI → sign → reboot. Rollback is selecting a previous UKI entry in the boot menu.
9
9
10
10
## How it works
11
11
@@ -23,7 +23,9 @@ sudo atomic-upgrade
23
23
reboot → new generation active
24
24
```
25
25
26
-
Rollback: select a previous UKI entry in systemd-boot at boot time.
26
+
Rollback: select a previous UKI entry in the boot menu.
27
+
28
+
Each generation is a snapshot + UKI pair. The UKI contains the kernel and initramfs from that snapshot, and its cmdline points to that specific subvolume. Rollback works because each boot menu entry maps to one complete system state.
27
29
28
30
## Comparison
29
31
@@ -35,7 +37,7 @@ Rollback: select a previous UKI entry in systemd-boot at boot time.
@@ -293,11 +295,12 @@ On disks larger than ~200 GB, the free percentage may drop below 10% while absol
293
295
294
296
### Prerequisites
295
297
296
-
- Btrfs root filesystem
297
-
- systemd-boot
298
-
- Root on a Btrfs subvolume (any name — snapshots are created as `root-<timestamp>`)
298
+
- Btrfs root filesystem on a subvolume (any name — snapshots are created as `root-<timestamp>`)
299
+
- A bootloader or UEFI firmware that discovers UKI files (Type #2 entries) — systemd-boot, rEFInd, direct UEFI boot, etc.
299
300
- Secure Boot with sbctl *(optional, enable with `SBCTL_SIGN=1`)*
300
301
302
+
The tool places `.efi` files into `ESP/EFI/Linux/` (signed or unsigned depending on `SBCTL_SIGN`). Any boot environment that picks up UKI files from that path will work.
303
+
301
304
> **Important:**`/home`, `/var/log`, `/var/cache`, and other stateful data
302
305
> should live on **separate Btrfs subvolumes**. Only the root subvolume is
303
306
> snapshotted and rolled back — anything on the same subvolume will be
0 commit comments