about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/mail
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2020-04-01 15:50:50 +0000
committerAlyssa Ross <hi@alyssa.is>2020-04-01 15:50:50 +0000
commit75eafe97f7df0d653bec67f3962214d7c357831f (patch)
tree09f2cc901e0e637876cbb78d192dfe2fcfef8156 /nixpkgs/pkgs/servers/mail
parenta53b121bf4331497da63df3b1b7f1a7897dad146 (diff)
parenta2e06fc3423c4be53181b15c28dfbe0bcf67dd73 (diff)
downloadnixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar.gz
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar.bz2
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar.lz
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar.xz
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar.zst
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.zip
Merge commit 'a2e06fc3423c4be53181b15c28dfbe0bcf67dd73'
Diffstat (limited to 'nixpkgs/pkgs/servers/mail')
-rw-r--r--nixpkgs/pkgs/servers/mail/dovecot/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/mail/mailman/default.nix2
-rw-r--r--nixpkgs/pkgs/servers/mail/mailman/web.nix8
-rw-r--r--nixpkgs/pkgs/servers/mail/mailman/wrapped.nix9
-rw-r--r--nixpkgs/pkgs/servers/mail/opensmtpd/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/mail/postfix/0001-Fix-build-with-glibc-2.30.patch34
-rw-r--r--nixpkgs/pkgs/servers/mail/postfix/default.nix7
-rw-r--r--nixpkgs/pkgs/servers/mail/rmilter/default.nix33
-rw-r--r--nixpkgs/pkgs/servers/mail/rspamd/default.nix22
-rw-r--r--nixpkgs/pkgs/servers/mail/sympa/default.nix116
-rw-r--r--nixpkgs/pkgs/servers/mail/sympa/make-docs.patch11
11 files changed, 189 insertions, 63 deletions
diff --git a/nixpkgs/pkgs/servers/mail/dovecot/default.nix b/nixpkgs/pkgs/servers/mail/dovecot/default.nix
index 3aff9f53ce74..fd27d18b5035 100644
--- a/nixpkgs/pkgs/servers/mail/dovecot/default.nix
+++ b/nixpkgs/pkgs/servers/mail/dovecot/default.nix
@@ -9,7 +9,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "dovecot-2.3.9.2";
+  name = "dovecot-2.3.10";
 
   nativeBuildInputs = [ perl pkgconfig ];
   buildInputs =
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://dovecot.org/releases/2.3/${name}.tar.gz";
-    sha256 = "1yc6hi4hqg4hcc4495sf4m5f1lnargphi6dawj43if21vncgp127";
+    sha256 = "1ibiz3k2flablkcqbkvfzsjnq5b5kxximhcrplflsjl57mr88ca7";
   };
 
   enableParallelBuilding = true;
