incus: 6.6.0 -> 6.7.0 (#356230)
[NixPkgs.git] / lib / tests / modules / types-unique.nix
blob115be01269759a1a35127d5cd7fbeb81f9591d5b
1 { lib, ... }:
2 let
3   inherit (lib) mkOption types;
4 in
6   options.examples = mkOption {
7     type = types.lazyAttrsOf
8       (types.unique
9         { message = "We require a single definition, because seeing the whole value at once helps us maintain critical invariants of our system."; }
10         (types.attrsOf types.str));
11   };
12   imports = [
13     { examples.merged = { b = "bee"; }; }
14     { examples.override = lib.mkForce { b = "bee"; }; }
15   ];
16   config.examples = {
17     merged = {
18       a = "aye";
19     };
20     override = {
21       a = "aye";
22     };
23     badLazyType = {
24       a = true;
25     };
26   };