<feed xmlns='http://www.w3.org/2005/Atom'>
<title>archangel/custom/lib/config.sh, branch main</title>
<subtitle>Arch Linux installer ISO — ZFS-on-root or BTRFS, doubles as rescue disk
</subtitle>
<id>https://git.cjennings.net/archangel/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/archangel/atom?h=main'/>
<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=fd2ea796b20bcbebea19c43978fb08e3cd6754ed'/>
<id>urn:sha1:fd2ea796b20bcbebea19c43978fb08e3cd6754ed</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>Phase 2.8: Add LUKS encryption for btrfs</title>
<updated>2026-01-24T11:33:13+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-24T11:33:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=c55ce46084635c188abb4516ba6ee6eee38dd11d'/>
<id>urn:sha1:c55ce46084635c188abb4516ba6ee6eee38dd11d</id>
<content type='text'>
- Add LUKS functions to btrfs.sh (create/open/close container)
- Add crypttab configuration for boot
- Add encrypt hook to mkinitcpio HOOKS
- Add cryptdevice parameter to GRUB cmdline
- Add get_btrfs_encryption_choice and get_luks_passphrase prompts
- Add LUKS_PASSPHRASE to config variables
- Update show_summary and print_btrfs_summary for encryption status
- Add btrfs-luks.conf test config

VM test pending.
</content>
</entry>
<entry>
<title>Phase 1.4: Add filesystem selection prompt</title>
<updated>2026-01-24T02:02:02+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-24T02:02:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=337dea91f567ceebb1f9dbef2b3cd93ca440b795'/>
<id>urn:sha1:337dea91f567ceebb1f9dbef2b3cd93ca440b795</id>
<content type='text'>
- Add FILESYSTEM variable to config (zfs or btrfs)
- Add select_filesystem() function with fzf support
- Update gather_input() to prompt for filesystem in interactive mode
- Add validation for FILESYSTEM in unattended mode
- Btrfs selection errors with "not yet implemented"
- Update banner to show "Archangel" branding
- Update config example with FILESYSTEM option

Groundwork for btrfs support - filesystem choice is now captured,
installation logic gates on FILESYSTEM variable.
</content>
</entry>
<entry>
<title>Fix set -e compatibility in lib functions</title>
<updated>2026-01-24T00:02:52+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-24T00:02:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=c4979e8c8aec181f2b335c65823f1311815777f5'/>
<id>urn:sha1:c4979e8c8aec181f2b335c65823f1311815777f5</id>
<content type='text'>
- Replace [[ ]] &amp;&amp; error pattern with if/then/fi
- Pattern causes exit when condition is false with set -e
- Fixed in: common.sh, config.sh, disk.sh, install-archzfs

Discovered during VM testing: the &amp;&amp; short-circuit returns exit
code 1 when condition is false, triggering set -e to abort.
</content>
</entry>
<entry>
<title>Phase 1.1: Create lib/ directory structure for archangel refactor</title>
<updated>2026-01-23T21:45:55+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-23T21:45:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=e0f8d37961d189197bd5b4379532adb5957dea02'/>
<id>urn:sha1:e0f8d37961d189197bd5b4379532adb5957dea02</id>
<content type='text'>
- Add custom/lib/common.sh: output, validation, fzf prompts, disk utils
- Add custom/lib/config.sh: argument parsing, config loading, validation
- Add custom/lib/disk.sh: partitioning, EFI management, disk selection
- Add custom/lib/zfs.sh: pool, datasets, ZFSBootMenu, services, hooks
- Update install-archzfs to source libs
- Remove duplicated output/config functions from main script

Prepares codebase for btrfs filesystem support (Phase 2).
</content>
</entry>
</feed>
