From 2e10a8856d0bdd4c8f77c53320221ad1b8deaa13 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Thu, 13 Nov 2025 23:26:21 -0600 Subject: fix(archsetup): implement critical bug fixes and test improvements MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit addresses several high-priority bugs and enhances the testing infrastructure: **Bug Fixes:** 1. Add root permission check at script start to fail fast with clear error message 2. Disable debug package installation by adding --nodebug flag to all yay calls 3. Replace unsafe `git pull --force` with safe rm + fresh clone to prevent data loss 4. Add geoclue package with correct systemd service configuration for geolocation 5. Add completion marker for reliable automated test detection **Testing Infrastructure:** - Add comprehensive VM-based testing framework in scripts/testing/ - Fix test script pgrep infinite loop using grep bracket self-exclusion pattern - Add network diagnostics and pre-flight checks - Support snapshot-based testing for reproducible test runs **Package Management:** - Remove anki (build hangs 98+ minutes) - Remove adwaita-color-schemes (CMake build issues) Test Results: 0 errors, 1,363 packages installed in 40 minutes 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- scripts/testing/archinstall-config.json | 117 ++++++++++++++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 scripts/testing/archinstall-config.json (limited to 'scripts/testing/archinstall-config.json') diff --git a/scripts/testing/archinstall-config.json b/scripts/testing/archinstall-config.json new file mode 100644 index 0000000..a55e2a1 --- /dev/null +++ b/scripts/testing/archinstall-config.json @@ -0,0 +1,117 @@ +{ + "!users": { + "0": { + "!password": "archsetup", + "username": "root", + "sudo": false + } + }, + "archinstall-language": "English", + "audio_config": null, + "bootloader": "systemd-bootctl", + "config_version": "2.8.0", + "debug": false, + "disk_config": { + "config_type": "default_layout", + "device_modifications": [ + { + "device": "/dev/vda", + "partitions": [ + { + "btrfs": [], + "flags": [ + "Boot" + ], + "fs_type": "fat32", + "length": { + "sector_size": null, + "total_size": null, + "unit": "MiB", + "value": 512 + }, + "mount_options": [], + "mountpoint": "/boot", + "obj_id": "boot_partition", + "start": { + "sector_size": null, + "total_size": null, + "unit": "MiB", + "value": 1 + }, + "status": "create", + "type": "primary" + }, + { + "btrfs": [], + "flags": [], + "fs_type": "ext4", + "length": { + "sector_size": null, + "total_size": null, + "unit": "MiB", + "value": 100 + }, + "mount_options": [], + "mountpoint": "/", + "obj_id": "root_partition", + "start": { + "sector_size": null, + "total_size": null, + "unit": "MiB", + "value": 513 + }, + "status": "create", + "type": "primary" + } + ], + "wipe": true + } + ] + }, + "disk_encryption": null, + "hostname": "archsetup-test", + "kernels": [ + "linux" + ], + "locale_config": { + "kb_layout": "us", + "sys_enc": "UTF-8", + "sys_lang": "en_US" + }, + "mirror_config": { + "custom_mirrors": [], + "mirror_regions": { + "United States": [ + "https://mirror.rackspace.com/archlinux/$repo/os/$arch", + "https://mirror.leaseweb.com/archlinux/$repo/os/$arch" + ] + } + }, + "network_config": { + "type": "nm" + }, + "no_pkg_lookups": false, + "ntp": true, + "offline": false, + "packages": [ + "openssh", + "dhcpcd", + "git", + "vim" + ], + "parallel downloads": 5, + "profile_config": { + "gfx_driver": "All open-source", + "greeter": null, + "profile": { + "custom_settings": {}, + "details": [], + "main": "Minimal" + } + }, + "script": "guided", + "silent": false, + "swap": false, + "timezone": "America/Chicago", + "version": "2.8.0" +} -- cgit v1.2.3