{ 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 = pkgs.callPackage ./python-interp-table.nix { }; passAsFile = [ "pythonInterpreterTable" ]; buildPhase = '' substituteInPlace ./languages-frameworks/python.section.md --subst-var-by python-interpreter-table "$(<"$pythonInterpreterTablePath")" mv ./functions/library.md.in ./functions/library.md substitute ./manual.md.in ./manual.md \ --replace-fail '@MANUAL_VERSION@' '${lib.version}' mkdir out 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-and-frameworks mkdir out/library-reference cp ${pkgs.amg.lib-docs}/*.md out/library-reference/ 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-nixpkgs mv using-nixpkgs.md out/using-nixpkgs/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 ''; }