diff --git a/_service b/_service
index beb63cb..42ed477 100644
--- a/_service
+++ b/_service
@@ -3,7 +3,7 @@
   <service name="obs_scm" mode="manual">
     <param name="url">https://gitlab.gnome.org/GNOME/gtk.git</param>
     <param name="scm">git</param>
-    <param name="revision">gtk-3-24</param>
+    <param name="revision">3.24.41</param>
     <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
     <param name="versionrewrite-pattern">(.*)\+0</param>
     <param name="versionrewrite-replacement">\1</param>
diff --git a/_servicedata b/_servicedata
index ecdfb61..4658ad5 100644
--- a/_servicedata
+++ b/_servicedata
@@ -1,4 +1,4 @@
 <servicedata>
 <service name="tar_scm">
                 <param name="url">https://gitlab.gnome.org/GNOME/gtk.git</param>
-              <param name="changesrevision">cde309d9fa27d948ae4ad098f50ba3188452ad6a</param></service></servicedata>
\ No newline at end of file
+              <param name="changesrevision">77ebdd85091833a7869ece48c3114fa6d9966321</param></service></servicedata>
\ No newline at end of file
diff --git a/gtk-3.24.38+111.obscpio b/gtk-3.24.38+111.obscpio
deleted file mode 100644
index 0401856..0000000
--- a/gtk-3.24.38+111.obscpio
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:29fe434cf32af7cda96a19e5fa8801eb936958bc13e2fb6c30a628bcf9f59d50
-size 99351054
diff --git a/gtk-3.24.41.obscpio b/gtk-3.24.41.obscpio
new file mode 100644
index 0000000..631cd3a
--- /dev/null
+++ b/gtk-3.24.41.obscpio
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:f4bccc153bc4bb325cd358e887d45b3a60e5f4f329cef37aa4e0e6ed34535618
+size 102257166
diff --git a/gtk.obsinfo b/gtk.obsinfo
index d9519a8..de6a434 100644
--- a/gtk.obsinfo
+++ b/gtk.obsinfo
@@ -1,4 +1,4 @@
 name: gtk
-version: 3.24.38+111
-mtime: 1701555122
-commit: cde309d9fa27d948ae4ad098f50ba3188452ad6a
+version: 3.24.41
+mtime: 1706058874
+commit: 77ebdd85091833a7869ece48c3114fa6d9966321
diff --git a/gtk3.changes b/gtk3.changes
index 08db404..9a1dc33 100644
--- a/gtk3.changes
+++ b/gtk3.changes
@@ -1,3 +1,48 @@
+-------------------------------------------------------------------
+Thu Jan 25 11:50:18 UTC 2024 - dimstar@opensuse.org
+
+- Update to version 3.24.41:
+  + Fix a crash introduced in the X11 changes in 3.24.40.
+  + Build fixes.
+  + Wayland: Fix interpretation of gtk-shell protocol.
+
+-------------------------------------------------------------------
+Thu Jan 18 17:06:33 UTC 2024 - dimstar@opensuse.org
+
+- Update to version 3.24.40:
+  * Free monitor name on finalize
+  * Rework after first review
+  * Rework to get rid of get_monitor_by_output
+  * Use xorg 'monitor' the right way. See #2013
+
+-------------------------------------------------------------------
+Tue Jan 16 11:12:55 UTC 2024 - dimstar@opensuse.org
+
+- Update to version 3.24.39+23:
+  * gdkdisplay-wayland: Init selection before roundtrips
+  * Use consistent coordinates in get_toplevel_from_ns_event.
+  * emoji: Update data to CLDR v44
+  * emoji: Update data to CLDR v43
+  * add hi-ja-et-fi-nb-th for gtkemojichooser
+  * add bengali language bn.data for gtkemojichooser
+  * emoji: Add more locales
+  * emoji: Update data to CLDR v40
+  * emoji: Fix the convert-emoji program
+  * gtkgesture: Preserve accuracy when translating events
+  * pathbar: Handle webdav where is the root is a path
+  * GtkTooltip: Fix tooltip positioning on X11
+  * gdkkeys-win32c: change registry key not found g_warning to g_debug
+  * [gtk3/wayland] Expose XDG-shell suspended state via visibility events.
+  * [gtk3/wayland] Only request v2 of xdg_wm_base.
+  * test-msys2-meson: fix pipeline failure on GTK3
+  * wayland: Fix wl_buffer size for custom cursors
+  * GtkMenu: Fix positioning when attached to offscreen windows
+  * gdk_display_get_monitor_at_window: Check for offscreen windows
+  * GdkWindow: check for same impl class in set_transient_for ()
+  * [gtk3] Cherry-pick gtkfilechoosernativeportal fixes from gtk4
+  * wayland: Avoid more legacy cursor names
+  * Fall back to the 'default' cursor
+
 -------------------------------------------------------------------
 Thu Dec 07 15:35:33 UTC 2023 - dimstar@opensuse.org
 
diff --git a/gtk3.spec b/gtk3.spec
index 7f9893e..d0a0126 100644
--- a/gtk3.spec
+++ b/gtk3.spec
@@ -1,7 +1,7 @@
 #
 # spec file for package gtk3
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 # Copyright (c) 2010 Dominique Leuenberger, Amsterdam, Netherlands
 #
 # All modifications and additions to the file contributed by third parties
