aboutsummaryrefslogtreecommitdiff
path: root/lib/options.nix
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2015-07-30 13:36:57 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2015-07-30 13:44:50 +0200
commitf463d2490322a7a7e41634bbf23fc9cbdbdb9fae (patch)
tree3a7c53aeccc5d075999b34264db969d519815fcd /lib/options.nix
parentd61e1b24e6d280ab596abca0da2b33293eaaeef6 (diff)
Add read-only options
These are options that can have only one definition, regardless of priority.
Diffstat (limited to '')
-rw-r--r--lib/options.nix2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/options.nix b/lib/options.nix
index 5c543f56bcf3..444ec37e6eaf 100644
--- a/lib/options.nix
+++ b/lib/options.nix
@@ -19,6 +19,7 @@ rec {
, apply ? null # Function that converts the option value to something else.
, internal ? null # Whether the option is for NixOS developers only.
, visible ? null # Whether the option shows up in the manual.
+ , readOnly ? null # Whether the option can be set only once
, options ? null # Obsolete, used by types.optionSet.
} @ attrs:
attrs // { _type = "option"; };
@@ -90,6 +91,7 @@ rec {
declarations = filter (x: x != unknownModule) opt.declarations;
internal = opt.internal or false;
visible = opt.visible or true;
+ readOnly = opt.readOnly or false;
type = opt.type.name or null;
}
// (if opt ? example then { example = scrubOptionValue opt.example; } else {})