mailman: update from 2.1.29 to version 3.2.2

This commit is contained in:
Peter Simons
2019-08-25 21:47:03 +02:00
parent 601b725582
commit 842942baaa
9 changed files with 109 additions and 57 deletions
+29 -22
View File
@@ -1,33 +1,40 @@
{ stdenv, fetchurl, python2 }:
{ stdenv, buildPythonPackage, fetchPypi, alembic, aiosmtpd, dnspython
, flufl_bounce, flufl_i18n, flufl_lock, lazr_config, lazr_delegates, passlib
, requests, zope_configuration, click, falcon, importlib-resources
, zope_component
}:
stdenv.mkDerivation rec {
name = "mailman-${version}";
version = "2.1.29";
buildPythonPackage rec {
pname = "mailman";
version = "3.2.2";
src = fetchurl {
url = "mirror://gnu/mailman/${name}.tgz";
sha256 = "0b0dpwf6ap260791c7lg2vpw30llf19hymbf2hja3s016rqp5243";
src = fetchPypi {
inherit pname version;
sha256 = "09s9p5pb8gff6zblwidyq830yfgcvv50p5drdaxj1qpy8w46lvc6";
};
buildInputs = [ python2 python2.pkgs.dnspython ];
patches = [ ./fix-var-prefix.patch ];
configureFlags = [
"--without-permcheck"
"--with-cgi-ext=.cgi"
"--with-var-prefix=/var/lib/mailman"
propagatedBuildInputs = [
alembic aiosmtpd click dnspython falcon flufl_bounce flufl_i18n flufl_lock
importlib-resources lazr_config passlib requests zope_configuration
zope_component
];
installTargets = "doinstall"; # Leave out the 'update' target that's implied by 'install'.
makeFlags = [ "DIRSETGID=:" ];
# Mailman assumes that those scripts in $out/bin are Python scripts. Wrapping
# them in shell code breaks this assumption. The proper way to use mailman is
# to create a specialized python interpreter:
#
# python37.withPackages (ps: [ps.mailman])
#
# This gives a properly wrapped 'mailman' command plus an interpreter that
# has all the necessary search paths to execute unwrapped 'master' and
# 'runner' scripts. The setup is a little tricky, but fortunately NixOS is
# about to get a OS module that takes care of those details.
dontWrapPythonPrograms = true;
meta = {
homepage = https://www.gnu.org/software/mailman/;
description = "Free software for managing electronic mail discussion and e-newsletter lists";
license = stdenv.lib.licenses.gpl2Plus;
platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.peti ];
description = "Free software for managing electronic mail discussion and newsletter lists";
license = stdenv.lib.licenses.gpl3Plus;
maintainers = with stdenv.lib.maintainers; [ peti ];
};
}
@@ -1,33 +0,0 @@
diff -ubr mailman-2.1.16-orig/contrib/redhat_fhs.patch mailman-2.1.16/contrib/redhat_fhs.patch
--- mailman-2.1.16-orig/contrib/redhat_fhs.patch 2013-10-21 14:55:48.797631434 +0200
+++ mailman-2.1.16/contrib/redhat_fhs.patch 2013-10-21 14:56:42.534310378 +0200
@@ -197,7 +197,7 @@
+ else true; \
+ fi; \
+ done
- chmod o-r $(DESTDIR)$(var_prefix)/archives/private
+ chmod o-r $(prefix)$(var_prefix)/archives/private
@for d in $(ARCH_INDEP_DIRS); \
do \
Only in mailman-2.1.5.FHS: Makefile.in~
diff -ubr mailman-2.1.16-orig/Makefile.in mailman-2.1.16/Makefile.in
--- mailman-2.1.16-orig/Makefile.in 2013-10-21 14:55:48.798631519 +0200
+++ mailman-2.1.16/Makefile.in 2013-10-21 14:56:42.562313220 +0200
@@ -87,7 +87,7 @@
@echo "Creating architecture independent directories..."
@for d in $(VAR_DIRS); \
do \
- dir=$(DESTDIR)$(var_prefix)/$$d; \
+ dir=$(prefix)$(var_prefix)/$$d; \
if test ! -d $$dir; then \
echo "Creating directory hierarchy $$dir"; \
$(srcdir)/mkinstalldirs $$dir; \
@@ -96,7 +96,7 @@
else true; \
fi; \
done
- chmod o-r $(DESTDIR)$(var_prefix)/archives/private
+ chmod o-r $(prefix)$(var_prefix)/archives/private
@for d in $(ARCH_INDEP_DIRS); \
do \
dir=$(DESTDIR)$(prefix)/$$d; \