andreas pushed a commit to branch qt-team
in repository guix.

commit f738b3a1f11da2cbb97a34f815096d002c9c3402
Author: 宋文武 <iyzs...@member.fsf.org>
AuthorDate: Tue Feb 4 14:55:30 2025 +0800

    gnu: qtwayland: Update to 6.8.2.
    
    * gnu/packages/patches/qtwayland-6-update-wayland-xml.patch: Remove patch.
    * gnu/local.mk (dist_patch_DATA): Remove it.
    * gnu/packages/qt.scm (qtwayland): Update to 6.8.2.
    [arguments]: Add update-wayland.xml phase.
    
    Change-Id: I63bc962509acfdf40526dabe39655dadc8eac73a
---
 gnu/local.mk                                       |   1 -
 .../patches/qtwayland-6-update-wayland-xml.patch   | 493 ---------------------
 gnu/packages/qt.scm                                |  12 +-
 3 files changed, 8 insertions(+), 498 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 494c3ad648..835c183d4f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2163,7 +2163,6 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/qmk-firmware-fix-hacker-dvorak.patch    \
   %D%/packages/patches/qtwayland-dont-recreate-callbacks.patch \
   %D%/packages/patches/qtwayland-cleanup-callbacks.patch       \
-  %D%/packages/patches/qtwayland-6-update-wayland-xml.patch    \
   %D%/packages/patches/qtwayland-update-wayland-xml.patch      \
   %D%/packages/patches/ragel-char-signedness.patch             \
   %D%/packages/patches/randomjungle-disable-static-build.patch \
