From f2a77f5d9d395084adce2c8e3d2e40dacf447df5 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Fri, 13 Jul 2012 18:18:52 +0400 Subject: [PATCH] TeXLive: update to 2012 snapshot from Debian --- pkgs/data/fonts/tipa/default.nix | 24 +++++++++++ .../libraries/silgraphite/default.nix | 20 +++++++++ .../typesetting/tex/texlive/aggregate.nix | 11 ++--- .../tools/typesetting/tex/texlive/default.nix | 42 ++++++++++++------- pkgs/tools/typesetting/tex/texlive/extra.nix | 8 ++-- pkgs/top-level/all-packages.nix | 14 ++++--- 6 files changed, 90 insertions(+), 29 deletions(-) create mode 100644 pkgs/data/fonts/tipa/default.nix create mode 100644 pkgs/development/libraries/silgraphite/default.nix diff --git a/pkgs/data/fonts/tipa/default.nix b/pkgs/data/fonts/tipa/default.nix new file mode 100644 index 000000000000..47e98f7c53aa --- /dev/null +++ b/pkgs/data/fonts/tipa/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation { + name = "tipa-1.3"; + + src = fetchurl { + url = "mirror://debian/pool/main/t/tipa/tipa_1.3.orig.tar.gz"; + sha256 = "1q1sisxdcd2zd9b7mnagr2mxf9v3n1r4s5892zx5ly4r0niyya9m"; + }; + + installPhase = '' + export PREFIX="$out/texmf" + mkdir -p "$PREFIX" "$out/share" + make install PREFIX="$PREFIX" + + ln -s $out/texmf* $out/share/ + ''; + + meta = { + description = "Phonetic font for TeX"; + }; +} + + diff --git a/pkgs/development/libraries/silgraphite/default.nix b/pkgs/development/libraries/silgraphite/default.nix new file mode 100644 index 000000000000..2bb38b3781f9 --- /dev/null +++ b/pkgs/development/libraries/silgraphite/default.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl, pkgconfig, freetype, libXft, pango, fontconfig }: +stdenv.mkDerivation rec { + version = "2.3.1"; + name = "silgraphite-2.3.1"; + + src = fetchurl { + url = "mirror://sourceforge/silgraphite/silgraphite/${version}/${name}.tar.gz"; + sha256 = "9b07c6e91108b1fa87411af4a57e25522784cfea0deb79b34ced608444f2ed65"; + }; + + buildInputs = [pkgconfig freetype libXft pango fontconfig]; + + NIX_CFLAGS_COMPILE = "-I${freetype}/include/freetype2"; + + meta = { + description = ''An advanced font engine''; + maintainers = with stdenv.lib.maintainers; [raskin]; + platforms = with stdenv.lib.maintainers; linux; + }; +} diff --git a/pkgs/tools/typesetting/tex/texlive/aggregate.nix b/pkgs/tools/typesetting/tex/texlive/aggregate.nix index c018d2da0d3d..c2ccecab0896 100644 --- a/pkgs/tools/typesetting/tex/texlive/aggregate.nix +++ b/pkgs/tools/typesetting/tex/texlive/aggregate.nix @@ -46,13 +46,14 @@ rec { rm $out/texmf*/ls-R for i in web2c texconfig fonts/map; do - cp -r $out/texmf/$i/* $out/texmf-config/$i || true + cp -Lr $out/texmf/$i/* $out/texmf-config/$i || true done + chmod -R u+w $out/texmf-config - TEXMFCONFIG=$out/texmf-config HOME=$PWD PATH=$PATH:$out/bin updmap --syncwithtrees - PATH=$PATH:$out/bin mktexlsr $out/texmf* - TEXMFCONFIG=$out/texmf-config HOME=$PWD PATH=$PATH:$out/bin updmap --syncwithtrees - PATH=$PATH:$out/bin mktexlsr $out/texmf* + yes | TEXMFCONFIG=$out/texmf-config HOME=$PWD PATH=$PATH:$out/bin updmap --syncwithtrees + yes | PATH=$PATH:$out/bin mktexlsr $out/texmf* + yes | TEXMFCONFIG=$out/texmf-config HOME=$PWD PATH=$PATH:$out/bin updmap --syncwithtrees + yes | PATH=$PATH:$out/bin mktexlsr $out/texmf* '') ["minInit" "defEnsureDir" "addInputs"]; meta = { diff --git a/pkgs/tools/typesetting/tex/texlive/default.nix b/pkgs/tools/typesetting/tex/texlive/default.nix index 30e59849d32f..aac8da784b3d 100644 --- a/pkgs/tools/typesetting/tex/texlive/default.nix +++ b/pkgs/tools/typesetting/tex/texlive/default.nix @@ -1,18 +1,18 @@ args : with args; rec { src = fetchurl { - url = mirror://debian/pool/main/t/texlive-bin/texlive-bin_2009.orig.tar.gz; - sha256 = "0ywc8h4jnig53fs0bji2ivw5f9j6zlgdy477jqw7xvpc7migjpw7"; + url = mirror://debian/pool/main/t/texlive-bin/texlive-bin_2012.20120628.orig.tar.xz; + sha256 = "0k94df3lfvghngzdzi2d4fz2z0gs8iglz7h3w2lxvlhiwwpmx601"; }; texmfSrc = fetchurl { - url = mirror://debian/pool/main/t/texlive-base/texlive-base_2009.orig.tar.gz; - sha256 = "130z907xcxr10yrzbbmp9l8a00dabvi4bi702s5jxamjzav17cmf"; + url = mirror://debian/pool/main/t/texlive-base/texlive-base_2012.20120611.orig.tar.xz; + sha256 = "116zm0qdq9rd4vakhd2py9q7lq3ihspc7hy33bh8wy5v1rgiqsm6"; }; langTexmfSrc = fetchurl { - url = mirror://debian/pool/main/t/texlive-lang/texlive-lang_2009.orig.tar.gz; - sha256 = "10shnsc71n95zy9ys938pljdid9ampmc50k4lji9wv53hm14laic"; + url = mirror://debian/pool/main/t/texlive-lang/texlive-lang_2012.20120611.orig.tar.xz; + sha256 = "0zh9svszfkbjx72i7sa9gg0gak93wf05845mxpjv56h8qwk4bffv"; }; setupHook = ./setup-hook.sh; @@ -44,15 +44,23 @@ rec { '') ["minInit" "doUnpack" "addInputs" "defEnsureDir"]; doPostInstall = fullDepEntry('' - mv $out/bin $out/libexec + mkdir -p $out/libexec/ + mv $out/bin $out/libexec/$(uname -m) mkdir -p $out/bin - for i in "$out/libexec/"*"/"*; do - test \( \! -d "$i" \) -a -x "$i" || continue - echo -ne "#! $SHELL\\nexec $i \"\$@\"" >$out/bin/$(basename $i) - chmod a+x $out/bin/$(basename $i) + for i in "$out/libexec/"* "$out/libexec/"*/* ; do + test \( \! -d "$i" \) -a \( -x "$i" -o -L "$i" \) || continue + if [ -x "$i" ]; then + echo -ne "#! $SHELL\\nexec $i \"\$@\"" >$out/bin/$(basename $i) + chmod a+x $out/bin/$(basename $i) + else + mv "$i" "$out/libexec" + ln -s "$(readlink -f "$out/libexec/$(basename "$i")")" "$out/bin/$(basename "$i")"; + ln -sf "$(readlink -f "$out/libexec/$(basename "$i")")" "$out/libexec/$(uname -m)/$(basename "$i")"; + rm "$out/libexec/$(basename "$i")" + fi; done [ -d $out/texmf-config ] || ln -s $out/texmf $out/texmf-config - ln -s "$out/"*texmf* "$out/share/" + ln -s -v "$out/"*texmf* "$out/share/" || true sed -e 's/.*pyhyph.*/=&/' -i $out/texmf-config/tex/generic/config/language.dat @@ -79,16 +87,20 @@ rec { zlib bzip2 ncurses libpng flex bison libX11 libICE xproto freetype t1lib gd libXaw icu ghostscript ed libXt libXpm libXmu libXext xextproto perl libSM - ruby expat curl libjpeg python fontconfig + ruby expat curl libjpeg python fontconfig xz + pkgconfig poppler silgraphite lesstif zziplib ]; configureFlags = [ "--with-x11" - "--enable-ipc" "--with-mktexfmt" + "--enable-ipc" "--with-mktexfmt" "--enable-shared" + "--disable-native-texlive-build" "--with-system-zziplib" + "--with-system-icu" "--with-system-libgs" "--with-system-t1lib" + "--with-system-freetype2" ]; phaseNames = ["addInputs" "doMainBuild" "doMakeInstall" "doPostInstall"]; - name = "texlive-core-2009"; + name = "texlive-core-2012"; meta = { description = "A TeX distribution"; maintainers = [ args.lib.maintainers.raskin ]; diff --git a/pkgs/tools/typesetting/tex/texlive/extra.nix b/pkgs/tools/typesetting/tex/texlive/extra.nix index 1ecec91a6856..180019bb205f 100644 --- a/pkgs/tools/typesetting/tex/texlive/extra.nix +++ b/pkgs/tools/typesetting/tex/texlive/extra.nix @@ -1,12 +1,12 @@ args: with args; rec { - name = "texlive-extra-2009"; + name = "texlive-extra-2012"; src = fetchurl { - url = mirror://debian/pool/main/t/texlive-extra/texlive-extra_2009.orig.tar.gz; - sha256 = "04k48lxy76bad1270gb9k4aza2q13can2dbcf2hj0a3byls099kp"; + url = mirror://debian/pool/main/t/texlive-extra/texlive-extra_2012.20120611.orig.tar.xz; + sha256 = "1wn2gwifb5ww6nb15zdbkk5yz5spynvwqscvrgxzb84p0z3hy8dq"; }; - buildInputs = [texLive]; + buildInputs = [texLive xz]; phaseNames = ["doCopy"]; doCopy = fullDepEntry ('' mkdir -p $out/share diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a2ee56d44ef9..b9134fcf9fb6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4673,6 +4673,8 @@ let serd = callPackage ../development/libraries/serd {}; + silgraphite = callPackage ../development/libraries/silgraphite {}; + simgear = callPackage ../development/libraries/simgear {}; sfml_git = callPackage ../development/libraries/sfml { }; @@ -6266,6 +6268,8 @@ let terminus_font = callPackage ../data/fonts/terminus-font { }; + tipa = callPackage ../data/fonts/tipa { }; + ttf_bitstream_vera = callPackage ../data/fonts/ttf-bitstream-vera { }; ubuntu_font_family = callPackage ../data/fonts/ubuntu-font-family { }; @@ -8610,9 +8614,9 @@ let texFunctions = import ../tools/typesetting/tex/nix pkgs; texLive = builderDefsPackage (import ../tools/typesetting/tex/texlive) { - inherit builderDefs zlib bzip2 ncurses libpng ed - gd t1lib freetype icu perl expat curl - libjpeg bison python fontconfig flex; + inherit builderDefs zlib bzip2 ncurses libpng ed lesstif + gd t1lib freetype icu perl expat curl xz pkgconfig zziplib + libjpeg bison python fontconfig flex poppler silgraphite; inherit (xlibs) libXaw libX11 xproto libXt libXpm libXmu libXext xextproto libSM libICE; ghostscript = ghostscriptX; @@ -8621,7 +8625,7 @@ let texLiveFull = lib.setName "texlive-full" (texLiveAggregationFun { paths = [ texLive texLiveExtra lmodern texLiveCMSuper texLiveLatexXColor - texLivePGF texLiveBeamer texLiveModerncv ]; + texLivePGF texLiveBeamer texLiveModerncv tipa ]; }); /* Look in configurations/misc/raskin.nix for usage example (around revisions @@ -8646,7 +8650,7 @@ let }; texLiveExtra = builderDefsPackage (import ../tools/typesetting/tex/texlive/extra.nix) { - inherit texLive; + inherit texLive xz; }; texLiveCMSuper = builderDefsPackage (import ../tools/typesetting/tex/texlive/cm-super.nix) {