fixes about lxde and xfce

This commit is contained in:
sulincix committed 2024-09-30 19:40:53 +00:00
1 parent 96beefda3b
commit 06bdecee4f
10 files changed
+287 -11

No files matched your search

@@ -0,0 +1,29 @@
https://bugs.gentoo.org/919092
https://github.com/lxde/lxpanel/pull/70
From 914bcc3945503be2506e112883a648b867c6db57 Mon Sep 17 00:00:00 2001
From: Ravi Kant Sharma <600723+raviksharma@users.noreply.github.com>
Date: Tue, 23 Jul 2024 18:02:44 +0200
Subject: [PATCH] fix build failure on gcc-14
gcc-14 treats implicitly casting all pointer types to all other pointer types as error now.
https://gcc.gnu.org/gcc-14/porting_to.html#warnings-as-errors
---
plugins/tray.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugins/tray.c b/plugins/tray.c
index 3e66b81f..42d4917c 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 = (GtkWidget *) 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. */
+9 -2
View File
@@ -7,17 +7,24 @@ description='Lightweight X11 desktop panel for LXDE '
email='bayramk@gmail.com'
maintainer='bk'
license=('GPLv3')
source=("https://salsa.debian.org/lxde-team/lxpanel/-/archive/debian/$version-1/lxpanel-debian-$version-1.tar.gz")
source=("https://salsa.debian.org/lxde-team/lxpanel/-/archive/debian/$version-1/lxpanel-debian-$version-1.tar.gz"
"lxpanel-0.10.1-c99.patch")
depends=(libwnck3 wireless-tools)
makedepends=()
sha256sums=('e4c6a8c9901f4226160af79c409236fe4e5d1b1ec3aefdb1c43e416698f27811')
sha256sums=('e4c6a8c9901f4226160af79c409236fe4e5d1b1ec3aefdb1c43e416698f27811'
'SKIP')
group=(lxde.base)
uses=()
arch=('x86_64')
cd $name-debian-$version-1
export CFLAGS="-Wno-all -O2 -s"
export CXXFLAGS="-Wno-all -O2 -s"
prepare(){
patch -Np1 -i ../lxpanel-0.10.1-c99.patch
# Disable pager plugin as it breaks panel layout with GTK+ 3
# https://sourceforge.net/p/lxde/bugs/773/
sed -i '/pager.c/d' plugins/Makefile.am
@@ -0,0 +1,89 @@
From 0eb1a31843691b4e5f3354c153315dcb7ebeda3d Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Sun, 25 Feb 2024 16:58:43 +0900
Subject: [PATCH] Fix: support gcc14 -Werror=incompatible-pointer-types
gcc14 now defaults to -Werror=incompatible-pointer-types.
To support compilation with gcc14, cast GTK related objects
properly.
---
lxpolkit/lxpolkit-listener.c | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/lxpolkit/lxpolkit-listener.c b/lxpolkit/lxpolkit-listener.c
index 00bda424..819d2c58 100644
--- a/lxpolkit/lxpolkit-listener.c
+++ b/lxpolkit/lxpolkit-listener.c
@@ -85,13 +85,13 @@ static void on_completed(PolkitAgentSession* session, gboolean authorized, DlgDa
if(!authorized && !g_cancellable_is_cancelled(data->cancellable))
{
- show_msg(data->dlg, GTK_MESSAGE_ERROR, _("Authentication failed!\nWrong password?"));
+ show_msg(GTK_WINDOW(data->dlg), GTK_MESSAGE_ERROR, _("Authentication failed!\nWrong password?"));
/* initiate a new session */
g_object_unref(data->session);
data->session = NULL;
- gtk_entry_set_text(data->request, "");
+ gtk_entry_set_text(GTK_ENTRY(data->request), "");
gtk_widget_grab_focus(data->request);
- on_user_changed(data->id, data);
+ on_user_changed(GTK_COMBO_BOX(data->id), data);
return;
}
g_simple_async_result_complete(data->result);
@@ -106,20 +106,20 @@ static void on_request(PolkitAgentSession* session, gchar* request, gboolean ech
msg = _("Password: ");
else
msg = request;
- gtk_label_set_text(data->request_label, msg);
- gtk_entry_set_visibility(data->request, echo_on);
+ gtk_label_set_text(GTK_LABEL(data->request_label), msg);
+ gtk_entry_set_visibility(GTK_ENTRY(data->request), echo_on);
}
static void on_show_error(PolkitAgentSession* session, gchar* text, DlgData* data)
{
DEBUG("on error: %s", text);
- show_msg(data->dlg, GTK_MESSAGE_ERROR, text);
+ show_msg(GTK_WINDOW(data->dlg), GTK_MESSAGE_ERROR, text);
}
static void on_show_info(PolkitAgentSession* session, gchar* text, DlgData* data)
{
DEBUG("on info: %s", text);
- show_msg(data->dlg, GTK_MESSAGE_INFO, text);
+ show_msg(GTK_WINDOW(data->dlg), GTK_MESSAGE_INFO, text);
}
void on_dlg_response(GtkDialog* dlg, int response, DlgData* data)
@@ -127,7 +127,7 @@ void on_dlg_response(GtkDialog* dlg, int response, DlgData* data)
DEBUG("on_response: %d", response);
if(response == GTK_RESPONSE_OK)
{
- const char* request = gtk_entry_get_text(data->request);
+ const char* request = gtk_entry_get_text(GTK_ENTRY(data->request));
polkit_agent_session_response(data->session, request);
gtk_widget_set_sensitive(data->dlg, FALSE);
}
@@ -195,7 +195,7 @@ static void initiate_authentication(PolkitAgentListener *listener,
DEBUG("%s: %s", *p, polkit_details_lookup(details, *p));
#endif
data->listener = (LXPolkitListener*)listener;
- data->result = g_simple_async_result_new(listener, callback, user_data, initiate_authentication);
+ data->result = g_simple_async_result_new(G_OBJECT(listener), callback, user_data, initiate_authentication);
data->action_id = g_strdup(action_id);
data->cancellable = (GCancellable*)g_object_ref(cancellable);
@@ -260,10 +260,10 @@ static void initiate_authentication(PolkitAgentListener *listener,
g_free(str);
}
}
- gtk_combo_box_set_model(data->id, GTK_TREE_MODEL(store));
+ gtk_combo_box_set_model(GTK_COMBO_BOX(data->id), GTK_TREE_MODEL(store));
g_object_unref(store);
/* select the fist user in the list */
- gtk_combo_box_set_active(data->id, 0);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(data->id), 0);
}
else
{
@@ -0,0 +1,86 @@
https://github.com/lxde/lxsession/pull/34
From a0d8f8b865ce25867983cd45720adfff33b3fdfb Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Sun, 25 Feb 2024 16:58:43 +0900
Subject: [PATCH] Fix: support gcc14 -Werror=incompatible-pointer-types
gcc14 now defaults to -Werror=incompatible-pointer-types.
To support compilation with gcc14, cast GTK related objects
properly.
--- a/lxpolkit/lxpolkit-listener.c
+++ b/lxpolkit/lxpolkit-listener.c
@@ -85,13 +85,13 @@ static void on_completed(PolkitAgentSession* session, gboolean authorized, DlgDa
if(!authorized && !g_cancellable_is_cancelled(data->cancellable))
{
- show_msg(data->dlg, GTK_MESSAGE_ERROR, _("Authentication failed!\nWrong password?"));
+ show_msg(GTK_WINDOW(data->dlg), GTK_MESSAGE_ERROR, _("Authentication failed!\nWrong password?"));
/* initiate a new session */
g_object_unref(data->session);
data->session = NULL;
- gtk_entry_set_text(data->request, "");
+ gtk_entry_set_text(GTK_ENTRY(data->request), "");
gtk_widget_grab_focus(data->request);
- on_user_changed(data->id, data);
+ on_user_changed(GTK_COMBO_BOX(data->id), data);
return;
}
g_simple_async_result_complete(data->result);
@@ -106,20 +106,20 @@ static void on_request(PolkitAgentSession* session, gchar* request, gboolean ech
msg = _("Password: ");
else
msg = request;
- gtk_label_set_text(data->request_label, msg);
- gtk_entry_set_visibility(data->request, echo_on);
+ gtk_label_set_text(GTK_LABEL(data->request_label), msg);
+ gtk_entry_set_visibility(GTK_ENTRY(data->request), echo_on);
}
static void on_show_error(PolkitAgentSession* session, gchar* text, DlgData* data)
{
DEBUG("on error: %s", text);
- show_msg(data->dlg, GTK_MESSAGE_ERROR, text);
+ show_msg(GTK_WINDOW(data->dlg), GTK_MESSAGE_ERROR, text);
}
static void on_show_info(PolkitAgentSession* session, gchar* text, DlgData* data)
{
DEBUG("on info: %s", text);
- show_msg(data->dlg, GTK_MESSAGE_INFO, text);
+ show_msg(GTK_WINDOW(data->dlg), GTK_MESSAGE_INFO, text);
}
void on_dlg_response(GtkDialog* dlg, int response, DlgData* data)
@@ -127,7 +127,7 @@ void on_dlg_response(GtkDialog* dlg, int response, DlgData* data)
DEBUG("on_response: %d", response);
if(response == GTK_RESPONSE_OK)
{
- const char* request = gtk_entry_get_text(data->request);
+ const char* request = gtk_entry_get_text(GTK_ENTRY(data->request));
polkit_agent_session_response(data->session, request);
gtk_widget_set_sensitive(data->dlg, FALSE);
}
@@ -195,7 +195,7 @@ static void initiate_authentication(PolkitAgentListener *listener,
DEBUG("%s: %s", *p, polkit_details_lookup(details, *p));
#endif
data->listener = (LXPolkitListener*)listener;
- data->result = g_simple_async_result_new(listener, callback, user_data, initiate_authentication);
+ data->result = g_simple_async_result_new(G_OBJECT(listener), callback, user_data, initiate_authentication);
data->action_id = g_strdup(action_id);
data->cancellable = (GCancellable*)g_object_ref(cancellable);
@@ -260,10 +260,10 @@ static void initiate_authentication(PolkitAgentListener *listener,
g_free(str);
}
}
- gtk_combo_box_set_model(data->id, GTK_TREE_MODEL(store));
+ gtk_combo_box_set_model(GTK_COMBO_BOX(data->id), GTK_TREE_MODEL(store));
g_object_unref(store);
/* select the fist user in the list */
- gtk_combo_box_set_active(data->id, 0);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(data->id), 0);
}
else
{
+9 -7
View File
@@ -7,25 +7,27 @@ description='Lightweight X11 session manager'
email='akarsu@protonmail.com'
maintainer='akarsu'
license=('GPL2')
source=("https://salsa.debian.org/lxde-team/lxsession/-/archive/debian/$version-2/lxsession-debian-$version-2.tar.gz")
_commit="95e902d76758e09f9226abd39163aadd5cd50bc1"
source=("https://github.com/lxde/lxsession/archive/${_commit}.zip")
depends=(gtk3 polkit)
makedepends=(intltool vala docbook-xsl)
sha256sums=('c9ed57c23c682fbd33cf5a8092a5d5c5415a922f8e36d350dcbb637434db6843')
sha256sums=('19df9abfda70fb051c4e0f6d17a68d6e635728065faee7b95e441e26af4098d9')
group=(lxde.base)
uses=()
arch=('x86_64')
cd $name-debian-$version-2
cd $name-${_commit}
export CC="clang"
export CXX="clang++"
setup(){
autoreconf -fvi
./autogen.sh
./configure --prefix=/usr\
--sysconfdir=/etc \
--libexecdir=/usr/libexec \
--enable-gtk3 \
--enable-buildin-clipboard \
--libdir=/usr/lib64/ \
--enable-buildin-polkit
--libdir=/usr/lib64/
}
build(){
@@ -0,0 +1,54 @@
https://bugs.gentoo.org/919094
https://github.com/lxde/lxterminal/issues/121
https://github.com/lxde/lxterminal/pull/122
https://src.fedoraproject.org/rpms/lxterminal/blob/rawhide/f/lxterminal-pr122-fix-gcc14-incompatible-pointer-types.patch
From c947b9065b470c24064ac1b1c4935e8093970531 Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Wed, 21 Feb 2024 17:01:14 +0900
Subject: [PATCH] Fix: support gcc14 -Werror=incompatible-pointer-types
gcc14 now defaults to -Werror=incompatible-pointer-types .
Fix code to support this.
* Add GTK cast for GTK_STYLE_PROVIDER
* VteRegex must be deref'ed with vte_regex_unref
Fixes #121 .
---
src/lxterminal.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/lxterminal.c b/src/lxterminal.c
index 680e411..dcd7405 100644
--- a/src/lxterminal.c
+++ b/src/lxterminal.c
@@ -1208,7 +1208,7 @@ static Term * terminal_new(LXTerminal * terminal, const gchar * label, const gch
GtkStyleContext* box_style_ctx =
gtk_widget_get_style_context(GTK_WIDGET(terminal->box));
gtk_style_context_add_provider(
- box_style_ctx, box_css_provider,
+ box_style_ctx, GTK_STYLE_PROVIDER(box_css_provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
#endif
@@ -1232,6 +1232,8 @@ static Term * terminal_new(LXTerminal * terminal, const gchar * label, const gch
vte_terminal_match_set_cursor_name(VTE_TERMINAL(term->vte), ret, "pointer");
ret = vte_terminal_match_add_regex(VTE_TERMINAL(term->vte), dingus2, 0);
vte_terminal_match_set_cursor_name(VTE_TERMINAL(term->vte), ret, "pointer");
+ vte_regex_unref(dingus1);
+ vte_regex_unref(dingus2);
#else
GRegex * dingus1 = g_regex_new(DINGUS1, G_REGEX_OPTIMIZE, 0, NULL);
GRegex * dingus2 = g_regex_new(DINGUS2, G_REGEX_OPTIMIZE, 0, NULL);
@@ -1239,9 +1241,9 @@ static Term * terminal_new(LXTerminal * terminal, const gchar * label, const gch
vte_terminal_match_set_cursor_name(VTE_TERMINAL(term->vte), ret, "pointer");
ret = vte_terminal_match_add_gregex(VTE_TERMINAL(term->vte), dingus2, 0);
vte_terminal_match_set_cursor_name(VTE_TERMINAL(term->vte), ret, "pointer");
-#endif
g_regex_unref(dingus1);
g_regex_unref(dingus2);
+#endif
/* Create a horizontal box inside an event box as the toplevel for the tab label. */
term->tab = gtk_event_box_new();
+5 -1
View File
@@ -17,10 +17,14 @@ arch=('x86_64')
cd $name-debian-$version-2
export CC="clang"
export CXX="clang++"
setup(){
autoreconf -fvi
./configure --prefix=/usr \
--libdir=/usr/lib64/ --enable-gtk3
--libdir=/usr/lib64/ --enable-gtk3
}
build(){
+3
View File
@@ -17,6 +17,9 @@ arch=('x86_64')
cd $name-$version
export CC="clang"
export CXX="clang++"
setup(){
autoreconf -fvi
./configure --prefix=/usr \
+1 -1
View File
@@ -9,7 +9,7 @@ email='akarsu@protonmail.com'
maintainer='akarsu'
license=('GPLv2')
source=("https://archive.xfce.org/src/xfce/xfce4-session/${_version}/xfce4-session-${version}.tar.bz2")
depends=(libxfce4ui libwnck3 xfconf)
depends=(libxfce4ui libwnck3 xfconf xorg-iceauth)
makedepends=(intltool)
sha256sums=('9a9c5074c7338b881a5259d3b643619bf84901360c03478e1a697938ece06516')
group=(xfce.base)
+2
View File
@@ -32,5 +32,7 @@ build () {
package () {
make DESTDIR="$DESTDIR" install $jobs
# dont run non xfce
echo "OnlyShowIn=XFCE;" >> $DESTDIR//etc/xdg/autostart/xfce-polkit.desktop
}