-
Hi all, I have a question regarding the PATH that is used by i3. I am trying to "override" dmenu from suckless by rofi. Rofi allows that if you call rofi as dmenu, eg, However, when I add To reproduce this, you can simply install a small Debian 12 VM with i3. Install suckless-tools (
For those who are wondering, why are you working with dmenu_run and not dmenu, well, Exec the dmenu shortcut (mod+d) and notice that the dmenu.ran doesn't have any content. You will see that the dmenu from suckless is executed. Now in a terminal, run dmenu_run and see that dmenu.ran has contents in it so we know is has been executed. I'm trying to figure out why this is. The manual states:
FWIW, I'm running zsh, but the parts that set the relevant bits of my PATH are found in my What I find also interesting is that when I remove suckless-tools and the dmenu* files from /usr/bin are removed i3, in its log, don't show that the command cannot be found:
When it is executed:
It is both present in 4.22 (Debain stable) and 4.23 (Debian unstable)
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 7 replies
-
You need to make sure it is the PATH i3 sees as well. You can follow https://unix.stackexchange.com/a/70636 for example
Can you share that file? Are you sure it is sourced by your login manager / xinit?
Yes, i3 executes commands via sh and doesn't check the output. |
Beta Was this translation helpful? Give feedback.
So for anyone reading this who has Debian. You'll need to tweak the session-wrapper of LightDM. In
/usr/share/lightdm/lightdm.conf.d/01_debian.conf
the session-wrapper is changed from the default/usr/bin/lightdm-session
to/etc/X11/Xsession
(which is provided byx11-common
, viasuckless-tools
). You'll want to override this, you can do this either by adding a configuration item in/usr/share/lightdm/lightdm.conf.d/02_yourtweaks.conf
or in/etc/lightdm/lightdm.conf
. Be advised that you can either set[SeatDefault]
or[Seat:*]
, the former is a deprecated variant btw.Now you can create a separate wrapper script, for my testing purposes I've added a very minimal script: