aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--TODO.org35
-rw-r--r--docs/session-context.org120
2 files changed, 56 insertions, 99 deletions
diff --git a/TODO.org b/TODO.org
index 1d5d4f6..f52bc38 100644
--- a/TODO.org
+++ b/TODO.org
@@ -238,13 +238,42 @@ Features to consider:
- Mount dataset for build artifacts and cache
- Snapshot before/after builds for easy cleanup
-** TODO [#C] Consider Avahi for USB boot disk discoverability
+** DONE [#C] Consider Avahi for USB boot disk discoverability
+CLOSED: [2026-01-19 Sun]
Make the live ISO discoverable on the network by name (e.g., archzfs.local) when booted.
This would make SSH access easier without needing to find the IP address.
-Already have avahi package installed - just need to configure/enable it.
+Implemented in commit 0bd172a:
+- Added avahi and nss-mdns packages to ISO
+- Enabled avahi-daemon.service
+- Set hostname to "archzfs"
+- Live ISO now accessible as root@archzfs.local
+
+** TODO [#B] Add Avahi mDNS to installed systems
+Currently Avahi is only configured on the live ISO, not on the installed system.
+After install-archzfs completes and the user reboots, mDNS doesn't work.
+
+*** Implementation
+Add to install-archzfs (during package installation or system configuration):
+#+BEGIN_SRC bash
+# Install Avahi for mDNS discovery
+pacstrap /mnt avahi nss-mdns
+
+# Enable avahi-daemon
+arch-chroot /mnt systemctl enable avahi-daemon.service
+
+# Configure NSS for mDNS (if not automatic)
+# Ensure /etc/nsswitch.conf has mdns_minimal in hosts line
+#+END_SRC
+
+*** Result
+After installation, system will be accessible as <hostname>.local on the local network.
+Example: ratio.local, framework.local, etc.
-Note: Nice to have but not critical. IP can be found via router or console.
+*** Notes
+- Hostname is already set during install (user provides it)
+- nss-mdns should auto-configure nsswitch.conf on install
+- Test on next install to verify it works
** TODO [#C] Consider adding bootable archzfs ISO to GRUB boot menu
Store the archzfs ISO on disk and add a GRUB menu entry to boot it directly - no USB drive needed for recovery/reinstall.
diff --git a/docs/session-context.org b/docs/session-context.org
index bd29349..aeaeb02 100644
--- a/docs/session-context.org
+++ b/docs/session-context.org
@@ -1,107 +1,35 @@
#+TITLE: Session Context
#+DATE: 2026-01-19
-* Current Session: Monday 2026-01-19 13:12 - 17:25 CST (ongoing)
+* Current Session: Monday 2026-01-19 17:29 CST (ongoing)
** Summary
-Major session: Fixed journald/ZFS race condition, added AMD ISP firmware to initramfs, added wireless-regdb for WiFi regulatory compliance. Found and fixed ISP firmware path bug during ratio install. Added Avahi mDNS for easy SSH access. Fixed build.sh to include Avahi config (was being overwritten by releng profile copy).
-
-** IMPORTANT: Reboot Required
-
-The work directory has stale bind mounts from a killed mkarchiso build. Need to reboot to clean them up before next build.
-
-After reboot:
-1. Run: sudo rm -rf /home/cjennings/code/archzfs/work
-2. Run: sudo ./scripts/build-release --yes
-3. Test in VM or on hardware that hostname is "archzfs" and avahi-daemon is running
+Continued from interrupted session. Rebuilt ISO with Avahi/hostname fixes, tested successfully, deployed, committed. Verified ratio.local install - no errors.
** Commits This Session
| Commit | Description |
|--------|-------------|
-| c57f1a1 | Add comprehensive installation tests and ZFS script deployment |
-| a6fa09b | Add wget to target system packages |
-| 24ede61 | Fix journald on ZFS: wait for mounts, enable persistent storage |
-| 11a141c | Sync templates, add session context |
-| d28890e | Add AMD ISP firmware to initramfs for APUs with cameras |
-| 59565e6 | Add wireless-regdb for proper WiFi regulatory compliance |
-| PENDING | Fix ISP firmware path, add Avahi mDNS to build.sh |
-
-** Key Fixes Made
-
-*** 1. journald + ZFS Race Condition (24ede61)
-- Problem: journald starts ~650ms before ZFS mounts /var/log
-- Fix: Two systemd drop-ins in install-archzfs
-
-*** 2. AMD ISP Firmware Path Bug (in install-archzfs)
-- Problem: ISP firmware config wrote /mnt/usr/lib/... path
-- mkinitcpio runs in chroot where /mnt doesn't exist
-- Fix: Strip /mnt prefix: local chroot_path="${isp_firmware#/mnt}"
-
-*** 3. Avahi mDNS for Easy SSH (in build.sh - PENDING COMMIT)
-- Problem: Had to physically check IP address on each machine
-- Root cause found: build.sh deletes profile/ and copies fresh from /usr/share/archiso/configs/releng
-- Fix: Added to build.sh (lines 234-241):
- - Enable avahi-daemon.service symlink
- - Set hostname to "archzfs"
- - Add avahi + nss-mdns to packages (lines 116-118)
-- After rebuild, can SSH to: root@archzfs.local (password: archzfs)
-
-*** 4. WiFi Regulatory Database (59565e6)
-- Added wireless-regdb to pacstrap package list
-
-** Files Modified (Not Yet Committed)
-
-*** build.sh
-- Line 116-118: Added avahi and nss-mdns packages
-- Line 234-241: Added avahi-daemon.service enable and hostname set to "archzfs"
-
-*** custom/install-archzfs
-- ISP firmware path fix (strip /mnt prefix)
-
-** ratio Machine Status
-
-- Currently running another test
-- Last known IP: 192.168.86.56
-- Previous installs had "archiso" hostname (not "archzfs")
-- Avahi not enabled in previous builds
-
-** Why Previous Builds Failed
-
-The build.sh script does this at the start:
-#+begin_src bash
-rm -rf "$PROFILE_DIR"
-cp -r /usr/share/archiso/configs/releng "$PROFILE_DIR"
-#+end_src
-
-This deletes any manual changes to profile/airootfs/etc/hostname.
-The fix was to add the hostname and avahi setup INSIDE build.sh after the copy.
-
-** Next Steps After Reboot
-
-1. Clean work directory: sudo rm -rf /home/cjennings/code/archzfs/work
-2. Build ISO: sudo ./scripts/build-release --yes
-3. Test in VM that:
- - hostname is "archzfs" (not "archiso")
- - avahi-daemon.service is active
-4. If VM test passes, flash to USB and test on real hardware
-5. Commit all changes
-
-** ISO Distribution Targets
-
-- ~/Downloads/isos/
-- truenas.local:/mnt/vault/isos/
-- /dev/sda (ARCHZFS USB)
-- /dev/sdb1 (Ventoy)
-
-** Warnings Reviewed (ratio)
-
-| Warning | Status |
-|---------|--------|
-| watchdog did not stop | Benign - systemd takes over, no action needed |
-| RDSEED32 broken | AMD CPU quirk, unfixable, harmless |
-| ZFS taints kernel | Expected (CDDL license) |
-| ISP firmware missing | FIXED in install script |
-| regulatory.db missing | FIXED in install script |
-
+| 0bd172a | Add Avahi mDNS for easy SSH access, fix ISP firmware path |
+
+** What Was Done
+
+1. Recovered from interrupted session
+2. Built ISO with Avahi/hostname fixes
+3. Sanity tests: 13/13 PASSED
+4. Deployed to ~/Downloads/isos/, TrueNAS, USB drive
+5. VM test: hostname "archzfs", avahi active, mDNS working
+6. Committed and pushed
+7. Verified ratio.local install:
+ - ZFS pool ONLINE (mirror, 7.12TB)
+ - All 15 datasets mounted correctly
+ - No failed services
+ - Only benign warnings (RDSEED32, ZFS CDDL taint, amdgpu timeout)
+ - ISP firmware and journald fixes working
+
+** ratio.local Status
+
+- Framework Desktop, AMD Ryzen AI Max 300
+- Kernel 6.12.66-1-lts, ZFS 2.3.3-1
+- Install: SUCCESS, no errors