summaryrefslogtreecommitdiffstats
path: root/extra/postfix/postfix.install
blob: 6acbe3f4168f5fe1dcd5b24d55cb05126d2a0f1d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# arg 1:  the new package version
post_install() {
    if [ -z "`grep '^postdrop::' /etc/group`" ]; then
        groupadd -g 75 postdrop >& /dev/null
    fi
    if [ -z "`grep '^postfix::' /etc/group`" ]; then
        groupadd -g 73 postfix >& /dev/null
    fi
    if [ -z "`grep '^postfix:' /etc/passwd`" ]; then
        useradd -u 73 -d /var/spool/postfix -g postfix -s /bin/false postfix
    else
        # fix a packaging bug from before (postfix should have no shell)
        usermod -s /bin/false postfix
    fi

    chown postfix var/spool/postfix/{active,bounce,corrupt,defer,deferred,\
flush,hold,incoming,private,public,maildrop,trace,saved}
    chown postfix var/lib/postfix
    chgrp postdrop var/spool/postfix/{public,maildrop}
    chgrp postdrop usr/sbin/postqueue
    chgrp postdrop usr/sbin/postdrop
    chmod g+s usr/sbin/{postqueue,postdrop}

    newaliases
}

# arg 1:  the new package version
# arg 2:  the old package version
post_upgrade() {
    post_install $1
}

# arg 1:  the old package version
pre_remove() {
    userdel postfix &> /dev/null
    groupdel postfix &> /dev/null
    groupdel postdrop &> /dev/null
}