2018-12-30 00:10:19 +00:00
|
|
|
# Generates the documentation for library functons via nixdoc. To add
|
|
|
|
# another library function file to this list, the include list in the
|
|
|
|
# file `doc/functions/library.xml` must also be updated.
|
|
|
|
|
|
|
|
{ pkgs ? import ./.. {}, locationsXml }:
|
|
|
|
|
|
|
|
with pkgs; stdenv.mkDerivation {
|
|
|
|
name = "nixpkgs-lib-docs";
|
2019-07-04 13:23:39 +01:00
|
|
|
src = ./../../lib;
|
2018-12-30 00:10:19 +00:00
|
|
|
|
|
|
|
buildInputs = [ nixdoc ];
|
|
|
|
installPhase = ''
|
|
|
|
function docgen {
|
|
|
|
nixdoc -c "$1" -d "$2" -f "../lib/$1.nix" > "$out/$1.xml"
|
|
|
|
}
|
|
|
|
|
|
|
|
mkdir -p $out
|
|
|
|
ln -s ${locationsXml} $out/locations.xml
|
|
|
|
|
|
|
|
docgen strings 'String manipulation functions'
|
|
|
|
docgen trivial 'Miscellaneous functions'
|
|
|
|
docgen lists 'List manipulation functions'
|
|
|
|
docgen debug 'Debugging functions'
|
|
|
|
docgen options 'NixOS / nixpkgs option handling'
|
2021-03-06 11:26:54 +00:00
|
|
|
docgen sources 'Source filtering functions'
|
2018-12-30 00:10:19 +00:00
|
|
|
'';
|
|
|
|
}
|