summaryrefslogtreecommitdiff
path: root/scripts/testing/lib
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/testing/lib')
-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
#-----------------------------------------------------------------------------