0x1949 Team - FAZEMRX - MANAGER
Edit File: landscape-common.postinst
#!/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 3. Running just "python3" might run # something from /usr/local/bin, which doesn't necessarily support # running the landscape client. PYTHON=/usr/bin/python3 case "$1" in configure) ######################################### # from landscape-base # 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 touch /var/lib/landscape/.cleanup.user 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 touch /var/lib/landscape/.cleanup.group 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 ownerships. chown -R root:landscape /etc/landscape chmod 0775 /etc/landscape/ chown -R landscape:landscape /var/lib/landscape chown -R landscape:landscape /var/log/landscape ######################################### # from landscape-client-base # 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 # 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 chown -Rf landscape:root /etc/landscape/client.conf || true ######################################### # from landscape-sysinfo 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 update-motd 2>/dev/null || true elif [ "$RET" = "Run sysinfo on every login" ]; then rm -f $UPDATE_MOTD_LOCATION 2>/dev/null || true update-motd 2>/dev/null || true ln -sf $WRAPPER $PROFILE_LOCATION else rm -f $UPDATE_MOTD_LOCATION 2>/dev/null || true update-motd 2>/dev/null || true rm -f $PROFILE_LOCATION || true fi # We rely on landscape-base to create the user and log dir. ;; 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_python3 if command -v py3compile >/dev/null 2>&1; then py3compile -p landscape-common:amd64 fi if command -v pypy3compile >/dev/null 2>&1; then pypy3compile -p landscape-common:amd64 || true fi # End automatically added section exit 0