testsAndMisc/linux_configuration
Krzysztof kuhy Rudnicki 4c426eae0e
Some checks failed
Pre-commit checks / pre-commit (push) Waiting to run
Shell tests / shell-tests (push) Waiting to run
Shell tests / arch-tests (push) Waiting to run
Python tests / test (push) Has been cancelled
Make install_core_system.sh work on a fresh machine
Two of the seven modules invoked python_pkg/ paths that stopped existing when
screen_locker and steam_backlog_enforcer were extracted into their own repos,
so the first thing the installer did on a fresh machine was fail. Nothing
installed guard-lib either, which meant the CORE "Midnight shutdown timer"
module always died with "guardctl not found on PATH".

Every module now resolves through install_module_from_repo, and
require_extracted_repo clones a missing sibling instead of only printing
instructions -- otherwise "clone it yourself" is not actionable on the bare
machine this script exists to set up. The clone drops privileges to the
invoking human via sudo -u, because an installer that re-execs under sudo
would otherwise leave a root-owned checkout in the user's home; a sandbox
cannot catch that, since the guest is root throughout. A clone that fails is
still a loud, fatal module failure, never a silent skip.

guard-lib is addressed as the "utils" repo: it is a subdirectory of
github.com/kuhyx/utils, so asking for "guard-lib" would resolve to
~/guard-lib and derive a clone URL that does not exist. It installs first,
before the modules that need guardctl.

Separately, the security hardening suite's screen_locker section hardcoded
$HOME/testsAndMisc/python_pkg/screen_locker/screen_lock.py. That path went
away with the extraction, so all five checks silently SKIPPED -- reporting a
clean run for tests that never executed, which is the exact failure mode
lib/extracted_repos.sh was written to prevent. It resolves the repo properly
now ($HOME is also wrong under sudo), and the assertions are rewritten against
the current implementation: the four symbols they grepped for no longer exist
anywhere, having been replaced by SPORT_CHOICES, SPORT_TABLE_TENNIS,
_validate_table_tennis and MANUAL_WORKOUT_REFLECTION_MIN_CHARS.

On this host that takes the suite from 18 passed / 1 failed / 5 skipped to
23 passed / 0 skipped. The task file's "18 passed / 6 skipped out of 17"
target was stale -- the suite is 24 checks now -- so it could not be matched
literally.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PJrqKERAo5QUeEHWS5Asgp
2026-08-24 12:45:21 +02:00
..
.githooks Extract digital-wellbeing; the directory-depth cap now enforces 2026-08-23 20:57:51 +02:00
.github Prettier-normalize two docs the pre-push hook was already failing on 2026-08-23 19:42:18 +02:00
boot_recovery Cap extensionless scripts, and split the one that was hiding 2026-08-23 19:13:40 +02:00
C/atop_agg atop_agg: split atop_agg.c 478 -> 204 + state + emit 2026-08-17 10:49:46 +02:00
diagnostics Dissolve linux_configuration/scripts/ and single_use/ 2026-08-23 18:53:30 +02:00
docs Dissolve linux_configuration/scripts/ and single_use/ 2026-08-23 18:53:30 +02:00
dwm Dissolve linux_configuration/scripts/ and single_use/ 2026-08-23 18:53:30 +02:00
features Extract the hosts blocker into its own repo 2026-08-23 20:30:18 +02:00
feedback-appimage Dissolve linux_configuration/scripts/ and single_use/ 2026-08-23 18:53:30 +02:00
fixes Make install_core_system.sh work on a fresh machine 2026-08-24 12:45:21 +02:00
fresh-install Extract digital-wellbeing; the directory-depth cap now enforces 2026-08-23 20:57:51 +02:00
gaming Dissolve linux_configuration/scripts/ and single_use/ 2026-08-23 18:53:30 +02:00
i3 Flatten i3-configuration and misc/testsAndMisc-bash 2026-08-23 19:02:18 +02:00
i3blocks Flatten i3-configuration and misc/testsAndMisc-bash 2026-08-23 19:02:18 +02:00
installers Extract digital-wellbeing; the directory-depth cap now enforces 2026-08-23 20:57:51 +02:00
lib Make install_core_system.sh work on a fresh machine 2026-08-24 12:45:21 +02:00
meta Dissolve linux_configuration/scripts/ and single_use/ 2026-08-23 18:53:30 +02:00
misc Flatten i3-configuration and misc/testsAndMisc-bash 2026-08-23 19:02:18 +02:00
periodic_background Extract digital-wellbeing; the directory-depth cap now enforces 2026-08-23 20:57:51 +02:00
tests Make install_core_system.sh work on a fresh machine 2026-08-24 12:45:21 +02:00
utils Dissolve linux_configuration/scripts/ and single_use/ 2026-08-23 18:53:30 +02:00
zsh Split calc-live.zsh: extract the qalc coprocess 2026-08-16 22:12:32 +02:00
.gitignore Dissolve linux_configuration/scripts/ and single_use/ 2026-08-23 18:53:30 +02:00
install_core_system.sh Make install_core_system.sh work on a fresh machine 2026-08-24 12:45:21 +02:00
test_results.log Add 'linux_configuration/' from commit '0762e3d07b90bac9256eb272de10bf9f42878094' 2026-02-06 21:43:26 +01:00