Closed inputs
-- Modules and overlays close over your flake's inputs, not - your consumer's. Downstream users are not required to re-declare - your internal dependencies, and can still override any input - through standard flake mechanisms. -
-# a module, closed over the
-# defining flake's inputs
-{ closure-inputs, ... }:
-{ ... }:
-{
- imports = [
- closure-inputs.some-helper.modules.flake.default
- ];
- # consumers are not required to declare
- # their own dependency on some-helper
-}
-