postinst is in landscape-common 16.03-0ubuntu2.
This file is a maintainer script. It is executed when installing (*inst) or removing (*rm) the package.
The actual contents of the file can be viewed below.
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 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | #!/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 http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
. /usr/share/debconf/confmodule
trap "db_stop || true" EXIT HUP INT QUIT TERM
PACKAGE=landscape-common
# Use the default installed Python. Running just "python" might run
# something from /usr/local/bin, which doesn't necessarily support
# running the landscape client.
PYTHON=/usr/bin/python
case "$1" in
configure)
db_get $PACKAGE/sysinfo
# Choices:
# * Do not display sysinfo on login
# * Cache sysinfo in /etc/motd
# * Run sysinfo on every login
SYSINFO="${RET:-Cache sysinfo in /etc/motd}"
WRAPPER=/usr/share/landscape/landscape-sysinfo.wrapper
PROFILE_LOCATION=/etc/profile.d/50-landscape-sysinfo.sh
UPDATE_MOTD_LOCATION=/etc/update-motd.d/50-landscape-sysinfo
if [ "$RET" = "Cache sysinfo in /etc/motd" ]; then
rm -f $PROFILE_LOCATION 2>/dev/null || true
ln -sf $WRAPPER $UPDATE_MOTD_LOCATION
/usr/sbin/update-motd 2>/dev/null || true
elif [ "$RET" = "Run sysinfo on every login" ]; then
rm -f $UPDATE_MOTD_LOCATION 2>/dev/null || true
/usr/sbin/update-motd 2>/dev/null || true
ln -sf $WRAPPER $PROFILE_LOCATION
else
rm -f $UPDATE_MOTD_LOCATION 2>/dev/null || true
/usr/sbin/update-motd 2>/dev/null || true
rm -f $PROFILE_LOCATION || true
fi
# 0.9.1 introduces non-backwards compatible changes. This detects
# whether or not the data is in the current format. If not, all
# existing data is removed.
DATA_DIR=/var/lib/landscape
if [ -d $DATA_DIR/data ]; then
rm -rf $DATA_DIR/*
elif [ -f $DATA_DIR/client/data.bpickle ]; then
LAST_BYTE=`sed -n '$,$s/.*\(.\)/\1/p' $DATA_DIR/client/data.bpickle`
if [ "$LAST_BYTE" = e ]; then
rm -rf $DATA_DIR/*
fi
fi
# Create landscape system user
if ! getent passwd landscape >/dev/null; then
adduser --quiet --system --group --disabled-password \
--home /var/lib/landscape --no-create-home landscape
fi
# Create landscape system group (for <= 1.0.29.1-0ubuntu0.9.04.0)
if ! getent group landscape >/dev/null; then
addgroup --quiet --system landscape
fi
# Ensure primary group is landscape (for <= 1.0.29.1-0ubuntu0.9.04.0)
if ! usermod -g landscape landscape > /dev/null 2>&1; then
echo "ERROR: usermod -g landscape landscape failed."
fi
# Fix prior ownerships, we exclude the custom-graph-scripts directory
# because there might script-generated files that we want to preserve
# the ownership of.
if [ -d /var/lib/landscape/client ]; then
find /var/lib/landscape/client/ -wholename /var/lib/landscape/client/custom-graph-scripts -prune -or -exec chown landscape {} \; > /dev/null 2>&1
fi
[ -d /var/lib/landscape/.gnupg ] && chown -R landscape /var/lib/landscape/.gnupg || :
chown -R landscape /var/log/landscape
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
# Automatically added by dh_python2:
if which pycompile >/dev/null 2>&1; then
pycompile -p landscape-common
fi
# End automatically added section
exit 0
|