about summary refs log tree commit diff
path: root/pkgs/servers
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2014-05-07 11:25:57 +0200
committerPeter Simons <simons@cryp.to>2014-05-07 11:25:57 +0200
commit17aaf71c0e717fdd6d718193b92210a2872516a7 (patch)
tree3d19634fc060d5c5b9d3971c1d3f055d2819dce4 /pkgs/servers
parent0235fe48190831cb0c6ccc87462b6cde063bb25a (diff)
parent2f971193cc1cc8132a66070a9665784903286146 (diff)
downloadnixlib-17aaf71c0e717fdd6d718193b92210a2872516a7.tar
nixlib-17aaf71c0e717fdd6d718193b92210a2872516a7.tar.gz
nixlib-17aaf71c0e717fdd6d718193b92210a2872516a7.tar.bz2
nixlib-17aaf71c0e717fdd6d718193b92210a2872516a7.tar.lz
nixlib-17aaf71c0e717fdd6d718193b92210a2872516a7.tar.xz
nixlib-17aaf71c0e717fdd6d718193b92210a2872516a7.tar.zst
nixlib-17aaf71c0e717fdd6d718193b92210a2872516a7.zip
Merge pull request #2516 from jwiegley/dovecot
Allow Dovecot to build with clucene, and on any Unix
Diffstat (limited to 'pkgs/servers')
-rw-r--r--pkgs/servers/mail/dovecot/2.2.x.nix24
1 files changed, 20 insertions, 4 deletions
diff --git a/pkgs/servers/mail/dovecot/2.2.x.nix b/pkgs/servers/mail/dovecot/2.2.x.nix
index 2b1aca3e9269..40af354a7f99 100644
--- a/pkgs/servers/mail/dovecot/2.2.x.nix
+++ b/pkgs/servers/mail/dovecot/2.2.x.nix
@@ -1,10 +1,11 @@
 { stdenv, fetchurl, perl, systemd, openssl, pam, bzip2, zlib, openldap
-, inotifyTools }:
+, inotifyTools, clucene_core_2 }:
 
 stdenv.mkDerivation rec {
   name = "dovecot-2.2.12";
 
-  buildInputs = [perl systemd openssl pam bzip2 zlib openldap inotifyTools];
+  buildInputs = [perl openssl bzip2 zlib openldap clucene_core_2]
+    ++ stdenv.lib.optionals (stdenv.isLinux) [ systemd pam inotifyTools ];
 
   src = fetchurl {
     url = "http://dovecot.org/releases/2.2/${name}.tar.gz";
@@ -16,6 +17,15 @@ stdenv.mkDerivation rec {
       "/usr/bin/env perl" "${perl}/bin/perl"
   '';
 
+  postInstall = stdenv.lib.optionalString stdenv.isDarwin ''
+    install_name_tool -change libclucene-shared.1.dylib \
+        ${clucene_core_2}/lib/libclucene-shared.1.dylib \
+        $out/lib/dovecot/lib21_fts_lucene_plugin.so
+    install_name_tool -change libclucene-core.1.dylib \
+        ${clucene_core_2}/lib/libclucene-core.1.dylib \
+        $out/lib/dovecot/lib21_fts_lucene_plugin.so
+  '';
+
   patches = [
     # Make dovecot look for plugins in /var/lib/dovecot/modules
     # so we can symlink plugins from several packages there
@@ -28,14 +38,20 @@ stdenv.mkDerivation rec {
     # It will hardcode this for /var/lib/dovecot.
     # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=626211
     "--localstatedir=/var"
-    "--with-systemdsystemunitdir=$(out)/etc/systemd/system"
     "--with-ldap"
+    "--with-lucene"
+    "--with-ssl=openssl"
+    "--with-sqlite"
+    "--with-zlib"
+    "--with-bzlib"
+  ] ++ stdenv.lib.optionals (stdenv.isLinux) [
+    "--with-systemdsystemunitdir=$(out)/etc/systemd/system"
   ];
 
   meta = {
     homepage = "http://dovecot.org/";
     description = "Open source IMAP and POP3 email server written with security primarily in mind";
     maintainers = with stdenv.lib.maintainers; [viric simons rickynils];
-    platforms = with stdenv.lib.platforms; linux;
+    platforms = stdenv.lib.platforms.unix;
   };
 }