2 Commits

Author SHA1 Message Date
John McCardle
1e1b00f45d Additional userdb carefulness
see #1

Bug 1 fixed — revert_userdb blindly reloaded userdbd (30-userdb.sh): During --revert, analyze_userdb is never called so DM_NAME is always "unknown". The unconditional userdbd reload would break the lock screen again for users reverting while SDDM was active. Now it detects the active DM directly and skips the reload with a warning if one is found.

Bug 2 fixed — revert_no_conf printed rm -rf /etc/userdb (99-main.sh): The legacy manual-revert instructions nuked all of /etc/userdb, including any pre-existing records that ageless had backed up. Now it prints per-file commands: mv *.pre-ageless where a backup exists, rm only where there's no backup.
2026-04-27 15:16:23 -04:00
John McCardle
25c288bad0 add multi-distro Docker test suite
test/run-in-container.sh tests the full lifecycle inside containers:
  --version, --dry-run, install, backup verification, revert cleanup,
  flagrant mode, --persistent gating, userdb creation/removal.

test/test-distros.sh runs across debian, ubuntu, arch, fedora, artix.
test/stubs.sh provides no-op function definitions for testing main flow.

Verified: all 5 distros pass. Arch is the only base image with
systemd-userdbd installed, exercising the full userdb path.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 22:55:33 -04:00