0e52132492eba0dd6e3b90ad61086724a137ace7
[asterisk-config-auf-connexions.git] / debian / postinst
1 #! /bin/bash
2 # postinst script for asterisk-config-auf-connexions
3 #
4 # see: dh_installdeb(1)
5
6 set -e
7
8 # summary of how this script can be called:
9 #        * <postinst> `configure' <most-recently-configured-version>
10 #        * <old-postinst> `abort-upgrade' <new version>
11 #        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
12 #          <new-version>
13 #        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
14 #          <failed-install-package> <version> `removing'
15 #          <conflicting-package> <version>
16 # for details, see http://www.debian.org/doc/debian-policy/ or
17 # the debian-policy package
18 #
19
20
21 case "$1" in
22     configure)
23
24         # extrait du postinst general a tous les paquets asterisk...
25
26         # add asterisk user and add it to dialout and audio groups
27         if ! getent passwd asterisk > /dev/null ; then
28                 echo 'Adding system user and group for Asterisk' 1>&2
29                 adduser --system --group --quiet \
30                         --home /var/lib/asterisk \
31                         --no-create-home --disabled-login \
32                         --gecos "Asterisk PBX daemon" \
33                         asterisk
34
35                 for group in dialout audio; do
36                         if groups asterisk | grep -w -q -v $group; then
37                                 adduser asterisk $group
38                         fi
39                 done
40         fi 
41
42         # préparation du répertoire pour les config spécifiques à l'AUF
43         test -d /etc/asterisk/auf || mkdir -p /etc/asterisk/auf
44
45         # on (re)force les droits minimum sur /etc/asterisk
46         chown -R root:asterisk /etc/asterisk
47         chmod 0755 /etc/asterisk
48         chmod 0755 /etc/asterisk/auf
49         chmod 0640 /etc/asterisk/*.conf 2> /dev/null || true
50         #chmod 0640 /etc/asterisk/auf/* 2> /dev/null || true
51
52         # migration vers /usr/share pour asterisk 1.4 : on copie les *.key
53         # et les *.pub correspondantes de /var/lib vers /usr/share
54         cd /var/lib/asterisk/keys
55         if ls *.key > /dev/null 2>&1; then
56                 for KEY in *.key
57                 do
58                         # si la clé privée n'existe pas dans /usr/share, on la copie
59                         if [ ! -e /usr/share/asterisk/keys/$KEY ]
60                         then
61                                 echo "asterisk1.4 : cp /var/lib/asterisk/keys/$KEY /usr/share/asterisk/keys/$KEY"
62                                 cp -a $KEY /usr/share/asterisk/keys/ || true
63                                 # clé publique correspondante, sera copiée si elle existe dans /var/lib
64                                 # et si elle n'existe pas dans /usr/share/
65                                 PUB=`basename $KEY .key`.pub
66                                 if [ -e $PUB -a ! -e /usr/share/asterisk/keys/$PUB ]
67                                 then
68                                         echo "asterisk1.4 : cp /var/lib/asterisk/keys/$PUB /usr/share/asterisk/keys/$PUB"
69                                         cp -a $PUB /usr/share/asterisk/keys/ || true
70                                 fi
71                         fi
72                 done
73         fi
74
75         # droits minimums sur les clés, dans /var/lib et dans /usr/share
76         chown -R root:asterisk /var/lib/asterisk/keys
77         chmod 0755 /var/lib/asterisk/keys
78         chmod 0444 /var/lib/asterisk/keys/*.pub 2> /dev/null || true
79         chmod 0440 /var/lib/asterisk/keys/*.key 2> /dev/null || true
80         chown -R root:asterisk /usr/share/asterisk/keys
81         chmod 0755 /usr/share/asterisk/keys
82         chmod 0444 /usr/share/asterisk/keys/*.pub 2> /dev/null || true
83         chmod 0440 /usr/share/asterisk/keys/*.key 2> /dev/null || true
84
85         # on ne reload que ce qui a été changé par ce paquet : iax et extensions
86         if [ -x /usr/sbin/rasterisk ]; then
87                 rasterisk -x "iax2 reload" || true
88                 rasterisk -x "extensions reload" || true
89         fi
90
91     ;;
92
93     abort-upgrade|abort-remove|abort-deconfigure)
94
95     ;;
96
97     *)
98         echo "postinst called with unknown argument \`$1'" >&2
99         exit 1
100     ;;
101 esac
102
103 # dh_installdeb will replace this with shell code automatically
104 # generated by other debhelper scripts.
105
106 #DEBHELPER#
107
108 exit 0
109
110