remove mailman2
Hanno Böck

Hanno Böck commited on 2020-09-27 11:09:51
Zeige 22 geänderte Dateien mit 0 Einfügungen und 978 Löschungen.

... ...
@@ -1,3 +0,0 @@
1
-AUX cffi-0.14.0-g-line.patch 9258 BLAKE2B a57cb8836dfcfb1124b1b72c38fb4c02d231fc7116c2de4b970e6423d037d1aa382173a4bebb9dafab0d690df485a64d824aafcdb16e31d01b391c25f4c239eb SHA512 335758de740050256af711e688072bbe4ac835551437bc2fbfd4dfaf5492efd5c722bca3bd8e5747bb0a88d3e7e6f82b78f85f5f42a4f11efb7b2f6c3ae4a492
2
-DIST cffi-1.14.0.tar.gz 463065 BLAKE2B 4d1e8a92241db801848ef8bd05ea15a31c7f61ea426ce4da184aff00df786348d2c76de9dc48898c814478aed9750b665868df24ad39435062cd7e1c84163e52 SHA512 4c5451eeede1d48a8f4b40e25b845ad1863b8bf3bd39624e6c693c2800d89a13efedc4c43b37e317a035613bffc2e3fd5f7e583c46cb283cb5cb930356f86253
3
-EBUILD cffi-1.14.0-r2.ebuild 1349 BLAKE2B 51d75557181e50a0cf4b23d7358e23f8b56bd05d76efe18a9d5685328c5197060eb45e9ffe894fbc5f05baa2e35275eef205d148b080ff6e774ce09da8cb6743 SHA512 510887308c5068c4d7b9f44c9e297cd854202b1651ba2661b2339dcf91fc438b476e1f1f6c30cbc95267e675dd00a98979a24482d5cc9aed99db6c89d9c555c9
... ...
@@ -1,47 +0,0 @@
1
-# Copyright 1999-2020 Gentoo Authors
2
-# Distributed under the terms of the GNU General Public License v2
3
-
4
-EAPI=7
5
-
6
-# DO NOT ADD pypy to PYTHON_COMPAT
7
-# pypy bundles a modified version of cffi. Use python_gen_cond_dep instead.
8
-DISTUTILS_USE_SETUPTOOLS=rdepend
9
-PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} )
10
-
11
-inherit distutils-r1 toolchain-funcs
12
-
13
-DESCRIPTION="Foreign Function Interface for Python calling C code"
14
-HOMEPAGE="https://cffi.readthedocs.io/ https://pypi.org/project/cffi/"
15
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
16
-
17
-LICENSE="MIT"
18
-SLOT="0/${PV}"
19
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
20
-IUSE="test"
21
-RESTRICT="!test? ( test )"
22
-
23
-DEPEND="dev-libs/libffi:="
24
-RDEPEND="${DEPEND}
25
-	dev-python/pycparser[${PYTHON_USEDEP}]"
26
-BDEPEND="${RDEPEND}
27
-	virtual/pkgconfig
28
-	test? ( dev-python/pytest[${PYTHON_USEDEP}] )"
29
-
30
-distutils_enable_sphinx doc/source
31
-
32
-PATCHES=(
33
-	"${FILESDIR}"/cffi-0.14.0-g-line.patch
34
-)
35
-
36
-src_configure() {
37
-	tc-export PKG_CONFIG
38
-}
39
-
40
-python_test() {
41
-	"${EPYTHON}" -c "import _cffi_backend as backend" || die
42
-	pytest -x -vv \
43
-		--ignore testing/test_zintegration.py \
44
-		--ignore testing/embedding \
45
-		c/ testing/ \
46
-		|| die "Testing failed with ${EPYTHON}"
47
-}
... ...
@@ -1,250 +0,0 @@
1
-From 19ff1036043ae40ff3d8a2e1a6a793219e1ec378 Mon Sep 17 00:00:00 2001
2
-From: Armin Rigo <arigo@tunes.org>
3
-Date: Tue, 26 May 2020 15:51:56 +0200
4
-Subject: [PATCH] Issue #454
5
-
6
-Try harder to avoid #line directives confuse the rest of pre-parsing
7
----
8
- cffi/cparser.py               | 37 ++++++++++++++++++++++++---
9
- testing/cffi0/test_parsing.py | 48 ++++++++++++++++++++++++++++++++++-
10
- 2 files changed, 81 insertions(+), 4 deletions(-)
11
-
12
-diff --git a/cffi/cparser.py b/cffi/cparser.py
13
-index d7069a73..d9784655 100644
14
---- a/cffi/cparser.py
15
-+++ b/cffi/cparser.py
16
-@@ -29,6 +29,7 @@ _r_comment = re.compile(r"/\*.*?\*/|//([^\n\\]|\\.)*?$",
17
- _r_define  = re.compile(r"^\s*#\s*define\s+([A-Za-z_][A-Za-z_0-9]*)"
18
-                         r"\b((?:[^\n\\]|\\.)*?)$",
19
-                         re.DOTALL | re.MULTILINE)
20
-+_r_line_directive = re.compile(r"^[ \t]*#[ \t]*line\b.*$", re.MULTILINE)
21
- _r_partial_enum = re.compile(r"=\s*\.\.\.\s*[,}]|\.\.\.\s*\}")
22
- _r_enum_dotdotdot = re.compile(r"__dotdotdot\d+__$")
23
- _r_partial_array = re.compile(r"\[\s*\.\.\.\s*\]")
24
-@@ -163,10 +164,37 @@ def _warn_for_non_extern_non_static_global_variable(decl):
25
-                       "with C it should have a storage class specifier "
26
-                       "(usually 'extern')" % (decl.name,))
27
- 
28
-+def _remove_line_directives(csource):
29
-+    # _r_line_directive matches whole lines, without the final \n, if they
30
-+    # start with '#line' with some spacing allowed.  This function stores
31
-+    # them away and replaces them with exactly the string '#line@N', where
32
-+    # N is the index in the list 'line_directives'.
33
-+    line_directives = []
34
-+    def replace(m):
35
-+        i = len(line_directives)
36
-+        line_directives.append(m.group())
37
-+        return '#line@%d' % i
38
-+    csource = _r_line_directive.sub(replace, csource)
39
-+    return csource, line_directives
40
-+
41
-+def _put_back_line_directives(csource, line_directives):
42
-+    def replace(m):
43
-+        s = m.group()
44
-+        if not s.startswith('#line@'):
45
-+            raise AssertionError("unexpected #line directive "
46
-+                                 "(should have been processed and removed")
47
-+        return line_directives[int(s[6:])]
48
-+    return _r_line_directive.sub(replace, csource)
49
-+
50
- def _preprocess(csource):
51
-+    # First, remove the lines of the form '#line N "filename"' because
52
-+    # the "filename" part could confuse the rest
53
-+    csource, line_directives = _remove_line_directives(csource)
54
-     # Remove comments.  NOTE: this only work because the cdef() section
55
--    # should not contain any string literal!
56
--    csource = _r_comment.sub(' ', csource)
57
-+    # should not contain any string literals (except in line directives)!
58
-+    def replace_keeping_newlines(m):
59
-+        return ' ' + m.group().count('\n') * '\n'
60
-+    csource = _r_comment.sub(replace_keeping_newlines, csource)
61
-     # Remove the "#define FOO x" lines
62
-     macros = {}
63
-     for match in _r_define.finditer(csource):
64
-@@ -219,7 +247,10 @@ def _preprocess(csource):
65
-     csource = _r_float_dotdotdot.sub(' __dotdotdotfloat__ ', csource)
66
-     # Replace all remaining "..." with the same name, "__dotdotdot__",
67
-     # which is declared with a typedef for the purpose of C parsing.
68
--    return csource.replace('...', ' __dotdotdot__ '), macros
69
-+    csource = csource.replace('...', ' __dotdotdot__ ')
70
-+    # Finally, put back the line directives
71
-+    csource = _put_back_line_directives(csource, line_directives)
72
-+    return csource, macros
73
- 
74
- def _common_type_names(csource):
75
-     # Look in the source for what looks like usages of types from the
76
-diff --git a/testing/cffi0/test_parsing.py b/testing/cffi0/test_parsing.py
77
-index 3fc3783a..5f2d7ec4 100644
78
---- a/testing/cffi0/test_parsing.py
79
-+++ b/testing/cffi0/test_parsing.py
80
-@@ -174,7 +174,7 @@ def test_remove_line_continuation_comments():
81
-         double // blah \\
82
-                   more comments
83
-         x(void);
84
--        double // blah\\\\
85
-+        double // blah // blah\\\\
86
-         y(void);
87
-         double // blah\\ \
88
-                   etc
89
-@@ -185,6 +185,52 @@ def test_remove_line_continuation_comments():
90
-     m.y
91
-     m.z
92
- 
93
-+def test_dont_remove_comment_in_line_directives():
94
-+    ffi = FFI(backend=FakeBackend())
95
-+    e = py.test.raises(CDefError, ffi.cdef, """
96
-+        \t # \t line \t 8 \t "baz.c" \t
97
-+
98
-+        some syntax error here
99
-+    """)
100
-+    assert str(e.value) == "parse error\nbaz.c:9:14: before: syntax"
101
-+    #
102
-+    e = py.test.raises(CDefError, ffi.cdef, """
103
-+        #line 7 "foo//bar.c"
104
-+
105
-+        some syntax error here
106
-+    """)
107
-+    assert str(e.value) == "parse error\nfoo//bar.c:8:14: before: syntax"
108
-+
109
-+def test_multiple_line_directives():
110
-+    ffi = FFI(backend=FakeBackend())
111
-+    e = py.test.raises(CDefError, ffi.cdef,
112
-+    """ #line 5 "foo.c"
113
-+        extern int xx;
114
-+        #line 6 "bar.c"
115
-+        extern int yy;
116
-+        #line 7 "baz.c"
117
-+        some syntax error here
118
-+        #line 8 "yadda.c"
119
-+        extern int zz;
120
-+    """)
121
-+    assert str(e.value) == "parse error\nbaz.c:7:14: before: syntax"
122
-+
123
-+def test_commented_line_directive():
124
-+    ffi = FFI(backend=FakeBackend())
125
-+    e = py.test.raises(CDefError, ffi.cdef, """
126
-+        /*
127
-+        #line 5 "foo.c"
128
-+        */
129
-+        void xx(void);
130
-+
131
-+        #line 6 "bar.c"
132
-+        /*
133
-+        #line 35 "foo.c"
134
-+        */
135
-+        some syntax error
136
-+    """)
137
-+    assert str(e.value) == "parse error\nbar.c:9:14: before: syntax"
138
-+
139
- def test_line_continuation_in_defines():
140
-     ffi = FFI(backend=FakeBackend())
141
-     ffi.cdef("""
142
-2.26.2
143
-
144
-From 31249d786c833d4960bbbf4e0d7f7bcaecf92d1f Mon Sep 17 00:00:00 2001
145
-From: Armin Rigo <arigo@tunes.org>
146
-Date: Fri, 29 May 2020 10:27:40 +0200
147
-Subject: [PATCH] #454
148
-
149
-Second try with '# NUMBER' instead of '#line NUMBER', as gcc seems to output
150
----
151
- cffi/cparser.py               |  8 +++----
152
- testing/cffi0/test_parsing.py | 41 +++++++++++++++++++++++++++++++++++
153
- 2 files changed, 45 insertions(+), 4 deletions(-)
154
-
155
-diff --git a/cffi/cparser.py b/cffi/cparser.py
156
-index d9784655..74830e91 100644
157
---- a/cffi/cparser.py
158
-+++ b/cffi/cparser.py
159
-@@ -29,7 +29,7 @@ _r_comment = re.compile(r"/\*.*?\*/|//([^\n\\]|\\.)*?$",
160
- _r_define  = re.compile(r"^\s*#\s*define\s+([A-Za-z_][A-Za-z_0-9]*)"
161
-                         r"\b((?:[^\n\\]|\\.)*?)$",
162
-                         re.DOTALL | re.MULTILINE)
163
--_r_line_directive = re.compile(r"^[ \t]*#[ \t]*line\b.*$", re.MULTILINE)
164
-+_r_line_directive = re.compile(r"^[ \t]*#[ \t]*(?:line|\d+)\b.*$", re.MULTILINE)
165
- _r_partial_enum = re.compile(r"=\s*\.\.\.\s*[,}]|\.\.\.\s*\}")
166
- _r_enum_dotdotdot = re.compile(r"__dotdotdot\d+__$")
167
- _r_partial_array = re.compile(r"\[\s*\.\.\.\s*\]")
168
-@@ -166,9 +166,9 @@ def _warn_for_non_extern_non_static_global_variable(decl):
169
- 
170
- def _remove_line_directives(csource):
171
-     # _r_line_directive matches whole lines, without the final \n, if they
172
--    # start with '#line' with some spacing allowed.  This function stores
173
--    # them away and replaces them with exactly the string '#line@N', where
174
--    # N is the index in the list 'line_directives'.
175
-+    # start with '#line' with some spacing allowed, or '#NUMBER'.  This
176
-+    # function stores them away and replaces them with exactly the string
177
-+    # '#line@N', where N is the index in the list 'line_directives'.
178
-     line_directives = []
179
-     def replace(m):
180
-         i = len(line_directives)
181
-diff --git a/testing/cffi0/test_parsing.py b/testing/cffi0/test_parsing.py
182
-index 5f2d7ec4..a5e45874 100644
183
---- a/testing/cffi0/test_parsing.py
184
-+++ b/testing/cffi0/test_parsing.py
185
-@@ -199,6 +199,21 @@ def test_dont_remove_comment_in_line_directives():
186
- 
187
-         some syntax error here
188
-     """)
189
-+    #
190
-+    assert str(e.value) == "parse error\nfoo//bar.c:8:14: before: syntax"
191
-+    ffi = FFI(backend=FakeBackend())
192
-+    e = py.test.raises(CDefError, ffi.cdef, """
193
-+        \t # \t 8 \t "baz.c" \t
194
-+
195
-+        some syntax error here
196
-+    """)
197
-+    assert str(e.value) == "parse error\nbaz.c:9:14: before: syntax"
198
-+    #
199
-+    e = py.test.raises(CDefError, ffi.cdef, """
200
-+        # 7 "foo//bar.c"
201
-+
202
-+        some syntax error here
203
-+    """)
204
-     assert str(e.value) == "parse error\nfoo//bar.c:8:14: before: syntax"
205
- 
206
- def test_multiple_line_directives():
207
-@@ -214,6 +229,18 @@ def test_multiple_line_directives():
208
-         extern int zz;
209
-     """)
210
-     assert str(e.value) == "parse error\nbaz.c:7:14: before: syntax"
211
-+    #
212
-+    e = py.test.raises(CDefError, ffi.cdef,
213
-+    """ # 5 "foo.c"
214
-+        extern int xx;
215
-+        # 6 "bar.c"
216
-+        extern int yy;
217
-+        # 7 "baz.c"
218
-+        some syntax error here
219
-+        # 8 "yadda.c"
220
-+        extern int zz;
221
-+    """)
222
-+    assert str(e.value) == "parse error\nbaz.c:7:14: before: syntax"
223
- 
224
- def test_commented_line_directive():
225
-     ffi = FFI(backend=FakeBackend())
226
-@@ -229,6 +256,20 @@ def test_commented_line_directive():
227
-         */
228
-         some syntax error
229
-     """)
230
-+    #
231
-+    assert str(e.value) == "parse error\nbar.c:9:14: before: syntax"
232
-+    e = py.test.raises(CDefError, ffi.cdef, """
233
-+        /*
234
-+        # 5 "foo.c"
235
-+        */
236
-+        void xx(void);
237
-+
238
-+        # 6 "bar.c"
239
-+        /*
240
-+        # 35 "foo.c"
241
-+        */
242
-+        some syntax error
243
-+    """)
244
-     assert str(e.value) == "parse error\nbar.c:9:14: before: syntax"
245
- 
246
- def test_line_continuation_in_defines():
247
-2.26.2
248
-
... ...
@@ -1,2 +0,0 @@
1
-DIST dnspython-1.16.0.tar.gz 167172 BLAKE2B a246684aae8651d94b4312a4b4cce2236a0c4f2289a8fe8a2bb8e81c6beddf6e81a7d54928bc50f950fde862b27e589e83fa9f7aaff7d263a6442f47fe9bb3bb SHA512 825a1815855e036ea1dfece6ec0d42242f83163960439ecba3da58d9adb85b65dda7e628cf38c386807a6c0c36aa026d5e95f7a1bdc2927aa2f6f042f873c14c
2
-EBUILD dnspython-1.16.0-r1.ebuild 1219 BLAKE2B d565b4754b471a8ca98f2b84c25c1eb61a869f0dec3378ebd889191ed73bc8424e3c1229184d93bcdbaba59e4b22200fc1a747722ae894e50876c27f5a980e22 SHA512 20f3dfee95722c0965dfa2b9a4fc69307e6358752510211183de7e6f7469981efedbe2a3951b71a5ea241b7a6686fb8286cf99c30034e6d7ed8467711ec12756
... ...
@@ -1,44 +0,0 @@
1
-# Copyright 1999-2020 Gentoo Authors
2
-# Distributed under the terms of the GNU General Public License v2
3
-
4
-EAPI=7
5
-
6
-PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} pypy3 )
7
-
8
-inherit distutils-r1
9
-
10
-DESCRIPTION="DNS toolkit for Python"
11
-HOMEPAGE="http://www.dnspython.org/ https://pypi.org/project/dnspython/"
12
-SRC_URI="https://github.com/rthalley/dnspython/archive/v${PV}.tar.gz -> ${P}.tar.gz"
13
-
14
-LICENSE="ISC"
15
-SLOT="0"
16
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-solaris"
17
-IUSE="examples"
18
-
19
-RDEPEND="dev-python/pycryptodome[${PYTHON_USEDEP}]
20
-	>=dev-python/ecdsa-0.13[${PYTHON_USEDEP}]
21
-	>=dev-python/idna-2.1[${PYTHON_USEDEP}]
22
-	$(python_gen_cond_dep 'dev-python/typing[${PYTHON_USEDEP}]' -2)
23
-	!dev-python/dnspython:py2
24
-	!dev-python/dnspython:py3"
25
-
26
-src_prepare() {
27
-	sed -i -e '/network_avail/s:True:False:' \
28
-		tests/test_resolver.py || die
29
-	distutils-r1_src_prepare
30
-}
31
-
32
-python_test() {
33
-	pushd tests >/dev/null || die
34
-	"${EPYTHON}" utest.py || die "tests failed under ${EPYTHON}"
35
-	popd > /dev/null || die
36
-}
37
-
38
-python_install_all() {
39
-	distutils-r1_python_install_all
40
-	if use examples; then
41
-		dodoc -r examples
42
-		docompress -x /usr/share/doc/${PF}/examples
43
-	fi
44
-}
... ...
@@ -1,3 +0,0 @@
1
-AUX pycryptodome-3.9.4-parallel-make.patch 756 BLAKE2B 06a79eff056ecb983131838287563d4d60896f27e28d5c2534f4ab008e50017694ac9355b43f8f387cc29abfd21ffd648233c3dbae33a06fcedb12a6c7e11e80 SHA512 06b42ea780bd374cf5cb5d6cef3fade5d695c1ee0d765e2659408da7645ad311eef2028f17d8ec0289d49c3a5851b4c63503d7c922de15873dbbf16d0db58b08
2
-DIST pycryptodome-3.9.8.tar.gz 15633268 BLAKE2B 8c4f8d4839be0fb09556677514ee6c7f832684f20eb4e355cee87eb5b52a5c09e12712c1865ff89fb5dd6c628ca027374c7cab8a2287aafa4eecedf1095f1a12 SHA512 894e763720df284804fd686d5805980853b86773bb3097bf03d929818b9944e5a257e47414275f302966864751e50ae34dea19ad749910f1ceac31833a53ef7c
3
-EBUILD pycryptodome-3.9.8.ebuild 1330 BLAKE2B 97e78373d4e5d2d7065d0ca60fa8374d225c48ccf89b51fd51d8bbd68897d5ed37ba237f346bd9347a6cdb3204b5b7b43a28426fa593e3d039259a4664ac4e60 SHA512 3596bf56db6f47c1e9c0ce9568988566a858541128e2962af886d1260f059a6542ec5588bf651c343db73a42e483b64e44ab8fdafacfdd6aa6f53cd46dc1df4f
... ...
@@ -1,22 +0,0 @@
1
-diff --git a/setup.py b/setup.py
2
-index 1d70caad..c72f64ff 100644
3
---- a/setup.py
4
-+++ b/setup.py
5
-@@ -364,7 +364,7 @@ ext_modules = [
6
-     Extension("Crypto.Cipher._raw_eksblowfish",
7
-         include_dirs=['src/'],
8
-         define_macros=[('EKS',None),],
9
--        sources=["src/blowfish.c"]),
10
-+        sources=["src/blowfish_eks.c"]),
11
-     Extension("Crypto.Cipher._raw_cast",
12
-         include_dirs=['src/'],
13
-         sources=["src/CAST.c"]),
14
-@@ -427,7 +427,7 @@ ext_modules = [
15
-     # Math
16
-     Extension("Crypto.Math._modexp",
17
-         include_dirs=['src/'],
18
--        sources=['src/modexp.c', 'src/siphash.c', 'src/modexp_utils.c', 'src/mont.c'],
19
-+        sources=['src/modexp.c', 'src/siphash.c', 'src/modexp_utils.c', 'src/mont_math.c'],
20
-         ),
21
- ]
22
- 
... ...
@@ -1,41 +0,0 @@
1
-# Copyright 1999-2020 Gentoo Authors
2
-# Distributed under the terms of the GNU General Public License v2
3
-
4
-EAPI=7
5
-
6
-PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} pypy3 )
7
-PYTHON_REQ_USE="threads(+)"
8
-
9
-inherit distutils-r1
10
-
11
-DESCRIPTION="A self-contained cryptographic library for Python"
12
-HOMEPAGE="https://www.pycryptodome.org https://github.com/Legrandin/pycryptodome https://pypi.org/project/pycryptodome/"
13
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
14
-
15
-LICENSE="BSD-2 Unlicense"
16
-SLOT="0"
17
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
18
-IUSE=""
19
-
20
-RDEPEND="dev-libs/gmp:0
21
-	virtual/python-cffi[${PYTHON_USEDEP}]
22
-	!dev-python/pycrypto"
23
-BDEPEND="${RDEPEND}"
24
-
25
-PATCHES=(
26
-	"${FILESDIR}/pycryptodome-3.9.4-parallel-make.patch"
27
-)
28
-
29
-distutils_enable_tests setup.py
30
-
31
-python_prepare_all() {
32
-	# parallel make fixes
33
-	#  Multiple targets were compiling the same file, setuptools doesn't
34
-	#  understand this and you get race conditions where a file gets
35
-	#  overwritten while it's linking. This makes the files look like separate
36
-	#  files so this race won't happen
37
-	ln src/blowfish.c src/blowfish_eks.c || die
38
-	ln src/mont.c src/mont_math.c || die
39
-
40
-	distutils-r1_python_prepare_all
41
-}
... ...
@@ -1,11 +0,0 @@
1
-AUX 50_mailman.conf-r2 482 BLAKE2B 670ff96cdfed658558a1062259bb95441bb5ca2f54f710532f2ec075efbfb0c216fad255fcac158cb6ef2d987bedccc0feaa518fd2190692922b9ddb2e0d4840 SHA512 c279f8709ea7932469c0d8ff0b645df228562678081df5fc3d946d62f7bbbc33f4723e71fd4560eebfc751052a6a271d4aadf6affadefeca107f41d3193563d3
2
-AUX README.gentoo-r3 6691 BLAKE2B aa740e1936f756f8eeecfb88629adc36c33d43ab283a298752865913efc1d068ceb45884d9c33fa45fc4e34e6016b6981f42769172fb7f2bac8dd842faa8e26c SHA512 12490bb17b4da308f0855fa9f5e36c2c01c806822021d3ac92dc15cc7901a417dbeb1e1f78c9df2603128076bd11d9ded0a946f4cedd3b056a1694afbdab28d3
3
-AUX mailman-2.1.14_rc1-directory-check.patch 786 BLAKE2B 24cde989fac774ecaea27075ee58c583bf7812cb0b9b4b12a84bba99e144dd060df2f557d952827a5243c1daccd80fdac7353f931e3fc36d903e26aec595e5fe SHA512 510a67915163732ae05ed9f8920f93eb99538a706d85e4fb2c071e01a6d88be8cd32aa5ea0127d36a1dc4f7a735c179bb1169e7358025ee7d3c85b0c8cda44d7
4
-AUX mailman-2.1.26-add-recaptcha.diff 1828 BLAKE2B efdd502ca8dc24b3553169bb9802c01ddf475cfa6e5b1ddedbf026e2a7c990233c5e1f6d82a2358204e452a904b2e989d8abb44c9db9ea2d95ec82c8cd3dbd2f SHA512 d2e1ab22fceb1fec9275f7e6a11a15a26df0fc4d0e5d25dd3b3d2f4b4ac72853f3eaac871ee4209f33c636fb05619fa0ff7a6ad674638c38fa384adbe3fee8e6
5
-AUX mailman-2.1.9-icons.patch 555 BLAKE2B c000931d44321f0eb9fabdf1a49cfcd05b2c68a3809f302f9275eade918135bc231860cf9c2ab798827b9f1e5baf59a74cbaabc3787e95f3001426425ebf6de2 SHA512 caec3eb1abdb29e92ebd6a589f93870ffc91bbcc7bd2e0115e38f48ae0a31e564037a4a828395229ee238d215e72e19a31d53c8bca6c39a48b5c08a327e663a6
6
-AUX mailman-fix-sitedir.diff 796 BLAKE2B e59e540b424f94959e14d9a67323373c885937c1f717517b93254418c2d6a195b44bfed6a59b74e31f387840331acfb273200c51eecd2f904b20069c6c5df4c3 SHA512 d7c3909eca4cf4161e2a51418b4800203184313260914c7bfe3ea6cffb065a610dffdce9a3c61a0d429cdae9cecc097da491dd56f384273ed13bcd6da9cf75ff
7
-AUX mailman.rc 488 BLAKE2B 76f35e4e1a5257b6aa058b0cea29cf53640322d436a195140cd71b7bc749d4205fc4555b611b1713663604c08ca929b3aa57d60355d8e9e5e9b7056b9dc1c5f1 SHA512 bb97f6fec48cf474be66c1aa73adc874ceaeee894acc3fad76f4b3f5e6f82dcd4238a6915de941fe87f815668dfb6c5ffe90926c5aaaddedf7dc06dfa4c1a126
8
-AUX mailman.service 288 BLAKE2B 64dad97b16458f9d9b64f249f9096e4217ce78e9a33e9d3ea55ef27d11daea102a1ecae30ddda095c1bbf1b175def17b9ad2db5a3e0b8e694ab02ed94a557e87 SHA512 c4a5532666afbebc5aa69463ec9b9eaa2dcb03fdd8fd62307920a4572d0c795c1d93478236240746018be617c0eec0fcfcc1c711e8810140fb8ffbc0a9b71009
9
-DIST mailman-2.1.29.tgz 9376258 BLAKE2B 63ae740abed79d2887eef35ddfd8b51f22ee984a0eaacddeb34afb8147c0d239e5eaf93579face987b3c604653fed4c13233de78298914b4eacf5a33f769a997 SHA512 ed25179a4580092629890664c5502908b20e326c2ed06ad4e597fb4e8de84076c369ecd7a272be5ed8a1cb4479413d0e004d87804de763ee850e4d04d9a83376
10
-EBUILD mailman-2.1.29-r1.ebuild 6189 BLAKE2B b69f27a4dc85b852312d23e928a823c6c26567df6f3da984dd09f02501b0ad01002b4d2390ce2ca7b4a5b2c3eb19723b75be5aa9a1848dd66f4e48ad90282eee SHA512 65ad45312b5a21e97978e23634edcf158d54360117305d770a5c75fe6dbc1c7e03f85b592dce4683283868dd21481331814715fe43dd55cd705a8b1ce9801ada
11
-MISC metadata.xml 398 BLAKE2B 47faf896df7388b5df4d4066764385d64413e8a48d57fee0ca63c98b574a2b219bae96d099f3e0f2f18988ae0aaf6e7c400b07c59bb02f4dbb77b740e1b76adc SHA512 e12fcde6e9360aaab80a5cece049ca20ba8deca00c7051987d0903d1dd9992545d62c10186f05dca6fed28682050efe704cc3ffd92bbcb0ceb9ce5ce972cf62f
... ...
@@ -1,18 +0,0 @@
1
-<IfDefine MAILMAN>
2
-	ScriptAlias /mailman/ "/usr/local/mailman/cgi-bin/"
3
-	<Directory "/usr/local/mailman/cgi-bin/">
4
-		AllowOverride None
5
-		Options None
6
-	</Directory>
7
-
8
-	Alias /pipermail/ "/usr/local/mailman/archives/public/"
9
-	<Directory "/usr/local/mailman/archives/public/">
10
-		AllowOverride None
11
-		Options ExecCGI FollowSymLinks
12
-	</Directory>
13
-
14
-	Alias /mailman-icons/ "/usr/local/mailman/icons/"
15
-	<Directory "/usr/local/mailman/icons/">
16
-		AllowOverride None
17
-	</Directory>
18
-</IfDefine>
... ...
@@ -1,181 +0,0 @@
1
-# Copyright 1999-2004 Gentoo Foundation
2
-# Distributed under the terms of the GNU General Public License v2
3
-
4
-Follow these instructions to finish setting up mailman. This file and the
5
-original ebuild were tweaked by me <lamer@gentoo.org> but were graciously
6
-submitted by Joby Walker (YOU RULE!) 
7
-2003 Jul 09: updated by Jesus Perez and re-tweaked by me <raker@gentoo.org>
8
-for 2.1.x.
9
-
10
-Please view the documentation on Mailman at: http://www.list.org/
11
-
12
-This documentation assumes you're using the default gentoo path
13
-(/usr/lib/mailman/), if you've changed it with MAILMAN_PREFIX, adjust them
14
-accordingly.
15
-
16
-1) If this is your first time installing mailman, after your "emerge mailman",
17
-you need to add -D MAILMAN to /etc/conf.d/apache or /etc/conf.d/apache2 and restart
18
-apache.
19
-
20
-2) In your /etc/conf.d/apache (for apache 1.x)
21
-	or /etc/conf.d/apache2 (for apache 2.x) 
22
-	file add the additional option to the
23
-	APACHE_OPTS or APACHE2_OPTS variable:
24
-
25
-	-D MAILMAN
26
-
27
-3) Make sure mailman is a part of the cron group
28
-
29
-4) This must be done as user mailman:
30
-
31
-	su - mailman
32
-
33
-Add the cron jobs:
34
-
35
-	cd cron
36
-	crontab crontab.in
37
-	cd ..
38
-
39
-Create the site password:
40
-
41
-	bin/mmsitepass
42
-
43
-and main list:
44
-
45
-	bin/newlist mailman
46
-
47
-
48
-5) Change back to root:
49
-
50
-	exit
51
-
52
-(Postfix users: read the notes at the end of this file before you continue)
53
-Add this to /etc/mail/aliases (and see point 9 for notes):
54
-     mailman:              "|/usr/lib/mailman/mail/mailman post mailman"
55
-     mailman-admin:        "|/usr/lib/mailman/mail/mailman admin mailman"
56
-     mailman-bounces:      "|/usr/lib/mailman/mail/mailman bounces mailman"
57
-     mailman-confirm:      "|/usr/lib/mailman/mail/mailman confirm mailman"
58
-     mailman-join:         "|/usr/lib/mailman/mail/mailman join mailman"
59
-     mailman-leave:        "|/usr/lib/mailman/mail/mailman leave mailman"
60
-     mailman-owner:        "|/usr/lib/mailman/mail/mailman owner mailman"
61
-     mailman-request:      "|/usr/lib/mailman/mail/mailman request mailman"
62
-     mailman-subscribe:    "|/usr/lib/mailman/mail/mailman subscribe mailman"
63
-     mailman-unsubscribe:  "|/usr/lib/mailman/mail/mailman unsubscribe mailman"
64
-
65
-For courier, the aliases have to go to /etc/courier/aliases and you have to skip
66
-the quotes.
67
-
68
-Run newaliases (only if you use sendmail).
69
-
70
-	newaliases
71
-    
72
-6) Start the mailman daemon:
73
-
74
-	/etc/init.d/mailman start
75
-
76
-and add it to default runlevel (optional but recommended):
77
-
78
-	rc-update add mailman default
79
-
80
-7) For each list created (either with web interface or with bin/newlist) 
81
-this must be added to /etc/mail/aliases (see smrsh notes below)
82
-replace <list-name> with the name of the list:
83
-
84
-	<list-name>: "|/usr/lib/mailman/mail/mailman post <list-name>"
85
-	<list-name>-admin: "|/usr/lib/mailman/mail/mailman admin <list-name>"
86
-	<list-name>-bounces: "|/usr/lib/mailman/mail/mailman bounces <list-name>"
87
-     	<list-name>-confirm: "|/usr/lib/mailman/mail/mailman confirm <list-name>"
88
-     	<list-name>-join: "|/usr/lib/mailman/mail/mailman join <list-name>"
89
-	<list-name>-leave: "|/usr/lib/mailman/mail/mailman leave <list-name>"
90
-	<list-name>-owner: "|/usr/lib/mailman/mail/mailman owner <list-name>"
91
-	<list-name>-request: "|/usr/lib/mailman/mail/mailman request <list-name>"
92
-     	<list-name>-subscribe: "|/usr/lib/mailman/mail/mailman subscribe <list-name>"
93
-	<list-name>-unsubscribe: "|/usr/lib/mailman/mail/mailman unsubscribe <list-name>"
94
-
95
-For courier, the aliases have to go to /etc/courier/aliases and you have to skip
96
-the quotes.
97
-
98
-Run newaliases:
99
-
100
-	newaliases
101
-
102
-smrsh notes
103
------------
104
-(if you use sendmail, you are surely using srmsh) you must note that 
105
-sendmail won't run any program outside of EBINDIR. I tried to change 
106
-EBINDIR using,define(`confEBINDIR', `/usr/lib/mailman/mail')dnl in 
107
-sendmail.mc but it didn't work, so mailman must be placed in EBINDIR, 
108
-which in Gentoo is /usr/adm/sm.bin, so you must run as root:
109
-
110
-     ln -s /usr/lib/mailman/mail/mailman /usr/adm/sm.bin/mailman
111
-
112
-And the lines in /etc/mail/aliases which refer to 
113
-/usr/lib/mailman/mail/mailman must be changed to mailman:
114
-
115
-     <list-name>:              "|mailman post <list-name>"
116
-     <list-name>-admin:        "|mailman admin <list-name>"
117
-     <list-name>-bounces:      "|mailman bounces <list-name>"
118
-     <list-name>-confirm:      "|mailman confirm <list-name>"
119
-     <list-name>-join:         "|mailman join <list-name>"
120
-     <list-name>-leave:        "|mailman leave <list-name>"
121
-     <list-name>-owner:        "|mailman owner <list-name>"
122
-     <list-name>-request:      "|mailman request <list-name>"
123
-     <list-name>-subscribe:    "|mailman subscribe <list-name>"
124
-     <list-name>-unsubscribe:  "|mailman unsubscribe <list-name>"
125
-
126
-exim notes
127
-----------
128
-You can write an exim stanza for the router and transport that looks something
129
-like (Derived from, and in part taken from cpanel):
130
-
131
-mailman_virtual_router:
132
-	driver = accept
133
-	require_files = /var/lib/mailman/lists/${lc::$local_part}/config.pck
134
-	local_part_suffix_optional
135
-	local_part_suffix = -admin     : \
136
-						-bounces   : -bounces+* : \
137
-						-confirm   : -confirm+* : \
138
-						-join      : -leave     : \
139
-						-owner     : -request   : \
140
-						-subscribe : -unsubscribe
141
-	transport = mailman_virtual_transport
142
-
143
-mailman_virtual_transport:
144
-    driver = pipe
145
-    command = /usr/lib/mailman/mail/mailman \
146
-              '${if def:local_part_suffix \
147
-                    {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \
148
-                    {post}}' \
149
-              ${lc:$local_part}
150
-    current_directory = /usr/lib/mailman
151
-    home_directory = /usr/lib/mailman
152
-    user = mailman
153
-    group = mailman
154
-
155
-Note the double colon in the require files.  See
156
-http://wiki.exim.org/FAQ/General_Debugging/Q0060 for more information.
157
-
158
-This should be modified if you're using the vhosts USE flag, specifically you
159
-need to modify the location of the config.pck file, to be
160
-${lc::$local_part}-${lc::$domain} instead of simply ${lc::$local_part}, and for the
161
-transport you need to change the last part of the command in the same fashion.
162
-
163
-Other Helpful things to know...
164
--------------------------------
165
-run "bin/check_perms -f" from the root mailman directory
166
-(/usr/lib/mailman) to check and fix permission problems.
167
-
168
-The INSTALL file is located in /usr/share/doc/mailman-$VERSION/ 
169
-
170
-Postfix notes
171
--------------
172
-If you're using Postfix, don't manually change your /etc/mail/aliases
173
-file, as described above. Instead, follow these instructions:
174
-
175
-http://list.org/mailman-install/node13.html
176
-
177
-This will set up Mailman and Postfix to automatically generate the new
178
-aliases when you create new lists. It will also make sure that Postfix
179
-uses the correct group ID when it's talking to Mailman, otherwise you
180
-will get security errors from Mailman.
181
-
... ...
@@ -1,19 +0,0 @@
1
---- mailman-2.1.14rc1/bin/update	2010-09-09 18:51:09.000000000 +0200
2
-+++ mailman-2.1.14rc1-1/bin/update	2010-09-14 01:02:09.000000000 +0200
3
-@@ -35,6 +35,7 @@
4
- """
5
- 
6
- import os
7
-+import stat
8
- import sys
9
- import time
10
- import errno
11
-@@ -428,7 +429,7 @@
12
-     # Now update for the Mailman 2.1.5 qfile format.  For every filebase in
13
-     # the qfiles/* directories that has both a .pck and a .db file, pull the
14
-     # data out and re-queue them.
15
--    for dirname in os.listdir(mm_cfg.QUEUE_DIR):
16
-+    for dirname in [x for x in os.listdir(mm_cfg.QUEUE_DIR) if stat.S_ISDIR(os.stat(os.path.join(mm_cfg.QUEUE_DIR,x)).st_mode)]:
17
-         dirpath = os.path.join(mm_cfg.QUEUE_DIR, dirname)
18
-         if dirpath == mm_cfg.BADQUEUE_DIR:
19
-             # The files in qfiles/bad can't possibly be pickles
... ...
@@ -1,49 +0,0 @@
1
---- listinfo.py	2018-02-26 14:56:48.000000000 +0000
2
-+++ /usr/lib/mailman/Mailman/Cgi/listinfo.py	2018-02-26 14:08:34.000000000 +0000
3
-@@ -31,6 +31,7 @@
4
- from Mailman import i18n
5
- from Mailman.htmlformat import *
6
- from Mailman.Logging.Syslog import syslog
7
-+from recaptcha.client import captcha
8
- 
9
- # Set up i18n
10
- _ = i18n._
11
-@@ -244,6 +245,10 @@
12
-     replacements[''] = mlist.FormatFormStart('listinfo')
13
-     replacements[''] = mlist.FormatBox('fullname', size=30)
14
- 
15
-+    # Captcha
16
-+    replacements['<mm-recaptcha-javascript>'] = captcha.displayhtml(mm_cfg.RECAPTCHA_PUBLIC_KEY, use_ssl=True, version=2)
17
-+    replacements['<mm-recaptcha-script>'] = captcha.load_script(version=2)
18
-+
19
-     # Do the expansion.
20
-     doc.AddItem(mlist.ParseTags('listinfo.html', replacements, lang))
21
-     print doc.Format()
22
---- subscribe.py	2018-02-26 14:56:38.000000000 +0000
23
-+++ /usr/lib/mailman/Mailman/Cgi/subscribe.py	2018-02-26 14:08:18.000000000 +0000
24
-@@ -32,6 +32,7 @@
25
- from Mailman.UserDesc import UserDesc
26
- from Mailman.htmlformat import *
27
- from Mailman.Logging.Syslog import syslog
28
-+from recaptcha.client import captcha
29
- 
30
- SLASH = '/'
31
- ERRORSEP = '\n\n<p>'
32
-@@ -165,6 +166,17 @@
33
-             results.append(
34
-     _('There was no hidden token in your submission or it was corrupted.'))
35
-             results.append(_('You must GET the form before submitting it.'))
36
-+
37
-+    # recaptcha
38
-+    captcha_response = captcha.v2submit(
39
-+        cgidata.getvalue('g-recaptcha-response', ""),
40
-+        mm_cfg.RECAPTCHA_PRIVATE_KEY,
41
-+        remote,
42
-+    )
43
-+
44
-+    if not captcha_response.is_valid:
45
-+        results.append(_('Invalid captcha: %s' % captcha_response.error_code))
46
-+
47
-     # Was an attempt made to subscribe the list to itself?
48
-     if email == mlist.GetListEmail():
49
-         syslog('mischief', 'Attempt to self subscribe %s: %s', email, remote)
... ...
@@ -1,12 +0,0 @@
1
-diff -rau mailman-2.1.9-orig/Mailman/Defaults.py.in mailman-2.1.9-mailman-icons/Mailman/Defaults.py.in
2
---- mailman-2.1.9-orig/Mailman/Defaults.py.in	2006-08-04 14:20:33.000000000 +0200
3
-+++ mailman-2.1.9/Mailman/Defaults.py.in	2008-02-03 14:27:02.000000000 +0200
4
-@@ -54,7 +54,7 @@
5
- # disable Mailman's logo footer altogther, hack
6
- # Mailman/htmlformat.py:MailmanLogo(), which also contains the hardcoded links
7
- # and image names.
8
--IMAGE_LOGOS = '/icons/'
9
-+IMAGE_LOGOS = '/mailman-icons/'
10
- 
11
- # The name of the Mailman favicon
12
- SHORTCUT_ICON = 'mm-icon.png'
... ...
@@ -1,24 +0,0 @@
1
-diff -Naurp a/misc/paths.py.in b/misc/paths.py.in
2
---- a/misc/paths.py.in	2018-07-25 00:01:28.000000000 +0200
3
-+++ b/misc/paths.py.in	2019-08-03 11:56:57.032059619 +0200
4
-@@ -26,6 +26,7 @@
5
- 
6
- import os
7
- import sys
8
-+import site
9
- 
10
- # some scripts expect this attribute to be in this module
11
- prefix = '@prefix@'
12
-@@ -58,9 +59,9 @@ sys.path.insert(0, prefix)
13
- sys.path.insert(0, os.path.join(prefix, 'pythonlib'))
14
- 
15
- # Include Python's site-packages directory.
16
--sitedir = os.path.join(sys.prefix, 'lib', 'python'+sys.version[:3],
17
--                       'site-packages')
18
--sys.path.append(sitedir)
19
-+sitedirs = site.getsitepackages()
20
-+for sitedir in sitedirs:
21
-+    sys.path.append(sitedir)
22
- 
23
- # Include Python's dist-packages directory.
24
- distdir = os.path.join(sys.prefix, 'lib', 'python'+sys.version[:3],
... ...
@@ -1,26 +0,0 @@
1
-#!/sbin/openrc-run
2
-# Copyright 1999-2004 Gentoo Foundation
3
-# Distributed under the terms of the GNU General Public License v2
4
-
5
-depend() {
6
-	need net
7
-	use logger
8
-}
9
-
10
-start() {
11
-	ebegin "Starting mailman"
12
-	su - mailman -c 'bin/mailmanctl -s start' >/dev/null 2>&1
13
-	eend $?
14
-}
15
-
16
-stop() {
17
-	ebegin "Stopping mailman"
18
-	su - mailman -c 'bin/mailmanctl stop' >/dev/null 2>&1
19
-	eend $?
20
-}
21
-
22
-svc_restart() {
23
-	ebegin "Restarting mailman"
24
-	su - mailman -c 'bin/mailmanctl restart' >/dev/null 2>&1
25
-	eend $?
26
-}
... ...
@@ -1,13 +0,0 @@
1
-[Unit]
2
-Description=GNU Mailing List Manager
3
-After=network.target
4
-
5
-[Service]
6
-User=mailman
7
-ExecStart=/usr/lib/mailman/bin/mailmanctl -s start
8
-ExecReload=/usr/lib/mailman/bin/mailmanctl restart
9
-ExecStop=/usr/lib/mailman/bin/mailmanctl stop
10
-Type=forking
11
-
12
-[Install]
13
-WantedBy=multi-user.target
... ...
@@ -1,174 +0,0 @@
1
-# Copyright 1999-2019 Gentoo Authors
2
-# Distributed under the terms of the GNU General Public License v2
3
-
4
-EAPI=5
5
-
6
-PYTHON_COMPAT=( python2_7 )
7
-
8
-inherit eutils python-single-r1 multilib systemd user
9
-
10
-DESCRIPTION="A python-based mailing list server with an extensive web interface"
11
-SRC_URI="mirror://sourceforge/${PN}/${P/_p/-}.tgz"
12
-HOMEPAGE="http://www.list.org/"
13
-
14
-LICENSE="GPL-2"
15
-SLOT="0"
16
-KEYWORDS="amd64 ppc x86"
17
-IUSE="selinux"
18
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
19
-
20
-DEPEND="
21
-	${PYTHON_DEPS}
22
-	dev-python/python-recaptcha[${PYTHON_USEDEP}]
23
-	dev-python/dnspython[${PYTHON_USEDEP}]
24
-	virtual/mta
25
-	virtual/cron
26
-	virtual/httpd-cgi"
27
-RDEPEND="${DEPEND}
28
-	selinux? ( sec-policy/selinux-mailman )
29
-"
30
-
31
-S="${WORKDIR}/${P/_p/-}"
32
-
33
-pkg_setup() {
34
-	python-single-r1_pkg_setup
35
-	INSTALLDIR=${MAILMAN_PREFIX:-"/usr/$(get_libdir)/mailman"}
36
-	VAR_PREFIX=${MAILMAN_VAR_PREFIX:-"/var/lib/mailman"}
37
-	CGIUID=${MAILMAN_CGIUID:-apache}
38
-	CGIGID=${MAILMAN_CGIGID:-apache}
39
-	MAILUSR=${MAILMAN_MAILUSR:-mailman}
40
-	MAILUID=${MAILMAN_MAILUID:-280}
41
-	MAILGRP=${MAILMAN_MAILGRP:-mailman}
42
-	MAILGID=${MAILMAN_MAILGID:-280}
43
-
44
-	# Bug #58526: switch to enew{group,user}.
45
-	# need to add mailman here for compile process.
46
-	# Duplicated at pkg_postinst() for binary install.
47
-	enewgroup ${MAILGRP} ${MAILGID}
48
-	enewuser  ${MAILUSR} ${MAILUID} /bin/bash ${INSTALLDIR} mailman,cron
49
-}
50
-
51
-src_prepare() {
52
-	epatch "${FILESDIR}/${PN}-2.1.14_rc1-directory-check.patch"
53
-	epatch "${FILESDIR}/${PN}-2.1.9-icons.patch"
54
-	epatch "${FILESDIR}/${PN}-2.1.26-add-recaptcha.diff"
55
-	epatch "${FILESDIR}/mailman-fix-sitedir.diff"
56
-	sed -i \
57
-	-e 's:<mm-digest-question-end>:<mm-digest-question-end><tr><td>\&nbsp;</td><td><mm-recaptcha-javascript></td></tr>:g' \
58
-	-e 's:</TITLE>:</TITLE>\n<MM-Recaptcha-Script>:g' \
59
-	./templates/*/listinfo.html
60
-}
61
-
62
-src_configure() {
63
-	econf \
64
-		--without-permcheck \
65
-		--prefix="${INSTALLDIR}" \
66
-		--with-mail-gid=${MAILGID} \
67
-		--with-cgi-gid=${CGIGID} \
68
-		--with-cgi-ext="${MAILMAN_CGIEXT}" \
69
-		--with-var-prefix="${VAR_PREFIX}" \
70
-		--with-username=${MAILUSR} \
71
-		--with-groupname=${MAILGRP} \
72
-		--with-python="${PYTHON}"
73
-}
74
-
75
-src_install () {
76
-	emake "DESTDIR=${D}" doinstall
77
-
78
-	insinto /etc/apache2/modules.d
79
-	newins "${FILESDIR}/50_mailman.conf-r2" 50_mailman.conf
80
-	sed \
81
-		-e "s:/usr/local/mailman/cgi-bin:${INSTALLDIR}/cgi-bin:g" \
82
-		-e "s:/usr/local/mailman/icons:${INSTALLDIR}/icons:g" \
83
-		-e "s:/usr/local/mailman/archives:${VAR_PREFIX}/archives:g" \
84
-		-i "${D}/etc/apache2/modules.d/50_mailman.conf" || die
85
-
86
-	newdoc "${FILESDIR}/README.gentoo-r3" README.gentoo
87
-
88
-	dodoc ACK* BUGS FAQ NEWS README* TODO UPGRADING INSTALL contrib/mailman.mc \
89
-		contrib/README.check_perms_grsecurity contrib/virtusertable
90
-
91
-	exeinto ${INSTALLDIR}/bin
92
-	doexe build/contrib/*.py contrib/majordomo2mailman.pl contrib/auto \
93
-		contrib/mm-handler*
94
-
95
-	dodir /etc/mailman
96
-	mv "${D}/${INSTALLDIR}/Mailman/mm_cfg.py" "${D}/etc/mailman"
97
-	dosym /etc/mailman/mm_cfg.py ${INSTALLDIR}/Mailman/mm_cfg.py
98
-
99
-	# Save the old config for updates from pre-2.1.9-r2
100
-	# To be removed some distant day
101
-	for i in /var/mailman /home/mailman /usr/local/mailman ${INSTALLDIR}; do
102
-		if [ -f ${i}/Mailman/mm_cfg.py ] && ! [ -L ${i}/Mailman/mm_cfg.py ]; then
103
-			cp ${i}/Mailman/mm_cfg.py "${D}/etc/mailman/mm_cfg.py" || die
104
-		fi
105
-	done
106
-
107
-	newinitd "${FILESDIR}/mailman.rc" mailman
108
-	cp "${FILESDIR}/mailman.service" "${T}/mailman.service" || die
109
-	sed -i "s/^User=.*/User=${MAILUSR}/" "${T}/mailman.service" || die
110
-	systemd_dounit "${T}/mailman.service"
111
-
112
-	keepdir ${VAR_PREFIX}/logs
113
-	keepdir ${VAR_PREFIX}/locks
114
-	keepdir ${VAR_PREFIX}/spam
115
-	keepdir ${VAR_PREFIX}/archives/public
116
-	keepdir ${VAR_PREFIX}/archives/private
117
-	keepdir ${VAR_PREFIX}/lists
118
-	keepdir ${VAR_PREFIX}/qfiles
119
-
120
-	chown -R ${MAILUSR}:${MAILGRP} "${D}/${VAR_PREFIX}" "${D}/${INSTALLDIR}" "${D}"/etc/mailman/* || die
121
-	chown ${CGIUID}:${MAILGRP} "${D}/${VAR_PREFIX}/archives/private" || die
122
-	chmod 2775 "${D}/${INSTALLDIR}" "${D}/${INSTALLDIR}"/templates/* \
123
-		"${D}/${INSTALLDIR}"/messages/* "${D}/${VAR_PREFIX}" "${D}/${VAR_PREFIX}"/{logs,lists,spam,locks,archives/public} || die
124
-	chmod 2770 "${D}/${VAR_PREFIX}/archives/private" || die
125
-	chmod 2770 "${D}/${VAR_PREFIX}/qfiles" || die
126
-	chmod 2755 "${D}/${INSTALLDIR}"/cgi-bin/* "${D}/${INSTALLDIR}/mail/mailman" || die
127
-
128
-	python_optimize "${D}/${INSTALLDIR}/bin/" \
129
-		"${D}/${INSTALLDIR}/Mailman/" \
130
-		"${D}/${INSTALLDIR}/Mailman/*"
131
-}
132
-
133
-pkg_postinst() {
134
-	enewgroup ${MAILGRP} ${MAILGID}
135
-	enewuser  ${MAILUSR} ${MAILUID} -1 ${INSTALLDIR} mailman,cron
136
-	echo
137
-	elog "Please read /usr/share/doc/${PF}/README.gentoo.bz2 for additional"
138
-	elog "Setup information, mailman will NOT run unless you follow"
139
-	elog "those instructions!"
140
-	echo
141
-
142
-	elog "An example Mailman configuration file for Apache has been installed into:"
143
-	elog "  ${APACHE2_MODULES_CONFDIR}/50_mailman.conf"
144
-	echo
145
-	elog "To enable, you will need to add \"-D MAILMAN\" to"
146
-	elog "/etc/conf.d/apache2."
147
-	echo
148
-
149
-	ewarn "Default-Configuration has changed deeply in 2.1.9-r2. You can configure"
150
-	ewarn "mailman with the following variables:"
151
-	ewarn "MAILMAN_PREFIX (default: /usr/$(get_libdir)/mailman)"
152
-	ewarn "MAILMAN_VAR_PREFIX (default: /var/lib/mailman)"
153
-	ewarn "MAILMAN_CGIUID (default: apache)"
154
-	ewarn "MAILMAN_CGIGID (default: apache)"
155
-	ewarn "MAILMAN_CGIEXT (default: empty)"
156
-	ewarn "MAILMAN_MAILUSR (default: mailman)"
157
-	ewarn "MAILMAN_MAILUID (default: 280)"
158
-	ewarn "MAILMAN_MAILGRP (default: mailman)"
159
-	ewarn "MAILMAN_MAILGID (default: 280)"
160
-	ewarn
161
-	ewarn "Config file is now symlinked in /etc/mailman, so etc-update works."
162
-	ewarn
163
-	ewarn "If you're upgrading from below 2.1.9-r2 or changed MAILMAN_PREFIX, you"
164
-	ewarn "NEED to make a few manual updates to your system:"
165
-	ewarn
166
-	ewarn "1.  Update your mailman users's home directory: usermod -d ${INSTALLDIR} mailman"
167
-	ewarn "2.  Re-import the crontab: su - mailman -c 'crontab cron/crontab.in'"
168
-	ewarn "3.  Copy your old mm_cfg.py file to /etc/mailman/mm_cfg.py"
169
-	ewarn
170
-	ewarn "Additionally if you've modified MAILMAN_VAR_PREFIX (or upgraded from"
171
-	ewarn "a pre 2.1.9-r2 installation), you should move your old lists/ and"
172
-	ewarn "archives/ directory to the new location, ensuring that the"
173
-	ewarn "permissions is correct.  See bug #208789 for a discussion."
174
-}
... ...
@@ -1,14 +0,0 @@
1
-<?xml version="1.0" encoding="UTF-8"?>
2
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
3
-<pkgmetadata>
4
-	<maintainer type="person">
5
-		<email>hanno@gentoo.org</email>
6
-	</maintainer>
7
-	<maintainer type="project">
8
-		<email>net-mail@gentoo.org</email>
9
-		<name>Net-Mail</name>
10
-	</maintainer>
11
-	<upstream>
12
-		<remote-id type="sourceforge">mailman</remote-id>
13
-	</upstream>
14
-</pkgmetadata>
... ...
@@ -1,2 +0,0 @@
1
-EBUILD python-cffi-1.ebuild 583 BLAKE2B ec2bc45f0ec539df749667d5258724330c94bed602cf7db73e75ccbab872144d784bb547b021ca2aa603306e945092d5e4041bfb3bc12609b7c1baa61af3ba92 SHA512 97d8cbd4cf20f287e661e33af6943163814d2a76cf3fb6e0868f0db3ef071c1fba59656b15d887365b2060d01e80dffdabf3056744f5adddeacddbee01510491
2
-MISC metadata.xml 240 BLAKE2B 41e6a4d9da33dab2decc5ff419924f382a8f64d27a81fdb97576db8c6cf125be95911747946ec8be1b453f56617fef1084f5947f84b50a8db419d46df2ae8a0f SHA512 9c23321eaa853f851bf00195ea64ac2ba093e516f9b57855ee5aa58fbb1988130c9f0c17c2a9ce9fae4ee033e0a28a70c868e0f5acdfa1dd316ab533c5279d59
... ...
@@ -1,8 +0,0 @@
1
-<?xml version="1.0" encoding="UTF-8"?>
2
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
3
-<pkgmetadata>
4
-	<maintainer type="project">
5
-		<email>python@gentoo.org</email>
6
-		<name>Python</name>
7
-	</maintainer>
8
-</pkgmetadata>
... ...
@@ -1,17 +0,0 @@
1
-# Copyright 1999-2020 Gentoo Authors
2
-# Distributed under the terms of the GNU General Public License v2
3
-
4
-EAPI=7
5
-
6
-PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} pypy3 )
7
-
8
-inherit python-r1
9
-
10
-DESCRIPTION="A virtual for the Python cffi package"
11
-SLOT="0"
12
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris"
13
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
14
-
15
-# built-in in PyPy and PyPy3
16
-RDEPEND="${PYTHON_DEPS}
17
-	$(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*')"
18 0