mailman: Remove package

This version of mailman will cease to function once Python 2 is removed
from the feed. There does not appear to be any interest in updating this
package to a current version that uses Python 3.

This package will be added to the abandoned packages feed.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
This commit is contained in:
Jeffery To 2020-03-31 03:20:27 +08:00
parent edb929bf5b
commit cec41bccaf
6 changed files with 0 additions and 273 deletions

View File

@ -1,129 +0,0 @@
#
# Copyright (C) 2014 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=mailman
PKG_VERSION:=2.1.29
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz
PKG_SOURCE_URL:=@GNU/$(PKG_NAME)
PKG_HASH:=838872713601e8a124146e550f53709482c1ef168f1e16d201465c651cbf0d2c
PKG_MAINTAINER:=Denis Shulyaka <Shulyaka@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later
PKG_LICENSE_FILES:=gnu-COPYING-GPL
PKG_CPE_ID:=cpe:2.3:a:gnu:mailman
include $(INCLUDE_DIR)/package.mk
define Package/mailman
SECTION:=mail
CATEGORY:=Mail
TITLE:=The GNU Mailing List Manager
URL:=https://www.gnu.org/software/mailman/
DEPENDS:=+postfix +python +uhttpd +python-dns
endef
define Package/mailman/description
Mailman is free software for managing electronic mail discussion and e-newsletter lists.
endef
prefix=/usr/local/mailman
define Package/mailman/conffiles
$(prefix)/Mailman/mm_cfg.py
endef
CONFIGURE_ARGS += \
--prefix="$(prefix)" \
--exec-prefix="$(prefix)" \
--with-username="root" \
--with-groupname="root" \
--with-mail-gid="nogroup" \
--with-cgi-gid="root" \
--without-permcheck \
define Build/Compile
endef
define Package/mailman/install
$(INSTALL_DIR) $(1)$(prefix)
cd $(PKG_BUILD_DIR); $(MAKE) DESTDIR=$(1) install
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/mailman.init $(1)/etc/init.d/mailman
$(INSTALL_DIR) $(1)/usr/www
ln -s $(prefix)/cgi-bin/ $(1)/usr/www/mailman
ln -s $(prefix)/archives/public/ $(1)/usr/www/pipermail
ln -s $(prefix)/icons $(1)/usr/www/icons
endef
define Package/mailman/postinst
#!/bin/sh
# check if we are on real system
if [ -z "$${IPKG_INSTROOT}" ]; then
if [ `postconf alias_maps | grep -ci mailman` -eq 0 ]
then
postconf -e "`postconf alias_maps`, cdb:$(prefix)/data/aliases"
fi
cd $(prefix)
hostname=`cat /proc/sys/kernel/hostname`
if [ ! -f data/aliases ]
then
./bin/genaliases
fi
newaliases
if [ `grep -c DEFAULT_URL_HOST Mailman/mm_cfg.py` -eq 0 ]
then
echo "DEFAULT_EMAIL_HOST = '$$hostname'" >> Mailman/mm_cfg.py
echo "DEFAULT_URL_HOST = '$$hostname'" >> Mailman/mm_cfg.py
echo "add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST)" >> Mailman/mm_cfg.py
echo "QRUNNERS.remove(('NewsRunner',1))" >> Mailman/mm_cfg.py
fi
if [ `./bin/list_lists | grep -ci mailman` -eq 0 ]
then
./bin/newlist --urlhost=$$hostname --emailhost=$$hostname --quiet mailman root@$$hostname mailman
./bin/config_list -i data/sitelist.cfg mailman
echo "NOTE: A default site-wide mailing list Mailman with password 'mailman' has been created. Please review it and change the password."
./bin/mmsitepass mailman
echo "NOTE: The default site password 'mailman' has been created."
fi
# /etc/init.d/mailman enable
if [ `ps | grep "mailman/bin/qrunner" | grep -cv grep` -gt 0 ]
then
$(prefix)/bin/mailmanctl -q restart
fi
if [ `grep -c mailman /etc/config/uhttpd` -eq 0 ]
then #we assume that the server is not configured yet, thus print out some help for the first time:
echo "NOTE: Please set the site password using $(prefix)/bin/mmsitepass <your-site-password>"
echo "Please add uhttpd config section to your /etc/config/uhttpd like this:"
echo "config uhttpd mailman"
echo " list listen_http 0.0.0.0:80"
echo " option home /usr/www"
echo " option cgi_prefix /mailman"
echo " no_symlinks 0"
echo "Don't forget to setup firewall for accessing this website!"
echo "To add a mailing list go to http://$$hostname/mailman/create."
fi
fi
endef
define Package/mailman/prerm
#!/bin/sh
# check if we are on real system
if [ -z "$${IPKG_INSTROOT}" ]; then
if [ `ps | grep "mailman/bin/qrunner" | grep -cv grep` -gt 0 ]
then
$(prefix)/bin/mailmanctl stop
fi
fi
endef
$(eval $(call BuildPackage,mailman))

