Remove extra directories

This commit is contained in:
Sandro - 2022-12-22 21:12:38 +01:00
parent 09848211f1
commit 7228139f43
Signed by: sandro
GPG Key ID: 3AF5A43A3EECC2E5
4 changed files with 34 additions and 4 deletions

26
flake.lock Normal file
View File

@ -0,0 +1,26 @@
{
"nodes": {
"lib": {
"locked": {
"lastModified": 1671324337,
"narHash": "sha256-OZVfw69LQi2RckjPdooYrhw1I2vd28QdzEGJwI3w+jk=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "b4dd796b65c0bee6185fd2b5c84c2a207231e28f",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"root": {
"inputs": {
"lib": "lib"
}
}
},
"root": "root",
"version": 7
}

View File

@ -1,14 +1,18 @@
{
outputs = _:
inputs = {
lib.url = "github:nix-community/nixpkgs.lib";
};
outputs = { lib, ... }:
let
dirs = dir: builtins.attrNames (builtins.readDir (./. + "/${dir}"));
importToAttr = dir: inputAttr: builtins.listToAttrs (map (p: { name = p; value = import (./. + "/${dir}/${p}") inputAttr; }) (dirs dir));
ls = dir: builtins.attrNames (builtins.readDir (./. + "/${dir}"));
importToAttr = dir: inputAttr: lib.listToAttrs (map (file: { name = lib.removeSuffix ".nix" file; value = import (./. + "/${dir}/${file}.nix") inputAttr; }) (ls dir));
in
{
lib = inputAttr: importToAttr "lib" inputAttr;
nixosModules = inputAttr: importToAttr "modules" inputAttr;
nixosModule = _: {
imports = (dir: map (p: ./. + "/${dir}/${p}") (dirs dir)) "modules";
imports = (dir: map (file: ./. + "/${dir}/${file}") (ls dir)) "modules";
};
};
}