commit 5da61c6d319a5847d8328be031fed9079741c08a
parent d3b99aba9640d9591fc3a6789a32486d9e46e9fb
Author: Daniel Barlow <dan@telent.net>
Date: Mon, 3 Nov 2025 19:12:07 +0000
bundles depend on controlled services if any of their contents do
Diffstat:
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/modules/s6/default.nix b/modules/s6/default.nix
@@ -61,7 +61,12 @@ let
flatDeps = s: [ s ] ++ concatMap flatDeps (deps s);
allServices = unique (concatMap flatDeps (builtins.attrValues config.services));
isDependentOnControlled =
- s: isControlled s || (lib.lists.any isDependentOnControlled s.dependencies);
+ let inherit (lib.lists) any;
+ in s:
+ isControlled s ||
+ (any isDependentOnControlled s.dependencies) ||
+ ((s ? contents) &&
+ (any isDependentOnControlled s.contents));
# all controlled services depend on this oneshot, which
# makes a list of them so we can identify them at runtime