diff --git a/gnu/packages/patches/qtwayland-6-update-wayland-xml.patch 
b/gnu/packages/patches/qtwayland-6-update-wayland-xml.patch
deleted file mode 100644
index 4449bd366f..0000000000
--- a/gnu/packages/patches/qtwayland-6-update-wayland-xml.patch
+++ /dev/null
@@ -1,493 +0,0 @@
-from 
https://code.qt.io/cgit/qt/qtwayland.git/commit/?id=c2f61bc47baacf2e6a44c6c3c4e4cbf0abfa4095
-
-From c2f61bc47baacf2e6a44c6c3c4e4cbf0abfa4095 Mon Sep 17 00:00:00 2001
-From: Liang Qi <liang...@qt.io>
-Date: Wed, 3 Jul 2024 15:06:09 +0200
-Subject: Update wayland.xml to version 1.23.0
-
-This updates only the protocol definition, implementations
-will need additional commits to opt into using them.
-
-Change-Id: I5999e6dd75dfff7d904981fb1545d58c8b38ceb0
-Reviewed-by: David Edmundson <davidedmund...@kde.org>
----
- src/3rdparty/protocol/wayland.xml | 215 +++++++++++++++++++++++++++-----------
- 1 file changed, 156 insertions(+), 59 deletions(-)
-
-diff --git a/src/3rdparty/protocol/wayland.xml 
b/src/3rdparty/protocol/wayland.xml
-index 10e039d6e..9418c62f3 100644
---- a/src/3rdparty/protocol/wayland.xml
-+++ b/src/3rdparty/protocol/wayland.xml
-@@ -46,7 +46,7 @@
-       compositor after the callback is fired and as such the client must not
-       attempt to use it after that point.
- 
--      The callback_data passed in the callback is the event serial.
-+      The callback_data passed in the callback is undefined and should be 
ignored.
-       </description>
-       <arg name="callback" type="new_id" interface="wl_callback"
-          summary="callback object for the sync request"/>
-@@ -212,7 +212,7 @@
-     </request>
-   </interface>
- 
--  <interface name="wl_shm_pool" version="1">
-+  <interface name="wl_shm_pool" version="2">
-     <description summary="a shared memory pool">
-       The wl_shm_pool object encapsulates a piece of memory shared
-       between the compositor and client.  Through the wl_shm_pool
-@@ -262,17 +262,17 @@
-       created, but using the new size.  This request can only be
-       used to make the pool bigger.
- 
--        This request only changes the amount of bytes that are mmapped
--        by the server and does not touch the file corresponding to the
--        file descriptor passed at creation time. It is the client's
--        responsibility to ensure that the file is at least as big as
--        the new pool size.
-+      This request only changes the amount of bytes that are mmapped
-+      by the server and does not touch the file corresponding to the
-+      file descriptor passed at creation time. It is the client's
-+      responsibility to ensure that the file is at least as big as
-+      the new pool size.
-       </description>
-       <arg name="size" type="int" summary="new size of the pool, in bytes"/>
-     </request>
-   </interface>
- 
--  <interface name="wl_shm" version="1">
-+  <interface name="wl_shm" version="2">
-     <description summary="shared memory support">
-       A singleton global object that provides support for shared
-       memory.
-@@ -419,6 +419,21 @@
-       <entry name="xbgr16161616" value="0x38344258" summary="[63:0] x:B:G:R 
16:16:16:16 little endian"/>
-       <entry name="argb16161616" value="0x38345241" summary="[63:0] A:R:G:B 
16:16:16:16 little endian"/>
-       <entry name="abgr16161616" value="0x38344241" summary="[63:0] A:B:G:R 
16:16:16:16 little endian"/>
-+      <entry name="c1" value="0x20203143" summary="[7:0] 
C0:C1:C2:C3:C4:C5:C6:C7 1:1:1:1:1:1:1:1 eight pixels/byte"/>
-+      <entry name="c2" value="0x20203243" summary="[7:0] C0:C1:C2:C3 2:2:2:2 
four pixels/byte"/>
-+      <entry name="c4" value="0x20203443" summary="[7:0] C0:C1 4:4 two 
pixels/byte"/>
-+      <entry name="d1" value="0x20203144" summary="[7:0] 
D0:D1:D2:D3:D4:D5:D6:D7 1:1:1:1:1:1:1:1 eight pixels/byte"/>
-+      <entry name="d2" value="0x20203244" summary="[7:0] D0:D1:D2:D3 2:2:2:2 
four pixels/byte"/>
-+      <entry name="d4" value="0x20203444" summary="[7:0] D0:D1 4:4 two 
pixels/byte"/>
-+      <entry name="d8" value="0x20203844" summary="[7:0] D"/>
-+      <entry name="r1" value="0x20203152" summary="[7:0] 
R0:R1:R2:R3:R4:R5:R6:R7 1:1:1:1:1:1:1:1 eight pixels/byte"/>
-+      <entry name="r2" value="0x20203252" summary="[7:0] R0:R1:R2:R3 2:2:2:2 
four pixels/byte"/>
-+      <entry name="r4" value="0x20203452" summary="[7:0] R0:R1 4:4 two 
pixels/byte"/>
-+      <entry name="r10" value="0x20303152" summary="[15:0] x:R 6:10 little 
endian"/>
-+      <entry name="r12" value="0x20323152" summary="[15:0] x:R 4:12 little 
endian"/>
-+      <entry name="avuy8888" value="0x59555641" summary="[31:0] A:Cr:Cb:Y 
8:8:8:8 little endian"/>
-+      <entry name="xvuy8888" value="0x59555658" summary="[31:0] X:Cr:Cb:Y 
8:8:8:8 little endian"/>
-+      <entry name="p030" value="0x30333050" summary="2x2 subsampled Cr:Cb 
plane 10 bits per channel packed"/>
-     </enum>
- 
-     <request name="create_pool">
-@@ -442,6 +457,17 @@
-       </description>
-       <arg name="format" type="uint" enum="format" summary="buffer pixel 
format"/>
-     </event>
-+
-+    <!-- Version 2 additions -->
-+
-+    <request name="release" type="destructor" since="2">
-+      <description summary="release the shm object">
-+      Using this request a client can tell the server that it is not going to
-+      use the shm object anymore.
-+
-+      Objects created via this interface remain unaffected.
-+      </description>
-+    </request>
-   </interface>
- 
-   <interface name="wl_buffer" version="1">
-@@ -453,9 +479,11 @@
-       client provides and updates the contents is defined by the buffer 
factory
-       interface.
- 
--      If the buffer uses a format that has an alpha channel, the alpha channel
--      is assumed to be premultiplied in the color channels unless otherwise
--      specified.
-+      Color channels are assumed to be electrical rather than optical (in 
other
-+      words, encoded with a transfer function) unless otherwise specified. If
-+      the buffer uses a format that has an alpha channel, the alpha channel is
-+      assumed to be premultiplied into the electrical color channel values
-+      (after transfer function encoding) unless otherwise specified.
- 
-       Note, because wl_buffer objects are created from multiple independent
-       factory interfaces, the wl_buffer interface is frozen at version 1.
-@@ -847,6 +875,7 @@
- 
-     <enum name="error">
-       <entry name="role" value="0" summary="given wl_surface has another 
role"/>
-+      <entry name="used_source" value="1" summary="source has already been 
used"/>
-     </enum>
- 
-     <request name="start_drag">
-@@ -868,7 +897,7 @@
-       The icon surface is an optional (can be NULL) surface that
-       provides an icon to be moved around with the cursor.  Initially,
-       the top-left corner of the icon surface is placed at the cursor
--      hotspot, but subsequent wl_surface.attach request can move the
-+      hotspot, but subsequent wl_surface.offset requests can move the
-       relative position. Attach requests must be confirmed with
-       wl_surface.commit as usual. The icon surface is given the role of
-       a drag-and-drop icon. If the icon surface already has another role,
-@@ -876,6 +905,10 @@
- 
-       The input region is ignored for wl_surfaces with the role of a
-       drag-and-drop icon.
-+
-+      The given source may not be used in any further set_selection or
-+      start_drag requests. Attempting to reuse a previously-used source
-+      may send a used_source error.
-       </description>
-       <arg name="source" type="object" interface="wl_data_source" 
allow-null="true" summary="data source for the eventual transfer"/>
-       <arg name="origin" type="object" interface="wl_surface" 
summary="surface where the drag originates"/>
-@@ -889,6 +922,10 @@
-       to the data from the source on behalf of the client.
- 
-       To unset the selection, set the source to NULL.
-+
-+      The given source may not be used in any further set_selection or
-+      start_drag requests. Attempting to reuse a previously-used source
-+      may send a used_source error.
-       </description>
-       <arg name="source" type="object" interface="wl_data_source" 
allow-null="true" summary="data source for the selection"/>
-       <arg name="serial" type="uint" summary="serial number of the event that 
triggered this request"/>
-@@ -1411,7 +1448,7 @@
-       <entry name="invalid_size" value="2" summary="buffer size is invalid"/>
-       <entry name="invalid_offset" value="3" summary="buffer offset is 
invalid"/>
-       <entry name="defunct_role_object" value="4"
--             summary="surface was destroyed before its role object"/>
-+           summary="surface was destroyed before its role object"/>
-     </enum>
- 
-     <request name="destroy" type="destructor">
-@@ -1440,9 +1477,9 @@
- 
-       When the bound wl_surface version is 5 or higher, passing any
-       non-zero x or y is a protocol violation, and will result in an
--        'invalid_offset' error being raised. The x and y arguments are ignored
--        and do not change the pending state. To achieve equivalent semantics,
--        use wl_surface.offset.
-+      'invalid_offset' error being raised. The x and y arguments are ignored
-+      and do not change the pending state. To achieve equivalent semantics,
-+      use wl_surface.offset.
- 
-       Surface contents are double-buffered state, see wl_surface.commit.
- 
-@@ -1479,6 +1516,13 @@
- 
-       If wl_surface.attach is sent with a NULL wl_buffer, the
-       following wl_surface.commit will remove the surface content.
-+
-+      If a pending wl_buffer has been destroyed, the result is not specified.
-+      Many compositors are known to remove the surface content on the 
following
-+      wl_surface.commit, but this behaviour is not universal. Clients seeking 
to
-+      maximise compatibility should not destroy pending buffers and should
-+      ensure that they explicitly remove content from surfaces, even after
-+      destroying buffers.
-       </description>
-       <arg name="buffer" type="object" interface="wl_buffer" allow-null="true"
-          summary="buffer of surface contents"/>
-@@ -1618,16 +1662,18 @@
-       <description summary="commit pending surface state">
-       Surface state (input, opaque, and damage regions, attached buffers,
-       etc.) is double-buffered. Protocol requests modify the pending state,
--      as opposed to the current state in use by the compositor. A commit
--      request atomically applies all pending state, replacing the current
--      state. After commit, the new pending state is as documented for each
--      related request.
-+      as opposed to the active state in use by the compositor.
- 
--      On commit, a pending wl_buffer is applied first, and all other state
--      second. This means that all coordinates in double-buffered state are
--      relative to the new wl_buffer coming into use, except for
--      wl_surface.attach itself. If there is no pending wl_buffer, the
--      coordinates are relative to the current surface contents.
-+      A commit request atomically creates a content update from the pending
-+      state, even if the pending state has not been touched. The content
-+      update is placed in a queue until it becomes active. After commit, the
-+      new pending state is as documented for each related request.
-+
-+      When the content update is applied, the wl_buffer is applied before all
-+      other state. This means that all coordinates in double-buffered state
-+      are relative to the newly attached wl_buffers, except for
-+      wl_surface.attach itself. If there is no newly attached wl_buffer, the
-+      coordinates are relative to the previous content update.
- 
-       All requests that need a commit to become effective are documented
-       to affect double-buffered state.
-@@ -1666,10 +1712,12 @@
- 
-     <request name="set_buffer_transform" since="2">
-       <description summary="sets the buffer transformation">
--      This request sets an optional transformation on how the compositor
--      interprets the contents of the buffer attached to the surface. The
--      accepted values for the transform parameter are the values for
--      wl_output.transform.
-+      This request sets the transformation that the client has already applied
-+      to the content of the buffer. The accepted values for the transform
-+      parameter are the values for wl_output.transform.
-+
-+      The compositor applies the inverse of this transformation whenever it
-+      uses the buffer contents.
- 
-       Buffer transform is double-buffered state, see wl_surface.commit.
- 
-@@ -1725,11 +1773,11 @@
-       a buffer that is larger (by a factor of scale in each dimension)
-       than the desired surface size.
- 
--      If scale is not positive the invalid_scale protocol error is
-+      If scale is not greater than 0 the invalid_scale protocol error is
-       raised.
-       </description>
-       <arg name="scale" type="int"
--         summary="positive scale for interpreting buffer contents"/>
-+         summary="scale for interpreting buffer contents"/>
-     </request>
- 
-     <!-- Version 4 additions -->
-@@ -1802,10 +1850,15 @@
-       This event indicates the preferred buffer scale for this surface. It is
-       sent whenever the compositor's preference changes.
- 
-+      Before receiving this event the preferred buffer scale for this surface
-+      is 1.
-+
-       It is intended that scaling aware clients use this event to scale their
-       content and use wl_surface.set_buffer_scale to indicate the scale they
-       have rendered with. This allows clients to supply a higher detail
-       buffer.
-+
-+      The compositor shall emit a scale value greater than 0.
-       </description>
-       <arg name="factor" type="int" summary="preferred scaling factor"/>
-     </event>
-@@ -1815,9 +1868,12 @@
-       This event indicates the preferred buffer transform for this surface.
-       It is sent whenever the compositor's preference changes.
- 
--      It is intended that transform aware clients use this event to apply the
--      transform to their content and use wl_surface.set_buffer_transform to
--      indicate the transform they have rendered with.
-+      Before receiving this event the preferred buffer transform for this
-+      surface is normal.
-+
-+      Applying this transformation to the surface buffer contents and using
-+      wl_surface.set_buffer_transform might allow the compositor to use the
-+      surface buffer more efficiently.
-       </description>
-       <arg name="transform" type="uint" enum="wl_output.transform"
-          summary="preferred transform"/>
-@@ -1992,9 +2048,9 @@
-       where (x, y) are the coordinates of the pointer location, in
-       surface-local coordinates.
- 
--      On surface.attach requests to the pointer surface, hotspot_x
-+      On wl_surface.offset requests to the pointer surface, hotspot_x
-       and hotspot_y are decremented by the x and y parameters
--      passed to the request. Attach must be confirmed by
-+      passed to the request. The offset must be applied by
-       wl_surface.commit as usual.
- 
-       The hotspot can also be updated by passing the currently set
-@@ -2248,7 +2304,7 @@
-       <arg name="axis" type="uint" enum="axis" summary="the axis stopped with 
this event"/>
-     </event>
- 
--    <event name="axis_discrete" since="5">
-+    <event name="axis_discrete" since="5" deprecated-since="8">
-       <description summary="axis click event">
-       Discrete step information for scroll and other axes.
- 
-@@ -2374,6 +2430,16 @@
-     <description summary="keyboard input device">
-       The wl_keyboard interface represents one or more keyboards
-       associated with a seat.
-+
-+      Each wl_keyboard has the following logical state:
-+
-+      - an active surface (possibly null),
-+      - the keys currently logically down,
-+      - the active modifiers,
-+      - the active group.
-+
-+      By default, the active surface is null, the keys currently logically 
down
-+      are empty, the active modifiers and the active group are 0.
-     </description>
- 
-     <enum name="keymap_format">
-@@ -2408,10 +2474,15 @@
- 
-       The compositor must send the wl_keyboard.modifiers event after this
-       event.
-+
-+      In the wl_keyboard logical state, this event sets the active surface to
-+      the surface argument and the keys currently logically down to the keys
-+      in the keys argument. The compositor must not send this event if the
-+      wl_keyboard already had an active surface immediately before this event.
-       </description>
-       <arg name="serial" type="uint" summary="serial number of the enter 
event"/>
-       <arg name="surface" type="object" interface="wl_surface" 
summary="surface gaining keyboard focus"/>
--      <arg name="keys" type="array" summary="the currently pressed keys"/>
-+      <arg name="keys" type="array" summary="the keys currently logically 
down"/>
-     </event>
- 
-     <event name="leave">
-@@ -2422,8 +2493,10 @@
-       The leave notification is sent before the enter notification
-       for the new focus.
- 
--      After this event client must assume that all keys, including modifiers,
--      are lifted and also it must stop key repeating if there's some going on.
-+      In the wl_keyboard logical state, this event resets all values to their
-+      defaults. The compositor must not send this event if the active surface
-+      of the wl_keyboard was not equal to the surface argument immediately
-+      before this event.
-       </description>
-       <arg name="serial" type="uint" summary="serial number of the leave 
event"/>
-       <arg name="surface" type="object" interface="wl_surface" 
summary="surface that lost keyboard focus"/>
-@@ -2448,6 +2521,15 @@
- 
-       If this event produces a change in modifiers, then the resulting
-       wl_keyboard.modifiers event must be sent after this event.
-+
-+      In the wl_keyboard logical state, this event adds the key to the keys
-+      currently logically down (if the state argument is pressed) or removes
-+      the key from the keys currently logically down (if the state argument is
-+      released). The compositor must not send this event if the wl_keyboard
-+      did not have an active surface immediately before this event. The
-+      compositor must not send this event if state is pressed (resp. released)
-+      and the key was already logically down (resp. was not logically down)
-+      immediately before this event.
-       </description>
-       <arg name="serial" type="uint" summary="serial number of the key 
event"/>
-       <arg name="time" type="uint" summary="timestamp with millisecond 
granularity"/>
-@@ -2459,6 +2541,17 @@
-       <description summary="modifier and group state">
-       Notifies clients that the modifier and/or group state has
-       changed, and it should update its local state.
-+
-+      The compositor may send this event without a surface of the client
-+      having keyboard focus, for example to tie modifier information to
-+      pointer focus instead. If a modifier event with pressed modifiers is 
sent
-+      without a prior enter event, the client can assume the modifier state is
-+      valid until it receives the next wl_keyboard.modifiers event. In order 
to
-+      reset the modifier state again, the compositor can send a
-+      wl_keyboard.modifiers event with no pressed modifiers.
-+
-+      In the wl_keyboard logical state, this event updates the modifiers and
-+      group.
-       </description>
-       <arg name="serial" type="uint" summary="serial number of the modifiers 
event"/>
-       <arg name="mods_depressed" type="uint" summary="depressed modifiers"/>
-@@ -2566,6 +2659,8 @@
-       currently active on this client's surface. The client is
-       responsible for finalizing the touch points, future touch points on
-       this surface may reuse the touch point ID.
-+
-+      No frame event is required after the cancel event.
-       </description>
-     </event>
- 
-@@ -2665,10 +2760,9 @@
-     </enum>
- 
-     <enum name="transform">
--      <description summary="transform from framebuffer to output">
--      This describes the transform that a compositor will apply to a
--      surface to compensate for the rotation or mirroring of an
--      output device.
-+      <description summary="transformation applied to buffer contents">
-+      This describes transformations that clients and compositors apply to
-+      buffer contents.
- 
-       The flipped values correspond to an initial flip around a
-       vertical axis followed by rotation.
-@@ -2700,6 +2794,10 @@
-       The geometry event will be followed by a done event (starting from
-       version 2).
- 
-+      Clients should use wl_surface.preferred_buffer_transform instead of the
-+      transform advertised by this event to find the preferred buffer
-+      transform to use for a surface.
-+
-       Note: wl_output only advertises partial information about the output
-       position and identification. Some compositors, for instance those not
-       implementing a desktop-style output layout or those exposing virtual
-@@ -2722,7 +2820,7 @@
-       <arg name="model" type="string"
-          summary="textual description of the model"/>
-       <arg name="transform" type="int" enum="transform"
--         summary="transform that maps framebuffer to output"/>
-+         summary="additional transformation applied to buffer contents during 
presentation"/>
-     </event>
- 
-     <enum name="mode" bitfield="true">
-@@ -2795,8 +2893,9 @@
-       This event contains scaling geometry information
-       that is not in the geometry event. It may be sent after
-       binding the output object or if the output scale changes
--      later. If it is not sent, the client should assume a
--      scale of 1.
-+      later. The compositor will emit a non-zero, positive
-+      value for scale. If it is not sent, the client should
-+      assume a scale of 1.
- 
-       A scale larger than 1 means that the compositor will
-       automatically scale surface buffers by this amount
-@@ -2804,12 +2903,9 @@
-       displays where applications rendering at the native
-       resolution would be too small to be legible.
- 
--      It is intended that scaling aware clients track the
--      current output of a surface, and if it is on a scaled
--      output it should use wl_surface.set_buffer_scale with
--      the scale of the output. That way the compositor can
--      avoid scaling the surface, and the client can supply
--      a higher detail image.
-+      Clients should use wl_surface.preferred_buffer_scale
-+      instead of this event to find the preferred buffer
-+      scale to use for a surface.
- 
-       The scale event will be followed by a done event.
-       </description>
-@@ -3035,6 +3131,11 @@
- 
-       If the parent wl_surface object is destroyed, the sub-surface is
-       unmapped.
-+
-+      A sub-surface never has the keyboard focus of any seat.
-+
-+      The wl_surface.offset request is ignored: clients must use set_position
-+      instead to move the sub-surface.
-     </description>
- 
-     <request name="destroy" type="destructor">
-@@ -3060,9 +3161,7 @@
-       surface area. Negative values are allowed.
- 
-       The scheduled coordinates will take effect whenever the state of the
--      parent surface is applied. When this happens depends on whether the
--      parent surface is in synchronized mode or not. See
--      wl_subsurface.set_sync and wl_subsurface.set_desync for details.
-+      parent surface is applied.
- 
-       If more than one set_position request is invoked by the client before
-       the commit of the parent surface, the position of a new request always
-@@ -3085,9 +3184,7 @@
-       The z-order is double-buffered. Requests are handled in order and
-       applied immediately to a pending state. The final pending state is
-       copied to the active state the next time the state of the parent
--      surface is applied. When this happens depends on whether the parent
--      surface is in synchronized mode or not. See wl_subsurface.set_sync and
--      wl_subsurface.set_desync for details.
-+      surface is applied.
- 
-       A new sub-surface is initially added as the top-most in the stack
-       of its siblings and parent.
--- 
-cgit v1.2.3
-
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 870a24d04c..9d955344fc 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -2129,20 +2129,24 @@ compositor libraries.")))
 (define-public qtwayland
   (package
     (name "qtwayland")
-    (version "6.7.2")
+    (version "6.8.2")
     (source
      (origin
        (method url-fetch)
        (uri (qt-url name version))
-       (patches (search-patches
-                 "qtwayland-6-update-wayland-xml.patch"))
        (sha256
-        (base32 "0nwa59g1wk7fkym837pkw312abjb376gx44rpd5d8jv4vphmg852"))))
+        (base32 "0iwnvjas5vqzi48finff72iqnl5hal48qba64kwjnpr911wiaijy"))))
     (build-system cmake-build-system)
     (arguments
      (list #:configure-flags #~(list "-DQT_BUILD_TESTS=ON")
            #:phases
            #~(modify-phases %standard-phases
+               (add-after 'unpack 'update-wayland.xml
+                 ;; Upstream commit: c2f61bc47baacf2e6a44c6c3c4e4cbf0abfa4095
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (copy-file (search-input-file
+                               inputs "/share/wayland/wayland.xml")
+                              "src/3rdparty/protocol/wayland/wayland.xml")))
                (add-after 'unpack 'disable-failing-tests
                  (lambda _
                    ;; FIXME: tst_seatv4::animatedCursor() fails here.

Reply via email to