summary refs log tree commit diff
path: root/pkgs/applications/networking/browsers/elinks/default.nix
blob: 1a698b0effda94cf96b8ad5bebc1ef977d56120b (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, perl, ncurses, xlibsWrapper, bzip2, zlib, openssl
, spidermonkey, gpm
, enableGuile ? false, guile ? null   # Incompatible licenses, LGPLv3 - GPLv2
, enablePython ? false, python ? null
}:

assert enableGuile -> guile != null;
assert enablePython -> python != null;

stdenv.mkDerivation rec {
  name = "elinks-0.12pre6";

  src = fetchurl {
    url = http://elinks.or.cz/download/elinks-0.12pre6.tar.bz2;
    sha256 = "1nnakbi01g7yd3zqwprchh5yp45br8086b0kbbpmnclabcvlcdiq";
  };

  patches = [ ./gc-init.patch ];

  buildInputs = [ perl ncurses xlibsWrapper bzip2 zlib openssl spidermonkey gpm ]
    ++ stdenv.lib.optional enableGuile guile
    ++ stdenv.lib.optional enablePython python;

  configureFlags =
    ''
      --enable-finger --enable-html-highlight
      --with-perl --enable-gopher --enable-cgi --enable-bittorrent
      --with-spidermonkey=${spidermonkey}
      --enable-nntp --with-openssl=${openssl}
    '' + stdenv.lib.optionalString enableGuile " --with-guile"
    + stdenv.lib.optionalString enablePython " --with-python";

  crossAttrs = {
    propagatedBuildInputs = [ ncurses.crossDrv zlib.crossDrv openssl.crossDrv ];
    configureFlags = ''
      --enable-finger --enable-html-highlight
      --enable-gopher --enable-cgi --enable-bittorrent --enable-nntp
      --with-openssl=${openssl.crossDrv}
      --with-bzip2=${bzip2.crossDrv}
    '';
  };

  meta = {
    description = "Full-featured text-mode web browser";
    homepage = http://elinks.or.cz;
    license = stdenv.lib.licenses.gpl2;
  };
}