1
0
Fork 0
nixos-config/overlays.nix
2020-05-27 15:20:24 +02:00

12 lines
446 B
Nix

{ lib }:
let
overlayPath = ./overlays;
candidates = lib.attrNames (builtins.readDir overlayPath);
pathToOverlay = n: overlayPath + ("/" + n);
isNixFile = n: builtins.match ".*\\.nix" n != null;
isNixDir = n: builtins.pathExists (pathToOverlay n + "/default.nix");
isOverlay = n: isNixDir n || isNixFile n;
overlays = builtins.filter isOverlay candidates;
importOverlay = n: import (pathToOverlay n);
in map importOverlay overlays