1{
2 nixosLib,
3 pkgsModule,
4 runCommand,
5}:
6
7let
8 sys = nixosLib.evalModules rec {
9 modules = [
10 pkgsModule
11 ../documentation.nix
12 ../version.nix
13
14 (
15 { lib, someArg, ... }:
16 {
17 # Make sure imports from specialArgs are respected
18 imports = [ someArg.myModule ];
19
20 # TODO test this
21 meta.doc = ./test-dummy.chapter.xml;
22 }
23 )
24
25 {
26 _module.args = {
27 baseModules = [
28 ../documentation.nix
29 ../version.nix
30 ];
31 extraModules = [ ];
32 inherit modules;
33 };
34 documentation.nixos.includeAllModules = true;
35 }
36 ];
37 specialArgs.someArg.myModule =
38 { lib, ... }:
39 {
40 options.foobar = lib.mkOption {
41 type = lib.types.str;
42 description = "The foobar option was added via specialArgs";
43 default = "qux";
44 };
45 };
46 };
47
48in
49runCommand "documentation-check"
50 {
51 inherit (sys.config.system.build.manual) optionsJSON;
52 }
53 ''
54 json="$optionsJSON/share/doc/nixos/options.json"
55 echo checking $json
56
57 grep 'The foobar option was added via specialArgs' <"$json" >/dev/null
58 touch $out
59 ''