From e10223f5ba70e6af675aaec231346a8f616a94f5 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 18 Jan 2026 06:27:27 -0600 Subject: Update documentation with testing results and bug fixes - Mark README documentation task as complete in TODO.org - Add config file documentation task - Update session-context.org with bugs found and fixed - Remove VM binary files from git tracking Testing completed: - 2-disk mirror: PASSED - 2-disk stripe: PASSED - Single disk: PASSED --- docs/session-context.org | 79 ++++++++++++++++++++++++++---------------------- 1 file changed, 43 insertions(+), 36 deletions(-) (limited to 'docs') diff --git a/docs/session-context.org b/docs/session-context.org index 5274ae3..c6a2a4a 100644 --- a/docs/session-context.org +++ b/docs/session-context.org @@ -4,7 +4,39 @@ * Current Session State ** What We're Working On -Testing unattended installation with --config-file option. Currently running 2-disk mirror test. +All 3 unattended installation tests completed successfully. + +** Bugs Found and Fixed This Session + +*** Bug 1: gather_input returns non-zero exit code +- Cause: `[[ -n "$WIFI_SSID" ]] && info "..."` returns 1 when WIFI_SSID is empty +- The bare `return` inherits this exit code +- With `set -e`, script exits immediately +- Fix: Changed `return` to `return 0` +- Commit: 2f5bb37 + +*** Bug 2: pacstrap hangs on provider prompts +- Cause: pacstrap prompts for package provider selection (iptables, initramfs) +- In unattended mode, no input is available +- Fix: Pipe `yes ""` to pacstrap to auto-select defaults +- Commit: 1dc4e95 + +*** Bug 3: fsck hook in mkinitcpio +- Cause: fsck hook was included in HOOKS for ZFS root +- ZFS doesn't use fsck, causes error messages +- Fix: Removed fsck from HOOKS line +- Commit: 1dc4e95 + +*** Bug 4: Missing hostid for ZFS boot +- Cause: ZFS uses hostid to identify pool ownership +- Without hostid, pool import can fail +- Fix: Generate/copy hostid and add spl.spl_hostid to kernel cmdline +- Commit: 1dc4e95 + +** Testing Status +- Test 1: 2-disk mirror - PASSED (installation complete, boots to passphrase prompt) +- Test 2: 2-disk stripe - PASSED (installation complete) +- Test 3: Single disk - PASSED (installation complete) ** Key Progress This Session @@ -13,52 +45,27 @@ Testing unattended installation with --config-file option. Currently running 2-d - Config only used when explicitly specified (prevents accidental disk wipes) - Example config at /root/install-archzfs.conf.example on ISO - Validates required fields: HOSTNAME, TIMEZONE, DISKS, ZFS_PASSPHRASE, ROOT_PASSWORD -- Sets sensible defaults for optional fields *** Boot Fixes for ZFS -- Removed fsck from mkinitcpio HOOKS (ZFS doesn't use fsck) +- Removed fsck from mkinitcpio HOOKS - Added hostid generation/copy to installed system - Added spl.spl_hostid to kernel command line - Removed 'quiet' from kernel params for visible boot messages -*** Multi-Disk RAID Support -- RAID level selection: mirror, stripe, raidz1/2/3 -- EFI partitions on all disks for boot redundancy -- Stripe option for max capacity (no redundancy) -- Dynamic capacity calculations in preview - -*** fzf-Based User Interface -- Replaced all select menus with fzf fuzzy finder -- Timezone: fuzzy search with current time preview -- Locale: all locales shown, format examples in preview -- Keymap: all keymaps with layout info -- Disk selection: multi-select (TAB), disk details preview -- RAID level: explanatory preview with capacity calculations -- WiFi: network list by signal strength, security info preview - -*** Documentation -- Created comprehensive README.org (15 sections) -- TODO.org with project tasks - ** Files Modified This Session -- custom/install-archzfs - Config file support, boot fixes -- custom/install-archzfs.conf.example - NEW: template for unattended installs +- custom/install-archzfs - Config file support, bug fixes +- custom/install-archzfs.conf.example - Template for unattended installs - build.sh - Copies example config to ISO -- README.org - Comprehensive documentation -- TODO.org - Project task tracking - -** Bugs Being Investigated -- Install script exiting early in unattended mode - FIXED with return 0 -- Still need to verify full installation completes and boots successfully +- .gitignore - Ignore VM disk images -** Testing Status -- Test 1: 2-disk mirror - IN PROGRESS (packages installing) -- Test 2: 2-disk stripe - PENDING -- Test 3: Single disk - PENDING +** Recent Commits +- 2f5bb37: Fix unattended mode exit issue (return 0) +- 1dc4e95: Add config file support for unattended installations ** Test Configuration -- VM: ./scripts/test-vm.sh --multi-disk -- SSH: sshpass -p archzfs ssh -p 2222 root@localhost +- VM: ./scripts/test-vm.sh --multi-disk (for RAID testing) +- VM: ./scripts/test-vm.sh (for single disk) +- SSH: sshpass -p archzfs ssh -p 2222 root@localhost (live ISO) - Config file: /root/test-mirror.conf ** Test Credentials -- cgit v1.2.3