From c15daed2ed74e280f429b88be566e8f7dcd17757 Mon Sep 17 00:00:00 2001 From: Ali Riza KESKIN Date: Sat, 27 Dec 2025 16:19:14 +0300 Subject: [PATCH] ibus --- app/i18n/ibus/fix.patch | 60 +++++++++++++++++++++++++++++++++ app/i18n/ibus/ympbuild | 53 +++++++++++++++++++++++++++++ cinnamon/base/cinnamon/ympbuild | 2 +- 3 files changed, 114 insertions(+), 1 deletion(-) create mode 100644 app/i18n/ibus/fix.patch create mode 100644 app/i18n/ibus/ympbuild diff --git a/app/i18n/ibus/fix.patch b/app/i18n/ibus/fix.patch new file mode 100644 index 00000000..c1ccd830 --- /dev/null +++ b/app/i18n/ibus/fix.patch @@ -0,0 +1,60 @@ +From 2f7a74ebef5aac2ed529304beacff25591d29044 Mon Sep 17 00:00:00 2001 +From: fujiwarat +Date: Thu, 4 Dec 2025 19:41:59 +0900 +Subject: [PATCH] src/tests/ibus-keypress: Fix GTK3 build + +BUG=https://github.com/ibus/ibus/issues/2829 +--- + src/tests/ibus-keypress.c | 16 ++++++++++++---- + 1 file changed, 12 insertions(+), 4 deletions(-) + +diff --git a/src/tests/ibus-keypress.c b/src/tests/ibus-keypress.c +index cd8afe832..170295124 100644 +--- a/src/tests/ibus-keypress.c ++++ b/src/tests/ibus-keypress.c +@@ -431,8 +431,11 @@ destroy_window (gpointer user_data) + data->source = 0; + + g_info ("Destroying window after timeout"); ++#if GTK_CHECK_VERSION (4, 0, 0) + gtk_window_destroy (GTK_WINDOW (data->window)); +- ++#else ++ gtk_widget_destroy (data->window); ++#endif + data->window = NULL; + + return G_SOURCE_REMOVE; +@@ -470,8 +473,9 @@ create_keypress (void) + #endif + + if (!m_replay) { +- g_test_fail_printf ("Failed to create uinput device: %s", +- error->message); ++ g_test_fail_printf ("Failed to create uinput device: %s: %s", ++ error->message, ++ "Probably you should run `chmod a+rw /dev/uinput`"); + g_error_free (error); + return FALSE; + } +@@ -741,7 +745,7 @@ test_keypress (gconstpointer user_data) + #if GTK_CHECK_VERSION (4, 0, 0) + gtk_init (); + #else +- gtk_init (data->argc, data->argv); ++ gtk_init (&data->argc, &data->argv); + #endif + + g_assert ((channel = g_io_channel_unix_new (m_pipe_engine[0]))); +@@ -770,7 +774,11 @@ test_keypress (gconstpointer user_data) + if (destroy_data.source) + g_source_remove (destroy_data.source); + if (destroy_data.window) ++#if GTK_CHECK_VERSION (4, 0, 0) + gtk_window_destroy (GTK_WINDOW (destroy_data.window)); ++#else ++ gtk_widget_destroy (destroy_data.window); ++#endif + close (m_pipe_engine[0]); + close (m_pipe_engine[1]); + } diff --git a/app/i18n/ibus/ympbuild b/app/i18n/ibus/ympbuild new file mode 100644 index 00000000..482117fd --- /dev/null +++ b/app/i18n/ibus/ympbuild @@ -0,0 +1,53 @@ +#!/usr/bin/env bash +name='ibus' +release='1' +version='1.5.33' +url='https://github.com/ibus/ibus/wiki' +description='Intelligent Input Bus' +email='aliriza.keskin@pardus.org.tr' +maintainer='aliriza' +license=('GPLv3') +source=("https://github.com/ibus/ibus/archive/refs/tags/$version.tar.gz" + "fix.patch") +depends=(gtk3) +makedepends=() +sha256sums=('a777068caba4ba7599a3214e2966f564daec01bba94cd7f2ca63062107e0604f' + 'SKIP') +group=(app.i18n) +uses=() +arch=('x86_64') + +cd $name-$version + +export CFLAGS="-Wno-all" + +prepare(){ + # https://github.com/ibus/ibus/pull/2833 + patch -Np1 -i ../fix.patch +} + +setup () { + autoreconf -fvi + ./configure --prefix=/usr \ + --libdir=/usr/lib64/ \ + --disable-gtk-doc \ + --disable-memconf \ + --disable-python2 \ + --disable-gtk4 \ + --disable-gtk2 \ + --disable-emoji-dict \ + --disable-unicode-dict \ + --disable-systemd-services + +rm -f tools/main.c + +} + +build () { + make $jobs +} + +package () { + make install $jobs +} + diff --git a/cinnamon/base/cinnamon/ympbuild b/cinnamon/base/cinnamon/ympbuild index 395f14eb..afa007ce 100644 --- a/cinnamon/base/cinnamon/ympbuild +++ b/cinnamon/base/cinnamon/ympbuild @@ -14,7 +14,7 @@ depends=(nm-applet accountsservice cinnamon-control-center cinnamon-menus cinnamon-session cinnamon-settings-daemon cjs gsound gstreamer libcroco libgnomekbd libkeybinder3 librsvg muffin nemo polkit-gnome py3-cairo py3-dbus py3-pygobject py3-pam py3-pexpect py3-pillow py3-inotify py3-tz py3-tinycss2 py3-xapp py3-requests - timezonemap xapp xdg-desktop-portal-xapp caribou + timezonemap xapp xdg-desktop-portal-xapp caribou ibus ) makedepends=(meson gobject-introspection intltool py3-sass) sha256sums=('12f41d7b67a81cc2f09fa728037f98cc4393da4ace94e8af0af016481cfff912'