| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
- 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
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
| |
- 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
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| | |
|
| |
|
|
|
|
|
| |
- 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
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
- Live ISO Avahi implemented in 906cc6f (archzfs.local works)
- Added TODO to implement Avahi on installed systems
- Update session context
|
| |
|
|
|
|
|
| |
- 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
|
| | |
|
| | |
|
| |
|
|
|
|
| |
- Mark recovery tools task as DONE in TODO.org
- Update session context with completed work
- Add session history entry to NOTES.org
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
|
|
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
|