View | Details | Raw Unified | Return to bug 225543 | Differences between
and this patch

Collapse All | Expand All

(-)mailman3/Makefile (+44 lines)
Line 0 Link Here
1
# $FreeBSD$
2
3
PORTNAME=	mailman
4
PORTVERSION=	3.3.1
5
PORTREVISION=	0
6
CATEGORIES=	mail
7
MASTER_SITES=	CHEESESHOP
8
PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
9
10
MAINTAINER=	vishwin@vishwin.info
11
COMMENT=	The GNU Mailing List Management System, Core
12
13
LICENSE=	GPLv3+
14
15
RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}aiosmtpd>=1.1:mail/py-aiosmtpd@${PY_FLAVOR} \
16
		${PYTHON_PKGNAMEPREFIX}alembic>0:databases/py-alembic@${PY_FLAVOR} \
17
		${PYTHON_PKGNAMEPREFIX}atpublic>0:devel/py-atpublic@${PY_FLAVOR} \
18
		${PYTHON_PKGNAMEPREFIX}click>0:devel/py-click@${PY_FLAVOR} \
19
		${PYTHON_PKGNAMEPREFIX}dnspython>=1.14.0:dns/py-dnspython@${PY_FLAVOR} \
20
		${PYTHON_PKGNAMEPREFIX}falcon>=1.0.0.rc1:www/py-falcon@${PY_FLAVOR} \
21
		${PYTHON_PKGNAMEPREFIX}flufl.bounce>0:mail/py-flufl.bounce@${PY_FLAVOR} \
22
		${PYTHON_PKGNAMEPREFIX}flufl.i18n>=2.0:devel/py-flufl.i18n@${PY_FLAVOR} \
23
		${PYTHON_PKGNAMEPREFIX}flufl.lock>=3.1:devel/py-flufl.lock@${PY_FLAVOR} \
24
		${PYTHON_PKGNAMEPREFIX}lazr.config>0:devel/py-lazr.config@${PY_FLAVOR} \
25
		${PYTHON_PKGNAMEPREFIX}passlib>0:security/py-passlib@${PY_FLAVOR} \
