[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#18698: Our WindowMaker wrapper pollutes PATH in the entire X session

From: Ludovic Courtès
Subject: bug#18698: Our WindowMaker wrapper pollutes PATH in the entire X session
Date: Sun, 01 Mar 2015 15:39:39 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux)

宋文武 <address@hidden> skribis:

> Ludovic Courtès <address@hidden> writes:
>> 宋文武 <address@hidden> skribis:
>>> Ricardo Wurmus <address@hidden> writes:
>>>> The fix may have resulted in unintended side-effects.  On a fresh
>>>> installation of the System Distribution v0.8.1 WindowMaker is installed
>>>> by default, but it is not completely functional.
>>>> For example, the attempt to change the style via the menu results in
>>>> this error to be displayed:
>>>>     Could not execute command:
>>>>         setstyle 
>>>> /gnu/store/...windowmaker.../share/WindowMaker/Styles/Black.style
>>>> Likewise, selecting "Configure Window Maker" from the right-click menu
>>>> results in this error:
>>>>     Could not execute command: exec WPrefs
>>>> The "setstyle" executable is located in
>>>> /gnu/store/...windowmaker.../bin/, but is not in the PATH.
>>> Yes, the $out/bin of windowmaker is not in $PATH, and same for sawfish.
>>> Instead of wrapping every executable of session-type, we can:
>>> #1: Add the package to system profile ('packages').
>>>   It's not clear to me how to do it now, until we have something
>>>   like the NixOS's module system.
>> What I have in mind is to add a ‘packages’ field in ‘service’.  That
>> would allow service implementations to contribute packages to the global
>> profile.  Thoughts?
> It's fine, but we may also need a 'dbus-service' field (for wicd).

Hmm right.  And dbus policy, and policykit something, and...

Clearly the NixOS way where each service can change anything in the
global config makes it easy; we need to find a middle ground where we
don’t end up allowing services to do anything.  Food for thought...

>>> #2: Make SLiM use '/run/current-system/profile/share/xsessions' as
>>>     session_dir.
>>>   So simply add a package providing xsession file to 'packages' should
>>>   make it available to SLiM.  And all DE and many window-managers provide
>>>   xsession files already (eg: openbox, sawfish, xfce), we can patch
>>>   the rest (eg: WindowMaker) to install one.
>> IIUC the bug initially reported here would remain: the user’s $PATH
>> would be polluted with the window manager’s stuff, no?
> I think the 'polluted' means we have a $PATH contains:
>   /gnu/store/xxx-windowmaker/bin
> install it to profile doesn't have this issue.

Right, but WindowMaker is not necessarily in the user’s profile.

Still, maybe the initial solution, which added WindowMaker to $PATH, is
the least undesirable solution.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]