diff --git a/dev/docs.nix b/dev/docs.nix index 7a06d77e9..5f1fd5f44 100644 --- a/dev/docs.nix +++ b/dev/docs.nix @@ -1,3 +1,4 @@ +{ self, ... }: { perSystem = { config, pkgs, ... }: @@ -20,7 +21,8 @@ }; } '' - cd $files + cp --no-preserve=mode -r $files/* . + cp --no-preserve=mode ${config.packages.docs-json}/*.json docs mkdocs build --strict --site-dir $out ''; docs-linkcheck = pkgs.testers.lycheeLinkCheck rec { @@ -33,6 +35,30 @@ }; site = config.packages.docs; }; + docs-json = + pkgs.runCommand "docs-json" + { + buildInputs = [ pkgs.jq ]; + hosts = pkgs.writeText "hosts.json" ( + builtins.toJSON ( + pkgs.lib.mapAttrs (_: x: { + experimental-features = x.config.nix.settings.experimental-features or [ ]; + extra-platforms = x.config.nix.settings.extra-platforms or [ ]; + system-features = x.config.nix.settings.system-features or [ ]; + inherit (x.config.nixpkgs.hostPlatform) system; + inherit (x.config.nix.settings) sandbox; + }) (self.darwinConfigurations // self.nixosConfigurations) + ) + ); + } + '' + mkdir -p $out + for host in $(jq -r 'keys[]' $hosts); do + jq --arg host "$host" \ + '.[$host] | walk(if type == "array" then sort else . end)' \ + --sort-keys < $hosts > $out/$host.json + done + ''; }; }; } diff --git a/docs/community-builders.md b/docs/community-builders.md index 02a86c3f6..7b02f23bf 100644 --- a/docs/community-builders.md +++ b/docs/community-builders.md @@ -18,6 +18,8 @@ aarch64-build-box.nix-community.org ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG9uyfhy darwin-build-box.nix-community.org ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKMHhlcn7fUpUuiOFeIhDqBzBNFsbNqq+NpzuGX3e6zv ``` +See [here](./infrastructure.md#community-builders) for details about the hardware. + ### Access We will grant access to well known members of the community, and people well known members in the community trust. diff --git a/docs/continuous-integration.md b/docs/continuous-integration.md index 69af96340..1b04d60ed 100644 --- a/docs/continuous-integration.md +++ b/docs/continuous-integration.md @@ -9,6 +9,8 @@ Both `aarch64-linux` and `x86_64-linux` have support for `kvm`/`nixos-test`. We only have limited build capacity for `*-darwin` so please don't use it excessively. +See [here](./infrastructure.md#continuous-integration) for details about the hardware. + #### Buildbot [https://buildbot.nix-community.org](https://buildbot.nix-community.org) diff --git a/docs/infrastructure.md b/docs/infrastructure.md index 52b2b0bb5..e2c648f95 100644 --- a/docs/infrastructure.md +++ b/docs/infrastructure.md @@ -7,6 +7,10 @@ - RAM: 128GB DDR4 ECC - Drives: 2 x 1.92TB NVME +```json +--8<-- "docs/build01.json" +``` + #### [`aarch64-build-box.nix-community.org`](./community-builders.md) - `build05` - Provider: Hetzner @@ -15,6 +19,10 @@ - RAM: 128GB DDR4 ECC - Drives: 2 x 960GB NVME +```json +--8<-- "docs/build05.json" +``` + #### [`darwin-build-box.nix-community.org`](./community-builders.md) - `darwin01` - Provider: OakHost @@ -23,6 +31,10 @@ - RAM: 32GB - Drives: 1TB SSD +```json +--8<-- "docs/darwin01.json" +``` + ### Continuous Integration #### [`CI builder`](./continuous-integration.md) - `build03` @@ -33,6 +45,10 @@ - RAM: 256GB DDR5 ECC - Drives: 2 x 1.92TB NVME +```json +--8<-- "docs/build03.json" +``` + #### [`CI builder`](./continuous-integration.md) - `build04` - Provider: Hetzner @@ -41,6 +57,10 @@ - RAM: 128GB DDR4 ECC - Drives: 2 x 960GB NVME +```json +--8<-- "docs/build04.json" +``` + #### [`CI builder`](./continuous-integration.md) - `darwin02` - Provider: OakHost @@ -49,6 +69,10 @@ - RAM: 32GB - Drives: 1TB SSD +```json +--8<-- "docs/darwin02.json" +``` + ### Other #### [`R. RyanTM nixpkgs-update bot`](./update-bot.md) - `build02` @@ -58,6 +82,10 @@ - RAM: 128GB DDR4 ECC - Drives: 2 x 1.92TB NVME +```json +--8<-- "docs/build02.json" +``` + #### [`Monitoring`](./monitoring.md) - `web02` - Provider: Gandi diff --git a/mkdocs.yml b/mkdocs.yml index eb8f740d4..9480d571c 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -37,6 +37,8 @@ theme: markdown_extensions: - attr_list - md_in_html + - pymdownx.snippets + - pymdownx.superfences - toc: toc_depth: 0