diff options
Diffstat (limited to 'debian/gnunet.postrm')
-rw-r--r-- | debian/gnunet.postrm | 118 |
1 files changed, 41 insertions, 77 deletions
diff --git a/debian/gnunet.postrm b/debian/gnunet.postrm index 2c3887202..592fe04a1 100644 --- a/debian/gnunet.postrm +++ b/debian/gnunet.postrm | |||
@@ -2,25 +2,12 @@ | |||
2 | 2 | ||
3 | set -e | 3 | set -e |
4 | 4 | ||
5 | pathfind() { | ||
6 | OLDIFS="$IFS" | ||
7 | IFS=: | ||
8 | for p in $PATH; do | ||
9 | if [ -x "$p/$*" ]; then | ||
10 | IFS="$OLDIFS" | ||
11 | return 0 | ||
12 | fi | ||
13 | done | ||
14 | IFS="$OLDIFS" | ||
15 | return 1 | ||
16 | } | ||
17 | |||
18 | remove_gns() { | 5 | remove_gns() { |
19 | # abort if /etc/nsswitch.conf does not exist | 6 | # abort if /etc/nsswitch.conf does not exist |
20 | if ! [ -e /etc/nsswitch.conf ]; then | 7 | if ! [ -e /etc/nsswitch.conf ]; then |
21 | return | 8 | return |
22 | fi | 9 | fi |
23 | perl -i -pe ' | 10 | perl -i -pe ' |
24 | my @remove=( | 11 | my @remove=( |
25 | "gns [NOTFOUND=return]", | 12 | "gns [NOTFOUND=return]", |
26 | ); | 13 | ); |
@@ -35,67 +22,44 @@ remove_gns() { | |||
35 | ' /etc/nsswitch.conf | 22 | ' /etc/nsswitch.conf |
36 | } | 23 | } |
37 | 24 | ||
25 | _USERNAME="gnunet" | ||
26 | _GROUPNAME="gnunet" | ||
27 | GNUNETDNS_GROUP="gnunetdns" | ||
28 | if [ -e /usr/share/debconf/confmodule ]; then | ||
29 | . /usr/share/debconf/confmodule | ||
30 | db_version 2.0 | ||
38 | 31 | ||
39 | case "${1}" in | 32 | db_get gnunet-dns/libnsswitch |
40 | purge) | 33 | _LIBNSSWITCH="${RET}" |
41 | if [ -e /usr/share/debconf/confmodule ] | 34 | fi |
42 | then | ||
43 | . /usr/share/debconf/confmodule | ||
44 | db_version 2.0 | ||
45 | |||
46 | db_get gnunet-systempeer/username | ||
47 | _USERNAME="${RET:-gnunet}" | ||
48 | |||
49 | db_get gnunet-systempeer/groupname | ||
50 | _GROUPNAME="${RET:-gnunet}" | ||
51 | |||
52 | db_get gnunet-dns/libnsswitch | ||
53 | _LIBNSSWITCH="${RET}" | ||
54 | else | ||
55 | _USERNAME="gnunet" | ||
56 | _GROUPNAME="gnunet" | ||
57 | fi | ||
58 | |||
59 | GNUNETDNS_GROUP="gnunetdns" | ||
60 | |||
61 | if $_LIBNSSWITCH | ||
62 | then | ||
63 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns.so.2 | ||
64 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns4.so.2 | ||
65 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns6.so.2 | ||
66 | remove_gns | ||
67 | fi | ||
68 | 35 | ||
69 | if pathfind deluser | 36 | case "${1}" in |
70 | then | 37 | purge) |
71 | deluser --quiet --system ${_USERNAME} || true | 38 | if $_LIBNSSWITCH; then |
72 | fi | 39 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns.so.2 |
73 | 40 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns4.so.2 | |
74 | if pathfind delgroup | 41 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns6.so.2 |
75 | then | 42 | remove_gns |
76 | delgroup --quiet --system --only-if-empty ${_GROUPNAME} || true | 43 | fi |
77 | delgroup --quiet --system --only-if-empty ${GNUNETDNS_GROUP} || true | 44 | |
78 | fi | 45 | rm -rf /var/log/gnunet.log /var/lib/gnunet /etc/default/gnunet |
79 | 46 | ;; | |
80 | rm -rf /var/log/gnunet.log /var/lib/gnunet /etc/default/gnunet | 47 | |
81 | ;; | 48 | remove | upgrade | failed-upgrade | abort-install | abort-upgrade | disappear) |
82 | 49 | ||
83 | remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) | 50 | if $_LIBNSSWITCH; then |
84 | 51 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns.so.2 | |
85 | if $_LIBNSSWITCH | 52 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns4.so.2 |
86 | then | 53 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns6.so.2 |
87 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns.so.2 | 54 | remove_gns |
88 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns4.so.2 | 55 | fi |
89 | rm -rf /usr/lib/x86_64-linux-gnu/usr/libnss_gns6.so.2 | 56 | |
90 | remove_gns | 57 | ;; |
91 | fi | 58 | |
92 | 59 | *) | |
93 | ;; | 60 | echo "postrm called with unknown argument \`${1}'" >&2 |
94 | 61 | exit 1 | |
95 | *) | 62 | ;; |
96 | echo "postrm called with unknown argument \`${1}'" >&2 | ||
97 | exit 1 | ||
98 | ;; | ||
99 | esac | 63 | esac |
100 | 64 | ||
101 | #DEBHELPER# | 65 | #DEBHELPER# |