summaryrefslogtreecommitdiffstats
path: root/doc/doc-support/lib-function-docs.nix
diff options
context:
space:
mode:
Diffstat (limited to 'doc/doc-support/lib-function-docs.nix')
-rw-r--r--doc/doc-support/lib-function-docs.nix24
1 files changed, 13 insertions, 11 deletions
diff --git a/doc/doc-support/lib-function-docs.nix b/doc/doc-support/lib-function-docs.nix
index cf218fa70401..018b0bd5e945 100644
--- a/doc/doc-support/lib-function-docs.nix
+++ b/doc/doc-support/lib-function-docs.nix
@@ -1,8 +1,13 @@
# Generates the documentation for library functions via nixdoc.
-{ pkgs, locationsXml, libsets }:
+{ pkgs, nixpkgs, libsets }:
-with pkgs; stdenv.mkDerivation {
+with pkgs;
+
+let
+ locationsJSON = import ./lib-function-locations.nix { inherit pkgs nixpkgs libsets; };
+in
+stdenv.mkDerivation {
name = "nixpkgs-lib-docs";
src = ../../lib;
@@ -11,26 +16,23 @@ with pkgs; stdenv.mkDerivation {
function docgen {
# TODO: wrap lib.$1 in <literal>, make nixdoc not escape it
if [[ -e "../lib/$1.nix" ]]; then
- nixdoc -c "$1" -d "lib.$1: $2" -f "$1.nix" > "$out/$1.xml"
+ nixdoc -c "$1" -d "lib.$1: $2" -l ${locationsJSON} -f "$1.nix" > "$out/$1.md"
else
- nixdoc -c "$1" -d "lib.$1: $2" -f "$1/default.nix" > "$out/$1.xml"
+ nixdoc -c "$1" -d "lib.$1: $2" -l ${locationsJSON} -f "$1/default.nix" > "$out/$1.md"
fi
- echo "<xi:include href='$1.xml' />" >> "$out/index.xml"
+ echo "$out/$1.md" >> "$out/index.md"
}
mkdir -p "$out"
- cat > "$out/index.xml" << 'EOF'
- <?xml version="1.0" encoding="utf-8"?>
- <root xmlns:xi="http://www.w3.org/2001/XInclude">
+ cat > "$out/index.md" << 'EOF'
+ ```{=include=} sections
EOF
${lib.concatMapStrings ({ name, description }: ''
docgen ${name} ${lib.escapeShellArg description}
'') libsets}
- echo "</root>" >> "$out/index.xml"
-
- ln -s ${locationsXml} $out/locations.xml
+ echo '```' >> "$out/index.md"
'';
}