@@ -1309,6 +1309,7 @@ dist_patch_DATA = \
%D%/packages/patches/gmp-faulty-test.patch \
%D%/packages/patches/gnash-fix-giflib-version.patch \
%D%/packages/patches/gnome-2048-fix-positional-argument.patch \
+ %D%/packages/patches/gnome-control-center-firmware-security.patch \
%D%/packages/patches/gnome-control-center-libexecdir.patch \
%D%/packages/patches/gnome-online-miners-tracker-3.patch \
%D%/packages/patches/gnome-settings-daemon-gc.patch \
@@ -9016,7 +9016,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 "/"
@@ -9024,7 +9024,10 @@ (define-public gnome-control-center
name "-" version ".tar.xz"))
(sha256
(base32
- "1ln5rch6zbfh3vl2nnnmw39bylgg38rin6xp7ra0ra4ay3wv3gvs"))))
+ "0yhcm0c0ghkfqswqlkwcln3jpaz6jzvqaph2c3lgmv635w2nash6"))
+ (patches
+ (search-patches
+ "gnome-control-center-firmware-security.patch"))))
(build-system meson-build-system)
(arguments
(list
@@ -9048,19 +9051,32 @@ (define-public gnome-control-center
"panels/network/connection-editor/net-connection-editor.c")
(("\"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"))))))
+ inputs "bin/nm-connection-editor"))))))
(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"))))
+ (replace 'check
+ (lambda* (#:key parallel-tests? tests? #:allow-other-keys)
+ (when tests?
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ ;; For the missing /var/lib/dbus/machine-id
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ (setenv "NO_AT_BRIDGE" "1")
+ (setenv "HOME" "/tmp")
+ (setenv "XDG_RUNTIME_DIR" (string-append (getcwd) "/runtime-dir"))
+ (mkdir (getenv "XDG_RUNTIME_DIR"))
+ (chmod (getenv "XDG_RUNTIME_DIR") #o700)
+ (setenv "MESON_TESTTHREADS"
+ (if parallel-tests?
+ (number->string (parallel-job-count))
+ "1"))
+ (invoke "dbus-run-session" "--"
+ "meson" "test" "-t" "0")))))))
(native-inputs
(list docbook-xsl
gettext-minimal
@@ -9069,7 +9085,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
new file mode 100644
@@ -0,0 +1,33 @@
+From: Jeremy Bicha <jeremy.bicha@canonical.com>
+Date: Mon, 22 Aug 2022 08:31:15 -0400
+Subject: firmware-security: Disable
+
+Not yet useful enough to justify its inclusion by default here
+
+You can get the same info by running
+fwupdmgr security
+
+If you drop this patch, add a Depends: fwupd [linux-any]
+
+https://launchpad.net/bugs/1987162
+
+https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1938
+
+[Stolen from the debian package]
+---
+ shell/cc-panel-loader.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/shell/cc-panel-loader.c b/shell/cc-panel-loader.c
+index 17f9601..1b819a5 100644
+--- a/shell/cc-panel-loader.c
++++ b/shell/cc-panel-loader.c
+@@ -113,7 +113,7 @@ static CcPanelLoaderVtable default_panels[] =
+ PANEL_TYPE("info-overview", cc_info_overview_panel_get_type, NULL),
+ PANEL_TYPE("keyboard", cc_keyboard_panel_get_type, NULL),
+ PANEL_TYPE("location", cc_location_panel_get_type, NULL),
+- PANEL_TYPE("firmware-security",cc_firmware_security_panel_get_type, cc_firmware_security_panel_static_init_func),
++ // PANEL_TYPE("firmware-security",cc_firmware_security_panel_get_type, cc_firmware_security_panel_static_init_func),
+ PANEL_TYPE("microphone", cc_microphone_panel_get_type, NULL),
+ PANEL_TYPE("mouse", cc_mouse_panel_get_type, NULL),
+ PANEL_TYPE("multitasking", cc_multitasking_panel_get_type, NULL),