From fe7623f3bbf20ade64bfaff1ac4e4225e8dc5f35 Mon Sep 17 00:00:00 2001 From: Gyorgy Sarvari Date: Sun, 8 Feb 2026 15:51:34 +0100 Subject: mutter: upgrade 46.1 -> 46.9 Contains many bugfixes: https://gitlab.gnome.org/GNOME/mutter/-/blob/46.9/NEWS 46.9 ==== * Support presentation-time version 2 * Honor wl_surface.offset on cursor surfaces * Fix crash 46.8 ==== * Use BT709 coefficients and limited range for YUV conversion by defaults * Also request high priority secondary EGL context * Fix applying initial _NET_WM_WINDOW_OPACITY on Xwayland * Misc. bug fixes and cleanups 46.7 ==== * Default to high thread instead of realtime priority for KMS thread * Fix updating cursor immediately when starting window drag * Prefer GPUs with built-in panels connected as primary GPU * Fix cursor glitches when using virtual monitors * Ensure frame events are sent for cursor surfaces * Allow BGRX8888 format on big endian * Fix touchscreen drag-and-drop on wayland * Fixed crashes * Misc. bug fixes and cleanups 46.6 ==== * Fix grabbing tablet devices * Fix explicit sync with virtual monitors w/o pipewire streams * Improve detecting preferred primary devices * Fixed crashes * Misc. bug fixes and cleanups 46.5: * Fix drag and drop between X11 and wayland clients * Fix drag and drop from grabbing popups * Fix EGLDevice support * Fix frozen cursor on some hybrid machines * Fix touch window dragging with pointer lock enabled * Fix propagating tablet device removals to clients * Fix tablet input in maximized windows * Reduce damage on window movement * Fix frozen cursor after suspend * Fix using modifiers on multi-GPU setups * Fixed crashes * Misc. bug fixes and cleanups 46.4: * Fix nested popovers on wayland * Misc. bug fixes and cleanups 46.3.1: * Fix visibility of Xwayland windows * Misc. bug fixes 46.3: * Fix performance issues with second virtual monitor * Fix missing unmap animation of some windows * Fix placement/resizing regression * Fix possible out of sync primary selections and clipboard * Fix ibus support in popups * Fix hardware accelerated rendering when headless * Add back support for legacy X11 cursor themes * Fix preedit offsets * Use character offsets to specify surrounding text * Don't force titlebar on screen on all interactive resizes * Fixed crashes * Misc. bug fixes and cleanups 46.2: * Fix hardware cursor with non-atomic KMS drivers * Fix night light state getting stuck on monitor changes * Fix sending preferred buffer transform * Fix key press events with immediate release being ignored * Fix unsetting clipboard on screen lock * Fix wrong input region of undecorated X11 windows * Fix windows potentially shrinking unexpectedly on configure * Fix popup menus sometimes closing immediately * Fixed crashes * Misc. bug fixes and cleanups Signed-off-by: Gyorgy Sarvari Signed-off-by: Anuj Mittal --- meta-gnome/recipes-gnome/mutter/mutter_46.1.bb | 109 ------------------------- meta-gnome/recipes-gnome/mutter/mutter_46.9.bb | 109 +++++++++++++++++++++++++ 2 files changed, 109 insertions(+), 109 deletions(-) delete mode 100644 meta-gnome/recipes-gnome/mutter/mutter_46.1.bb create mode 100644 meta-gnome/recipes-gnome/mutter/mutter_46.9.bb (limited to 'meta-gnome') diff --git a/meta-gnome/recipes-gnome/mutter/mutter_46.1.bb b/meta-gnome/recipes-gnome/mutter/mutter_46.1.bb deleted file mode 100644 index b60ffefb0a..0000000000 --- a/meta-gnome/recipes-gnome/mutter/mutter_46.1.bb +++ /dev/null @@ -1,109 +0,0 @@ -SUMMARY = "Window and compositing manager based on Clutter" -LICENSE = "GPL-2.0-only" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" - -DEPENDS = " \ - xserver-xorg-cvt-native \ - wayland-native \ - virtual/libx11 \ - colord \ - graphene \ - gtk4 \ - gdk-pixbuf \ - cairo \ - pango \ - gsettings-desktop-schemas \ - json-glib \ - libei \ - libxtst \ - libxkbfile \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xinerama', '', d)} \ - xwayland \ -" - - -inherit gnomebase gsettings gobject-introspection gettext features_check - -SRC_URI[archive.sha256sum] = "63b2660dd0fa193fa662c80ee12eb8b16f2b8c3bc3896366200c79943824d51d" - -# x11 is still manadatory - see meson.build -REQUIRED_DISTRO_FEATURES = "wayland x11 polkit" - -# systemd can be replaced by libelogind (not available atow - make systemd -# mandatory distro feature) -LOGIND ?= "systemd" -REQUIRED_DISTRO_FEATURES += "systemd" - -# profiler requires sysprof 3.34 which is not willing to build atow -PACKAGECONFIG ??= " \ - native-backend \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl glx', '', d)} \ - sm \ - startup-notification \ - gnome-desktop \ -" - -EXTRA_OEMESON += " \ - -Dtests=false \ - -Dnative_tests=false \ - -Dxwayland_path=${bindir}/Xwayland \ -" - -# combi-config - see meson_options.txt for more details -PACKAGECONFIG[native-backend] = "-Dnative_backend=true -Dudev=true, -Dnative_backend=false -Dudev=false, libdrm virtual/libgbm libinput ${LOGIND} virtual/egl virtual/libgles2 udev" -PACKAGECONFIG[opengl] = "-Dopengl=true, -Dopengl=true, virtual/libgl" -PACKAGECONFIG[glx] = "-Dglx=true, -Dglx=false" -PACKAGECONFIG[libdisplay-info] = "-Dlibdisplay_info=true, -Dlibdisplay_info=false, libdisplay-info" -PACKAGECONFIG[libwacom] = "-Dlibwacom=true, -Dlibwacom=false, libwacom" -# Remove depending on pipewire-0.2 when mutter is upgraded to 3.36+ -PACKAGECONFIG[remote-desktop] = "-Dremote_desktop=true, -Dremote_desktop=false, pipewire" -PACKAGECONFIG[gnome-desktop] = "-Dlibgnome_desktop=true, -Dlibgnome_desktop=false, gnome-desktop gnome-settings-daemon" -PACKAGECONFIG[sm] = "-Dsm=true, -Dsm=false, libsm" -PACKAGECONFIG[sound-player] = "-Dsound_player=true, -Dsound_player=false, libcanberra" -PACKAGECONFIG[profiler] = "-Dprofiler=true,-Dprofiler=false,sysprof" -PACKAGECONFIG[startup-notification] = "-Dstartup_notification=true, -Dstartup_notification=false, startup-notification, startup-notification" - -MUTTER_API_NAME = "mutter-14" - -do_install:prepend() { - sed -i -e 's|${B}/||g' ${B}/cogl/cogl/cogl-enum-types.c - sed -i -e 's|${B}/||g' ${B}/clutter/clutter/clutter-enum-types.c - sed -i -e 's|${B}/||g' ${B}/src/meta-private-enum-types.c - sed -i -e 's|${B}/||g' ${B}/src/meta/meta-enum-types.c -} - -do_install:append() { - # Add gir links in standard paths. That makes dependents life much easier - # to find them - install -d ${D}${datadir}/gir-1.0 - for gir_full in `find ${D}${libdir}/${MUTTER_API_NAME} -name '*.gir'`; do - gir=`basename "$gir_full"` - ln -sr "${D}${libdir}/${MUTTER_API_NAME}/$gir" "${D}${datadir}/gir-1.0/$gir" - done -} - -GSETTINGS_PACKAGE = "${PN}-gsettings" - -PACKAGES =+ "${PN}-tests ${PN}-gsettings" - -FILES:${PN} += " \ - ${datadir}/gnome-control-center \ - ${datadir}/gir-1.0 \ - ${libdir}/${MUTTER_API_NAME}/lib*${SOLIBS} \ - ${libdir}/${MUTTER_API_NAME}/*.typelib \ - ${libdir}/${MUTTER_API_NAME}/plugins \ -" - -FILES:${PN}-tests += " \ - ${datadir}/installed-tests \ - ${datadir}/${MUTTER_API_NAME}/tests \ - ${libexecdir}/installed-tests/${MUTTER_API_NAME} \ -" - -FILES:${PN}-dev += " \ - ${libdir}/${MUTTER_API_NAME}/*.gir \ - ${libdir}/${MUTTER_API_NAME}/lib*.so \ -" - -RDEPENDS:${PN} += "${PN}-gsettings gsettings-desktop-schemas" - diff --git a/meta-gnome/recipes-gnome/mutter/mutter_46.9.bb b/meta-gnome/recipes-gnome/mutter/mutter_46.9.bb new file mode 100644 index 0000000000..0cf5d4146f --- /dev/null +++ b/meta-gnome/recipes-gnome/mutter/mutter_46.9.bb @@ -0,0 +1,109 @@ +SUMMARY = "Window and compositing manager based on Clutter" +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" + +DEPENDS = " \ + xserver-xorg-cvt-native \ + wayland-native \ + virtual/libx11 \ + colord \ + graphene \ + gtk4 \ + gdk-pixbuf \ + cairo \ + pango \ + gsettings-desktop-schemas \ + json-glib \ + libei \ + libxtst \ + libxkbfile \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xinerama', '', d)} \ + xwayland \ +" + + +inherit gnomebase gsettings gobject-introspection gettext features_check + +SRC_URI[archive.sha256sum] = "b5071ff62fc060d3eb39c95fd54ff1accd4600756d7205f747a24d71e0ea6429" + +# x11 is still manadatory - see meson.build +REQUIRED_DISTRO_FEATURES = "wayland x11 polkit" + +# systemd can be replaced by libelogind (not available atow - make systemd +# mandatory distro feature) +LOGIND ?= "systemd" +REQUIRED_DISTRO_FEATURES += "systemd" + +# profiler requires sysprof 3.34 which is not willing to build atow +PACKAGECONFIG ??= " \ + native-backend \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl glx', '', d)} \ + sm \ + startup-notification \ + gnome-desktop \ +" + +EXTRA_OEMESON += " \ + -Dtests=false \ + -Dnative_tests=false \ + -Dxwayland_path=${bindir}/Xwayland \ +" + +# combi-config - see meson_options.txt for more details +PACKAGECONFIG[native-backend] = "-Dnative_backend=true -Dudev=true, -Dnative_backend=false -Dudev=false, libdrm virtual/libgbm libinput ${LOGIND} virtual/egl virtual/libgles2 udev" +PACKAGECONFIG[opengl] = "-Dopengl=true, -Dopengl=true, virtual/libgl" +PACKAGECONFIG[glx] = "-Dglx=true, -Dglx=false" +PACKAGECONFIG[libdisplay-info] = "-Dlibdisplay_info=true, -Dlibdisplay_info=false, libdisplay-info" +PACKAGECONFIG[libwacom] = "-Dlibwacom=true, -Dlibwacom=false, libwacom" +# Remove depending on pipewire-0.2 when mutter is upgraded to 3.36+ +PACKAGECONFIG[remote-desktop] = "-Dremote_desktop=true, -Dremote_desktop=false, pipewire" +PACKAGECONFIG[gnome-desktop] = "-Dlibgnome_desktop=true, -Dlibgnome_desktop=false, gnome-desktop gnome-settings-daemon" +PACKAGECONFIG[sm] = "-Dsm=true, -Dsm=false, libsm" +PACKAGECONFIG[sound-player] = "-Dsound_player=true, -Dsound_player=false, libcanberra" +PACKAGECONFIG[profiler] = "-Dprofiler=true,-Dprofiler=false,sysprof" +PACKAGECONFIG[startup-notification] = "-Dstartup_notification=true, -Dstartup_notification=false, startup-notification, startup-notification" + +MUTTER_API_NAME = "mutter-14" + +do_install:prepend() { + sed -i -e 's|${B}/||g' ${B}/cogl/cogl/cogl-enum-types.c + sed -i -e 's|${B}/||g' ${B}/clutter/clutter/clutter-enum-types.c + sed -i -e 's|${B}/||g' ${B}/src/meta-private-enum-types.c + sed -i -e 's|${B}/||g' ${B}/src/meta/meta-enum-types.c +} + +do_install:append() { + # Add gir links in standard paths. That makes dependents life much easier + # to find them + install -d ${D}${datadir}/gir-1.0 + for gir_full in `find ${D}${libdir}/${MUTTER_API_NAME} -name '*.gir'`; do + gir=`basename "$gir_full"` + ln -sr "${D}${libdir}/${MUTTER_API_NAME}/$gir" "${D}${datadir}/gir-1.0/$gir" + done +} + +GSETTINGS_PACKAGE = "${PN}-gsettings" + +PACKAGES =+ "${PN}-tests ${PN}-gsettings" + +FILES:${PN} += " \ + ${datadir}/gnome-control-center \ + ${datadir}/gir-1.0 \ + ${libdir}/${MUTTER_API_NAME}/lib*${SOLIBS} \ + ${libdir}/${MUTTER_API_NAME}/*.typelib \ + ${libdir}/${MUTTER_API_NAME}/plugins \ +" + +FILES:${PN}-tests += " \ + ${datadir}/installed-tests \ + ${datadir}/${MUTTER_API_NAME}/tests \ + ${libexecdir}/installed-tests/${MUTTER_API_NAME} \ +" + +FILES:${PN}-dev += " \ + ${libdir}/${MUTTER_API_NAME}/*.gir \ + ${libdir}/${MUTTER_API_NAME}/lib*.so \ +" + +RDEPENDS:${PN} += "${PN}-gsettings gsettings-desktop-schemas" + -- cgit v1.2.3-54-g00ecf