diff options
author | Martin Weinelt <hexa@darmstadt.ccc.de> | 2021-12-01 01:09:52 +0100 |
---|---|---|
committer | Martin Weinelt <hexa@darmstadt.ccc.de> | 2021-12-01 01:09:52 +0100 |
commit | 254dd2a1025e46bccd05c4cc0dd461093b689480 (patch) | |
tree | dd796f8f4493475e86fac466dfafc198e918a59b | |
parent | ab5a3f8226b52b4ee32ea9dcb33d007b39a1e566 (diff) | |
download | nixpkgs-254dd2a1025e46bccd05c4cc0dd461093b689480.tar nixpkgs-254dd2a1025e46bccd05c4cc0dd461093b689480.tar.gz nixpkgs-254dd2a1025e46bccd05c4cc0dd461093b689480.tar.bz2 nixpkgs-254dd2a1025e46bccd05c4cc0dd461093b689480.tar.lz nixpkgs-254dd2a1025e46bccd05c4cc0dd461093b689480.tar.xz nixpkgs-254dd2a1025e46bccd05c4cc0dd461093b689480.tar.zst nixpkgs-254dd2a1025e46bccd05c4cc0dd461093b689480.zip |
nixos/home-assistant: consider extraComponents in hardening
Previously the extraComponents added to an overriden package would not have been considered in hardening measures enforced by the module. Home Assistant is warning the user about component definitions having moved away from YAML, so using an override to include support for a component might become the better way moving forward.
-rw-r--r-- | nixos/modules/services/misc/home-assistant.nix | 9 | ||||
-rw-r--r-- | pkgs/servers/home-assistant/default.nix | 2 |
2 files changed, 8 insertions, 3 deletions
diff --git a/nixos/modules/services/misc/home-assistant.nix b/nixos/modules/services/misc/home-assistant.nix index 8279d075baf..2de25d87ed3 100644 --- a/nixos/modules/services/misc/home-assistant.nix +++ b/nixos/modules/services/misc/home-assistant.nix @@ -24,6 +24,8 @@ let availableComponents = cfg.package.availableComponents; + explicitComponents = cfg.package.extraComponents; + usedPlatforms = config: if isAttrs config then optional (config ? platform) config.platform @@ -42,10 +44,13 @@ let # } ]; useComponentPlatform = component: elem component (usedPlatforms cfg.config); - # Returns whether component is used in config + useExplicitComponent = component: elem component explicitComponents; + + # Returns whether component is used in config or explicitly passed into package useComponent = component: hasAttrByPath (splitString "." component) cfg.config - || useComponentPlatform component; + || useComponentPlatform component + || useExplicitComponent component; # List of components used in config extraComponents = filter useComponent availableComponents; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 4b4cb222e96..5febf010dff 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -888,7 +888,7 @@ in with py.pkgs; buildPythonApplication rec { ''; passthru = { - inherit availableComponents; + inherit availableComponents extraComponents; python = py; tests = { inherit (nixosTests) home-assistant; |