aboutsummaryrefslogtreecommitdiff
path: root/docs
Commit message (Collapse)AuthorAgeFilesLines
* Add btrfs implementation planCraig Jennings2026-01-231-0/+209
| | | | | | - Create PLAN-archangel-btrfs.org with 6-phase implementation - Phases: Refactor, Btrfs, Multi-disk, Testing, CLI tools, Docs - Add TODO referencing the plan
* Expand testing validation checks in btrfs researchCraig Jennings2026-01-231-28/+71
| | | | | | | - Add reboot survival checks (catches misconfigured services) - Rollback tests must include reboot for full validation - Document ZFSBootMenu rollback bug (needs filing) - Expand failure recovery and encryption checks
* Add archsetup --chroot task, update session contextCraig Jennings2026-01-231-80/+40
| | | | | | | - Add TODO [#B] for archsetup --chroot mode to enable full workstation setup during install-archangel chroot phase - Document required changes: skip systemctl start, ping checks, tmpfs mount - Update session context with archangel naming decision
* session: Code review workflow and btrfs expansion researchCraig Jennings2026-01-231-56/+78
|
* Research: Btrfs expansion and multi-filesystem supportCraig Jennings2026-01-232-37/+467
| | | | | | | | | | | | | | | | Comprehensive research for expanding project to support both ZFS and Btrfs: - Feature parity analysis (ZFS vs Btrfs equivalents) - Btrfs limitations: RAID 5/6 unstable, no native encryption (use LUKS) - Recommended subvolume layout: @, @home, @snapshots, @var_log, @var_cache - Snapshot stack: snapper + snap-pac + grub-btrfs + btrfs-assistant - Multi-disk support: raid1 (mirror), raid10 only - Installer architecture proposal with modular lib/ structure - Testing strategy and VM test matrix - Project rename recommendation: archsnap Cloned 8 reference repos: grub-btrfs, easy-arch, arch-btrfs-installation, btrfs-assistant, snap-pac, btrbk, buttermanager, alis
* Add code review workflow and project cleanup tasksCraig Jennings2026-01-232-0/+326
| | | | | | | | | | | - Create docs/project-workflows/code-review.org with comprehensive code review checklist based on Code Review Pyramid framework - Add 14 new tasks to todo.org from senior developer code review: - Priority A: README GRUB refs, missing LICENSE, skeleton script - Priority B: Stale files, Makefile lint, documentation gaps - Priority C: Style consistency, .editorconfig, test docs - Add Makefile targets to todo.org: deps, lint, deploy - Create docs/session-context.org for session tracking
* Remove session context after wrap-upCraig Jennings2026-01-231-52/+0
|
* session: Bare metal ZFSBootMenu validation on ratioCraig Jennings2026-01-231-0/+34
| | | | | Validated install-archzfs on Framework Desktop with 2-disk NVMe mirror. ZFSBootMenu installed on both EFI partitions with redundant boot entries.
* session: ZFSBootMenu implementation and testing completeCraig Jennings2026-01-232-27/+85
| | | | | Implemented and tested ZFSBootMenu bootloader replacement. All VM tests passed (single disk, mirror, raidz1). ISO copied to Ventoy drive.
* Replace GRUB with ZFSBootMenu bootloaderCraig Jennings2026-01-223-0/+641
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a major change that replaces the GRUB bootloader with ZFSBootMenu, providing native ZFS boot environment support. Key changes: - EFI partition reduced from 1GB to 512MB (only holds ZFSBootMenu) - EFI now mounts at /efi instead of /boot - Kernel and initramfs live on ZFS root (enables snapshot boot with matching kernel) - Downloads pre-built ZFSBootMenu EFI binary from get.zfsbootmenu.org - Creates EFI boot entries for all disks in multi-disk configurations - Syncs ZFSBootMenu to all EFI partitions for redundancy - Sets org.zfsbootmenu:commandline on zroot/ROOT for kernel cmdline inheritance - Sets bootfs pool property for default boot environment - AMD GPU workarounds (pg_mask, cwsr_enable) added to kernel cmdline when AMD detected Deleted GRUB snapshot tooling (no longer needed): - custom/grub-zfs-snap - custom/40_zfs_snapshots - custom/zz-grub-zfs-snap.hook - custom/zfs-snap-prune Updated helper scripts: - zfssnapshot: removed grub-zfs-snap call, shows ZFSBootMenu tip - zfsrollback: removed grub-zfs-snap call, notes auto-detection Tested configurations: - Single disk installation - 2-disk mirror (mirror-0) - 3-disk RAIDZ1 (raidz1-0) - All boot correctly with ZFSBootMenu
* Document Strix Halo VPE/CWSR freeze issues and workaroundsCraig Jennings2026-01-221-0/+31
| | | | | | | | - Add instructions for applying pg_mask=0 and cwsr_enable=0 workarounds - Document that kernel 6.18.x has critical bugs, stay on 6.15.x-6.17.x - Add session docs, mkinitcpio fixes, and Donato Capitella video transcript - Add PRINCIPLES.org for behavioral lessons learned - Update protocols.org from template
* Clean up session context and add .stignoreCraig Jennings2026-01-221-50/+0
|
* Simplify session startup instructions in protocols.orgCraig Jennings2026-01-221-2/+1
|
* Remove autodetect from mkinitcpio HOOKS documentationCraig Jennings2026-01-221-5/+7
| | | | | autodetect during chroot install detects live ISO hardware, not target machine. Could leave out NVMe/AHCI drivers.
* Add session notes for ratio boot fix and retrospective workflowCraig Jennings2026-01-221-0/+36
| | | | | Documented boot fix session including firmware requirement, GRUB configuration, and behavioral principles for future sessions.
* Add retrospective workflow and PRINCIPLES.org for continuous improvementCraig Jennings2026-01-223-14/+140
| | | | | | | | | - docs/PRINCIPLES.org: Behavioral lessons from retrospectives - docs/retrospectives/: Directory for retrospective records - docs/protocols.org: Add PRINCIPLES.org to session startup reading list Establishes pattern for learning from problem-solving sessions and capturing behavioral (not just technical) lessons.
* Update ratio session doc: kernel 6.15.2 now default with clean GRUB menuCraig Jennings2026-01-221-0/+66
| | | | | | | - Created custom GRUB entries for cleaner boot menu - Set kernel 6.15.2 as default, LTS as fallback - Pinned linux package in pacman.conf - Documented UUID gotcha with mirrored NVMe boot partitions
* Fix ratio boot issues: firmware, mkinitcpio, and document ZFS rollback dangersCraig Jennings2026-01-222-0/+334
| | | | | | | | | | | | | | | | | Root cause: Missing/outdated linux-firmware broke AMD Strix Halo GPU init. Fixed by installing linux-firmware 20260110-1. Changes: - install-archzfs: Fix mkinitcpio config (remove archiso.conf, fix preset) - todo.org: Add ZFS rollback + /boot mismatch issue, recommend ZFSBootMenu - docs/2026-01-22-ratio-boot-fix-session.org: Full troubleshooting session - docs/2026-01-22-mkinitcpio-config-boot-failure.org: Bug report - assets/: Supporting documentation and video transcript Key learnings: - AMD Strix Halo requires linux-firmware 20260110+ - ZFS rollback with /boot on EFI partition can break boot - zpool import -R can permanently change mountpoints
* Fix ZFS boot failure: set cachefile property after pool creationCraig Jennings2026-01-201-37/+47
| | | | | | | - Add zpool set cachefile=/etc/zfs/zpool.cache after pool creation - Without this, initramfs ZFS hook can't import pool at boot - Causes "cannot import '(null)': no such pool available" error - Add cachefile property test to full-test.sh
* Update session contextCraig Jennings2026-01-201-58/+30
|
* Fix hostid mismatch bug that prevented booting installed systemsCraig Jennings2026-01-191-24/+57
| | | | | | | | | | | | | | | | | | Root cause: The `hostid` command returns a value even without /etc/hostid, but `zgenhostid` generates a DIFFERENT random value. The install script was calling `hostid` for the GRUB kernel parameter, then later calling `zgenhostid` to create /etc/hostid - resulting in a mismatch. ZFS refuses to auto-import pools when spl.spl_hostid doesn't match /etc/hostid, causing "Failed to mount /sysroot" at boot. Fix: Generate hostid with zgenhostid FIRST (in configure_bootloader), then read the consistent value for the GRUB kernel parameter. The configure_zfs_services function now just copies the already-existing /etc/hostid to the installed system. Verified in VM: GRUB and /etc/hostid both show identical values after installation.
* Add TODO for Avahi on installed systems, mark live ISO Avahi as doneCraig Jennings2026-01-191-96/+24
| | | | | | - Live ISO Avahi implemented in 906cc6f (archzfs.local works) - Added TODO to implement Avahi on installed systems - Update session context
* Add Avahi mDNS for easy SSH access, fix ISP firmware pathCraig Jennings2026-01-191-62/+99
| | | | | | | - Add avahi and nss-mdns packages to live ISO - Enable avahi-daemon.service for mDNS discovery - Set hostname to "archzfs" so machines are accessible at archzfs.local - Fix ISP firmware path in install-archzfs: remove /mnt prefix for chroot
* Sync templates, add session contextCraig Jennings2026-01-192-0/+95
|
* Add comprehensive installation tests and ZFS script deploymentCraig Jennings2026-01-191-0/+19
| | | | | | | - 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
* Remove session context file (session complete)Craig Jennings2026-01-181-72/+0
|
* Complete rescue tools and session wrap-upCraig Jennings2026-01-182-29/+85
| | | | | | - Mark recovery tools task as DONE in TODO.org - Update session context with completed work - Add session history entry to NOTES.org
* Add utility tools and rescue guide documentationCraig Jennings2026-01-181-32/+33
| | | | | | | | | | | | | | | | | | | Packages added: - iotop: disk I/O monitor by process - ncdu: interactive disk usage analyzer - tree: directory tree viewer - speedtest-cli: internet speed test - mosh: mobile shell (survives disconnects) - aria2: multi-protocol downloader with resume - tmate: terminal sharing for remote assistance - sshuttle: VPN over SSH - pass: password manager Rescue guide expanded: - Section 5: iotop for finding disk I/O culprits - Section 6: ncdu and tree for disk space analysis - Section 7: speedtest-cli, mosh, aria2, tmate, sshuttle - Section 8: pass password manager access
* Add network diagnostics tools and rescue guide documentationCraig Jennings2026-01-181-69/+52
| | | | | | | | | | | | | | | | | | | | | | Packages added: - mtr: combined ping + traceroute - iperf3: bandwidth testing - iftop: live bandwidth monitor by connection - nethogs: bandwidth monitor by process - ethtool: NIC configuration and diagnostics - tcpdump: packet capture - bind: dig/nslookup DNS tools - nmap: network scanner - wireshark-cli: tshark packet analysis Rescue guide section 7 expanded with scenarios for: - Network path analysis with mtr - Bandwidth testing with iperf3 - Live monitoring with iftop and nethogs - Interface diagnostics with ethtool - Packet capture with tcpdump - Network scanning with nmap - Deep packet analysis with tshark
* Update documentation with testing results and bug fixesCraig Jennings2026-01-181-36/+43
| | | | | | | | | | | | - 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
* Add config file support for unattended installationsCraig Jennings2026-01-182-53/+271
| | | | | | | | | | | | | | | | | | Features: - --config-file option for automated installs - Example config at /root/install-archzfs.conf.example - Validates required fields before install - Config only used when explicitly specified (safety) Bug fixes: - Fix pacstrap hanging on provider prompts (use yes pipe) - Remove fsck from mkinitcpio HOOKS (ZFS doesn't use fsck) - Add hostid support for ZFS boot - Add spl.spl_hostid to kernel command line Documentation: - Comprehensive README.org with 15 sections - Session context tracking file
* Add docs directoryCraig Jennings2026-01-1713-0/+3715
Project documentation and workflow definitions.