|
1 This patch is Solaris-specific and thus will not be contributed upstream. |
|
2 |
|
3 --- mailman-2.1.18-1/misc/mailman.in.~1~ 2014-05-06 09:43:56.000000000 -0700 |
|
4 +++ mailman-2.1.18-1/misc/mailman.in 2014-09-12 11:27:53.659779385 -0700 |
|
5 @@ -33,13 +33,53 @@ |
|
6 # config: @prefix@/Mailman/mm_cfg.py |
|
7 # pidfile: @prefix@/data/master-qrunner.pid |
|
8 |
|
9 +. /lib/svc/share/smf_include.sh |
|
10 + |
|
11 PYTHON=@PYTHON@ |
|
12 MAILMANHOME=@prefix@ |
|
13 MAILMANCTL=$MAILMANHOME/bin/mailmanctl |
|
14 +DATABASEDIR=/var/share/mailman |
|
15 + |
|
16 +# arguments: |
|
17 +# $1 (required): directory to check for and create if needed |
|
18 +# $2 (optional): mode |
|
19 +create_if_needed() |
|
20 +{ |
|
21 + dir=$1 |
|
22 + mode=02775 |
|
23 + [[ $# -ge 2 ]] && mode=$2 |
|
24 + if [[ ! -d $dir ]]; then |
|
25 + mkdir -m $mode $dir |
|
26 + chown mailman:mailman $dir |
|
27 + fi |
|
28 +} |
|
29 |
|
30 case "$1" in |
|
31 'start') |
|
32 #rm -f $MAILMANHOME/locks/* |
|
33 + |
|
34 + # Directories under /var/share are only created after a reboot, when |
|
35 + # an early-in-boot service migrates them from /var/.migrate . To allow |
|
36 + # Mailman to be used after initial 'pkg install' before such a reboot, |
|
37 + # we manually create the required directories here if needed. |
|
38 + if [[ ! -d $DATABASEDIR ]]; then |
|
39 + mkdir $DATABASEDIR |
|
40 + create_if_needed $DATABASEDIR/archives |
|
41 + create_if_needed $DATABASEDIR/archives/private 02771 |
|
42 + create_if_needed $DATABASEDIR/archives/public |
|
43 + create_if_needed $DATABASEDIR/lists |
|
44 + create_if_needed $DATABASEDIR/locks |
|
45 + create_if_needed $DATABASEDIR/logs |
|
46 + create_if_needed $DATABASEDIR/qfiles |
|
47 + create_if_needed $DATABASEDIR/spam |
|
48 + fi |
|
49 + |
|
50 + # A single "site" list called mailman needs to exist first. Check for |
|
51 + # it and create it if needed. |
|
52 + $MAILMANHOME/bin/list_lists -b | grep -q "^mailman$" |
|
53 + if [[ $? -ne 0 ]]; then |
|
54 + $MAILMANHOME/bin/newlist -q -e 127.0.0.1 mailman [email protected] mailman |
|
55 + fi |
|
56 $PYTHON $MAILMANCTL -s -q start |
|
57 ;; |
|
58 |