26
		${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \
27
		${PYTHON_PKGNAMEPREFIX}sqlalchemy12>1.2.3:databases/py-sqlalchemy12@${PY_FLAVOR} \
28
		${PYTHON_PKGNAMEPREFIX}zope.component>0:devel/py-zope.component@${PY_FLAVOR} \
29
		${PYTHON_PKGNAMEPREFIX}zope.configuration>0:devel/py-zope.configuration@${PY_FLAVOR} \
30
		${PYTHON_PKGNAMEPREFIX}zope.event>0:devel/py-zope.event@${PY_FLAVOR} \
31
		${PYTHON_PKGNAMEPREFIX}zope.interface>0:devel/py-zope.interface@${PY_FLAVOR}
32
33
USES=		python:3.5+
34
USE_PYTHON=	distutils autoplist
35
USE_RC_SUBR=	mailman
36
37
SUB_LIST=	PYTHON_CMD=${PYTHON_CMD}
38
39
USERS=		mailman
40
GROUPS=		mailman
41
42
NO_ARCH=	yes
43
44
.include <bsd.port.mk>
(-)mailman3/distinfo (+3 lines)
Line 0 Link Here
1
TIMESTAMP = 1590347054
2
SHA256 (mailman-3.3.1.tar.gz) = b8cfa4b50453abf2b499b272db17c25865d81a49208c43b004ec4989c88eae45
3
SIZE (mailman-3.3.1.tar.gz) = 1184548
(-)mailman3/files/mailman.in (+47 lines)
Line 0 Link Here
1
#!/bin/sh
2
3
# $FreeBSD$
4
# 
5
# PROVIDE: mailman
6
# REQUIRE: LOGIN
7
# KEYWORD: shutdown
8
# 
9
# Add these lines to /etc/rc.conf or /etc/rc.conf.local to enable
10
# mailman:
11
# 
12
# mailman_enable (bool):	Set to NO by default.
13
# 				Set it to YES to enable mailman.
14
# mailman_config (path):	Set to %%PREFIX%%/mailman/etc/mailman.cfg
15
#				by default.
16
17
. /etc/rc.subr
18
19
name=mailman
20
rcvar=mailman_enable
21
22
load_rc_config $name
23
24
: ${mailman_enable:=NO}
25
: ${mailman_config="%%PREFIX%%/mailman/etc/mailman.cfg"}
26
27
command_interpreter=%%PYTHON_CMD%%
28
command=%%PREFIX%%/bin/${name}
29
30
start_cmd="mailman_command start"
31
stop_cmd="mailman_command stop"
32
restart_cmd="mailman_command restart"
33
status_cmd="mailman_command status"
34
info_cmd="mailman_command info"
35
extra_commands=info
36
37
required_files="%%PREFIX%%/${name}/etc/${name}.cfg"
38
pidfile="%%PREFIX%%/${name}/master.pid"
39
40
command_args="-C ${mailman_config}"
41
42
mailman_command()
43
{
44
	LANG=en_US.UTF-8 /usr/bin/su -m ${name} -c "${command_interpreter} ${command} ${command_args} ${rc_arg}"
45
}
46
47
run_rc_command "$1"
(-)mailman3/files/patch-src_mailman_config_mailman.cfg (+24 lines)
Line 0 Link Here
1
--- src/mailman/config/mailman.cfg.orig	2018-01-22 20:19:40 UTC
2
+++ src/mailman/config/mailman.cfg
3
@@ -34,14 +34,17 @@ var_dir: $cwd/var
4
 [paths.fhs]
5
 # Filesystem Hiearchy Standard 2.3
6
 # http://www.pathname.com/fhs/pub/fhs-2.3.html
7
-bin_dir: /sbin
8
+bin_dir: /usr/local/bin
9
 var_dir: /var/lib/mailman
10
 queue_dir: /var/spool/mailman
11
 log_dir: /var/log/mailman
12
-lock_dir: /var/lock/mailman
13
-etc_dir: /etc
14
-ext_dir: /etc/mailman.d
15
+lock_dir: /var/spool/lock/mailman
16
+etc_dir: /usr/local/etc
17
+ext_dir: /usr/local/etc/mailman.d
18
 pid_file: /var/run/mailman/master.pid
19
+
20
+[paths.home]
21
+var_dir: /usr/local/mailman
22
 
23
 [language.en]
24
 
(-)mailman3/files/patch-src_mailman_config_mhonarc.cfg (+8 lines)
Line 0 Link Here
1
--- src/mailman/config/mhonarc.cfg.orig	2017-03-28 19:07:28 UTC
2
+++ src/mailman/config/mhonarc.cfg
3
@@ -24,4 +24,4 @@ base_url: http://$hostname/archives/$fqdn_listname
4
 
5
 # If the archiver works by calling a command on the local machine, this is the
6
 # command to call.
7
-command: /usr/bin/mhonarc -outdir /path/to/archive/$listname -add
8
+command: /usr/local/bin/mhonarc -outdir /path/to/archive/$listname -add
(-)mailman3/files/patch-src_mailman_config_postfix.cfg (+11 lines)
Line 0 Link Here
1
--- src/mailman/config/postfix.cfg.orig	2017-08-10 03:04:28 UTC
2
+++ src/mailman/config/postfix.cfg
3
@@ -5,7 +5,7 @@
4
 # db file, from the associated plain text files.  The file being updated will
5
 # be appended to this string (with a separating space), so it must be
6
 # appropriate for os.system().
7
-postmap_command: /usr/sbin/postmap
8
+postmap_command: /usr/local/sbin/postmap
9
 
10
 # This variable describes the type of transport maps that will be generated by
11
 # mailman to be used with postfix for LMTP transport. By default, it is set to
(-)mailman3/files/patch-src_mailman_config_schema.cfg (+20 lines)
Line 0 Link Here
1
--- src/mailman/config/schema.cfg.orig	2018-01-22 20:19:40 UTC
2
+++ src/mailman/config/schema.cfg
3
@@ -55,7 +55,7 @@ pending_request_life: 3d
4
 cache_life: 7d
5
 
6
 # Which paths.* file system layout to use.
7
-layout: here
8
+layout: home
9
 
10
 # Can MIME filtered messages be preserved by list owners?
11
 filtered_messages_are_preservable: no
12
@@ -65,7 +65,7 @@ filtered_messages_are_preservable: no
13
 # where the substitution variable $filename is filled in by Mailman, and
14
 # contains the path to the temporary file that the command should read from.
15
 # The command should print the converted text to stdout.
16
-html_to_plain_text_command: /usr/bin/lynx -dump $filename
17
+html_to_plain_text_command: /usr/local/bin/lynx -dump $filename
18
 
19
 # Specify what characters are allowed in list names.  Characters outside of
20
 # the class [-_.+=!$*{}~0-9a-z] matched case insensitively are never allowed,
(-)mailman3/files/patch-src_mailman_config_tests_test__configuration.py (+17 lines)
Line 0 Link Here
1
--- src/mailman/config/tests/test_configuration.py.orig	2018-01-08 11:00:18 UTC
2
+++ src/mailman/config/tests/test_configuration.py
3
@@ -88,12 +88,12 @@ class TestExternal(unittest.TestCase):
4
         filename = resource_filename('mailman.config', 'postfix.cfg')
5
         parser = external_configuration(filename)
6
         self.assertEqual(parser.get('postfix', 'postmap_command'),
7
-                         '/usr/sbin/postmap')
8
+                         '/usr/local/sbin/postmap')
9
 
