<feed xmlns='http://www.w3.org/2005/Atom'>
<title>archangel/scripts/build-release, 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-23T12:06:55+00:00</updated>
<entry>
<title>chore: add set -euo pipefail to scripts for safety</title>
<updated>2026-02-23T12:06:55+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-02-23T12:06:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=499b3da410f92d58fed05e1a0cb68c3a20421b69'/>
<id>urn:sha1:499b3da410f92d58fed05e1a0cb68c3a20421b69</id>
<content type='text'>
Enable undefined variable checking (set -u) and pipefail across
standalone scripts. Guard SUDO_USER references with ${SUDO_USER:-}
for set -u compatibility.
</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>chore: standardize shebangs, fix lint target, add .editorconfig</title>
<updated>2026-02-23T11:27:27+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-02-23T11:27:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=f7526e7eff76204bff4b4e6e37507311bf01002f'/>
<id>urn:sha1:f7526e7eff76204bff4b4e6e37507311bf01002f</id>
<content type='text'>
- Change all script shebangs to #!/usr/bin/env bash for portability
  (heredocs writing to installed systems keep #!/bin/bash)
- Remove || true from Makefile lint target so shellcheck errors fail the build
- Add .editorconfig for consistent formatting across editors
</content>
</entry>
<entry>
<title>clean personal info and private files from repository</title>
<updated>2026-02-23T05:23:59+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-02-23T05:23:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=8b9c2cc247f8d71d570921cb127e7e08cfac7674'/>
<id>urn:sha1:8b9c2cc247f8d71d570921cb127e7e08cfac7674</id>
<content type='text'>
- Remove personal hardware specs, machine-specific troubleshooting docs,
  and video transcript from assets/
- Remove stale PLAN-zfsbootmenu-implementation.org (feature complete)
- Remove .stignore (Syncthing config, not project-relevant)
- Untrack todo.org (personal task tracker with private infra details)
- Make archsetup path configurable via ARCHSETUP_DIR env var in build.sh
- Use $REAL_USER instead of hardcoded username in build-release scp
</content>
</entry>
<entry>
<title>fix: archzfs key prompt hang, test false positive, add local distribution</title>
<updated>2026-02-12T18:06:33+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-02-12T18:06:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=de8dbe6edaf1be17a52f971f22da81c6dcf270f7'/>
<id>urn:sha1:de8dbe6edaf1be17a52f971f22da81c6dcf270f7</id>
<content type='text'>
- Change archzfs SigLevel to Never (pacstrap -K empty keyring caused
  interactive GPG prompt blocking unattended installs)
- Fix pgrep matching avahi-daemon's [archangel.local] in full-test.sh
- Bump install timeout to 30min for DKMS builds
- Add ~/downloads/isos and archsetup inbox to build-release distribution
- Sync templates
</content>
</entry>
<entry>
<title>refactor: rename archzfs to archangel, simplify build-release</title>
<updated>2026-01-31T20:46:21+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-31T20:46:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=d32546a050e08c666ec54cd422bd8a79d66e81c3'/>
<id>urn:sha1:d32546a050e08c666ec54cd422bd8a79d66e81c3</id>
<content type='text'>
- Standardize naming: VM names, hostname, passwords, ISO naming
- Remove USB, Ventoy, and local deployment from build-release
- Add snapper package and Btrfs validation tests to sanity-test
- Update README for dual ZFS/Btrfs architecture
- Delete obsolete SESSION-CONTEXT.md and download-archzfs-iso.sh
</content>
</entry>
<entry>
<title>Fix downloads path (lowercase)</title>
<updated>2026-01-21T00:50:57+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-21T00:50:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=d2ecb549a526e2509aaa7d4ea698f4c68e08562f'/>
<id>urn:sha1:d2ecb549a526e2509aaa7d4ea698f4c68e08562f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add comprehensive installation tests and ZFS script deployment</title>
<updated>2026-01-19T19:16:33+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-19T19:16:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=72abc70a42a505af365fc5a892009ebeeba524ec'/>
<id>urn:sha1:72abc70a42a505af365fc5a892009ebeeba524ec</id>
<content type='text'>
- Add scripts/full-test.sh for automated install testing (single, mirror, raidz1)
- Add --full-test option to build-release workflow
- Install zfssnapshot and zfsrollback to target system during install
- Simplify .gitignore to exclude entire vm/ directory
</content>
</entry>
<entry>
<title>Add --yes flag for fully automated distribution</title>
<updated>2026-01-19T17:27:38+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-19T17:27:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=62107e4f24203b6f5607bb6cb5e40fe85c5beaae'/>
<id>urn:sha1:62107e4f24203b6f5607bb6cb5e40fe85c5beaae</id>
<content type='text'>
New --yes/-y flag skips the dd confirmation prompt, allowing
build-release to run completely unattended for CI/CD workflows.

The ARCHZFS label on the drive is sufficient safety - if it has
that label, it was created by this process and is the intended target.
</content>
</entry>
<entry>
<title>Update build-release for TrueNAS and Framework drives</title>
<updated>2026-01-19T17:16:37+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-19T17:16:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archangel/commit/?id=cb2db4e8a6e7ebb6f3a9c2f743543fdff54f576e'/>
<id>urn:sha1:cb2db4e8a6e7ebb6f3a9c2f743543fdff54f576e</id>
<content type='text'>
- Use cjennings@truenas.local instead of root (has SSH keys)
- Remove removable check for ARCHZFS drives (Framework expansion
  cards show as internal but are hot-swappable)
- Still requires 'yes' confirmation before dd for safety
</content>
</entry>
</feed>
