diff --git a/debian/patches/02-gcc14.patch b/debian/patches/02-gcc14.patch
new file mode 100644
index 0000000000000000000000000000000000000000..2d3ad7e3124c15f1b803fae63e3d0a839f5e8e05
--- /dev/null
+++ b/debian/patches/02-gcc14.patch
@@ -0,0 +1,16 @@
+Author: Ravi Kant Sharma <600723+raviksharma@users.noreply.github.com>
+Description: Build with gcc 14
+
+diff --git a/plugins/tray.c b/plugins/tray.c
+index 3e66b81f..558e0a97 100644
+--- a/plugins/tray.c
++++ b/plugins/tray.c
+@@ -631,7 +631,7 @@ static GtkWidget *tray_constructor(LXPanel *panel, config_setting_t *settings)
+     /* Add GDK event filter. */
+     gdk_window_add_filter(NULL, (GdkFilterFunc) tray_event_filter, tr);
+     /* Reference the window since it is never added to a container. */
+-    tr->invisible = g_object_ref_sink(G_OBJECT(invisible));
++    tr->invisible = GTK_WIDGET(g_object_ref_sink(G_OBJECT(invisible)));
+     tr->invisible_window = GDK_WINDOW_XID(gtk_widget_get_window(invisible));
+ 
+     /* Allocate top level widget and set into Plugin widget pointer. */
diff --git a/debian/patches/series b/debian/patches/series
index cf92e56c3ab0f9fd62f70e6da2249fe83103e6d0..b46fac7d8acfa4823c96f35102ac7441135e2744 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
 01-default-config.patch
+02-gcc14.patch