<feed xmlns='http://www.w3.org/2005/Atom'>
<title>archangel/custom/zfsrollback, branch v0.8</title>
<subtitle>Arch Linux installer ISO — ZFS-on-root or BTRFS, doubles as rescue disk
</subtitle>
<id>https://git.cjennings.net/archangel/atom?h=v0.8</id>
<link rel='self' href='https://git.cjennings.net/archangel/atom?h=v0.8'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/'/>
<updated>2026-02-23T17:54:25+00:00</updated>
<entry>
<title>refactor: rename custom/ to installer/ for clarity</title>
<updated>2026-02-23T17:54:25+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-02-23T17:54:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=6631521d9f45b73f9b4df76db9148d82af8d57b9'/>
<id>urn:sha1:6631521d9f45b73f9b4df76db9148d82af8d57b9</id>
<content type='text'>
The custom/ directory name was an archiso implementation detail. Renamed
to installer/ which clearly communicates that this directory contains the
installer scripts and utilities that ship on the ISO.

Updated all references in build.sh, Makefile, test-install.sh, and README.
</content>
</entry>
<entry>
<title>scrub personal info and make distribution targets configurable</title>
<updated>2026-02-23T12:02:17+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-02-23T12:02:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=51636daebfac034380d1122ad5ea22c2e6dd9cf4'/>
<id>urn:sha1:51636daebfac034380d1122ad5ea22c2e6dd9cf4</id>
<content type='text'>
Remove personal email addresses, hardcoded paths, and infrastructure
references to prepare for open-source release. Distribution targets
in build-release are now configurable via environment variables,
and archsetup inclusion is opt-in.
</content>
</entry>
<entry>
<title>fix: correct broken shebangs in zfssnapshot and zfsrollback</title>
<updated>2026-02-23T05:22:48+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-02-23T05:22:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=26831607be9ae3bbc542bfc352dab718a486cab2'/>
<id>urn:sha1:26831607be9ae3bbc542bfc352dab718a486cab2</id>
<content type='text'>
#!/bin/env bash doesn't exist — changed to #!/usr/bin/env bash.
</content>
</entry>
<entry>
<title>Replace GRUB with ZFSBootMenu bootloader</title>
<updated>2026-01-23T05:21:18+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-23T05:21:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=0ffe7a85a1b024b88e4ddc3305c5f805edd6e8e1'/>
<id>urn:sha1:0ffe7a85a1b024b88e4ddc3305c5f805edd6e8e1</id>
<content type='text'>
This is a major change that replaces the GRUB bootloader with ZFSBootMenu,
providing native ZFS boot environment support.

Key changes:
- EFI partition reduced from 1GB to 512MB (only holds ZFSBootMenu)
- EFI now mounts at /efi instead of /boot
- Kernel and initramfs live on ZFS root (enables snapshot boot with matching kernel)
- Downloads pre-built ZFSBootMenu EFI binary from get.zfsbootmenu.org
- Creates EFI boot entries for all disks in multi-disk configurations
- Syncs ZFSBootMenu to all EFI partitions for redundancy
- Sets org.zfsbootmenu:commandline on zroot/ROOT for kernel cmdline inheritance
- Sets bootfs pool property for default boot environment
- AMD GPU workarounds (pg_mask, cwsr_enable) added to kernel cmdline when AMD detected

Deleted GRUB snapshot tooling (no longer needed):
- custom/grub-zfs-snap
- custom/40_zfs_snapshots
- custom/zz-grub-zfs-snap.hook
- custom/zfs-snap-prune

Updated helper scripts:
- zfssnapshot: removed grub-zfs-snap call, shows ZFSBootMenu tip
- zfsrollback: removed grub-zfs-snap call, notes auto-detection

Tested configurations:
- Single disk installation
- 2-disk mirror (mirror-0)
- 3-disk RAIDZ1 (raidz1-0)
- All boot correctly with ZFSBootMenu
</content>
</entry>
<entry>
<title>Fix zfsrollback to process children before parents</title>
<updated>2026-01-19T15:49:38+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-19T15:49:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=dba73f8f9749b0efd78c1d406ac20e58930a8021'/>
<id>urn:sha1:dba73f8f9749b0efd78c1d406ac20e58930a8021</id>
<content type='text'>
Sort datasets by path depth (deepest first) before rolling back.
ZFS requires children to be rolled back before their parents,
otherwise rollback can fail or skip datasets.
</content>
</entry>
<entry>
<title>Increase fzf height in zfsrollback to 70%</title>
<updated>2026-01-19T14:51:16+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-19T14:51:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=a8c865a6712304d4921b6394e3cc5b0ed601fbbc'/>
<id>urn:sha1:a8c865a6712304d4921b6394e3cc5b0ed601fbbc</id>
<content type='text'>
40% was too small on console, showing only ~2 lines.
70% gives roughly 2/3 of screen for snapshot selection.
</content>
</entry>
<entry>
<title>Add zfssnapshot and zfsrollback scripts to ISO</title>
<updated>2026-01-19T14:39:28+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-19T14:39:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=da3e568d6554458e03cb3d9eee5a820b7e970bab'/>
<id>urn:sha1:da3e568d6554458e03cb3d9eee5a820b7e970bab</id>
<content type='text'>
Copied from archsetup to make these tools available on the live ISO
for rescue scenarios and post-install management.

zfssnapshot:
- Creates recursive snapshots across all pools
- Timestamps with descriptive labels (YYYY-MM-DD_HH-MM-SS_description)
- Integrates with grub-zfs-snap for boot menu updates

zfsrollback:
- Interactive fzf-based snapshot selection
- Two modes: single dataset or all matching datasets
- Safety warnings showing what will be destroyed
- Special genesis rollback warning
</content>
</entry>
</feed>
