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