View File

@ -1,22 +0,0 @@
#!/bin/sh /etc/rc.common
# Copyright (C) 2014 OpenWrt.org
START=50
STOP=50
PYTHON=/usr/bin/python
MAILMANHOME=/usr/local/mailman
MAILMANCTL=$MAILMANHOME/bin/mailmanctl
start() {
#rm -f $MAILMANHOME/locks/*
$PYTHON $MAILMANCTL -s -q start
}
stop() {
$PYTHON $MAILMANCTL -q stop
}
restart() {
$PYTHON $MAILMANCTL -q restart
}

View File

@ -1,11 +0,0 @@
--- a/Mailman/Defaults.py.in
+++ b/Mailman/Defaults.py.in
@@ -506,7 +506,7 @@ SMTPLIB_DEBUG_LEVEL = 0
# standard out (or send an email to the site list owner) for manual twiddling
# of an /etc/aliases style file. Use 'Postfix' if you are using the Postfix
# MTA -- but then also see POSTFIX_STYLE_VIRTUAL_DOMAINS.
-MTA = 'Manual'
+MTA = 'Postfix'
# If you set MTA='Postfix', then you also want to set the following variable,
# depending on whether you're using virtual domains in Postfix, and which

View File

@ -1,67 +0,0 @@
--- a/configure
+++ b/configure
@@ -2255,35 +2255,35 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $version" >&5
$as_echo "$version" >&6; }
-# See if dnspython is installed.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dnspython" >&5
-$as_echo_n "checking dnspython... " >&6; }
-
-cat > conftest.py <<EOF
-try:
- import dns.resolver
- res = 'ok'
-except ImportError:
- res = 'no'
-fp = open("conftest.out", "w")
-fp.write("%s\n" % res)
-fp.close()
-EOF
-
-$PYTHON conftest.py
-havednspython=`cat conftest.out`
-rm -f conftest.out conftest.py
-if test "$havednspython" = "no"
-then
- as_fn_error $? "
-
-***** dnspython not found. It is required for the new
-***** dmarc_moderation_action featurer. Get it from
-***** <http://www.dnspython.org/> or
-***** <https://pypi.python.org/pypi/dnspython/>" "$LINENO" 5
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $havednspython" >&5
-$as_echo "$havednspython" >&6; }
+## See if dnspython is installed.
+#{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dnspython" >&5
+#$as_echo_n "checking dnspython... " >&6; }
+#
+#cat > conftest.py <<EOF
+#try:
+# import dns.resolver
+# res = 'ok'
+#except ImportError:
+# res = 'no'
+#fp = open("conftest.out", "w")
+#fp.write("%s\n" % res)
+#fp.close()
+#EOF
+#
+#$PYTHON conftest.py
+#havednspython=`cat conftest.out`
+#rm -f conftest.out conftest.py
+#if test "$havednspython" = "no"
+#then
+# as_fn_error $? "
+#
+#***** dnspython not found. It is required for the new
+#***** dmarc_moderation_action featurer. Get it from
+#***** <http://www.dnspython.org/> or
+#***** <https://pypi.python.org/pypi/dnspython/>" "$LINENO" 5
+#fi
+#{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $havednspython" >&5
+#$as_echo "$havednspython" >&6; }
# Check the email package version.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Python's email package" >&5

View File

@ -1,11 +0,0 @@
--- a/configure
+++ b/configure
@@ -3957,6 +3957,8 @@ fi
$as_echo "$URLHOST" >&6; }
rm -f conftest.out conftest.py
+PYTHON=/usr/bin/python
+
# Checks for libraries.
for ac_func in strerror setregid syslog

View File

@ -1,33 +0,0 @@
--- a/Mailman/MailList.py
+++ b/Mailman/MailList.py
@@ -30,7 +30,7 @@ import re
import shutil
import socket
import urllib
-import cPickle
+import pickle as cPickle
from cStringIO import StringIO
from UserDict import UserDict
--- a/misc/paths.py.in
+++ b/misc/paths.py.in
@@ -71,14 +71,14 @@ sys.path.append(distdir)
# In a normal interactive Python environment, the japanese.pth and korean.pth
# files would be imported automatically. But because we inhibit the importing
# of the site module, we need to be explicit about importing these codecs.
-if not jaok:
- import japanese
+#if not jaok:
+# import japanese
# As of KoreanCodecs 2.0.5, you had to do the second import to get the Korean
# codecs installed, however leave the first import in there in case an upgrade
# changes this.
-if not kook:
- import korean
- import korean.aliases
+#if not kook:
+# import korean
+# import korean.aliases
# Arabic and Hebrew (RFC-1556) encoding aliases. (temporary solution)
import encodings.aliases
encodings.aliases.aliases.update({