@@ -81,7 +81,7 @@ stdenv.mkDerivation rec {
     ++ lib.optional withSQLite "--with-sqlite";
 
   meta = {
-    homepage = https://dovecot.org/;
+    homepage = "https://dovecot.org/";
     description = "Open source IMAP and POP3 email server written with security primarily in mind";
     maintainers = with stdenv.lib.maintainers; [ peti rickynils fpletz globin ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/nixpkgs/pkgs/servers/mail/mailman/default.nix b/nixpkgs/pkgs/servers/mail/mailman/default.nix
index 54719db376cd..2753148c9503 100644
--- a/nixpkgs/pkgs/servers/mail/mailman/default.nix
+++ b/nixpkgs/pkgs/servers/mail/mailman/default.nix
@@ -36,7 +36,7 @@ buildPythonPackage rec {
 
   # Mailman assumes that those scripts in $out/bin are Python scripts. Wrapping
   # them in shell code breaks this assumption. Use the wrapped version (see
-  # wrapper.nix) if you need the CLI (rather than the Python library).
+  # wrapped.nix) if you need the CLI (rather than the Python library).
   #
   # This gives a properly wrapped 'mailman' command plus an interpreter that
   # has all the necessary search paths to execute unwrapped 'master' and
diff --git a/nixpkgs/pkgs/servers/mail/mailman/web.nix b/nixpkgs/pkgs/servers/mail/mailman/web.nix
index cbc3da00f87e..f770f2e4489d 100644
--- a/nixpkgs/pkgs/servers/mail/mailman/web.nix
+++ b/nixpkgs/pkgs/servers/mail/mailman/web.nix
@@ -1,10 +1,12 @@
-{ buildPythonPackage, lib, fetchgit
+{ buildPythonPackage, lib, fetchgit, isPy3k
 , git, makeWrapper, sassc, hyperkitty, postorius, whoosh
+, django
 }:
 
 buildPythonPackage rec {
   pname = "mailman-web-unstable";
   version = "2019-09-29";
+  disabled = !isPy3k;
 
   src = fetchgit {
     url = "https://gitlab.com/mailman/mailman-web";
@@ -33,6 +35,8 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Django project for Mailman 3 web interface";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ qyliss ];
+    maintainers = with maintainers; [ peti qyliss ];
+    # mailman-web requires django < 2.2
+    broken = versionOlder "2.2" django.version;
   };
 }
diff --git a/nixpkgs/pkgs/servers/mail/mailman/wrapped.nix b/nixpkgs/pkgs/servers/mail/mailman/wrapped.nix
index dca6a667cbc8..2a620763d876 100644
--- a/nixpkgs/pkgs/servers/mail/mailman/wrapped.nix
+++ b/nixpkgs/pkgs/servers/mail/mailman/wrapped.nix
@@ -1,8 +1,11 @@
-{ runCommand, lib, makePythonPath, makeWrapper
-, mailman, mailman-hyperkitty
-, archivers ? [ mailman-hyperkitty ]
+{ runCommand, lib, makeWrapper, python3
+, archivers ? [ python3.pkgs.mailman-hyperkitty ]
 }:
 
+let
+  inherit (python3.pkgs) makePythonPath mailman;
+in
+
 runCommand "${mailman.name}-wrapped" {
   inherit (mailman) meta;
   buildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/servers/mail/opensmtpd/default.nix b/nixpkgs/pkgs/servers/mail/opensmtpd/default.nix
index 5a768178ee78..76b247cfd841 100644
--- a/nixpkgs/pkgs/servers/mail/opensmtpd/default.nix
+++ b/nixpkgs/pkgs/servers/mail/opensmtpd/default.nix
@@ -4,14 +4,14 @@
 
 stdenv.mkDerivation rec {
   pname = "opensmtpd";
-  version = "6.6.1p1";
+  version = "6.6.4p1";
 
   nativeBuildInputs = [ autoconf automake libtool bison ];
   buildInputs = [ libasr libevent zlib libressl db pam ];
 
   src = fetchurl {
     url = "https://www.opensmtpd.org/archives/${pname}-${version}.tar.gz";
-    sha256 = "1ngil8j13m2rq07g94j4yjr6zmaimzy8wbfr17shi7rxnazys6zb";
+    sha256 = "1kyph9ycq0j21dl9n1sq5fns9p4gckdi0fmnf8awrcwrdcm9dyg2";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/servers/mail/postfix/0001-Fix-build-with-glibc-2.30.patch b/nixpkgs/pkgs/servers/mail/postfix/0001-Fix-build-with-glibc-2.30.patch
new file mode 100644
index 000000000000..9613b8906a00
--- /dev/null
+++ b/nixpkgs/pkgs/servers/mail/postfix/0001-Fix-build-with-glibc-2.30.patch
@@ -0,0 +1,34 @@
+From a6a61d0dc018101a9a8d0a664f31140d7e38db0e Mon Sep 17 00:00:00 2001
+From: Maximilian Bosch <maximilian@mbosch.me>
+Date: Fri, 17 Jan 2020 01:42:40 +0100
+Subject: [PATCH] Fix build with glibc 2.30
+
+https://bugs.launchpad.net/ubuntu/+source/postfix/+bug/1842923
+---
+ src/dns/dns_str_resflags.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/dns/dns_str_resflags.c b/src/dns/dns_str_resflags.c
+index 5f2cce5..df32345 100644
+--- a/src/dns/dns_str_resflags.c
++++ b/src/dns/dns_str_resflags.c
+@@ -60,10 +60,16 @@ static const LONG_NAME_MASK resflag_table[] = {
+     "RES_DEFNAMES", RES_DEFNAMES,
+     "RES_STAYOPEN", RES_STAYOPEN,
+     "RES_DNSRCH", RES_DNSRCH,
++#ifdef RES_INSECURE1
+     "RES_INSECURE1", RES_INSECURE1,
++#endif
++#ifdef RES_INSECURE2
+     "RES_INSECURE2", RES_INSECURE2,
++#endif
+     "RES_NOALIASES", RES_NOALIASES,
++#ifdef RES_USE_INET6
+     "RES_USE_INET6", RES_USE_INET6,
++#endif
+ #ifdef RES_ROTATE
+     "RES_ROTATE", RES_ROTATE,
+ #endif
+-- 
+2.23.1
+
diff --git a/nixpkgs/pkgs/servers/mail/postfix/default.nix b/nixpkgs/pkgs/servers/mail/postfix/default.nix
index c0e6252a5518..0386bcf2394b 100644
--- a/nixpkgs/pkgs/servers/mail/postfix/default.nix
+++ b/nixpkgs/pkgs/servers/mail/postfix/default.nix
@@ -26,11 +26,11 @@ in stdenv.mkDerivation rec {
 
   pname = "postfix";
 
-  version = "3.4.8";
+  version = "3.4.10";
 
   src = fetchurl {
     url = "ftp://ftp.cs.uu.nl/mirror/postfix/postfix-release/official/${pname}-${version}.tar.gz";
-    sha256 = "0hw9kbr05qdzvfqhxi4dp4n3s9xvdh0gr0la08a4bip06ybl4pcd";
+    sha256 = "0m36wn5grm4cf8nnvlgsgwsm6v09xz01n7jnx13h0yjk73y6d2lh";
   };
 
   nativeBuildInputs = [ makeWrapper m4 ];
@@ -48,6 +48,7 @@ in stdenv.mkDerivation rec {
     ./postfix-3.0-no-warnings.patch
     ./post-install-script.patch
     ./relative-symlinks.patch
+    ./0001-Fix-build-with-glibc-2.30.patch
   ];
 
   postPatch = stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
@@ -97,7 +98,7 @@ in stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = http://www.postfix.org/;
+    homepage = "http://www.postfix.org/";
     description = "A fast, easy to administer, and secure mail server";
     license = with licenses; [ ipl10 epl20 ];
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/servers/mail/rmilter/default.nix b/nixpkgs/pkgs/servers/mail/rmilter/default.nix
deleted file mode 100644
index 9d7730e399f3..000000000000
--- a/nixpkgs/pkgs/servers/mail/rmilter/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ stdenv, fetchFromGitHub, cmake, bison, flex, pkgconfig, openssl, pcre
-, libmilter, opendkim, libmemcached, glib }:
-
-let patchedLibmilter = stdenv.lib.overrideDerivation  libmilter (_ : {
-    patches = libmilter.patches ++ [ ./fd-passing-libmilter.patch ];
-});
-in
-
-stdenv.mkDerivation rec {
-  pname = "rmilter";
-  version = "1.10.0";
-
-  src = fetchFromGitHub {
-    owner = "vstakhov";
-    repo = "rmilter";
-    rev = version;
-    sha256 = "1gbp6jah88l6xqgflim01ycyp63l733bgir65fxnnrmifj1qzymh";
-  };
-
-  nativeBuildInputs = [ bison cmake flex pkgconfig ];
-  buildInputs = [ libmemcached patchedLibmilter openssl pcre opendkim glib ];
-
-  meta = with stdenv.lib; {
-    homepage = https://github.com/vstakhov/rmilter;
-    license = licenses.asl20;
-    description = ''
-      Daemon to integrate rspamd and milter compatible MTA, for example
-      postfix or sendmail
-    '';
-    maintainers = with maintainers; [ avnik fpletz ];
-    platforms = with platforms; linux;
-  };
-}
diff --git a/nixpkgs/pkgs/servers/mail/rspamd/default.nix b/nixpkgs/pkgs/servers/mail/rspamd/default.nix
index 0823ed2fe4b8..79020ce78488 100644
--- a/nixpkgs/pkgs/servers/mail/rspamd/default.nix
+++ b/nixpkgs/pkgs/servers/mail/rspamd/default.nix
@@ -1,8 +1,6 @@
 { stdenv, lib, fetchFromGitHub, cmake, perl
-, file, glib, libevent, luajit, openssl, pcre, pkgconfig, sqlite, ragel, icu
-, hyperscan, libfann, gd, jemalloc, openblas, lua
-, withFann ? true
-, withGd ? false
+, glib, luajit, openssl, pcre, pkgconfig, sqlite, ragel, icu
+, hyperscan, jemalloc, openblas, lua, libsodium
 , withBlas ? true
 , withHyperscan ? stdenv.isx86_64
 , withLuaJIT ? stdenv.isx86_64
@@ -10,24 +8,19 @@
 
 assert withHyperscan -> stdenv.isx86_64;
 
-let libmagic = file;  # libmagic provided by file package ATM
-in
-
 stdenv.mkDerivation rec {
   pname = "rspamd";
-  version = "1.9.4";
+  version = "2.4";
 
   src = fetchFromGitHub {
     owner = "rspamd";
     repo = "rspamd";
     rev = version;
-    sha256 = "0b8n7xazmzjb6jf8sk0jg0x861nf1ayzxsvjaymw1qjgpn371r51";
+    sha256 = "15rdxcvnfn3fzjpjz6z2ljrzhlmhn2y4sxz09z2789k442n4m1qv";
   };
 
   nativeBuildInputs = [ cmake pkgconfig perl ];
-  buildInputs = [ glib libevent libmagic openssl pcre sqlite ragel icu jemalloc ]
-    ++ lib.optional withFann libfann
-    ++ lib.optional withGd gd
+  buildInputs = [ glib openssl pcre sqlite ragel icu jemalloc libsodium ]
     ++ lib.optional withHyperscan hyperscan
     ++ lib.optional withBlas openblas
     ++ lib.optional withLuaJIT luajit ++ lib.optional (!withLuaJIT) lua;
@@ -39,10 +32,7 @@ stdenv.mkDerivation rec {
     "-DLOGDIR=/var/log/rspamd"
     "-DLOCAL_CONFDIR=/etc/rspamd"
     "-DENABLE_JEMALLOC=ON"
-  ] ++ lib.optional withFann "-DENABLE_FANN=ON"
-    ++ lib.optional withHyperscan "-DENABLE_HYPERSCAN=ON"
-    ++ lib.optional withGd "-DENABLE_GD=ON"
-    ++ lib.optional (!withLuaJIT) "-DENABLE_TORCH=OFF";
+  ] ++ lib.optional withHyperscan "-DENABLE_HYPERSCAN=ON";
 
   meta = with stdenv.lib; {
     homepage = "https://rspamd.com";
diff --git a/nixpkgs/pkgs/servers/mail/sympa/default.nix b/nixpkgs/pkgs/servers/mail/sympa/default.nix
new file mode 100644
index 000000000000..46cbcc61f94c
--- /dev/null
+++ b/nixpkgs/pkgs/servers/mail/sympa/default.nix
@@ -0,0 +1,116 @@
+{ stdenv, perl, fetchFromGitHub, autoreconfHook
+}:
+
+let
+  dataDir = "/var/lib/sympa";
+  runtimeDir = "/run/sympa";
+  perlEnv = perl.withPackages (p: with p; [
+    ArchiveZip
+    CGI
+    CGIFast
+    ClassSingleton
+    DateTime
+    DBI
+    DateTimeFormatMail
+    DateTimeTimeZone
+    DigestMD5
+    Encode
+    FCGI
+    FileCopyRecursive
+    FileNFSLock
+    FilePath
+    HTMLParser
+    HTMLFormatter
+    HTMLTree
+    HTMLStripScriptsParser
+    IO
+    IOStringy
+    LWP
+    libintl_perl
+
+    MHonArc
+    MIMEBase64
+    MIMECharset
+    MIMETools
+    MIMEEncWords
+    MIMELiteHTML
+    MailTools
+    NetCIDR
+    ScalarListUtils
+    SysSyslog
+    TermProgressBar
+    TemplateToolkit
+    URI
+    UnicodeLineBreak
+    XMLLibXML
+
+    ### Features
+    Clone
+    CryptEksblowfish
+
+    DBDPg
+    DBDSQLite
+    DBDmysql
+
+    DataPassword
+    EncodeLocale
+    IOSocketSSL
+    MailDKIM
+    NetDNS
+    NetLDAP
+    NetSMTP
+    SOAPLite
+  ]);
+in
+stdenv.mkDerivation rec {
+  pname = "sympa";
+  version = "6.2.52";
+
+  src = fetchFromGitHub {
+    owner = "sympa-community";
+    repo = pname;
+    rev = version;
+    sha256 = "071kx6ryifs2f6fhfky9g297frzp5584kn444af1vb2imzydsbnh";
+  };
+
+  configureFlags = [
+    "--without-initdir"
+    "--without-unitsdir"
+    "--without-smrshdir"
+
+    "--with-lockdir=${runtimeDir}"
+    "--with-piddir=${runtimeDir}"
+    "--with-confdir=${dataDir}/etc"
+    "--sysconfdir=${dataDir}/etc"
+    "--with-spooldir=${dataDir}/spool"
+    "--with-expldir=${dataDir}/list_data"
+  ];
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [ perlEnv ];
+  patches = [ ./make-docs.patch ];
+
+  prePatch = ''
+    patchShebangs po/sympa/add-lang.pl
+  '';
+
+  preInstall = ''
+    mkdir "$TMP/bin"
+    for i in chown chgrp chmod; do
+      echo '#!${stdenv.shell}' >> "$TMP/bin/$i"
+      chmod +x "$TMP/bin/$i"
+    done
+    PATH="$TMP/bin:$PATH"
+  '';
+
+  postInstall = ''
+    rm -rf "$TMP/bin"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Open source mailing list manager";
+    homepage = "https://www.sympa.org";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ sorki mmilata ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/mail/sympa/make-docs.patch b/nixpkgs/pkgs/servers/mail/sympa/make-docs.patch
new file mode 100644
index 000000000000..adefeafdeef7
--- /dev/null
+++ b/nixpkgs/pkgs/servers/mail/sympa/make-docs.patch
@@ -0,0 +1,11 @@
+diff -ur sympa-6.2.44-orig/doc/Makefile.am sympa-6.2.44/doc/Makefile.am
+--- sympa-6.2.44-orig/doc/Makefile.am	2019-08-29 01:57:43.512539087 +0200
++++ sympa-6.2.44/doc/Makefile.am	2019-08-29 01:58:24.393531358 +0200
+@@ -83,6 +83,4 @@
+ 		--lax --release="$(VERSION)" $< $@
+ 
+ .podpl.pod:
+-	$(AM_V_GEN)PERL5LIB=$(top_builddir)/src/lib:$(top_srcdir)/src/lib; \
+-	export PERL5LIB; \
+-	$(PERL) $< --top_srcdir=$(top_srcdir) > $*.pod
++	$(AM_V_GEN)$(PERL) -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib $< --top_srcdir=$(top_srcdir) > $*.pod