Subject: bug#44916: No option to add whisker menu to xfce panel after installing package xfce4-whiskermenu-plugin.

From: Kei Kebreau <[email-masked]>
Date: Thu, 03 Dec 2020 11:24:43 -0500

Hello all!

Michael Rohleder <[email-masked]> writes:

> Thank you for reporting!
>
> [email-masked] writes:
>> After doing a fresh install of Guix system using the graphics
>> install menu and picking the xfce option, I decided to substitute
>> xfce's "Applications" menu with the "Whisker" menu.
>>
>> Thus, I used command "guix install xfce4-whiskermenu-plugin" to
>> install the package. After a system reboot, I opened the menu for
>> adding items to the xfce panel. However, the option "Whisker Menu"
>> isn't there.
>>
>> I asked this problem on irc and irc user "mroh" told me that this
>> plugin looks broken and they will try to fix it. They also asked me
>> to make a bug report:
>>> mroh | PotentailUser-53: that plugin does indeed looks broken:
>> ~/.guix-profile/bin/xfce4-popup-whiskermenu: line 47:
>> /gnu/store/clmv25gbfjrajvh8bsnhfj3w86kry004-xfce4-whiskermenu-plugin-2.4.6/bin/xfce4-panel:
>> No such file or directory
>
> Here is a first try to fix this:
>
>>>>From c0157162c35dea28fd4f65c0b8bc87425358e7db Mon Sep 17 00:00:00 2001
> From: Michael Rohleder <[email-masked]>
> Date: Sat, 28 Nov 2020 16:10:15 +0100
> Subject: [PATCH] gnu: xfce4-whiskermenu-plugin: Fix installed shell script.
>
> * gnu/packages/xfce.scm (xfce4-whiskermenu-plugin): Fix installed shell script.
> [arguments]: Add phase fix-shell-script to substitute path to xfce4-panel.
>

-- cut --

>
> Now, the shell script (path to xfce4-panel in the last line) looks fine,
> but it still doesn't popup/display anything ;(

The above patch partially fixes the script.  The path to the gettext binary
must be patched as well since gettext is used for printing the help
menu.

Aside from that, it seems like Xfce, when installed as a system-wide
desktop environment, does not look in the user's Guix profile for
plugins.  Panel modules are located by Xfce in the directories listed in
the X_XFCE4_LIB_DIRS environment variable.  For my Xfce configuration,
X_XFCE4_LIB_DIRS contains only /run/current-system/profile/lib/xfce4.

To work around this issue on your own machine for the time being, you
can add the desired Xfce plugins to the list of packages in your Guix
operating system configuration.  In the long-term, it will be worth
determining the best way to add the proper directories from the user's
Guix profile to the list of directories in X_XFCE4_LIB_DIRS.