diff options
| author | Alejandro Soto <alejandro@34project.org> | 2025-08-24 18:49:13 -0600 |
|---|---|---|
| committer | Alejandro Soto <alejandro@34project.org> | 2025-08-24 18:49:13 -0600 |
| commit | a2fd86d4828870cc030282b419982c6bcce3ac90 (patch) | |
| tree | 48ccd3c62293b741e1eefa98e111193740e87749 | |
| parent | 53a923158861a9c52b86f37d826c3f4637476dfa (diff) | |
trivionomicon/doctrine: add support for overriding the prefix
Diffstat (limited to '')
| -rw-r--r-- | doctrine/default.nix | 18 | ||||
| -rw-r--r-- | doctrine/lib/default.nix | 13 | ||||
| -rw-r--r-- | doctrine/lib/mk-module.nix | 15 |
3 files changed, 28 insertions, 18 deletions
diff --git a/doctrine/default.nix b/doctrine/default.nix index b4c72b8..0d50d49 100644 --- a/doctrine/default.nix +++ b/doctrine/default.nix @@ -1,12 +1,16 @@ { + lib ? pkgs.lib, pkgs, - namespace, + prefix ? "trivium", + namespace ? null, }: let - doctrine = { - lib = import ./lib {inherit lib pkgs doctrine;}; - prefix = "trivium"; - inherit namespace; - }; - inherit (pkgs) lib; + doctrine = + { + lib = import ./lib {inherit lib pkgs doctrine;}; + inherit namespace prefix; + } + // lib.optionalAttrs (pkgs != null) { + inherit pkgs; + }; in doctrine diff --git a/doctrine/lib/default.nix b/doctrine/lib/default.nix index f189e21..e2d84b8 100644 --- a/doctrine/lib/default.nix +++ b/doctrine/lib/default.nix @@ -13,8 +13,11 @@ closeLib = close {inherit lib;}; closeFull = close {inherit lib pkgs doctrine;}; -in { - inherit close; - importAll = closeLib ./import-all.nix; - mkModule = closeFull ./mk-module.nix; -} +in + { + inherit close; + importAll = closeLib ./import-all.nix; + } + // lib.optionalAttrs (doctrine.namespace != null) { + mkModule = closeFull ./mk-module.nix; + } diff --git a/doctrine/lib/mk-module.nix b/doctrine/lib/mk-module.nix index f76ccfe..ffbe6bc 100644 --- a/doctrine/lib/mk-module.nix +++ b/doctrine/lib/mk-module.nix @@ -11,14 +11,17 @@ requires ? [], prefix ? doctrine.prefix, namespace ? doctrine.namespace, + passthru ? {}, }: let - optionsSet = import options { - inherit config lib pkgs cfg name doctrine; - }; + optionsSet = import options (passthru + // { + inherit config lib pkgs cfg name doctrine; + }); - configSet = import configFiles.${namespace} { - inherit config lib pkgs doctrine cfg; - }; + configSet = import configFiles.${namespace} (passthru + // { + inherit config lib pkgs doctrine cfg; + }); configFiles = lib.filterAttrs (k: v: v != null) { inherit sys hm; |
