From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Subject: bug#18698: Our WindowMaker wrapper pollutes PATH in the entire X session Date: Sun, 01 Mar 2015 15:39:39 +0100 Message-ID: <874mq4g4t0.fsf@gnu.org> References: <877g04iyku.fsf@yeeloong.lan> <87egpwd3wt.fsf@gmail.com> <87y4o2q439.fsf@gnu.org> <87h9upm5ih.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:56899) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YS52K-000864-35 for bug-guix@gnu.org; Sun, 01 Mar 2015 09:40:05 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YS52I-00029q-Og for bug-guix@gnu.org; Sun, 01 Mar 2015 09:40:03 -0500 Received: from debbugs.gnu.org ([140.186.70.43]:57634) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YS52I-00029b-Lu for bug-guix@gnu.org; Sun, 01 Mar 2015 09:40:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1YS52I-00047N-0I for bug-guix@gnu.org; Sun, 01 Mar 2015 09:40:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87h9upm5ih.fsf@gmail.com> ("=?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?="'s message of "Sat, 14 Feb 2015 13:22:30 +0800") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org To: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Cc: 18698@debbugs.gnu.org =E5=AE=8B=E6=96=87=E6=AD=A6 skribis: > Ludovic Court=C3=A8s writes: > >> =E5=AE=8B=E6=96=87=E6=AD=A6 skribis: >> >>> Ricardo Wurmus 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 =E2=80=98packages=E2=80=99 field in =E2= =80=98service=E2=80=99. 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=E2=80=99t 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 provi= de >>> 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=E2=80=99s $P= ATH >> would be polluted with the window manager=E2=80=99s 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=E2=80=99s profile. Still, maybe the initial solution, which added WindowMaker to $PATH, is the least undesirable solution. Thoughts? Ludo=E2=80=99.