From: "Ludovic Courtès" <ludo@gnu.org>
To: Leo Prikler <leo.prikler@student.tugraz.at>
Cc: 36376@debbugs.gnu.org, Maxim Cournoyer <maxim.cournoyer@gmail.com>
Subject: bug#36376: Application menu of desktop environment not automatically updated
Date: Wed, 04 Nov 2020 23:15:19 +0100 [thread overview]
Message-ID: <878sbg7oqw.fsf@gnu.org> (raw)
In-Reply-To: <63d4101b796673602872997b7680d6b04a189de3.camel@student.tugraz.at> (Leo Prikler's message of "Wed, 04 Nov 2020 00:28:51 +0100")
[-- Attachment #1: Type: text/plain, Size: 2254 bytes --]
Hi!
Leo Prikler <leo.prikler@student.tugraz.at> skribis:
> Am Dienstag, den 03.11.2020, 23:46 +0100 schrieb Ludovic Courtès:
>> Ludovic Courtès <ludo@gnu.org> skribis:
>>
>> > This is not news to us, but as
>> > <https://distrowatch.com/weekly.php?issue=20190624#guixsd> notes,
>> > the
>> > application menu of desktop environments is not automatically
>> > updated
>> > when a package is installed or removed. It’d be great if we could
>> > somehow notify the desktop environment.
>>
>> We’ve investigated today on IRC with Maxim and Leo P. and here’s the
>> summary of our findings:
> Seeing my name thrown around more and more lately makes me blush a
> little.
Heheh, you provided useful hints!
>> The GLib patch below is an attempt to monitor ~/.guix-profile and to
>> treat changes to that symlink as if they were changes to
>> ~/.guix-profile/share/applications (which contains ‘.desktop’ files.)
>> It actually builds but I haven’t tested it yet. :-)
>>
>> WDYT?
> Not having tested it either, I think that we should also listen on
> /run/current-system/ (if it exists), so that changes to the system as
> done by `reconfigure` are picked up. This includes most importantly
> changes to the GNOME ecosystem itself.
Like I wrote in the related bug, I think /run/current-system is less
important because it typically doesn’t change much:
https://issues.guix.gnu.org/35594#6
But I guess I’m also being a bit lazy…
Anyhow, I’ve tested the patch in ‘guix system vm
gnu/system/examples/desktop.tmpl’, with a ‘glib’ replacement as shown
below. I strace’d the user’s gnome-shell and ran:
ln -s /run/current-system/profile ~/.guix-profile
The trace showed that this led gnome-shell to traverse files in
~/.guix-profile/share (not just the applications/ sub-directory.)
I wanted to test ‘guix install’ for real, which meant doing it on ‘guix
system vm-image’, but that took too long; so I tried ‘disk-image -t
qcow2’ instead but partition.img.drv fails. So I haven’t been able to
actually test with ‘guix install’.
Anyway, here’s the Guix patch. You need to drop the GLib patch in the
right place.
Thanks,
Ludo’.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 2120 bytes --]
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index bba9461d44..1c0de6eaed 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -181,6 +181,7 @@ shared NFS home directories.")
(package
(name "glib")
(version "2.62.6")
+ (replacement glib-with-gio-patch)
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/"
@@ -387,6 +388,14 @@ dynamic loading, and an object system.")
(home-page "https://developer.gnome.org/glib/")
(license license:lgpl2.1+)))
+(define glib-with-gio-patch
+ (package
+ (inherit glib)
+ (source (origin
+ (inherit (package-source glib))
+ (patches (append (search-patches "glib-appinfo-watch.patch")
+ (origin-patches (package-source glib))))))))
+
(define-public glib-with-documentation
;; glib's doc must be built in a separate package since it requires gtk-doc,
;; which in turn depends on glib.
diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl
index 716b9feb8d..4797111c67 100644
--- a/gnu/system/examples/desktop.tmpl
+++ b/gnu/system/examples/desktop.tmpl
@@ -4,7 +4,7 @@
(use-modules (gnu) (gnu system nss))
(use-service-modules desktop xorg)
-(use-package-modules certs gnome)
+(use-package-modules certs gnome linux)
(operating-system
(host-name "antelope")
@@ -57,7 +57,8 @@
;; for HTTPS access
nss-certs
;; for user mounts
- gvfs)
+ gvfs
+ strace)
%base-packages))
;; Add GNOME and Xfce---we can choose at the log-in screen
@@ -65,7 +66,6 @@
;; include the X11 log-in service, networking with
;; NetworkManager, and more.
(services (append (list (service gnome-desktop-service-type)
- (service xfce-desktop-service-type)
(set-xorg-configuration
(xorg-configuration
(keyboard-layout keyboard-layout))))
next prev parent reply other threads:[~2020-11-04 22:16 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-25 14:12 bug#36376: Application menu of desktop environment not automatically updated Ludovic Courtès
2020-11-03 22:46 ` Ludovic Courtès
2020-11-03 23:28 ` Leo Prikler
2020-11-04 21:41 ` bug#35594: " Maxim Cournoyer
2020-11-04 22:15 ` Ludovic Courtès [this message]
2020-11-05 6:38 ` Maxim Cournoyer
2020-11-06 16:02 ` Ludovic Courtès
2020-11-06 18:56 ` Maxim Cournoyer
2020-11-10 15:23 ` Ludovic Courtès
2020-11-10 17:48 ` bug#35594: " zimoun
2020-11-10 21:23 ` Ludovic Courtès
2020-11-12 15:56 ` bug#35594: " Ludovic Courtès
2020-11-13 20:38 ` bug#36376: " Ludovic Courtès
2020-11-17 4:57 ` Maxim Cournoyer
2020-11-17 9:08 ` Ludovic Courtès
2020-11-18 4:34 ` Maxim Cournoyer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=878sbg7oqw.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=36376@debbugs.gnu.org \
--cc=leo.prikler@student.tugraz.at \
--cc=maxim.cournoyer@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.