summaryrefslogtreecommitdiffstats
path: root/ubuntu/_base/tdebase/debian/tdm-trinity.prerm
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2019-04-03 22:56:40 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2019-04-03 22:56:40 +0900
commit11394aecd1f906fee2ebd2b90412aeba4651fbff (patch)
treebcf750380e6d9fc7dbe524e16bbe2afde25dcfa0 /ubuntu/_base/tdebase/debian/tdm-trinity.prerm
parentd24bd898174453b586ac90f2ef7a60165fa26fde (diff)
downloadtde-packaging-11394aecd1f906fee2ebd2b90412aeba4651fbff.tar.gz
tde-packaging-11394aecd1f906fee2ebd2b90412aeba4651fbff.zip
DEB: use _base folder for a distro instead of specific distros (squeeze
and maverick). Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'ubuntu/_base/tdebase/debian/tdm-trinity.prerm')
-rw-r--r--ubuntu/_base/tdebase/debian/tdm-trinity.prerm181
1 files changed, 181 insertions, 0 deletions
diff --git a/ubuntu/_base/tdebase/debian/tdm-trinity.prerm b/ubuntu/_base/tdebase/debian/tdm-trinity.prerm
new file mode 100644
index 000000000..6247adb1f
--- /dev/null
+++ b/ubuntu/_base/tdebase/debian/tdm-trinity.prerm
@@ -0,0 +1,181 @@
+#! /bin/sh
+# prerm script for tdm-trinity
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+# * <prerm> `remove'
+# * <old-prerm> `upgrade' <new-version>
+# * <new-prerm> `failed-upgrade' <old-version>
+# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
+# * <deconfigured's-prerm> `deconfigure' `in-favour'
+# <package-being-installed> <version> `removing'
+# <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+# debconf may not be available if some massive purging is going on
+HAVE_DEBCONF=
+if [ -e /usr/share/debconf/confmodule ]; then
+ . /usr/share/debconf/confmodule
+ HAVE_DEBCONF=yes
+fi
+
+case "$1" in
+ # we NEVER want to unconditionally stop tdm-trinity; see below
+ upgrade|failed-upgrade)
+ REMOVING=
+ ;;
+
+ remove|deconfigure)
+ REMOVING=yes
+ ;;
+
+ *)
+ echo "prerm called with unknown argument \`$1'" >&2
+ exit 1
+ ;;
+esac
+
+STOP=
+# are we supposed to restart on upgrade? if REMOVING tdm-trinity, we don't care what
+# the user says, we have to stop the daemon
+if grep -qs ^restart-on-upgrade /etc/trinity/tdm/tdm.options ||
+ [ -n "$REMOVING" ]; then
+ # is there an tdm process running?
+ if start-stop-daemon --stop --quiet --signal 0 --exec /opt/trinity/bin/tdm; then
+ # any children?
+ PARENTS=$(pidof /opt/trinity/bin/tdm || true)
+ CHILDREN=
+ if [ -n "$PARENTS" ]; then
+ for PROCESS in $PARENTS; do
+ # make sure we got numbers back
+ [ $PROCESS -eq $PROCESS ] 2> /dev/null ||
+ exit
+ # FIXME - redo this part uses shell-lib.sh from xfree86
+ # die "pidof returned non-numeric value"
+ # we could use grep -q here if ps would ignore SIGPIPE :-P
+ if (ps axj | grep "^ *$PROCESS" > /dev/null 2>&1); then
+ CHILDREN=yes
+ fi
+ done
+ if [ -n "$CHILDREN" ]; then
+ if [ -n "$HAVE_DEBCONF" ]; then
+ # ask the question
+ db_input high tdm-trinity/stop_running_server_with_children || true
+ db_go
+ # what did the user say?
+ ANSWER=
+ if db_get tdm-trinity/stop_running_server_with_children; then
+ ANSWER="$RET"
+ fi
+ if [ "$ANSWER" = "true" ]; then
+ STOP=yes
+ fi
+ # forget that we have seen the question; this is the sort of
+ # non-configuration question that should be asked every time
+ db_fset tdm-trinity/stop_running_server_with_children seen false
+ fi
+ else
+ STOP=yes
+ fi
+ fi
+ fi
+fi
+
+if [ -n "$STOP" ]; then
+ if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
+ invoke-rc.d tdm-trinity stop || true
+ else
+ /etc/init.d/tdm-trinity stop || true
+ fi
+else
+ if [ "$1" = "upgrade" -o "$1" = "failed-upgrade" ]; then
+ touch /var/run/tdm-trinity.upgrade
+ fi
+fi
+
+if [ -n "$REMOVING" ]; then
+ rm -f /etc/init.d/tdm-trinity
+ [ ! -e /etc/init/tdm-trinity.conf ] || \
+ rm -f /etc/init/tdm-trinity.conf
+fi
+
+DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
+
+if [ "$1" = "remove" -o "$1" = "deconfigure" ]; then
+ if [ -n "$HAVE_DEBCONF" ]; then
+ # disown this question
+ db_unregister shared/default-x-display-manager || true
+ # does the question still exist?
+ if db_get shared/default-x-display-manager; then
+ if db_metaget shared/default-x-display-manager owners; then
+ # FIXME - redo this part uses shell-lib.sh from xfree86
+ #observe "X display managers now available are \"$OWNERS\""
+ db_subst shared/default-x-display-manager choices "$RET"
+ fi
+ DEFAULT_DISPLAY_MANAGER=
+ if db_get shared/default-x-display-manager; then
+ DEFAULT_DISPLAY_MANAGER="$RET"
+ fi
+ # are we removing the currently selected display manager?
+ if [ -n "$DEFAULT_DISPLAY_MANAGER" ]; then
+ if [ "tdm-trinity" = "$DEFAULT_DISPLAY_MANAGER" ]; then
+ if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
+ if db_get "$DEFAULT_DISPLAY_MANAGER/daemon_name"; then
+ # does the display manager file reference the current default? if
+ # so, remove it because it will now be wrong
+ if [ -n "$RET" ]; then
+ if [ "$(cat "$DEFAULT_DISPLAY_MANAGER_FILE")" = "$RET" ]; then
+ rm "$DEFAULT_DISPLAY_MANAGER_FILE"
+ fi
+ fi
+ fi
+ fi
+ # ask the user to choose a new default
+ db_fset shared/default-x-display-manager seen false
+ db_input critical shared/default-x-display-manager || true
+ db_go
+ # if the default display manager file doesn't exist, write it with
+ # the path to the new default display manager
+ if [ ! -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
+ DEFAULT_DISPLAY_MANAGER=
+ if db_get shared/default-x-display-manager; then
+ DEFAULT_DISPLAY_MANAGER="$RET"
+ fi
+ if [ -n "$DEFAULT_DISPLAY_MANAGER" ]; then
+ # FIXME - redo this part uses shell-lib.sh from xfree86
+ #warn "new default display manager has been selected; please be" \
+ # "sure to run \"dpkg-reconfigure $RET\" to ensure that it" \
+ # "is configured"
+ DAEMON_NAME=
+ if db_get "$DEFAULT_DISPLAY_MANAGER"/daemon_name; then
+ DAEMON_NAME="$RET"
+ fi
+ if [ ! -n "$DAEMON_NAME" ]; then
+ # if we were unable to determine the name of the selected daemon (for
+ # instance, if the selected default display manager doesn't provide a
+ # daemon_name question), guess
+ DAEMON_NAME=$(which "$DEFAULT_DISPLAY_MANAGER" 2>/dev/null)
+ if [ ! -n "$DAEMON_NAME" ]; then
+ echo .
+ # FIXME - redo this part uses shell-lib.sh from xfree86
+ #warn "unable to determine path to default X display manager" \
+ # "$DEFAULT_DISPLAY_MANAGER; not updating" \
+ # "$DEFAULT_DISPLAY_MANAGER_FILE"
+ fi
+ fi
+ if [ -n "$DAEMON_NAME" ]; then
+ echo "$DAEMON_NAME" > "$DEFAULT_DISPLAY_MANAGER_FILE"
+ fi
+ fi
+ fi
+ fi
+ fi
+ fi
+ fi
+fi
+
+exit 0