You are not logged in.
I am using EXWM and I have the following two xdg-desktop-* packages installed:
- xdg-desktop-portal
- xdg-desktop-portal-gtk
All of my applications take more that 20 seconds to start the first time.
I have tried to set the XDG_CURRENT_DESKTOP variable accordingly:
export XDG_CURRENT_DESKTOP=exwmBut this did not help.
My guess is that this a xdg-desktop-portal, but I have no idea how to set up this properly. I tried to search online but I could not find anything about how to do it for EXWM.
Any hints?
SOLVED: The dbus-launch calls in the script referenced in the .xinitrc file were the reason of the delay.
Last edited by ArchArael (2023-09-20 08:05:38)
Offline
Make sure you don't have xdg-desktop-portal-gnome, assuming you're using startx/xinit that your session isn't degraded (last link below and what to include there at least) and in doubt post the system journal at least covering the timeframe of the delayed start.
Offline
Thank you for your suggestions.
I do not have the xdg-desktop-portal-gnome and I think that my .xinitrc is probably fine. It is only one line long.
Here is the content of my .xinitrc
exec /home/arael/.emacs.d/exwm/startHere is the content of the 'start' script:
#!/bin/sh
# Run the screen compositor
picom &
# Enable screen locking on suspend
xss-lock -- slock &
# start dbus daemon
dbus-daemon -d
# start fctix5
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
dbus-launch fcitx5 &
# Fire it up
dbus-launch --exit-with-session emacs --daemon --debug-init -l ~/.emacs.d/desktop.el
exec emacsclient -cLast edited by ArchArael (2023-09-20 07:58:45)
Offline
Ok, that's horrible ![]()
See the last link below, include the system wide scripts and lose all dbus-launch references.
Then see whether you original problem is gone.
Offline
You were right. I have removed the dbus-launch from the script and now it works properly.
Thank you very much.
Offline
Note: At the very least, ensure that the last if block in /etc/X11/xinit/xinitrc is present in your ~/.xinitrc file to ensure that the scripts in /etc/X11/xinit/xinitrc.d are sourced.
This is required to properly tie the xinit session into logind and the session-bus, the relevant stuff is in /etc/X11/xinit/xinitrc.d/50-systemd-user.sh
Offline
Here is my .xinitrc
# Mandatory block for proper initialization
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
[ -x "$f" ] && . "$f"
done
unset f
fi
# start EXWM
exec /home/arael/.emacs.d/exwm/startFor the start script, I had to use dbus-launch for fcitx5, otherwise it does not connect to the dbus. But the applications start properly, so I guess launching Emacs with dbus-launch was causing the trouble. Do you have any suggestion on how to start the fcitx5 without dbus-launch?
#!/bin/sh
# Run the screen compositor
picom &
# Enable screen locking on suspend
xss-lock -- slock &
# start fctix5
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
fcitx5 &
# Fire it up
emacs --daemon --debug-init -l ~/.emacs.d/desktop.el
exec emacsclient -cLast edited by ArchArael (2023-09-20 12:00:41)
Offline
The primary question would by *why* it doesn't start properly (notably after importing the session bus).
Can you run it w/o dbus-launch from within the session?
Does it yell errors when started in the exwm start script?
…
fcitx5 > /tmp/fcitx5.out 2>&1 &
…Offline
After starting with a clean session it actually works. Thank you for your help!
Offline