Daniel Wilkins via tde-users wrote:
On Tue, Nov 05, 2024 at 10:18:39PM +0100, deloptes via tde-users wrote:
It seems TDE should check if systemd is in use and if not start the session via dbus-launch.
All good. it should be easy enough to fix in starttde. Something like this?
diff --git a/starttde b/starttde index 66360e228..bbc3b2202 100755 --- a/starttde +++ b/starttde @@ -772,9 +772,15 @@ TDE_SESSION_UID=`id -u` export TDE_SESSION_UID echo "[starttde] TDE_SESSION_UID: $TDE_SESSION_UID" 1>&2
+# If we're not running under systemd, we need to launch tdeinit with dbus-launch +DBUSWRAPPER="" +if [ -z $DBUSWRAPPER ] && [ -x $(which dbus-launch) ]; then
- DBUSWRAPPER=$(which dbus-launch)
+fi
May be there is a better way to check if dbus session is started for the user. Look in starttde below following line # Start tde_dbus_hardwarecontrol at background
In debian there is the dbus-x11 package that contains dbus-launch command. It provides also few scripts where it says
$ cat /etc/X11/Xsession.d/75dbus_dbus-launch # $Id:$ # In order to activate the session bus at X session launch # simply place use-session-dbus into your /etc/X11/Xsession.options file #
STARTDBUS= DBUSLAUNCH=/usr/bin/dbus-launch
if has_option use-session-dbus; then if [ -z "$DBUS_SESSION_BUS_ADDRESS" ] && [ -x "$DBUSLAUNCH" ]; then STARTDBUS=yes fi fi
if [ -n "$STARTDBUS" ]; then # Note that anything that is D-Bus-activated between here and # 95dbus_update-activation-env will not have the complete environment # set up by Xsession.d, unless the Xsession.d snippet that sets the # environment variable also calls dbus-update-activation-environment. # See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=815503 eval $($DBUSLAUNCH --exit-with-session --sh-syntax) fi