| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Extract the prompt/confirm/min-length loop into prompt_password() in
lib/common.sh using a nameref for the output variable, so UI output
stays on the terminal (no command-substitution capture) and the three
callers collapse from ~30 lines each to a single helper call.
- get_luks_passphrase() — min 8 chars
- get_zfs_passphrase() — min 8 chars
- get_root_password() — no min (was unchecked before; preserved)
5 bats tests added: match+min-ok path, length-retry loop,
mismatch-retry loop, min_len=0 disables check, empty passphrase
when min_len=0. make test: 58/58.
|
| |
|
|
|
|
|
| |
lib/disk.sh:mount_efi() was shadowed by installer/archangel:mount_efi()
(different signature, no-arg ZFS-specific) and had zero callers.
lib/disk.sh:select_raid_level() was superseded by get_raid_level() in
archangel and also had zero callers. Both removed.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Peel the testable pieces of get_raid_level() out of the 1600-line
installer monolith into installer/lib/raid.sh:
- raid_valid_levels_for_count(count) — replaces the inline option-list
builder in get_raid_level()
- raid_is_valid(level, count) — useful for unattended-config validation
- raid_usable_bytes(level, count, smallest, total) — usable-space math
- raid_fault_tolerance(level, count) — max tolerable disk failures
archangel now sources lib/raid.sh and uses raid_valid_levels_for_count
for the fzf option list. Fzf preview subshell still inlines its own
usable-bytes arithmetic (calling exported lib functions across preview
subshells is fragile; left for a later pass).
30 bats tests in tests/unit/test_raid.bats cover the full enumeration
table, every valid/invalid level-vs-count combo from 2 to 5 disks,
mixed-size mirror, and unknown-level error paths. make test: 53/53.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The library was sourced but only zfs_preflight was reachable from
install_zfs(); the other ten functions either had names that were
never called (create_zfs_datasets, configure_zfs_pacman_hook, etc.)
or were shadowed by same-named definitions in the monolithic
installer/archangel (create_zfs_pool, configure_zfsbootmenu,
configure_zfs_services).
Inlined zfs_preflight into archangel and dropped the source line.
Removes a trap where fixes appear to be "mirrored" but only one
copy actually runs.
|
| |
|
|
|
|
|
|
|
|
| |
- /tmp on ZFS breaks systemd-tmpfiles-clean (statx ENOLINK on
PrivateTmp paths). Use tmpfs via fstab instead; keep zroot/var/tmp.
- zfs-pre-snapshot gains a 60s lockfile in /run so burst transactions
(archsetup produced 357 snapshots in one run) collapse to one.
Both fixes mirrored in installer/archangel and installer/lib/zfs.sh.
Already applied and verified on velox.
|
| |
|
|
|
| |
GRUB's LUKS2 support only handles pbkdf2. When /boot is inside the
encrypted volume, argon2id causes GRUB to reject the correct password.
|
| |
|
|
| |
Keeps logs and SSH output clean. Use archangel --color for colored output.
|
|
|
The custom/ directory name was an archiso implementation detail. Renamed
to installer/ which clearly communicates that this directory contains the
installer scripts and utilities that ship on the ISO.
Updated all references in build.sh, Makefile, test-install.sh, and README.
|