diff options
Diffstat (limited to 'lib/types.nix')
-rw-r--r-- | lib/types.nix | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/lib/types.nix b/lib/types.nix index c3b14d807..b85794925 100644 --- a/lib/types.nix +++ b/lib/types.nix @@ -231,7 +231,12 @@ rec { source = submodule ({ config, ... }: { options = { type = let - types = ["file" "git" "symlink"]; + types = [ + "file" + "git" + "pass" + "symlink" + ]; in mkOption { type = enum types; default = let @@ -255,6 +260,10 @@ rec { type = nullOr git-source; default = null; }; + pass = mkOption { + type = nullOr pass-source; + default = null; + }; symlink = let symlink-target = (symlink-source.getSubOptions "FIXME").target.type; in mkOption { @@ -287,6 +296,17 @@ rec { }; }; + pass-source = submodule { + options = { + dir = mkOption { + type = absolute-pathname; + }; + name = mkOption { + type = pathname; # TODO relative-pathname + }; + }; + }; + symlink-source = submodule { options = { target = mkOption { |