diff --git a/modules/nixos/base/packages.nix b/modules/nixos/base/packages.nix index 06690166..e78be2e8 100644 --- a/modules/nixos/base/packages.nix +++ b/modules/nixos/base/packages.nix @@ -37,6 +37,9 @@ in psmisc # killall/pstree/prtstat/fuser/... ethtool pv # pipe view + + # System-wide interpreter; Home Manager's python313 on desktops is a separate profile. + python313 ] ++ lib.optionals hardwareTools.enable [ lm_sensors # `sensors` command diff --git a/outputs/x86_64-linux/tests/idols-aquamarine/expected.nix b/outputs/x86_64-linux/tests/idols-aquamarine/expected.nix index b170349d..0270c4b2 100644 --- a/outputs/x86_64-linux/tests/idols-aquamarine/expected.nix +++ b/outputs/x86_64-linux/tests/idols-aquamarine/expected.nix @@ -20,6 +20,7 @@ collectorFlagsUnique = true; inferenceUserCanRender = true; noHomeManager = true; + pythonInstalled = true; staticAddressMatchesWiredInterface = true; rootIsTmpfs = true; stateIsPersistent = true; diff --git a/outputs/x86_64-linux/tests/idols-aquamarine/expr.nix b/outputs/x86_64-linux/tests/idols-aquamarine/expr.nix index d43aa5e8..5bcdf6b8 100644 --- a/outputs/x86_64-linux/tests/idols-aquamarine/expr.nix +++ b/outputs/x86_64-linux/tests/idols-aquamarine/expr.nix @@ -82,6 +82,9 @@ in # Headless: no desktop session, no Home Manager. noHomeManager = !cfg ? home-manager.users; + pythonInstalled = builtins.any ( + package: lib.hasPrefix "python3-" (package.name or "") + ) cfg.environment.systemPackages; # The board renames the wired NIC with the PCIe topology, so networkd matches the # `en*` prefix; a name-based match leaves the host without an address.