File: libvirt-daemon.preinst

package info (click to toggle)
libvirt 11.6.0-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 205,260 kB
  • sloc: ansic: 533,672; xml: 310,954; python: 11,881; perl: 2,629; sh: 2,185; makefile: 448; javascript: 126; cpp: 22
file content (71 lines) | stat: -rw-r--r-- 1,569 bytes parent folder | download | duplicates (3)
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#!/bin/sh

set -e

# summary of how this script can be called:
#
#   * <new-preinst> `install'
#   * <new-preinst> `install' <old-version> <new-version>
#   * <new-preinst> `upgrade' <old-version> <new-version>
#   * <old-preinst> `abort-upgrade' <new-version>
#
# for details, see https://www.debian.org/doc/debian-policy/ or
# the debian-policy package

create_protective_diversion() {
    local usrfile="$1"
    local firstver="$2"

    if [ "$3" != "--" ]; then
        echo "create_protective_diversion called with the wrong number of arguments" >&2
        return 1
    fi
    for _ in $(seq 1 3); do
        shift
    done

    # If we're upgrading from a new enough version of the package, it means
    # that usr-merge has already happened and we don't need to mess with
    # diversions at all
    if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then
        return 0
    fi

    dpkg-divert \
        --no-rename \
        --divert "$usrfile.usr-is-merged" \
        --add "$usrfile"
}

DAEMON_UNITS="
    libvirtd-admin.socket
    libvirtd-ro.socket
    libvirtd-tcp.socket
    libvirtd-tls.socket
    libvirtd.service
    libvirtd.socket
"

case "$1" in
    install|upgrade)
        for unit in $DAEMON_UNITS; do
            create_protective_diversion \
                "/lib/systemd/system/$unit" \
                "10.6.0-3~" \
                -- \
                "$@"
        done
    ;;

    abort-upgrade)
    ;;

    *)
        echo "preinst called with unknown argument \`$1'" >&2
        exit 1
    ;;
esac

#DEBHELPER#

exit 0