10
     def test_external_configuration_by_path(self):
11
         parser = external_configuration('python:mailman.config.postfix')
12
         self.assertEqual(parser.get('postfix', 'postmap_command'),
13
-                         '/usr/sbin/postmap')
14
+                         '/usr/local/sbin/postmap')
15
 
16
     def test_missing_configuration_file(self):
17
         with self.assertRaises(MissingConfigurationFileError) as cm:
(-)mailman3/files/patch-src_mailman_core_initialize.py (+19 lines)
Line 0 Link Here
1
--- src/mailman/core/initialize.py.orig	2017-11-18 01:23:39 UTC
2
+++ src/mailman/core/initialize.py
3
@@ -67,12 +67,12 @@ def search_for_configuration_file():
4
     config_path = os.path.join(os.getenv('HOME', '~'), '.mailman.cfg')
5
     if os.path.exists(config_path):
6
         return os.path.abspath(config_path)
7
-    # /etc/mailman.cfg
8
-    config_path = '/etc/mailman.cfg'
9
+    # /usr/local/etc/mailman.cfg
10
+    config_path = '/usr/local/etc/mailman.cfg'
11
     if os.path.exists(config_path):
12
         return os.path.abspath(config_path)
13
-    # /etc/mailman3/mailman.cfg
14
-    config_path = '/etc/mailman3/mailman.cfg'
15
+    # /usr/local/etc/mailman3/mailman.cfg
16
+    config_path = '/usr/local/etc/mailman3/mailman.cfg'
17
     if os.path.exists(config_path):
18
         return os.path.abspath(config_path)
19
     # $argv0/../../etc/mailman.cfg
(-)mailman3/files/patch-src_mailman_rest_tests_test__systemconf.py (+11 lines)
Line 0 Link Here
1
--- src/mailman/rest/tests/test_systemconf.py.orig	2017-11-18 01:23:39 UTC
2
+++ src/mailman/rest/tests/test_systemconf.py
3
@@ -41,7 +41,7 @@ class TestSystemConfiguration(unittest.TestCase):
4
             default_language='en',
