GNU bug report logs -
#45062
[PATCH 1/2] gnu: xfce4-session: Fix xfce4-panel plugin detection.
Previous Next
Reported by: Kei Kebreau <kkebreau <at> posteo.net>
Date: Sun, 6 Dec 2020 05:03:02 UTC
Severity: normal
Tags: patch
Done: Kei Kebreau <kkebreau <at> posteo.net>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 45062 in the body.
You can then email your comments to 45062 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#45062
; Package
guix-patches
.
(Sun, 06 Dec 2020 05:03:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Kei Kebreau <kkebreau <at> posteo.net>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Sun, 06 Dec 2020 05:03:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/xfce.scm (xfce4-session)[source]: Add patch to append the path
to user-installed xfce4-panel plugins to the X_XFCE4_LIB_DIRS environment
variable.
* gnu/packages/patches/xfce4-session-xinitrc.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
gnu/local.mk | 3 ++-
.../patches/xfce4-session-xinitrc.patch | 19 +++++++++++++++++++
gnu/packages/xfce.scm | 1 +
3 files changed, 22 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/xfce4-session-xinitrc.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index cbfefccbb9..ca6d90cced 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -4,7 +4,7 @@
# Copyright © 2016 Mathieu Lirzin <mthl <at> gnu.org>
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver <mhw <at> netris.org>
# Copyright © 2016 Chris Marusich <cmmarusich <at> gmail.com>
-# Copyright © 2016, 2017, 2018 Kei Kebreau <kkebreau <at> posteo.net>
+# Copyright © 2016, 2017, 2018, 2020 Kei Kebreau <kkebreau <at> posteo.net>
# Copyright © 2016, 2017 Rene Saavedra <rennes <at> openmailbox.org>
# Copyright © 2016 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno <at> openmailbox.org>
# Copyright © 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado <at> elephly.net>
@@ -1721,6 +1721,7 @@ dist_patch_DATA = \
%D%/packages/patches/xf86-video-tga-remove-mibstore.patch \
%D%/packages/patches/xf86-video-voodoo-pcitag.patch \
%D%/packages/patches/xfce4-panel-plugins.patch \
+ %D%/packages/patches/xfce4-session-xinitrc.patch \
%D%/packages/patches/xfce4-settings-defaults.patch \
%D%/packages/patches/xmonad-dynamic-linking.patch \
%D%/packages/patches/xplanet-1.3.1-cxx11-eof.patch \
diff --git a/gnu/packages/patches/xfce4-session-xinitrc.patch b/gnu/packages/patches/xfce4-session-xinitrc.patch
new file mode 100644
index 0000000000..914890ff3d
--- /dev/null
+++ b/gnu/packages/patches/xfce4-session-xinitrc.patch
@@ -0,0 +1,19 @@
+Ensure that xfce4 panel plugins in the user's Guix profile can
+be found in the directories specified in X_XFCE4_LIB_DIRS.
+
+Partially fixes Guix bug #44916:
+https://debbugs.gnu.org/cgi/bugreport.cgi?bug=44916.
+
+Patch by Kei Kebreau <kkebreau <at> posteo.net>
+
+--- xfce4-session-4.14.2/scripts/xinitrc.in.in.orig 2020-12-05 15:01:43.932285134 -0500
++++ xfce4-session-4.14.2/scripts/xinitrc.in.in 2020-12-05 15:22:06.171691694 -0500
+@@ -83,6 +83,8 @@
+ dbus-update-activation-environment --systemd XAUTHLOCALHOSTNAME=$XAUTHLOCALHOSTNAME
+ fi
+
++# load local Guix xfce4-panel plugins
++test -r "$HOME/.guix-profile/lib/xfce4" && export X_XFCE4_LIB_DIRS="$X_XFCE4_LIB_DIRS:$HOME/.guix-profile/lib/xfce4"
+
+ # check if we start xfce4-session with ck-launch-session. this is only
+ # required for starting from a console, not a login manager
diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index 4090372805..685ddd3e18 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -684,6 +684,7 @@ your system in categories, so you can quickly find and launch them.")
(sha256
(base32
"1bwpylcn7x9i301yz45wvkzah9bncv9b44nf4hh9ln4i1jka9qzv"))
+ (patches (search-patches "xfce4-session-xinitrc.patch"))
(modules '((guix build utils)))
(snippet
'(begin
--
2.29.2
Information forwarded
to
guix-patches <at> gnu.org
:
bug#45062
; Package
guix-patches
.
(Sun, 06 Dec 2020 05:05:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 45062 <at> debbugs.gnu.org (full text, mbox):
From: Michael Rohleder <mike <at> rohleder.de>
* gnu/packages/xfce.scm (xfce4-whiskermenu-plugin): Fix installed shell script.
[arguments]: Add phase fix-shell-script to substitute paths to xfce4-panel and
gettext.
[inputs]: Add gettext-minimal.
Co-authored-by: Kei Kebreau <kkebreau <at> posteo.net>
Signed-off-by: Kei Kebreau <kkebreau <at> posteo.net>
---
gnu/packages/xfce.scm | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index 685ddd3e18..6f3fc34763 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -38,6 +38,7 @@
#:use-module (gnu packages cdrom)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gstreamer)
@@ -592,11 +593,21 @@ keys for controlling the audio volume.")
(inputs
`(("xfce4-panel" ,xfce4-panel)
("garcon" ,garcon)
+ ("gettext" ,gettext-minimal)
("exo" ,exo)
("gtk+" ,gtk+)
("libxfce4ui" ,libxfce4ui)))
(arguments
- `(#:tests? #f)) ; no tests
+ `(#:tests? #f ; no tests
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-shell-script
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* (string-append "panel-plugin/xfce4-popup-whiskermenu.in")
+ (("@CMAKE_INSTALL_FULL_BINDIR@")
+ (string-append (assoc-ref inputs "xfce4-panel") "/bin"))
+ (("gettext") (which "gettext")))
+ #t)))))
(home-page "https://goodies.xfce.org/projects/panel-plugins/xfce4-whiskermenu-plugin")
(synopsis "Application menu panel plugin for Xfce")
(description
--
2.29.2
Information forwarded
to
guix-patches <at> gnu.org
:
bug#45062
; Package
guix-patches
.
(Sun, 06 Dec 2020 16:41:05 GMT)
Full text and
rfc822 format available.
Message #11 received at 45062 <at> debbugs.gnu.org (full text, mbox):
Kei Kebreau <kkebreau <at> posteo.net> writes:
> * gnu/packages/xfce.scm (xfce4-session)[source]: Add patch to append the path
> to user-installed xfce4-panel plugins to the X_XFCE4_LIB_DIRS environment
> variable.
> [...]
> +Ensure that xfce4 panel plugins in the user's Guix profile can
> +be found in the directories specified in X_XFCE4_LIB_DIRS.
> +
> +Partially fixes Guix bug #44916:
> +https://debbugs.gnu.org/cgi/bugreport.cgi?bug=44916.
>
Quote from #44916:
>> 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.
I think mix plugins from system and user profiles is a bad idea, the
system profile tend to be updated less than the user profile, so there
maybe some ABI problems between the xfce-panel in the system profile and
its plugins in the user profile due to mismatched versions.
Does install both ‘xfce4-panel’ and ‘xfce4-whiskermenu-plugin’ into the
user profile works (hopeful a system xfce4 session will first pickup a
user installed xfce4-panel)?
Information forwarded
to
guix-patches <at> gnu.org
:
bug#45062
; Package
guix-patches
.
(Sun, 06 Dec 2020 19:57:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 45062 <at> debbugs.gnu.org (full text, mbox):
On Sun, 06 Dec 2020 14:50:32 +0800
宋文武 <iyzsong <at> outlook.com> wrote:
> Kei Kebreau <kkebreau <at> posteo.net> writes:
>
> > * gnu/packages/xfce.scm (xfce4-session)[source]: Add patch to
> > append the path to user-installed xfce4-panel plugins to the
> > X_XFCE4_LIB_DIRS environment variable.
> > [...]
> > +Ensure that xfce4 panel plugins in the user's Guix profile can
> > +be found in the directories specified in X_XFCE4_LIB_DIRS.
> > +
> > +Partially fixes Guix bug #44916:
> > +https://debbugs.gnu.org/cgi/bugreport.cgi?bug=44916.
> >
>
> Quote from #44916:
> >> 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.
>
> I think mix plugins from system and user profiles is a bad idea, the
> system profile tend to be updated less than the user profile, so there
> maybe some ABI problems between the xfce-panel in the system profile
> and its plugins in the user profile due to mismatched versions.
>
> Does install both ‘xfce4-panel’ and ‘xfce4-whiskermenu-plugin’ into
> the user profile works (hopeful a system xfce4 session will first
> pickup a user installed xfce4-panel)?
Installing both 'xfce4-panel' and 'xfce4-whiskermenu-plugin' into the
user profile does work! Is there a way to make clear to users and
administrators that xfce4-panel and its plugins should both be
installed at the user or system level to ensure proper function? I
don't think it's obvious since our Xfce desktop service implicitly
installs the xfce4-panel.
Information forwarded
to
guix-patches <at> gnu.org
:
bug#45062
; Package
guix-patches
.
(Mon, 07 Dec 2020 11:22:01 GMT)
Full text and
rfc822 format available.
Message #17 received at 45062 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Kei Kebreau <kkebreau <at> posteo.net> writes:
> Installing both 'xfce4-panel' and 'xfce4-whiskermenu-plugin' into the
> user profile does work!
Okay, but I guess that will be some problem too, since then
X_XFCE4_LIB_DIRS would contain both system and user paths...
> Is there a way to make clear to users and
> administrators that xfce4-panel and its plugins should both be
> installed at the user or system level to ensure proper function? I
> don't think it's obvious since our Xfce desktop service implicitly
> installs the xfce4-panel.
Yes, how about document it like this:
[0001-doc-Document-about-xfce4-panel-plugins.patch (text/x-patch, inline)]
From 75fdb19ea4f68d7e8af899ef4611d269d4821f29 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= <iyzsong <at> member.fsf.org>
Date: Mon, 7 Dec 2020 19:11:03 +0800
Subject: [PATCH] doc: Document about xfce4-panel plugins.
* doc/guix.texi (Desktop Services): Document that xfce4-panel plugin packages
should be added to the 'packages' field of OS.
---
doc/guix.texi | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/doc/guix.texi b/doc/guix.texi
index a21c4d614e..5eb5b47e14 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -18563,6 +18563,12 @@ This service adds the @code{xfce} package to the system profile, and
extends polkit with the ability for @code{thunar} to manipulate the file
system as root from within a user session, after the user has authenticated
with the administrator's password.
+
+Note that @code{xfce4-panel} and its plugin packages should in the same
+profile to ensure compatibility, when use this @code{xfce} service, you
+should add extra plugins (xfce4-whiskermenu-plugin,
+xfce4-weather-plugin, etc.) to the @code{packages} field of your
+@code{operating-system}.
@end defvr
@deftp {Data Type} xfce-desktop-configuration
--
2.29.2
[Message part 3 (text/plain, inline)]
BTW, your second patch for xfce4-whiskermenu-plugin LGTM, please push.
Thank you!
Reply sent
to
Kei Kebreau <kkebreau <at> posteo.net>
:
You have taken responsibility.
(Mon, 07 Dec 2020 21:19:01 GMT)
Full text and
rfc822 format available.
Notification sent
to
Kei Kebreau <kkebreau <at> posteo.net>
:
bug acknowledged by developer.
(Mon, 07 Dec 2020 21:19:01 GMT)
Full text and
rfc822 format available.
Message #22 received at 45062-done <at> debbugs.gnu.org (full text, mbox):
I've edited your documentation patch a little bit and pushed it to
master along with my second patch. Thanks for your input and patch!
Kei
On Mon, 07 Dec 2020 19:21:51 +0800
宋文武 <iyzsong <at> outlook.com> wrote:
> Kei Kebreau <kkebreau <at> posteo.net> writes:
>
> > Installing both 'xfce4-panel' and 'xfce4-whiskermenu-plugin' into
> > the user profile does work!
> Okay, but I guess that will be some problem too, since then
> X_XFCE4_LIB_DIRS would contain both system and user paths...
>
> > Is there a way to make clear to users and
> > administrators that xfce4-panel and its plugins should both be
> > installed at the user or system level to ensure proper function? I
> > don't think it's obvious since our Xfce desktop service implicitly
> > installs the xfce4-panel.
>
> Yes, how about document it like this:
>
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Tue, 05 Jan 2021 12:24:07 GMT)
Full text and
rfc822 format available.
This bug report was last modified 4 years and 227 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.