From 26f704b545838084e334f37d434a648c0c564ffd Mon Sep 17 00:00:00 2001 From: Sandro Jäckel Date: Sun, 18 Dec 2022 23:35:29 +0100 Subject: treewide: use nativeBuildInputs with runCommand instead of inlining --- nixos/lib/make-options-doc/default.nix | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) (limited to 'nixos/lib/make-options-doc') diff --git a/nixos/lib/make-options-doc/default.nix b/nixos/lib/make-options-doc/default.nix index dea3eec5bd6d7..371bdafb3f49b 100644 --- a/nixos/lib/make-options-doc/default.nix +++ b/nixos/lib/make-options-doc/default.nix @@ -93,15 +93,19 @@ let in rec { inherit optionsNix; - optionsAsciiDoc = pkgs.runCommand "options.adoc" {} '' - ${pkgs.python3Minimal}/bin/python ${./generateDoc.py} \ + optionsAsciiDoc = pkgs.runCommand "options.adoc" { + nativeBuildInputs = [ pkgs.python3Minimal ]; + } '' + python ${./generateDoc.py} \ --format asciidoc \ ${optionsJSON}/share/doc/nixos/options.json \ > $out ''; - optionsCommonMark = pkgs.runCommand "options.md" {} '' - ${pkgs.python3Minimal}/bin/python ${./generateDoc.py} \ + optionsCommonMark = pkgs.runCommand "options.md" { + nativeBuildInputs = [ pkgs.python3Minimal ]; + } '' + python ${./generateDoc.py} \ --format commonmark \ ${optionsJSON}/share/doc/nixos/options.json \ > $out @@ -153,16 +157,20 @@ in rec { # Convert options.json into an XML file. # The actual generation of the xml file is done in nix purely for the convenience # of not having to generate the xml some other way - optionsXML = pkgs.runCommand "options.xml" {} '' + optionsXML = pkgs.runCommand "options.xml" { + nativeBuildInputs = with pkgs; [ nix ]; + } '' export NIX_STORE_DIR=$TMPDIR/store export NIX_STATE_DIR=$TMPDIR/state - ${pkgs.nix}/bin/nix-instantiate \ + nix-instantiate \ --eval --xml --strict ${./optionsJSONtoXML.nix} \ --argstr file ${optionsJSON}/share/doc/nixos/options.json \ > "$out" ''; - optionsDocBook = pkgs.runCommand "options-docbook.xml" {} '' + optionsDocBook = pkgs.runCommand "options-docbook.xml" { + nativeBuildInputs = with pkgs; [ libxslt.bin libxslt.bin python3Minimal ]; + } '' optionsXML=${optionsXML} if grep /nixpkgs/nixos/modules $optionsXML; then echo "The manual appears to depend on the location of Nixpkgs, which is bad" @@ -172,14 +180,14 @@ in rec { exit 1 fi - ${pkgs.python3Minimal}/bin/python ${./sortXML.py} $optionsXML sorted.xml - ${pkgs.libxslt.bin}/bin/xsltproc \ + python ${./sortXML.py} $optionsXML sorted.xml + xsltproc \ --stringparam documentType '${documentType}' \ --stringparam revision '${revision}' \ --stringparam variablelistId '${variablelistId}' \ --stringparam optionIdPrefix '${optionIdPrefix}' \ -o intermediate.xml ${./options-to-docbook.xsl} sorted.xml - ${pkgs.libxslt.bin}/bin/xsltproc \ + xsltproc \ -o "$out" ${./postprocess-option-descriptions.xsl} intermediate.xml ''; } -- cgit 1.4.1