From e0baf8ee0c3578ea158df99f4443fdd30b9bfe14 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Na=C3=AFm=20Favier?= <n@monade.li>
Date: Tue, 7 Jun 2022 23:23:04 +0200
Subject: [PATCH] docs: disable _module.check for nixos/nix-darwin modules

Currently we're maintaining a "mock" module made of sink options,
which requires updating whenever the definitions in the
nixos/nix-darwin modules change.

Instead, set `_module.check` to false so that definitions in those
modules are simply ignored.
---
 docs/default.nix | 35 ++++-------------------------------
 1 file changed, 4 insertions(+), 31 deletions(-)

diff --git a/docs/default.nix b/docs/default.nix
index 10988d15..6ef0ae74 100644
--- a/docs/default.nix
+++ b/docs/default.nix
@@ -18,6 +18,8 @@ let
     }];
   };
 
+  dontCheckDefinitions = { _module.check = false; };
+
   buildModulesDocs = args:
     nmd.buildModulesDocs ({
       moduleRootPaths = [ ./.. ];
@@ -35,21 +37,7 @@ let
   };
 
   nixosModuleDocs = buildModulesDocs {
-    modules = let
-      nixosModule = module: pkgs.path + "/nixos/modules" + module;
-      mockedNixos = with lib; {
-        options = {
-          environment.pathsToLink = mkSinkUndeclaredOptions { };
-          systemd.services = mkSinkUndeclaredOptions { };
-          users.users = mkSinkUndeclaredOptions { };
-        };
-      };
-    in [
-      ../nixos/default.nix
-      mockedNixos
-      (nixosModule "/misc/assertions.nix")
-      scrubbedPkgsModule
-    ];
+    modules = [ ../nixos scrubbedPkgsModule dontCheckDefinitions ];
     docBook = {
       id = "nixos-options";
       optionIdPrefix = "nixos-opt";
@@ -57,22 +45,7 @@ let
   };
 
   nixDarwinModuleDocs = buildModulesDocs {
-    modules = let
-      nixosModule = module: pkgs.path + "/nixos/modules" + module;
-      mockedNixDarwin = with lib; {
-        options = {
-          environment.pathsToLink = mkSinkUndeclaredOptions { };
-          system.activationScripts.postActivation.text =
-            mkSinkUndeclaredOptions { };
-          users.users = mkSinkUndeclaredOptions { };
-        };
-      };
-    in [
-      ../nix-darwin/default.nix
-      mockedNixDarwin
-      (nixosModule "/misc/assertions.nix")
-      scrubbedPkgsModule
-    ];
+    modules = [ ../nix-darwin scrubbedPkgsModule dontCheckDefinitions ];
     docBook = {
       id = "nix-darwin-options";
       optionIdPrefix = "nix-darwin-opt";