summaryrefslogtreecommitdiff
path: root/scripts/testing/lib/validation.sh
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-01-22 10:00:23 -0600
committerCraig Jennings <c@cjennings.net>2026-01-22 10:00:23 -0600
commit99d487cef4fa6857db8a43209ad2cb727a6f1161 (patch)
treecc82f4d42676a33ca687b8e865a11ff88f1a241e /scripts/testing/lib/validation.sh
parentd6338d0c0c5bf58531ef9f851b1a55d483dba828 (diff)
fix(archsetup): add system config improvements and gnome-keyring setup
- Enable chrony service and create /etc/sysconfig/chronyd to suppress warning - Configure wireless regulatory domain (US) for full WiFi capabilities - Configure paccache to retain 3 package versions - Pre-create gnome-keyring with 'login' default (auto-unlocks at login) - Add rtkit package for pipewire realtime scheduling - Add validation test for gnome-keyring setup - Add system action .desktop files (logout, shutdown, reboot, suspend, lock)
Diffstat (limited to 'scripts/testing/lib/validation.sh')
-rw-r--r--scripts/testing/lib/validation.sh39
1 files changed, 39 insertions, 0 deletions
diff --git a/scripts/testing/lib/validation.sh b/scripts/testing/lib/validation.sh
index cdc33c5..48a0c11 100644
--- a/scripts/testing/lib/validation.sh
+++ b/scripts/testing/lib/validation.sh
@@ -293,6 +293,7 @@ run_all_validations() {
validate_zfs_config
validate_boot_config
validate_autologin_config
+ validate_gnome_keyring_setup
# Boot & Initramfs (critical for ZFS systems)
validate_terminus_font
@@ -849,6 +850,44 @@ validate_autologin_config() {
fi
}
+validate_gnome_keyring_setup() {
+ step "Checking gnome-keyring pre-configuration"
+ local keyring_dir="/home/cjennings/.local/share/keyrings"
+
+ # Check directory exists
+ if ! ssh_cmd "test -d $keyring_dir"; then
+ validation_fail "Keyring directory not created"
+ attribute_issue "gnome-keyring directory not pre-created" "archsetup"
+ return 1
+ fi
+
+ # Check directory permissions (should be 700)
+ local perms=$(ssh_cmd "stat -c '%a' $keyring_dir")
+ if [ "$perms" != "700" ]; then
+ validation_fail "Keyring directory has wrong permissions: $perms (expected 700)"
+ attribute_issue "gnome-keyring directory wrong permissions" "archsetup"
+ return 1
+ fi
+
+ # Check ownership
+ local owner=$(ssh_cmd "stat -c '%U' $keyring_dir")
+ if [ "$owner" != "cjennings" ]; then
+ validation_fail "Keyring directory owned by $owner (expected cjennings)"
+ attribute_issue "gnome-keyring directory wrong ownership" "archsetup"
+ return 1
+ fi
+
+ # Check default file exists and contains "login"
+ local default_keyring=$(ssh_cmd "cat $keyring_dir/default 2>/dev/null")
+ if [ "$default_keyring" != "login" ]; then
+ validation_fail "Default keyring not set to 'login' (got: '$default_keyring')"
+ attribute_issue "gnome-keyring default not set to login" "archsetup"
+ return 1
+ fi
+
+ validation_pass "gnome-keyring pre-configured (default=login, dir=700)"
+}
+
#-----------------------------------------------------------------------------
# Archsetup-Specific Validations
#-----------------------------------------------------------------------------