File: libnss-resolve.postrm

package info (click to toggle)
systemd 232-25+deb9u12
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 46,192 kB
  • sloc: ansic: 290,590; xml: 49,217; makefile: 5,503; sh: 4,031; python: 2,596; perl: 1,838
file content (32 lines) | stat: -rw-r--r-- 897 bytes parent folder | download | duplicates (6)
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
#!/bin/sh
set -e

remove_nss_entry() {
    local file=$1
    local pkg=$2
    local module=$3
    refcount=$(dpkg-query -f '${db:Status-Abbrev} ${binary:Package}\n' \
        -W $pkg | grep '^i' | wc -l)
    if [ "$refcount" -gt 0 ] ; then
        # package is installed for other architectures still, do nothing
        return
    fi
    echo "Checking NSS setup..."
    # abort if file does not exist
    if ! [ -e $file ]; then
        echo "Could not find ${file}."
        return
    fi
    # we must remove possible [foo=bar] options as well
    sed -i -r "/hosts:/ s/[[:space:]]+$module\b([[:space:]]*\[[^]]*\])*//" $file
}

if [ "$1" = remove ]; then
    remove_nss_entry /etc/nsswitch.conf libnss-resolve resolve
    systemctl disable systemd-resolved.service
    if [ -d /run/systemd/system ]; then
        deb-systemd-invoke stop systemd-resolved.service || true
    fi
fi

#DEBHELPER#