gnu: gnome-control-center: Update to 41.2.

* gnu/packages/patches/gnome-control-center-libexecdir.patch: Add patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/gnome.scm (gnome-control-center): Update to 41.2.
[source]: Apply patch.
[phases]{no-polkit-magic}: New phase.
[native-inputs]: Use new style.  Add python.
[propagated-inputs]: Use new style.  Replace gdk-pixbuf by librsvg.
This commit is contained in:
Maxim Cournoyer 2022-01-18 12:33:22 -05:00
parent 2784ba2fe8
commit 6edcf688c0
No known key found for this signature in database
GPG Key ID: 1260E46482E63562
3 changed files with 115 additions and 48 deletions

@ -1185,6 +1185,7 @@ dist_patch_DATA = \
%D%/packages/patches/gmp-faulty-test.patch \
%D%/packages/patches/gnash-fix-giflib-version.patch \
%D%/packages/patches/gnome-boxes-add-guix-logo.patch \
%D%/packages/patches/gnome-control-center-libexecdir.patch \
%D%/packages/patches/gnome-online-miners-tracker-3.patch \
%D%/packages/patches/gnome-screenshot-meson-0.60.patch \
%D%/packages/patches/gnome-settings-daemon-gc.patch \

@ -39,7 +39,7 @@
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2019 Jonathan Frederickson <jonathan@terracrypt.net>
;;; Copyright © 2019, 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019, 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2019, 2020 Raghav Gururajan <raghavgururajan@disroot.org>
@ -8528,7 +8528,7 @@ devices using the GNOME desktop.")
(define-public gnome-control-center
(package
(name "gnome-control-center")
(version "40.1")
(version "41.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -8536,7 +8536,9 @@ devices using the GNOME desktop.")
name "-" version ".tar.xz"))
(sha256
(base32
"0rr4d5m2a72vrb31jgyx49dp0s2pwgyxsrk4hyw5ym66wq63c3v1"))))
"0j72ixhli621psbrma86qxy0spv6gpjx6k9hg2jih97c6dmzqwc2"))
(patches (search-patches
"gnome-control-center-libexecdir.patch"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@ -8581,53 +8583,59 @@ devices using the GNOME desktop.")
;; Don't create 'icon-theme.cache'.
(lambda _
(substitute* "build-aux/meson/meson_post_install.py"
(("gtk-update-icon-cache") (which "true"))))))))
(("gtk-update-icon-cache") (which "true")))))
(add-before 'install 'no-polkit-magic
;; Meson magically invokes pkexec, which fails (not setuid).
(lambda _
(setenv "PKEXEC_UID" "something"))))))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
("intltool" ,intltool)
("pkg-config" ,pkg-config)
("xsltproc" ,libxslt)
;; For tests
("hicolor-icon-theme" ,hicolor-icon-theme)
("python-dbusmock" ,python-dbusmock)
("xorg-server" ,xorg-server-for-tests)))
(list `(,glib "bin") ;for glib-mkenums, etc.
intltool
pkg-config
python
libxslt
;; For tests
hicolor-icon-theme
python-dbusmock
xorg-server-for-tests))
(inputs
`(("accountsservice" ,accountsservice)
("clutter-gtk" ,clutter-gtk)
("colord-gtk" ,colord-gtk)
("cups" ,cups)
("dconf" ,dconf)
("docbook-xsl" ,docbook-xsl)
("gdk-pixbuf" ,gdk-pixbuf) ; for loading SVG files
("gnome-bluetooth" ,gnome-bluetooth)
("gnome-desktop" ,gnome-desktop)
("gnome-online-accounts" ,gnome-online-accounts)
("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
("gnome-session" ,gnome-session)
("gnome-settings-daemon" ,gnome-settings-daemon)
("grilo" ,grilo)
("gsound" ,gsound)
("ibus" ,ibus)
("libcanberra" ,libcanberra)
("libgnomekbd" ,libgnomekbd)
("libgudev" ,libgudev)
("libgtop" ,libgtop)
("libnma" ,libnma)
("libpwquality" ,libpwquality)
("libsecret" ,libsecret)
("libsoup" ,libsoup-minimal-2)
("libxml2" ,libxml2)
("libwacom" ,libwacom)
("mesa" ,mesa)
("mit-krb5" ,mit-krb5)
("modem-manager" ,modem-manager)
("network-manager-applet" ,network-manager-applet)
("polkit" ,polkit)
("pulseaudio" ,pulseaudio)
("smbclient" ,samba)
("tzdata" ,tzdata)
("udisks" ,udisks)
("upower" ,upower)))
(list accountsservice
clutter-gtk
colord-gtk
cups
dconf
docbook-xsl
gcr
gnome-bluetooth
gnome-desktop
gnome-online-accounts
`(,gnome-online-accounts "lib")
gnome-session
gnome-settings-daemon
grilo
gsound
ibus
libcanberra
libgnomekbd
libgudev
libgtop
libnma
libpwquality
librsvg ;for loading SVG files
libsecret
libsoup-minimal-2
libxml2
libwacom
mesa
mit-krb5
modem-manager
network-manager-applet
polkit
pulseaudio
samba
tzdata
udisks
upower))
(synopsis "Utilities to configure the GNOME desktop")
(home-page "https://www.gnome.org/")
(description

@ -0,0 +1,58 @@
This reverts commit 2007a5b2, which broke installation of the package.
See: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1579.
diff --git a/meson.build b/meson.build
index 734810d01..b4a45c60d 100644
--- a/meson.build
+++ b/meson.build
@@ -259,6 +259,13 @@ config_h.set('HAVE_WACOM', host_is_linux_not_s390,
config_h.set('BUILD_THUNDERBOLT', host_is_linux_not_s390,
description: 'Define to 1 to build the Thunderbolt panel')
+# Check for info panel
+gnome_session_libexecdir = get_option('gnome_session_libexecdir')
+if gnome_session_libexecdir == ''
+ gnome_session_libexecdir = control_center_libexecdir
+endif
+
+
gnome = import('gnome')
i18n = import('i18n')
pkg = import('pkgconfig')
diff --git a/meson_options.txt b/meson_options.txt
index 1b7b54810..910226c56 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -1,5 +1,6 @@
option('cheese', type: 'boolean', value: true, description: 'build with cheese webcam support')
option('documentation', type: 'boolean', value: false, description: 'build documentation')
+option('gnome_session_libexecdir', type: 'string', value: '', description: 'Directory for gnome-session\'s libexecdir')
option('ibus', type: 'boolean', value: true, description: 'build with IBus support')
option('privileged_group', type: 'string', value: 'wheel', description: 'name of group that has elevated permissions')
option('snap', type: 'boolean', value: false, description: 'build with Snap support')
diff --git a/panels/info-overview/cc-info-overview-panel.c b/panels/info-overview/cc-info-overview-panel.c
index 6e832eb35..b34030c8c 100644
--- a/panels/info-overview/cc-info-overview-panel.c
+++ b/panels/info-overview/cc-info-overview-panel.c
@@ -236,7 +236,7 @@ static char *
get_renderer_from_helper (const char **env)
{
int status;
- char *argv[] = { LIBEXECDIR "/gnome-control-center-print-renderer", NULL };
+ char *argv[] = { GNOME_SESSION_DIR "/gnome-session-check-accelerated", NULL };
g_auto(GStrv) envp = NULL;
g_autofree char *renderer = NULL;
g_autoptr(GError) error = NULL;
diff --git a/panels/info-overview/meson.build b/panels/info-overview/meson.build
index 2fe10b32c..506b7274e 100644
--- a/panels/info-overview/meson.build
+++ b/panels/info-overview/meson.build
@@ -19,7 +19,7 @@ i18n.merge_file(
cflags += [
'-DDATADIR="@0@"'.format(control_center_datadir),
- '-DLIBEXECDIR="@0@"'.format(control_center_libexecdir),
+ '-DGNOME_SESSION_DIR="@0@"'.format(gnome_session_libexecdir)
]
sources = files(