<feed xmlns='http://www.w3.org/2005/Atom'>
<title>archangel/custom/lib/common.sh, 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>fix: resolve SC2155 shellcheck warnings in custom/lib/</title>
<updated>2026-02-23T12:05:25+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-02-23T12:05:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=b37f0b357bb2ad7da0d2de311540af5553de96cd'/>
<id>urn:sha1:b37f0b357bb2ad7da0d2de311540af5553de96cd</id>
<content type='text'>
Declare and assign local variables separately to avoid masking
return values from command substitutions.
</content>
</entry>
<entry>
<title>refactor: remove archsetup references, make installer standalone</title>
<updated>2026-01-25T17:37:06+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-25T17:37:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=239536ce0722c2da81760a223e5bd526fcc67184'/>
<id>urn:sha1:239536ce0722c2da81760a223e5bd526fcc67184</id>
<content type='text'>
- Remove copy_archsetup function and calls from ZFS/Btrfs paths
- Update SSH hardening messages to generic advice
- Change sanoid references to tips without archsetup dependency
- Improve filesystem dialog descriptions
</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=53e82d802dba330ec8e5a568d6250e04f1193f0c'/>
<id>urn:sha1:53e82d802dba330ec8e5a568d6250e04f1193f0c</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=c74f656694e084fdf748f7ac86aa4b2361cbe1ed'/>
<id>urn:sha1:c74f656694e084fdf748f7ac86aa4b2361cbe1ed</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=74fb6ab9cc2b8d38ea75a6b52b67ec34281a2338'/>
<id>urn:sha1:74fb6ab9cc2b8d38ea75a6b52b67ec34281a2338</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>
