rose-pine-nix/modules/lib/mkImports.nix
seth 28e6d8a18d
feat(modules): add catppuccin.sources option (#129)
* feat(modules): add `catppuccin.sources` option

* refactor(modules)!: nvfetcher -> npins

npins gives us a nicer file to import that is a simple name value pair
of the port and the path in the store. this allows for easier overriding
with the catppuccin.sources option

* fix(modules): ensure default sources are applied to `catppuccin.sources`
2024-05-13 16:33:16 -04:00

21 lines
547 B
Nix

# this imports all files in a directory (besides default.nix)
# with our modified arguments
{ lib, pkgs, ... }@args:
dir:
let
# instead of letting `evalModules` pass arguments to each file
# in our list, we import them directly
applyImports = file: _: import "${dir}/${file}" (args // {
lib = lib.extend (final: _: {
ctp = import ./. (args // { lib = final; });
});
defaultSources = import ../../.sources;
});
in
lib.pipe dir [
builtins.readDir
builtins.attrNames
(lib.remove "default.nix")
(map applyImports)
]