summary refs log tree commit diff
path: root/pkgs/tools/typesetting/tex/tetex/default.nix
blob: 79f768a086d8d8d428ea1ced8457a2fd8f6d81d4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{ stdenv, fetchurl, flex, bison, zlib, libpng, ncurses, ed }:

stdenv.mkDerivation {
  name = "tetex-3.0";
  
  src = fetchurl {
    url = ftp://cam.ctan.org/tex-archive/systems/unix/teTeX/current/distrib/tetex-src-3.0.tar.gz;
    md5 = "944a4641e79e61043fdaf8f38ecbb4b3";
  };

  texmf = fetchurl {
    url = ftp://cam.ctan.org/tex-archive/systems/unix/teTeX/current/distrib/tetex-texmf-3.0.tar.gz;
    md5 = "11aa15c8d3e28ee7815e0d5fcdf43fd4";
  };

  buildInputs = [ flex bison zlib libpng ncurses ed ];

  # fixes "error: conflicting types for 'calloc'", etc.
  preBuild = stdenv.lib.optionalString stdenv.isDarwin ''
    sed -i 57d texk/kpathsea/c-std.h
  '';

  patches = [ ./environment.patch ./getline.patch ./clang.patch ];

  setupHook = ./setup-hook.sh;

  configureFlags =
    [ "--disable-multiplatform" "--without-x11" "--without-xdvik"
      "--without-oxdvik" "--without-texinfo" "--without-texi2html"
      "--with-system-zlib" "--with-system-pnglib" "--with-system-ncurses" ]
    # couldn't get gsftopk working on darwin
    ++ stdenv.lib.optional stdenv.isDarwin "--without-gsftopk";

  postUnpack = ''
    mkdir -p $out/share/texmf
    mkdir -p $out/share/texmf-dist
    gunzip < $texmf | (cd $out/share/texmf-dist && tar xvf -)
  '';

  meta = with stdenv.lib; {
    description  = "A full-featured (La)TeX distribution";
    homepage     = http://www.tug.org/tetex/;
    matintainers = with maintainers; [ lovek323 ];
    platforms    = platforms.unix;
    hydraPlatforms = platforms.linux;
  };
}