@@ -30,7 +30,7 @@
 %define __provides_exclude_from ^%{_libdir}/gtk-3.0
 
 Name:           gtk3
-Version:        3.24.38+111
+Version:        3.24.41
 Release:        0
 Summary:        The GTK+ toolkit library (version 3)
 License:        LGPL-2.1-or-later
@@ -156,7 +156,7 @@ Summary:        Amharic input method for the GTK+ toolkit library v3
 Group:          System/Libraries
 Requires:       %{name} = %{version}
 Requires(post): %{name}-tools
-Requires(postun):%{name}-tools
+Requires(postun): %{name}-tools
 Provides:       locale(%{name}:am)
 
 %description immodule-amharic
@@ -171,7 +171,7 @@ Summary:        Broadway input method for the GTK+ toolkit library v3
 Group:          System/Libraries
 Requires:       %{name} = %{version}
 Requires(post): %{name}-tools
-Requires(postun):%{name}-tools
+Requires(postun): %{name}-tools
 
 %description immodule-broadway
 GTK+ is a multi-platform toolkit for creating graphical user interfaces.
@@ -185,7 +185,7 @@ Summary:        Inuktitut input method for the GTK+ toolkit library v3
 Group:          System/Libraries
 Requires:       %{name} = %{version}
 Requires(post): %{name}-tools
-Requires(postun):%{name}-tools
+Requires(postun): %{name}-tools
 Provides:       locale(%{name}:iu)
 
 %description immodule-inuktitut
@@ -200,7 +200,7 @@ Summary:        Multipress input method for the GTK+ toolkit library v3
 Group:          System/Libraries
 Requires:       %{name} = %{version}
 Requires(post): %{name}-tools
-Requires(postun):%{name}-tools
+Requires(postun): %{name}-tools
 
 %description immodule-multipress
 GTK+ is a multi-platform toolkit for creating graphical user interfaces.
@@ -215,7 +215,7 @@ Summary:        Thai-Lao input method for the GTK+ toolkit library v3
 Group:          System/Libraries
 Requires:       %{name} = %{version}
 Requires(post): %{name}-tools
-Requires(postun):%{name}-tools
+Requires(postun): %{name}-tools
 Provides:       locale(%{name}:lo)
 Provides:       locale(%{name}:th)
 
@@ -231,7 +231,7 @@ Summary:        Tigrigna input method for the GTK+ toolkit library v3
 Group:          System/Libraries
 Requires:       %{name} = %{version}
 Requires(post): %{name}-tools
-Requires(postun):%{name}-tools
+Requires(postun): %{name}-tools
 Provides:       %{name}-immodules-tigrigna = %{version}
 Provides:       locale(%{name}:ti)
 Obsoletes:      %{name}-immodules-tigrigna < %{version}
@@ -248,7 +248,7 @@ Summary:        Vietnamese input method for the GTK+ toolkit library v3
 Group:          System/Libraries
 Requires:       %{name} = %{version}
 Requires(post): %{name}-tools
-Requires(postun):%{name}-tools
+Requires(postun): %{name}-tools
 Provides:       locale(%{name}:vi)
 
 %description immodule-vietnamese
@@ -263,7 +263,7 @@ Summary:        Wayland input method for the GTK+ toolkit library (version 3)
 Group:          System/Libraries
 Requires:       %{name} = %{version}
 Requires(post): %{name}-tools
-Requires(postun):%{name}-tools
+Requires(postun): %{name}-tools
 
 %description immodule-wayland
 GTK+ is a multi-platform toolkit for creating graphical user interfaces.
@@ -278,7 +278,7 @@ Summary:        X input method for the GTK+ toolkit library v3
 Group:          System/Libraries
 Requires:       %{name} = %{version}
 Requires(post): %{name}-tools
-Requires(postun):%{name}-tools
+Requires(postun): %{name}-tools
 Provides:       locale(%{name}:ja)
 Provides:       locale(%{name}:ko)
 Provides:       locale(%{name}:th)
@@ -295,7 +295,7 @@ This package provides an input method based on the X Input Method.
 Summary:        Auxiliary utilities for the GTK+ toolkit library v3
 Group:          System/Libraries
 Requires(post): update-alternatives
-Requires(postun):update-alternatives
+Requires(postun): update-alternatives
 
 %description tools
 GTK+ is a multi-platform toolkit for creating graphical user interfaces.
@@ -604,10 +604,7 @@ fi
 %ghost %{_sysconfdir}/alternatives/gtk-update-icon-cache.1%{?ext_man}
 %dir %{_datadir}/gtk-3.0/
 %dir %{_datadir}/gtk-3.0/emoji
-%{_datadir}/gtk-3.0/emoji/de.gresource
-%{_datadir}/gtk-3.0/emoji/es.gresource
-%{_datadir}/gtk-3.0/emoji/fr.gresource
-%{_datadir}/gtk-3.0/emoji/zh.gresource
+%{_datadir}/gtk-3.0/emoji/*.gresource
 
 %files schema
 %{_datadir}/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml