diff mbox series

[blacksail,meta-gnome,PATCHv2,2/3] Revert "gnome-shell: upgrade 50.4 -> 51.0"

Message ID 20261010075405.1740272-2-f_l_k@t-online.de
State New
Headers show
Series [blacksail,meta-gnome,PATCHv2,1/3] Revert "gnome-shell-extensions: upgrade 50.3 -> 51.0" | expand

Commit Message

Markus Volk Oct. 10, 2026, 7:54 a.m. UTC
This reverts commit d22efe5c4c2252226b8644ee805863d3c3b5e446.

gnome-shell 51.0 needs mutter >= 51.0, which goes back to 50.4 on
blacksail.

AI-Generated: Uses Claude Code (Claude Opus 5.5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 ...ver-Fix-build-failure-with-libical-4.patch | 44 +++++++++++++++++++
 ...nome-shell_51.0.bb => gnome-shell_50.4.bb} |  7 ++-
 2 files changed, 50 insertions(+), 1 deletion(-)
 create mode 100644 meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch
 rename meta-gnome/recipes-gnome/gnome-shell/{gnome-shell_51.0.bb => gnome-shell_50.4.bb} (86%)
diff mbox series

Patch

diff --git a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch
new file mode 100644
index 0000000000..d64cf38ccc
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0002-calendar-server-Fix-build-failure-with-libical-4.patch
@@ -0,0 +1,44 @@ 
+From 91eaa9221b45b506d7a5d84a9ec8c204b5c8c34f Mon Sep 17 00:00:00 2001
+From: Xi Ruoyao <xry111@xry111.site>
+Date: Fri, 8 May 2026 13:13:37 +0800
+Subject: [PATCH] calendar-server: Fix build failure with libical 4
+
+Fix the following build error with libical 4 due to function signature changes:
+
+    error: passing argument 4 of 'get_time_from_property' from incompatible pointer type [-Wincompatible-pointer-types]
+    note: expected 'ICalTime * (*)(ICalProperty *)' but argument is of type 'ICalTime * (*)(const ICalProperty *)'
+
+Link: https://github.com/libical/libical/blob/4.0/docs/MigrationGuide_to_4.md
+Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/4215>
+
+Only the gnome-shell-calendar-server.c hunk of the upstream commit is taken;
+src/calendar-server/reminder-watcher.c does not exist in the 50.x series.
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gnome-shell/-/commit/b34766f3992c7616b7816a47249fb463c053e5fa]
+---
+ src/calendar-server/gnome-shell-calendar-server.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/src/calendar-server/gnome-shell-calendar-server.c b/src/calendar-server/gnome-shell-calendar-server.c
+index 0b2f88eb7..622c16181 100644
+--- a/src/calendar-server/gnome-shell-calendar-server.c
++++ b/src/calendar-server/gnome-shell-calendar-server.c
+@@ -112,11 +112,17 @@ typedef struct
+   time_t  end_time;
+ } CalendarAppointment;
+ 
++#if ICAL_CHECK_VERSION(4, 0, 0)
++typedef ICalTime * (* GetICalPropFunc) (const ICalProperty *prop);
++#else
++typedef ICalTime * (* GetICalPropFunc) (ICalProperty *prop);
++#endif
++
+ static gboolean
+ get_time_from_property (ECalClient            *cal,
+                         ICalComponent         *icomp,
+                         ICalPropertyKind       prop_kind,
+-                        ICalTime * (* get_prop_func) (ICalProperty *prop),
++                        GetICalPropFunc        get_prop_func,
+                         ICalTimezone          *default_zone,
+                         ICalTime              **out_itt,
+                         ICalTimezone          **out_timezone)
diff --git a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_51.0.bb b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_50.4.bb
similarity index 86%
rename from meta-gnome/recipes-gnome/gnome-shell/gnome-shell_51.0.bb
rename to meta-gnome/recipes-gnome/gnome-shell/gnome-shell_50.4.bb
index 549a3d5971..f39d72532e 100644
--- a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_51.0.bb
+++ b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_50.4.bb
@@ -31,7 +31,8 @@  GIR_MESON_OPTION = ""
 REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
 
 SRC_URI += "file://0001-shell-app-usage.c-only-include-x11-headers-if-HAVE_X.patch"
-SRC_URI[archive.sha256sum] = "2179bab13af353427065096af8bf3d30da7b86e0c516e5ba86a14998af9575f6"
+SRC_URI += "file://0002-calendar-server-Fix-build-failure-with-libical-4.patch"
+SRC_URI[archive.sha256sum] = "c531939539db316a41aef23670370abd1330d3254f84bcb0f9f4dae5d6e362cf"
 
 PACKAGECONFIG ??= " \
     camera-monitor \
@@ -43,6 +44,7 @@  PACKAGECONFIG ??= " \
 "
 PACKAGECONFIG[bluetooth] = ",,gnome-bluetooth"
 PACKAGECONFIG[camera-monitor] = "-Dcamera_monitor=true, -Dcamera_monitor=false, pipewire"
+PACKAGECONFIG[extensions-app] = "-Dextensions_app=true, -Dextensions_app=false"
 PACKAGECONFIG[extensions-tool] = "-Dextensions_tool=true, -Dextensions_tool=false, gnome-autoar json-glib libsoup-3.0"
 PACKAGECONFIG[nm] = "-Dnetworkmanager=true, -Dnetworkmanager=false, networkmanager libsecret, networkmanager"
 PACKAGECONFIG[portal-helper] = "-Dportal_helper=true, -Dportal_helper=false"
@@ -96,6 +98,9 @@  RDEPENDS:${PN} += " \
 	librsvg-gtk \
 "
 
+# The extensions app is a GJS application and pulls libadwaita at runtime only.
+RDEPENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'extensions-app', 'libadwaita', '', d)}"
+
 PACKAGES =+ "${PN}-tools ${PN}-gsettings"
 FILES:${PN}-tools = "${bindir}/*-tool"
 RDEPENDS:${PN}-tools = "python3-core"