5
             email_commands_max_lines='10',
6
             filtered_messages_are_preservable='no',
7
-            html_to_plain_text_command='/usr/bin/lynx -dump $filename',
8
+            html_to_plain_text_command='/usr/local/bin/lynx -dump $filename',
9
             layout='testing',
10
             listname_chars='[-_.0-9a-z]',
11
             noreply_address='noreply',
(-)mailman3/files/patch-src_mailman_testing_mhonarc.cfg (+8 lines)
Line 0 Link Here
1
--- src/mailman/testing/mhonarc.cfg.orig	2015-12-10 06:48:42 UTC
2
+++ src/mailman/testing/mhonarc.cfg
3
@@ -1,4 +1,4 @@
4
 [general]
5
 base_url: http://$hostname/archives/$fqdn_listname
6
 
7
-command: /bin/echo "/usr/bin/mhonarc -add -dbfile $PRIVATE_ARCHIVE_FILE_DIR/${listname}.mbox/mhonarc.db -outdir $VAR_DIR/mhonarc/${listname} -stderr $LOG_DIR/mhonarc -stdout $LOG_DIR/mhonarc -spammode -umask 022"
8
+command: /bin/echo "/usr/local/bin/mhonarc -add -dbfile $PRIVATE_ARCHIVE_FILE_DIR/${listname}.mbox/mhonarc.db -outdir $VAR_DIR/mhonarc/${listname} -stderr $LOG_DIR/mhonarc -stdout $LOG_DIR/mhonarc -spammode -umask 022"
(-)mailman3/files/patch-src_mailman_tests_test__configfile.py (+24 lines)
Line 0 Link Here
1
--- src/mailman/tests/test_configfile.py.orig	2017-11-16 05:50:21 UTC
2
+++ src/mailman/tests/test_configfile.py
3
@@ -161,8 +161,8 @@ class TestConfigFileSearchWithChroot(TestConfigFileBas
4
                 self.assertEqual(search_for_configuration_file(), config_file)
5
 
6
     def test_etc_file(self):
7
-        # Test /etc/mailman.cfg
8
-        fake_etc = '/etc'
9
+        # Test /usr/local/etc/mailman.cfg
10
+        fake_etc = '/usr/local/etc'
11
         fake_testdir = self._make_fake(fake_etc)
12
         config_file = os.path.join(fake_etc, 'mailman.cfg')
13
         with fakedirs(fake_testdir):
14
@@ -172,8 +172,8 @@ class TestConfigFileSearchWithChroot(TestConfigFileBas
15
             self.assertEqual(search_for_configuration_file(), config_file)
16
 
17
     def test_etc_mailman3_file(self):
18
-        # Test /etc/mailman3/mailman.cfg
19
-        fake_etc = '/etc/mailman3'
20
+        # Test /usr/local/etc/mailman3/mailman.cfg
21
+        fake_etc = '/usr/local/etc/mailman3'
22
         fake_testdir = self._make_fake(fake_etc)
23
         config_file = os.path.join(fake_etc, 'mailman.cfg')
24
         with fakedirs(fake_testdir):
(-)mailman3/pkg-descr (+8 lines)
Line 0 Link Here
1
Mailman is free software for managing electronic mail discussion
2
and e-newsletter lists. Mailman is integrated with the web, making
3
it easy for users to manage their accounts and for list owners to
4
administer their lists. Mailman supports built-in archiving, automatic
5
bounce processing, content filtering, digest delivery, spam filters,
6
and more.
7
8
WWW: http://www.list.org/
(-)mailman3/pkg-message (+8 lines)
Line 0 Link Here
1
To initialise Mailman's runtime directories, log files and database
2
for the first time, run
3
4
  service mailman info
5
6
You can then start Mailman by running:
7
8
  service mailman start

Return to bug 225543