summaryrefslogtreecommitdiffstats
path: root/dilos/core/tdebase/debian/tdm.init.2
diff options
context:
space:
mode:
authorMichele Calgaro <[email protected]>2020-11-15 21:15:11 +0800
committerMichele Calgaro <[email protected]>2020-11-15 21:15:11 +0800
commit98095beb82f000d888dfa15bada80376c48df837 (patch)
treedadbf7de3432fa5cbf95c42733d19d5cf0508034 /dilos/core/tdebase/debian/tdm.init.2
parentf3d5de18f2bdf89d5923d560420ae23cac051cb8 (diff)
downloadtde-packaging-98095beb82f000d888dfa15bada80376c48df837.tar.gz
tde-packaging-98095beb82f000d888dfa15bada80376c48df837.zip
DEB: adjusted to new 'core' folder for main packages.
Signed-off-by: Michele Calgaro <[email protected]>
Diffstat (limited to 'dilos/core/tdebase/debian/tdm.init.2')
-rw-r--r--dilos/core/tdebase/debian/tdm.init.2202
1 files changed, 202 insertions, 0 deletions
diff --git a/dilos/core/tdebase/debian/tdm.init.2 b/dilos/core/tdebase/debian/tdm.init.2
new file mode 100644
index 000000000..664bbccb8
--- /dev/null
+++ b/dilos/core/tdebase/debian/tdm.init.2
@@ -0,0 +1,202 @@
+#!/bin/sh
+### BEGIN INIT INFO
+# Provides: x-display-manager tdm
+# Required-Start: $local_fs $remote_fs
+# Required-Stop: $local_fs $remote_fs
+# Should-Start: console-screen kbd acpid hal krb5-kdc ypbind
+# Should-Stop: console-screen kbd
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: X display manager for Trinity
+# Description: TDM manages a collection of X servers, which may be on the local host or remote machines.
+### END INIT INFO
+# /etc/init.d/tdm: start or stop the X display manager
+# Script originally stolen from the xdm package
+#
+# description: Trinity Display Manager
+#
+
+. /lib/lsb/init-functions
+
+set -e
+
+# To start tdm even if it is not the default display manager, change
+# HEED_DEFAULT_DISPLAY_MANAGER to "false."
+HEED_DEFAULT_DISPLAY_MANAGER=true
+DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
+
+TDEDIRS=/opt/trinity/
+PATH=/opt/trinity/bin:/bin:/usr/bin:/sbin:/usr/sbin
+DAEMON=/opt/trinity/bin/tdm
+PIDFILE=/var/run/tdm.pid
+UPGRADEFILE=/var/run/tdm.upgrade
+
+# parameters to support tdm customization
+TDMRC=/etc/trinity/tdm/tdmrc
+BACKGROUNDRC=/etc/trinity/tdm/backgroundrc
+
+#if configuration is changed by tdmtheme or other tools, don't do magick
+if grep -q "Theme=@@@ToBeReplacedByDesktopBase@@@" ${TDMRC} && grep -q "Wallpaper=default_blue.jpg" ${BACKGROUNDRC}
+then
+
+
+
+TDMOVERRIDEDIR=/etc/default/tdm-trinity.d
+TDMCFGDIR=/var/run/tdm-trinity
+TDMCFG=$TDMCFGDIR/tdmrc
+BACKGROUNDCFG=$TDMCFGDIR/backgroundrc
+
+test -x $DAEMON || exit 0
+
+# uncomment, if you want auto-logon to be runlevel-dependant
+#test "$runlevel" || { runlevel=`runlevel`; runlevel=${runlevel#* }; }
+#test "$runlevel" = 4 && ARG=-autolog || ARG=-noautolog
+
+# uncomment, if you want tons of debug info in your syslog
+#ARG="$ARG -debug 255"
+
+# we use an alternative tdm master configuration file
+ARG="$ARG -config $TDMCFG"
+
+# we source overrides. run-parts sorts the list in a predictable order
+if [ -d "$TDMOVERRIDEDIR" ]; then
+ for part in $(run-parts --list "$TDMOVERRIDEDIR" 2>/dev/null || true); do
+ . "$part"
+ done
+fi
+
+# we generate tdm configuration files
+gentdmconf --in $TDMCFGDIR 1> /dev/null
+
+# we update tdm configuration files (only overridden values)
+[ -n "$USEBACKGROUND" ] && sed -i "s|^#\?UseBackground=.*|UseBackground=$USEBACKGROUND|" $TDMCFG
+[ -n "$BACKGROUNDCFG" ] && sed -i "s|^#\?BackgroundCfg=.*|BackgroundCfg=$BACKGROUNDCFG|" $TDMCFG
+[ -n "$USETHEME" ] && sed -i "s|^#\?UseTheme=.*|UseTheme=$USETHEME|" $TDMCFG
+[ -n "$THEME" ] && sed -i "s|^#\?Theme=.*|Theme=$THEME|" $TDMCFG
+[ -n "$COMPOSITOR" ] && sed -i "s|^#\?Compositor=.*|Compositor=$COMPOSITOR|" $TDMCFG
+[ -n "$WALLPAPER" ] && sed -i "s|^#\?Wallpaper=.*|Wallpaper=`readlink -f $WALLPAPER`|" $BACKGROUNDCFG
+
+
+fi
+# autologin overrides are useful for live debian environment
+if [ -n "$AUTOLOGINUSER" ]; then
+ sed -i "s|^#\?AutoLoginEnable=.*|AutoLoginEnable=true|" $TDMCFG
+ sed -i "s|^#\?AutoLoginUser=.*|AutoLoginUser=$AUTOLOGINUSER|" $TDMCFG
+fi
+[ -n "$AUTOLOGINDELAY" ] && sed -i "s|^#\?AutoLoginDelay=.*|AutoLoginDelay=$AUTOLOGINDELAY|" $TDMCFG
+[ -n "$AUTOLOGINAGAIN" ] && sed -i "s|^#\?AutoLoginAgain=.*|AutoLoginAgain=$AUTOLOGINAGAIN|" $TDMCFG
+[ -n "$AUTOLOGINLOCKED" ] && sed -i "s|^#\?AutoLoginLocked=.*|AutoLoginLocked=$AUTOLOGINLOCKED|" $TDMCFG
+
+# If we upgraded the daemon, we can't use the --exec argument to
+# start-stop-daemon since the inode will have changed. The risk here is that
+# in a situation where the daemon died, its pidfile was not cleaned up, and
+# some other process is now running under that pid, start-stop-daemon will send
+# signals to an innocent process. However, this seems like a corner case.
+# C'est la vie!
+if [ -e $UPGRADEFILE ]; then
+ SSD_ARGS="--pidfile $PIDFILE --startas $DAEMON"
+else
+ SSD_ARGS="--pidfile $PIDFILE --exec $DAEMON"
+fi
+
+stillrunning () {
+ if expr "$(cat /proc/$DAEMONPID/cmdline 2> /dev/null)" : "$DAEMON" > /dev/null 2>&1; then
+ true
+ else
+ # if the daemon does not remove its own pidfile, we will
+ rm -f $PIDFILE $UPGRADEFILE
+ false
+ fi;
+}
+
+case "$1" in
+ start)
+ if [ -e $DEFAULT_DISPLAY_MANAGER_FILE ] &&
+ [ "$HEED_DEFAULT_DISPLAY_MANAGER" = "true" ] &&
+ [ "$(cat $DEFAULT_DISPLAY_MANAGER_FILE)" != "$DAEMON" ]; then
+ log_warning_msg "Not starting Trinity Display Manager (tdm); it is not the default display manager."
+ log_action_end_msg 0
+ else
+ log_action_begin_msg "Starting Trinity Display Manager: tdm"
+ if start-stop-daemon --start --quiet $SSD_ARGS -- $ARG; then
+ log_action_end_msg 0
+ else
+ log_action_end_msg 0
+ log_warning_msg "Trinity Display Manager (tdm) already running"
+ fi
+ fi
+ ;;
+
+ restart)
+ /etc/init.d/tdm stop
+ if [ -f $PIDFILE ]; then
+ if stillrunning; then
+ exit 1
+ fi
+ fi
+ /etc/init.d/tdm start
+ ;;
+
+ reload)
+ log_action_begin_msg "Reloading Trinity Display Manager configuration..."
+ if start-stop-daemon --stop --signal 1 --quiet $SSD_ARGS; then
+ log_action_end_msg 0
+ else
+ log_action_end_msg 1
+ log_failure_msg "tdm not running."
+ fi
+ ;;
+
+ force-reload)
+ /etc/init.d/tdm reload
+ ;;
+
+ stop)
+ log_action_begin_msg "Stopping Trinity Display Manager: tdm"
+ if [ ! -f $PIDFILE ]; then
+ log_action_end_msg 0
+ log_failure_msg "Trinity Display Manager (tdm) not running ($PIDFILE not found)."
+ exit 0
+ else
+ DAEMONPID=$(cat $PIDFILE | tr -d '[:blank:]')
+ KILLCOUNT=1
+ if [ ! -e $UPGRADEFILE ]; then
+ if start-stop-daemon --stop --quiet $SSD_ARGS; then
+ # give tdm's signal handler a second to catch its breath
+ sleep 1
+ else
+ log_action_end_msg 0
+ log_failure_msg "Trinity Display Manager (tdm) not running"
+ fi
+ fi
+ while [ $KILLCOUNT -le 5 ]; do
+ if stillrunning; then
+ kill $DAEMONPID
+ else
+ break
+ fi
+ sleep 1
+ KILLCOUNT=$(( $KILLCOUNT + 1 ))
+ done
+ if stillrunning; then
+ log_action_end_msg 1
+ log_failure_msg "Trinity Display Manager (tdm) not responding to TERM signal (pid $DAEMONPID)"
+ else
+ rm -f $UPGRADEFILE
+ fi
+ fi
+ log_action_end_msg 0
+
+ # Launches usplash on shutdown
+ if ( `grep -q '\( \|^\)splash\( \|$\)' /proc/cmdline` && `which usplash_down >/dev/null` ) ; then
+ usplash_down
+ fi
+ ;;
+
+ *)
+ echo "Usage: /etc/init.d/tdm {start|stop|restart|reload|force-reload}"
+ exit 1
+ ;;
+esac
+
+exit 0