Browse Source

* For the generation of manual / manpages, don't evaluate the option

declarations again (because we already have them).  This cuts
  evaluation time from 7.2s to 4.9s.

svn path=/nixos/trunk/; revision=16798
nsd-state-dir
Eelco Dolstra 13 years ago
parent
commit
f1035de47c
  1. 11
      doc/manual/default.nix
  2. 2
      lib/eval-config.nix
  3. 4
      modules/services/misc/nixos-manual.nix

11
doc/manual/default.nix

@ -1,4 +1,4 @@
{pkgs}:
{ pkgs, optionDeclarations }:
let
@ -7,9 +7,14 @@ let
services.nixosManual.enable = false;
};
# To prevent infinite recursion, remove system.path from the
# options. Not sure why this happens.
optionDeclarations_ =
optionDeclarations //
{ system = removeAttrs optionDeclarations.system ["path"]; };
options = builtins.toFile "options.xml" (builtins.unsafeDiscardStringContext
(builtins.toXML (pkgs.lib.optionAttrSetToDocList ""
(import ../../lib/eval-config.nix {inherit pkgs; configuration = manualConfig;}).optionDeclarations)));
(builtins.toXML (pkgs.lib.optionAttrSetToDocList "" optionDeclarations_)));
optionsDocBook = pkgs.runCommand "options-db.xml" {} ''
${pkgs.libxslt}/bin/xsltproc -o $out ${./options-to-docbook.xsl} ${options}

2
lib/eval-config.nix

@ -23,7 +23,7 @@ rec {
++ (import ../modules/module-list.nix);
extraArgs = extraArgs_ // {
inherit pkgs;
inherit pkgs optionDeclarations;
modulesPath = ../modules;
};

4
modules/services/misc/nixos-manual.nix

@ -3,7 +3,7 @@
# of the virtual consoles. The latter is useful for the installation
# CD.
{pkgs, config, ...}:
{pkgs, config, optionDeclarations, ...}:
let
@ -15,7 +15,7 @@ let
# We could speed up the evaluation of the manual expression by
# providing it the optionDeclarations of the current
# configuration.
import ../../../doc/manual {inherit pkgs;};
import ../../../doc/manual {inherit pkgs optionDeclarations;};
in

Loading…
Cancel
Save