| Age | Commit message (Collapse) | Author |
|
Replace the never-fully-operational libvirt-based VM test infrastructure
with direct QEMU management and archangel ISO for fully automated,
unattended base VM creation.
Key changes:
- vm-utils.sh: complete rewrite — QEMU process mgmt via PID file,
monitor socket for graceful shutdown, qemu-img snapshots, SSH
port forwarding (localhost:2222)
- create-base-vm.sh: boots archangel ISO, SSHs in, runs unattended
install via config file, verifies, creates clean-install snapshot
- run-test.sh: snapshot revert, git bundle transfer, detached archsetup
execution with setsid, polling, validation, and report generation
- debug-vm.sh: CoW overlay disk, GTK display, auto-cleanup on close
- setup-testing-env.sh: reduced deps to qemu-full/sshpass/edk2-ovmf/socat
- cleanup-tests.sh: PID-based process management, orphan detection
- validation.sh: port-based SSH (backward compatible), fuzzel/foot for
Hyprland, corrected package list paths
- network-diagnostics.sh: getent/curl instead of nslookup/ping (SLIRP)
New files:
- archsetup-test.conf: archangel config for base VM (btrfs, no encrypt)
- archsetup-vm.conf: archsetup config for unattended test execution
- assets/archangel.conf.example: reference archangel config
Deleted:
- finalize-base-vm.sh: merged into create-base-vm.sh
- archinstall-config.json: replaced by archangel .conf format
Tested: full end-to-end run — 51 validations passed, 0 failures.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
|
|
|
Add color-themes/ with dupre palette org doc, PNG swatch image, and
ImageMagick generation script. Move old docs to outbox.
|
|
Move processed inbox files to assets/outbox/, rename assets/wireguard
to assets/wireguard-config, delete unused dwm.desktop.
|
|
Bug fixes:
- Initialize errors_encountered at script start (not in intro)
- Capture correct exit code in retry_install loop
- Add missing error_fatal parameters
- Fix unclosed quote in error message
- Quote variables in pacman_install/aur_install commands
- Standardize done statements (remove trailing semicolons)
New features:
- Locale selection prompt with 8 common options + custom entry
- Auto-derive wireless region from locale
- Extract zfs-replicate to separate script file
- Make archsetup repo URL configurable
- Add MulticastDNS=no to avoid avahi conflict
Code improvements:
- Single STEPS array for show_status and main execution loop
- Document security note for config file sourcing
- Add explanatory comment for UFW VM behavior
- Silence update-desktop-database warnings
Config updates:
- Add LOCALE and ARCHSETUP_REPO to example config
Also adds Wayland/Hyprland desktop alternative to V2MOM roadmap.
|
|
- .stignore for syncthing
- Reference notes for ZFS scripts removal and console display issues
|
|
- GRUB_TIMEOUT 0→2 seconds for menu access
- Syncthing: system service → user service with lingering to prevent lock conflicts
- Update airplanemodetoggle for user service
- Update validation to check lingering instead of system service
|
|
- Install and configure fail2ban with ufw integration
- SSH jail: 3 attempts, 1 hour ban
- Default jail: 5 attempts, 10 minute ban
- Also file security recommendations to assets/
|
|
- Add ZFS detection with sanoid/syncoid for snapshot management
- Add gvfs-smb for Thunar SMB network browsing
- Fix shell quoting throughout script
- Fix stale $action variables in error handlers
- Fix display() return values (was returning 1)
- Fix mkinitcpio.conf sed pattern to be flexible
- Fix vconsole.conf duplicate entries on re-run
- Fix systemd unit overrides using drop-in files
- Fix ufw port typo (55353 -> 5353)
- Fix GRUB_RECORDFAIL_TIMEOUT undefined variable
- Enable NetworkManager service
- Move thunar, libvips, isync to pacman (now in official repos)
- Clean up reflector config with heredoc
- Remove unnecessary sudo when already root
- Convert shebang from sh to bash
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|