nixos-configs/common/pkgs/default.nix

22 lines
468 B
Nix

{lib, pkgs, ...}: let
mkPackage = name: v: {
${name} = pkgs.callPackage ./${name} {};
};
rmNotPackage = name: value:
value == "directory" &&
builtins.pathExists ./${name}/default.nix;
packages = lib.attrsets.filterAttrs rmNotPackage (builtins.readDir ./.);
pkgSet = lib.attrsets.concatMapAttrs mkPackage packages;
in {
imports = [{
options.customPkgs = lib.mkOption {
type = lib.types.attrs;
};
}];
customPkgs = pkgSet;
}