summary refs log tree commit diff
path: root/pkgs/servers/mail/archiveopteryx/default.nix
blob: 962d5603e4728d5788f11af8946ef75f5e71ffb1 (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
{ stdenv, fetchurl, openssl, perl, zlib, jam }:
stdenv.mkDerivation rec {
  version = "3.2.0";
  pname = "archiveopteryx";

  src = fetchurl {
    url = "http://archiveopteryx.org/download/${pname}-${version}.tar.bz2";
    sha256 = "0i0zg8di8nbh96qnyyr156ikwcsq1w9b2291bazm5whb351flmqx";
  };

  nativeBuildInputs = [ jam ];
  buildInputs = [ openssl perl zlib ];

  preConfigure = ''
    export INSTALLROOT=installroot
    sed -i 's:BINDIR = $(PREFIX)/bin:BINDIR = '$out'/bin:' ./Jamsettings
    sed -i 's:SBINDIR = $(PREFIX)/sbin:SBINDIR = '$out'/bin:' ./Jamsettings
    sed -i 's:LIBDIR = $(PREFIX)/lib:LIBDIR = '$out'/lib:' ./Jamsettings
    sed -i 's:MANDIR = $(PREFIX)/man:MANDIR = '$out'/share/man:' ./Jamsettings
    sed -i 's:READMEDIR = $(PREFIX):READMEDIR = '$out'/share/doc/archiveopteryx:' ./Jamsettings
  '';

  # fix build on gcc7+
  NIX_CFLAGS_COMPILE = builtins.toString [
    "-Wno-error=builtin-declaration-mismatch"
    "-Wno-error=implicit-fallthrough"
    "-Wno-error=deprecated-copy"
  ];

  buildPhase = ''jam "-j$NIX_BUILD_CORES" '';
  installPhase = ''
    jam install
    mv installroot/$out $out
  '';

  meta = with stdenv.lib; {
    homepage = "http://archiveopteryx.org/";
    description = "An advanced PostgreSQL-based IMAP/POP server";
    license = licenses.postgresql;
    maintainers = [ maintainers.phunehehe ];
    platforms = platforms.linux;
  };
}