diff mbox series

[bug#65879,gnome-team,1/1] gnu: gnome-control-center: Update to 44.3.

Message ID 55562cf4a5059ec46fce4f1482ebab6dcd4ed4d9.1694467877.git.vivien@planete-kraus.eu
State New
Headers show
Series Update gnome-control-center | expand

Commit Message

Vivien Kraus Sept. 11, 2023, 9:26 p.m. UTC
* gnu/packages/gnome.scm (gnome-control-center): Update to 44.3.
[phase patch-paths]: Upstream already uses
/run/setuid-programs/passwd. Querying the GNOME version is done through dbus
now. Disable the network panel test, because it wants to connect to the system
session.
[phase skip-gtk-update-icon-cache]: The icon cache update should be disabled
differently.
[native-inputs]: Add setxkbmap.
---
 gnu/packages/gnome.scm | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

Comments

Liliana Marie Prikler Sept. 12, 2023, 4:15 a.m. UTC | #1
Am Montag, dem 11.09.2023 um 23:26 +0200 schrieb Vivien Kraus:
> * gnu/packages/gnome.scm (gnome-control-center): Update to 44.3.
> [phase patch-paths]: Upstream already uses
> /run/setuid-programs/passwd. Querying the GNOME version is done
> through dbus now. Disable the network panel test, because it wants to
> connect to the system session.
> [phase skip-gtk-update-icon-cache]: The icon cache update should be
> disabled differently.
That'd be [#:phases]<patch-paths>: Adjust accordingly.
<skip-gtk-update-icon-cache>: Likewise.
> [native-inputs]: Add setxkbmap.
> ---
Content-wise LGTM, will rewrite the commit as noted above and wait for
CI.

Cheers
Vivien Kraus Sept. 12, 2023, 10:03 a.m. UTC | #2
Hello!

Le mardi 12 septembre 2023 à 06:15 +0200, Liliana Marie Prikler a
écrit :
> Content-wise LGTM, will rewrite the commit as noted above and wait
> for
> CI.

Did you manage to run it?

If I do:

./pre-inst-env guix shell gnome-control-center -- gnome-control-center

then it immediately crashes, with output:

10:54:39.2952 cc-firmware-security-panel[31903]: WARNING: system bus
not available: Could not connect: No such file or directory
**
cc-object-storage:ERROR:../gnome-control-center-44.3/shell/cc-object-
storage.c:167:cc_object_storage_add_object: assertion failed:
(G_IS_OBJECT (object))
Bail out! cc-object-storage:ERROR:../gnome-control-center-
44.3/shell/cc-object-storage.c:167:cc_object_storage_add_object:
assertion failed: (G_IS_OBJECT (object))
Abandon

Interestingly, it does not crash on a foreign distro (debian stable).

I found this, maybe relevant:
https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/342

Vivien
Liliana Marie Prikler Sept. 12, 2023, 6:25 p.m. UTC | #3
Am Dienstag, dem 12.09.2023 um 12:03 +0200 schrieb Vivien Kraus:
> Hello!
> 
> Le mardi 12 septembre 2023 à 06:15 +0200, Liliana Marie Prikler a
> écrit :
> > Content-wise LGTM, will rewrite the commit as noted above and wait
> > for
> > CI.
> 
> Did you manage to run it?
> 
> If I do:
> 
> ./pre-inst-env guix shell gnome-control-center -- gnome-control-
> center
> 
> then it immediately crashes, with output:
> 
> 10:54:39.2952 cc-firmware-security-panel[31903]: WARNING: system bus
> not available: Could not connect: No such file or directory
> **
> cc-object-storage:ERROR:../gnome-control-center-44.3/shell/cc-object-
> storage.c:167:cc_object_storage_add_object: assertion failed:
> (G_IS_OBJECT (object))
> Bail out! cc-object-storage:ERROR:../gnome-control-center-
> 44.3/shell/cc-object-storage.c:167:cc_object_storage_add_object:
> assertion failed: (G_IS_OBJECT (object))
> Abandon
> 
> Interestingly, it does not crash on a foreign distro (debian stable).
> 
> I found this, maybe relevant:
> https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/342
Indeed, I get the same issue.  Perhaps you can comment out the
firmware-security panel in panels/meson.build and see what happens?  I
don't think it's useful to us anyway.

Cheers
Liliana Marie Prikler Sept. 12, 2023, 8:41 p.m. UTC | #4
Am Dienstag, dem 12.09.2023 um 21:00 +0200 schrieb Vivien Kraus:
> Hi!
> 
> Le mardi 12 septembre 2023 à 20:25 +0200, Liliana Marie Prikler a
> écrit :
> > Perhaps you can comment out the firmware-security panel in
> > panels/meson.build and see what happens?  I don't think it's useful
> > to us anyway.
> 
> It’s not that simple. However, debian does a similar job with a
> patch, so I applied it. And it does not fix the issue, unfortunately.
GDB spits out the following:

Thread 1 ".gnome-control-" received signal SIGABRT, Aborted.
0x00007ffff60a3fec in __pthread_kill_implementation () from
/gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
(gdb) up
#1  0x00007ffff605a202 in raise () from
/gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
(gdb) 
#2  0x00007ffff604545b in abort () from
/gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
(gdb) 
#3  0x00007ffff7c3fe62 in ?? () from
/gnu/store/ckysqidiiw88bw1kdyndjcrsakrysxkn-glib-2.76.1/lib/libglib-
2.0.so.0
(gdb) 
#4  0x00007ffff7ca413b in g_assertion_message_expr () from
/gnu/store/ckysqidiiw88bw1kdyndjcrsakrysxkn-glib-2.76.1/lib/libglib-
2.0.so.0
(gdb) 
#5  0x000000000045daaf in cc_object_storage_add_object ()
(gdb) 
#6  0x00000000005212d7 in cc_wifi_panel_static_init_func ()
(gdb) 

Have you tried updating network-manager by chance? :P
Maybe with that you also don't have to drop the test that tests it.
Though just bumping it to 1.44.0 didn't resolve things locally, perhaps
there's another dependency in the chain that I did not consider yet.

Cheers
Vivien Kraus Sept. 12, 2023, 10:31 p.m. UTC | #5
Le mardi 12 septembre 2023 à 22:41 +0200, Liliana Marie Prikler a
écrit :
> Though just bumping it to 1.44.0 didn't resolve things locally,
> perhaps
> there's another dependency in the chain that I did not consider yet.

I can configure the package by disabling the "snap" feature ("-
Dsnap=false") but it does not make a difference either.
Vivien Kraus Sept. 15, 2023, 10:13 p.m. UTC | #6
Le mardi 12 septembre 2023 à 22:41 +0200, Liliana Marie Prikler a
écrit :
> GDB spits out the following:
> 
> Thread 1 ".gnome-control-" received signal SIGABRT, Aborted.
> 0x00007ffff60a3fec in __pthread_kill_implementation () from
> /gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
> (gdb) up
> #1  0x00007ffff605a202 in raise () from
> /gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
> (gdb) 
> #2  0x00007ffff604545b in abort () from
> /gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
> (gdb) 
> #3  0x00007ffff7c3fe62 in ?? () from
> /gnu/store/ckysqidiiw88bw1kdyndjcrsakrysxkn-glib-2.76.1/lib/libglib-
> 2.0.so.0
> (gdb) 
> #4  0x00007ffff7ca413b in g_assertion_message_expr () from
> /gnu/store/ckysqidiiw88bw1kdyndjcrsakrysxkn-glib-2.76.1/lib/libglib-
> 2.0.so.0
> (gdb) 
> #5  0x000000000045daaf in cc_object_storage_add_object ()
> (gdb) 
> #6  0x00000000005212d7 in cc_wifi_panel_static_init_func ()
> (gdb) 

Since it runs on a foreign distro, I would like to make sure that it’s
not just a compatibility problem between the system network-manager
service and the client library used by gnome-control-center. However, I
cannot run guix system vm, because qemu is broken at the moment, and I
did not find a way to run a guix system image.

Vivien
Liliana Marie Prikler Sept. 16, 2023, 4:02 a.m. UTC | #7
Am Samstag, dem 16.09.2023 um 00:13 +0200 schrieb Vivien Kraus:
> Le mardi 12 septembre 2023 à 22:41 +0200, Liliana Marie Prikler a
> écrit :
> > GDB spits out the following:
> > 
> > Thread 1 ".gnome-control-" received signal SIGABRT, Aborted.
> > 0x00007ffff60a3fec in __pthread_kill_implementation () from
> > /gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-
> > 2.35/lib/libc.so.6
> > (gdb) up
> > #1  0x00007ffff605a202 in raise () from
> > /gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-
> > 2.35/lib/libc.so.6
> > (gdb) 
> > #2  0x00007ffff604545b in abort () from
> > /gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-
> > 2.35/lib/libc.so.6
> > (gdb) 
> > #3  0x00007ffff7c3fe62 in ?? () from
> > /gnu/store/ckysqidiiw88bw1kdyndjcrsakrysxkn-glib-
> > 2.76.1/lib/libglib-
> > 2.0.so.0
> > (gdb) 
> > #4  0x00007ffff7ca413b in g_assertion_message_expr () from
> > /gnu/store/ckysqidiiw88bw1kdyndjcrsakrysxkn-glib-
> > 2.76.1/lib/libglib-
> > 2.0.so.0
> > (gdb) 
> > #5  0x000000000045daaf in cc_object_storage_add_object ()
> > (gdb) 
> > #6  0x00000000005212d7 in cc_wifi_panel_static_init_func ()
> > (gdb) 
> 
> Since it runs on a foreign distro, I would like to make sure that
> it’s not just a compatibility problem between the system network-
> manager service and the client library used by gnome-control-center.
> However, I cannot run guix system vm, because qemu is broken at the
> moment, and I did not find a way to run a guix system image.
You can probably fake that using dbus-run-session, but again note the
disabled test; I'm not sure you will get a good result.  As for the
qemu thing, maybe that takes priority then? :)

Cheers
diff mbox series

Patch

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index ad118090eb..81ce9207f4 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -9003,7 +9003,7 @@  (define-public gnome-bluetooth
 (define-public gnome-control-center
   (package
     (name "gnome-control-center")
-    (version "42.4")
+    (version "44.3")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -9011,7 +9011,7 @@  (define-public gnome-control-center
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1ln5rch6zbfh3vl2nnnmw39bylgg38rin6xp7ra0ra4ay3wv3gvs"))))
+                "0yhcm0c0ghkfqswqlkwcln3jpaz6jzvqaph2c3lgmv635w2nash6"))))
     (build-system meson-build-system)
     (arguments
      (list
@@ -9036,18 +9036,17 @@  (define-public gnome-control-center
                 (("\"nm-connection-editor")
                  (string-append "\"" (search-input-file
                                       inputs "bin/nm-connection-editor"))))
-              (substitute* "panels/user-accounts/run-passwd.c"
-                (("/usr/bin/passwd")
-                 "/run/setuid-programs/passwd"))
-              (substitute* "panels/info-overview/cc-info-overview-panel.c"
-                (("DATADIR \"/gnome/gnome-version.xml\"")
-                 (format #f "~s" (search-input-file
-                                  inputs "share/gnome/gnome-version.xml"))))))
+
+              ;; This test wants to connect to the system dbus session
+              (substitute* "tests/meson.build"
+                (("subdir\\('network'\\)")
+                 "# subdir('network')"))))
           (add-after 'unpack 'skip-gtk-update-icon-cache
             ;; Don't create 'icon-theme.cache'.
             (lambda _
-              (substitute* "build-aux/meson/meson_post_install.py"
-                (("gtk-update-icon-cache") (which "true"))))))))
+              (substitute* "meson.build"
+                (("gtk_update_icon_cache: true")
+                 "gtk_update_icon_cache: false")))))))
     (native-inputs
      (list docbook-xsl
            gettext-minimal
@@ -9056,7 +9055,8 @@  (define-public gnome-control-center
            pkg-config
            python
            python-dbusmock
-           xorg-server-for-tests))
+           xorg-server-for-tests
+           setxkbmap))
     (inputs
      (list accountsservice
            colord-gtk