nixos/manualPDF: use new `texlive` instead of `tetex`

This includes updating dblatex and crafting ~100 MB TeX package set
to make our manual compile.

+24 -16
+2 -5
nixos/doc/manual/default.nix
··· 146 146 147 147 inherit sources; 148 148 149 - buildInputs = [ libxml2 libxslt dblatex tetex ]; 149 + buildInputs = [ libxml2 libxslt dblatex dblatex.tex ]; 150 150 151 151 buildCommand = '' 152 - # TeX needs a writable font cache. 153 - export VARTEXFONTS=$TMPDIR/texfonts 154 - 155 152 ${copySources} 156 153 157 154 dst=$out/share/doc/nixos ··· 162 159 163 160 mkdir -p $out/nix-support 164 161 echo "doc-pdf manual $dst/manual.pdf" >> $out/nix-support/hydra-build-products 165 - ''; # */ 162 + ''; 166 163 }; 167 164 168 165 # Generate the NixOS manpages.
+22 -11
pkgs/tools/typesetting/tex/dblatex/default.nix
··· 1 - { stdenv, fetchurl, python, libxslt, tetex 2 - , enableAllFeatures ? false, imagemagick ? null, transfig ? null, inkscape ? null, fontconfig ? null, ghostscript ? null }: 1 + { stdenv, fetchurl, python, libxslt, texlive 2 + , enableAllFeatures ? false, imagemagick ? null, transfig ? null, inkscape ? null, fontconfig ? null, ghostscript ? null 3 + 4 + , tex ? texlive.combine { # satisfy all packages that ./configure mentions 5 + inherit (texlive) scheme-basic epstopdf anysize appendix changebar 6 + fancybox fancyvrb float footmisc listings jknapltx/*for mathrsfs.sty*/ 7 + multirow overpic pdfpages rotating stmaryrd subfigure titlesec wasysym 8 + # pkgs below don't seem requested by dblatex, but our manual fails without them 9 + ec zapfding symbol eepic times rsfs cs tex4ht courier helvetic ly1; 10 + } 11 + }: 3 12 4 13 # NOTE: enableAllFeatures just purifies the expression, it doesn't actually 5 14 # enable any extra features. ··· 12 21 ghostscript != null; 13 22 14 23 stdenv.mkDerivation rec { 15 - name = "dblatex-0.3.4"; 24 + name = "dblatex-0.3.7"; 16 25 17 26 src = fetchurl { 18 27 url = "mirror://sourceforge/dblatex/${name}.tar.bz2"; 19 - sha256 = "120w3wm07qx0k1grgdhjwm2vpwil71icshjvqznskp1f6ggch290"; 28 + sha256 = "0bkjgrn03dy5c7438s429wnv6z5ynxkr4pbhp2z49kynskgkzkjr"; 20 29 }; 21 30 22 - buildInputs = [ python libxslt tetex ] 31 + buildInputs = [ python libxslt tex ] 23 32 ++ stdenv.lib.optionals enableAllFeatures [ imagemagick transfig ]; 24 33 25 34 # TODO: dblatex tries to execute texindy command, but nixpkgs doesn't have ··· 31 40 sed -e 's|cmd = \["xsltproc|cmd = \["${libxslt}/bin/xsltproc|g' \ 32 41 -e 's|Popen(\["xsltproc|Popen(\["${libxslt}/bin/xsltproc|g' \ 33 42 -e 's|cmd = \["texindy|cmd = ["nixpkgs_is_missing_texindy|g' \ 34 - -e 's|cmd = "epstopdf|cmd = "${tetex}/bin/epstopdf|g' \ 35 - -e 's|cmd = \["makeindex|cmd = ["${tetex}/bin/makeindex|g' \ 36 - -e 's|doc.program = "pdflatex"|doc.program = "${tetex}/bin/pdflatex"|g' \ 37 - -e 's|self.program = "latex"|self.program = "${tetex}/bin/latex"|g' \ 38 - -e 's|Popen("pdflatex|Popen("${tetex}/bin/pdflatex|g' \ 43 + -e 's|cmd = "epstopdf|cmd = "${tex}/bin/epstopdf|g' \ 44 + -e 's|cmd = \["makeindex|cmd = ["${tex}/bin/makeindex|g' \ 45 + -e 's|doc.program = "pdflatex"|doc.program = "${tex}/bin/pdflatex"|g' \ 46 + -e 's|self.program = "latex"|self.program = "${tex}/bin/latex"|g' \ 47 + -e 's|Popen("pdflatex|Popen("${tex}/bin/pdflatex|g' \ 39 48 -e 's|"fc-match"|"${fontconfig}/bin/fc-match"|g' \ 40 49 -e 's|"fc-list"|"${fontconfig}/bin/fc-list"|g' \ 41 50 -e 's|cmd = "inkscape|cmd = "${inkscape}/bin/inkscape|g' \ ··· 47 56 ''; 48 57 49 58 buildPhase = "true"; 50 - 59 + 51 60 installPhase = '' 52 61 python ./setup.py install --prefix="$out" --use-python-path --verbose 53 62 ''; 63 + 64 + passthru = { inherit tex; }; 54 65 55 66 meta = { 56 67 description = "A program to convert DocBook to DVI, PostScript or PDF via LaTeX or ConTeXt";