I’d like to use a flake.nix in a subdir of an existing flake as an input. This is mainly because of the evaluation restrictions on the inputs attribute.
Since you can’t do any real computation on inputs, without evaluation complaining about thunks instead of values, I was wanting to manage a series of sources for overlays via another flake in a subdirectory.
This is mainly so I no longer have to specify revisions and hashes manually, but can rely on
nix flake update to update derivation sources when desired.
The only other alternative is to put the inputs directly in the main flake, which mixes concerns a little bit. I originally was going to simply specify the inputs in a separate file and import and merge it with the inputs attribute set, but that’s when I discovered that you can’t really run any computation over the inputs.
Problem is, input urls expect a full path. So I can’t just say
inputs.pkgSrcs.url = "./pkgs" like I want to. Is there a way to solve this? Possibly an input type I am not aware of? If not, is this behavior desirable enough to others to open an issue on nix issue tracker.
I think this behavior should still be pure as long as we disallow files from the top flakes root.