File: libvirt-login-shell.postinst

package info (click to toggle)
libvirt 9.0.0-4%2Bdeb12u2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 155,976 kB
  • sloc: ansic: 513,441; xml: 179,638; python: 10,469; sh: 3,737; perl: 2,769; makefile: 429; javascript: 116; cpp: 22
file content (75 lines) | stat: -rw-r--r-- 2,054 bytes parent folder | download
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
72
73
74
75
#!/bin/sh

set -e

# summary of how this script can be called:
#
#   * <postinst> `configure' <most-recently-configured-version>
#   * <old-postinst> `abort-upgrade' <new-version>
#   * <conflictor's-postinst> `abort-remove' `in-favour' <package> <new-version>
#   * <postinst> `abort-remove'
#   * <deconfigured's-postinst> `abort-deconfigure' `in-favour' <failed-install-package>
#     <version> `removing' <conflicting-package> <version>
#
# for details, see https://www.debian.org/doc/debian-policy/ or
# the debian-policy package

finish_conffile_transfer() {
    local conffile="$1"
    local lastver="$2"
    local pkgfrom="$3"
    local pkgto="$4"

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

    # If we're upgrading rather than installing from scratch, we can assume
    # the transfer must have happened at some point in the past and stop here
    if [ -n "$2" ]; then
        return 0
    fi

    if [ -e "$conffile.dpkg-transfer" ]; then
        # Complete the process started in $pkgfrom's preinst by restoring the
        # version of the conffile containing local modifications
        echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..."
        mv -f "$conffile.dpkg-transfer" "$conffile"
        return 0
    fi

    if [ -e "$conffile.dpkg-disappear" ]; then
        # The conffile had been deleted by the admin, so let's return to
        # that state
        rm -f "$conffile" "$conffile.dpkg-disappear"
        return 0
    fi
}

case "$1" in
    configure)
        finish_conffile_transfer \
            "/etc/libvirt/virt-login-shell.conf" \
            "6.9.0-2~" \
            "libvirt-clients" \
            "libvirt-login-shell" \
            -- \
            "$@"
    ;;

    abort-upgrade|abort-remove|abort-deconfigure)
    ;;

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

#DEBHELPER#

exit 0