{ lib, pkgs, nixos-render-docs, python3, perl, stdenvNoCC, inputs, ... }: stdenvNoCC.mkDerivation { name = "nixpkgs-manual-md"; nativeBuildInputs = [ nixos-render-docs python3 perl ]; src = inputs.nixpkgs; patchPhase = '' cd doc find . -type f ! -name '*.md' ! -name '*.md.in' -exec rm {} \+ ''; postPatch = '' ln -s ${pkgs.amg.options-doc.optionsJSON}/share/doc/nixos/options.json ./config-options.json ''; pythonInterpreterTable = lib.amg.python-interp-table; passAsFile = [ "pythonInterpreterTable" ]; buildPhase = '' substituteInPlace ./languages-frameworks/python.section.md --subst-var-by python-interpreter-table "$(<"$pythonInterpreterTablePath")" cat \ ./functions/library.md.in \ ${pkgs.amg.lib-docs}/index.md \ > ./functions/library.md substitute ./manual.md.in ./manual.md \ --replace-fail '@MANUAL_VERSION@' '${lib.version}' mkdir out mkdir out/assets cp ${pkgs.amg.manual-assets}/* out/assets/ mv preface.chapter.md out/index.md mv build-helpers out/build-helpers mv build-helpers.md out/build-helpers/index.md mv development out/development mv development.md out/development/index.md mv functions out/functions mv functions.md out/functions/index.md mv hooks out/hooks mv languages-frameworks out/languages-frameworks mkdir out/lib cp ${pkgs.amg.lib-docs}/*.md out/lib/ rm out/lib/index.md mv module-system out/module-system mv packages out/packages mv stdenv out/stdenv mv stdenv.md out/stdenv/index.md mv using out/using mv using-nixpkgs.md out/using/index.md pushd out find . -type f -exec perl -pi -e 's/\s*:::{.note}\n/!!! note\n\ \ /' {} \; find . -type f -exec perl -pi -e 's/\s*:::{.warning}\n/!!! warning\n\ \ /' {} \; find . -type f -exec perl -pi -e 's/\s*:::{.tip}\n/!!! tip\n\ \ \ \ /' {} \; find . -type f -exec perl -pi -e 's/\s*:::{.example}\n/!!! example\n\ \ \ \ /' {} \; find . -type f -exec sed -i 's/\s*::://g' {} \; popd ''; installPhase = '' mkdir $out mv out/* $out ''; }