mirror of
https://github.com/nix-community/NixOS-WSL.git
synced 2026-11-07 14:59:35 +00:00
50 lines
897 B
Nix
50 lines
897 B
Nix
{ stdenv
|
|
, path
|
|
, runCommand
|
|
, mdbook
|
|
, gnused
|
|
, nixosOptionsDoc
|
|
}:
|
|
|
|
|
|
let
|
|
eval = import (path + "/nixos/lib/eval-config.nix") {
|
|
system = stdenv.hostPlatform.system;
|
|
modules = [
|
|
../modules
|
|
];
|
|
};
|
|
in
|
|
stdenv.mkDerivation rec {
|
|
name = "nixos-wsl-docs";
|
|
|
|
src = ../.;
|
|
|
|
nativeBuildInputs = [ mdbook ];
|
|
|
|
configurePhase = ''
|
|
cd docs
|
|
cp ${passthru.optionsMD} src/options.md
|
|
'';
|
|
|
|
buildPhase = ''
|
|
mdbook build
|
|
'';
|
|
|
|
installPhase = ''
|
|
mv book $out
|
|
'';
|
|
|
|
passthru = {
|
|
optionsDoc = nixosOptionsDoc {
|
|
options = eval.options.wsl;
|
|
};
|
|
optionsMD = runCommand "options.md" { } ''
|
|
set -euo pipefail
|
|
cat ${passthru.optionsDoc.optionsCommonMark} \
|
|
| ${gnused}/bin/sed 's|\[${toString (../.)}|\[\<\;nixos-wsl\>\;|;s|file://${toString (../.)}|https://github.com/nix-community/NixOS-WSL/blob/main|' \
|
|
> $out
|
|
'';
|
|
};
|
|
}
|