public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: app-i18n/ibus/, app-i18n/ibus/files/
@ 2018-08-28 12:57 Akinori Hattori
  0 siblings, 0 replies; 6+ messages in thread
From: Akinori Hattori @ 2018-08-28 12:57 UTC (permalink / raw
  To: gentoo-commits

commit:     02d5c896c9451a96c4b949ccb0286b8e5ca0073e
Author:     Akinori Hattori <hattya <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 28 12:55:22 2018 +0000
Commit:     Akinori Hattori <hattya <AT> gentoo <DOT> org>
CommitDate: Tue Aug 28 12:57:29 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=02d5c896

app-i18n/ibus: new upstream release

Package-Manager: Portage-2.3.40, Repoman-2.3.9

 app-i18n/ibus/Manifest                            |   1 +
 app-i18n/ibus/files/ibus-1.5.19-gdk-wayland.patch |  88 ++++++++++
 app-i18n/ibus/ibus-1.5.19.ebuild                  | 187 ++++++++++++++++++++++
 3 files changed, 276 insertions(+)

diff --git a/app-i18n/ibus/Manifest b/app-i18n/ibus/Manifest
index 1290bc19446..8d1ff04e919 100644
--- a/app-i18n/ibus/Manifest
+++ b/app-i18n/ibus/Manifest
@@ -1,3 +1,4 @@
 DIST ibus-1.5.12.tar.gz 2190284 BLAKE2B 57ac7f9e8e8f0419bad1bf3aa629282ef3c0188d29e98bc872e594955f69e0863020d600c674cabed56db156a85210b5b3c1fe137b135395a27d2535e4938164 SHA512 a443bf0d1b71a52c18e7d13a0c69f38c48f6924cfb1669912880b87be1bf41bcb7d8d6252aafd6799e43d41c081fd94cf334fd836a0505c93a4e5c5b68241c81
 DIST ibus-1.5.16.tar.gz 2375719 BLAKE2B cf4cbd4556e43403c73da3cd2cb9f6da8e0baf5f90b3bc74f6d12c1bad057198ed828053dcbb3ddfd28c37d9011b6166e834385720aa827a68f594dbd4cf9298 SHA512 494ead69cf9c0111fd25fd1de27e796d89db4f08443afa1ec469f638469b25d8b19a59ea7ab0db0f3a130b9a89b3f2819667099ba38fc973d6efc61b367ce237
 DIST ibus-1.5.18.tar.gz 2760121 BLAKE2B dfcf549362ac9ac0cb9adb9cedc3fd7146877a42e0e086ad7be18ccb6239868ed940d2c371d83c2e2706c7120702af0bcb0106da60889f0b3d5857b8929b9165 SHA512 34519c3464eaf2cac3320e1568fc76f4edb281afa70f335c015b828ff4e86b3224d77b95cdc0b2e76e42459c54b1044264ff226963fe739dd553ac7326d2f2d3
+DIST ibus-1.5.19.tar.gz 2842274 BLAKE2B a5aea4770c1c0a58a9e0b1aa26f47a8ab9eb5060a0c06179663984c5b531464ff4575a8ece2f2ee2122f777ca615296c1e46ad4833c68ba2da038f2b85dea374 SHA512 ddcd464c9afb6d081df1cfac65069506877eb4818c3ba5594bcf76f3c6795ef6c17177a778dc89b2ef69d10d87297aa12c8e04f156b750e500b51b32787bd9fc

diff --git a/app-i18n/ibus/files/ibus-1.5.19-gdk-wayland.patch b/app-i18n/ibus/files/ibus-1.5.19-gdk-wayland.patch
new file mode 100644
index 00000000000..8eed29daf39
--- /dev/null
+++ b/app-i18n/ibus/files/ibus-1.5.19-gdk-wayland.patch
@@ -0,0 +1,88 @@
+From aa0f4252ff965729b871c91b4ed089bf98963c0b Mon Sep 17 00:00:00 2001
+From: fujiwarat <takao.fujiwara1@gmail.com>
+Date: Fri, 10 Aug 2018 15:43:58 +0900
+Subject: [PATCH] ui/gtk3: Check if gdk-wayland is installed
+
+BUG=https://github.com/ibus/ibus/issues/2035
+---
+ configure.ac              | 10 ++++++++++
+ ui/gtk3/Makefile.am       |  5 ++++-
+ ui/gtk3/panelbinding.vala |  5 +++++
+ 3 files changed, 19 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 091e20f2..4b6a7a21 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -237,12 +237,21 @@ if test x"$enable_gtk3" = x"yes"; then
+     PKG_CHECK_MODULES(GTK3, [
+         gtk+-3.0
+     ])
++    PKG_CHECK_EXISTS([gdk-wayland-3.0],
++        [enable_gdk3_wayland=yes],
++        [enable_gdk3_wayland=no]
++    )
+ 
+     gtk3_binary_version=`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`
+     GTK3_IM_MODULEDIR="$libdir"/gtk-3.0/$gtk3_binary_version/immodules
+ else
+     enable_gtk3="no (disabled, use --enable-gtk3 to enable)"
++    enable_gdk3_wayland=no
++fi
++if test x"$enable_gdk3_wayland" != x"yes"; then
++    enable_gdk3_wayland="no (disabled, need to install gdk-wayland-3.0.pc)"
+ fi
++AM_CONDITIONAL([ENABLE_GDK3_WAYLAND], [test x"$enable_gdk3_wayland" = x"yes"])
+ 
+ if test x"$enable_xim" = x"yes"; then
+     # Check for x11
+@@ -785,6 +794,7 @@ Build options:
+   Build gtk3 immodule           $enable_gtk3
+   Build XIM agent server        $enable_xim
+   Build wayland support         $enable_wayland
++  Build gdk3 wayland support    $enable_gdk3_wayland
+   Build appindicator support    $enable_appindicator
+   Build appindicator engine icon $enable_appindicator_engine_icon
+   Build python library          $enable_python_library
+diff --git a/ui/gtk3/Makefile.am b/ui/gtk3/Makefile.am
+index aaba7a4d..6ebc96ce 100644
+--- a/ui/gtk3/Makefile.am
++++ b/ui/gtk3/Makefile.am
+@@ -78,7 +78,6 @@ AM_VALAFLAGS = \
+ 	--pkg=ibus-1.0 \
+ 	--pkg=config \
+ 	--pkg=xi \
+-	--pkg=gdk-wayland \
+ 	--target-glib="$(VALA_TARGET_GLIB_VERSION)" \
+ 	$(NULL)
+ 
+@@ -105,6 +104,10 @@ if ENABLE_APPINDICATOR_ENGINE_ICON
+ AM_VALAFLAGS += --define=INDICATOR_ENGINE_ICON
+ endif
+ 
++if ENABLE_GDK3_WAYLAND
++AM_VALAFLAGS += --pkg=gdk-wayland --define=USE_GDK_WAYLAND
++endif
++
+ libexec_PROGRAMS = ibus-ui-gtk3
+ 
+ ibus_ui_gtk3_SOURCES = \
+diff --git a/ui/gtk3/panelbinding.vala b/ui/gtk3/panelbinding.vala
+index 95115b13..981b5509 100644
+--- a/ui/gtk3/panelbinding.vala
++++ b/ui/gtk3/panelbinding.vala
+@@ -237,9 +237,14 @@ class PanelBinding : IBus.PanelService {
+         GLib.Object(connection : bus.get_connection(),
+                     object_path : IBus.PATH_PANEL_EXTENSION_EMOJI);
+ 
++#if USE_GDK_WAYLAND
+         Type instance_type = Gdk.Display.get_default().get_type();
+         Type wayland_type = typeof(GdkWayland.Display);
+         m_is_wayland = instance_type.is_a(wayland_type);
++#else
++        m_is_wayland = false;
++        warning("Checking Wayland is disabled");
++#endif
+ 
+         m_bus = bus;
+         m_application = application;

diff --git a/app-i18n/ibus/ibus-1.5.19.ebuild b/app-i18n/ibus/ibus-1.5.19.ebuild
new file mode 100644
index 00000000000..f318087a003
--- /dev/null
+++ b/app-i18n/ibus/ibus-1.5.19.ebuild
@@ -0,0 +1,187 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+VALA_MIN_API_VERSION="0.34"
+VALA_USE_DEPEND="vapigen"
+
+inherit autotools bash-completion-r1 gnome2-utils python-r1 vala virtualx xdg-utils
+
+DESCRIPTION="Intelligent Input Bus for Linux / Unix OS"
+HOMEPAGE="https://github.com/ibus/ibus/wiki"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="+X +emoji gconf +gtk +gtk2 +introspection kde +libnotify nls +python test +unicode vala wayland"
+REQUIRED_USE="emoji? ( gtk )
+	gtk2? ( gtk )
+	kde? ( gtk )
+	libnotify? ( gtk )
+	python? (
+		${PYTHON_REQUIRED_USE}
+		introspection
+	)
+	test? ( gtk )
+	vala? ( introspection )"
+
+CDEPEND="app-text/iso-codes
+	dev-libs/glib:2
+	gnome-base/dconf
+	gnome-base/librsvg:2
+	sys-apps/dbus[X?]
+	X? (
+		x11-libs/libX11
+		!gtk? ( x11-libs/gtk+:2 )
+	)
+	gconf? ( gnome-base/gconf:2 )
+	gtk? (
+		x11-libs/gtk+:3
+		x11-libs/libX11
+		x11-libs/libXi
+		gtk2? ( x11-libs/gtk+:2 )
+	)
+	introspection? ( dev-libs/gobject-introspection )
+	kde? ( dev-qt/qtgui:5 )
+	libnotify? ( x11-libs/libnotify )
+	nls? ( virtual/libintl )
+	python? (
+		${PYTHON_DEPS}
+		dev-python/pygobject:3[${PYTHON_USEDEP}]
+	)
+	wayland? (
+		dev-libs/wayland
+		x11-libs/libxkbcommon
+	)"
+RDEPEND="${CDEPEND}
+	python? (
+		gtk? (
+			x11-libs/gtk+:3[introspection]
+		)
+	)"
+DEPEND="${CDEPEND}
+	$(vala_depend)
+	dev-util/intltool
+	virtual/pkgconfig
+	emoji? (
+		app-i18n/unicode-cldr
+		app-i18n/unicode-emoji
+	)
+	nls? ( sys-devel/gettext )
+	unicode? ( app-i18n/unicode-data )"
+
+PATCHES=( "${FILESDIR}"/${P}-gdk-wayland.patch )
+
+src_prepare() {
+	vala_src_prepare --ignore-use
+	sed -i "/UCD_DIR=/s/\$with_emoji_annotation_dir/\$with_ucd_dir/" configure.ac
+	if ! has_version 'x11-libs/gtk+:3[wayland]'; then
+		touch ui/gtk3/panelbinding.vala
+	fi
+	if ! use emoji; then
+		touch \
+			tools/main.vala \
+			ui/gtk3/panel.vala
+	fi
+	if ! use kde; then
+		touch ui/gtk3/panel.vala
+	fi
+	if ! use libnotify; then
+		touch ui/gtk3/panel.vala
+	fi
+	# for multiple Python implementations
+	sed -i "s/^\(PYGOBJECT_DIR =\).*/\1/" bindings/Makefile.am
+	# fix for parallel install
+	sed -i "/^if ENABLE_PYTHON2/,/^endif/d" bindings/pygobject/Makefile.am
+	# require user interaction
+	sed -i "/^TESTS += ibus-\(compose\|keypress\)/d" src/tests/Makefile.am
+
+	sed -i "/^bash_completion/d" tools/Makefile.am
+
+	default
+	eautoreconf
+	xdg_environment_reset
+}
+
+src_configure() {
+	local unicodedir="${EPREFIX}"/usr/share/unicode
+	local python_conf=()
+	if use python; then
+		python_setup
+		python_conf+=(
+			$(use_enable gtk setup)
+			--with-python=${EPYTHON}
+		)
+	else
+		python_conf+=( --disable-setup )
+	fi
+
+	econf \
+		$(use_enable X xim) \
+		$(use_enable emoji emoji-dict) \
+		$(use_with emoji unicode-emoji-dir "${unicodedir}"/emoji) \
+		$(use_with emoji emoji-annotation-dir "${unicodedir}"/cldr/common/annotations) \
+		$(use_enable gconf) \
+		$(use_enable gtk gtk3) \
+		$(use_enable gtk ui) \
+		$(use_enable gtk2) \
+		$(use_enable introspection) \
+		$(use_enable kde appindicator) \
+		$(use_enable libnotify) \
+		$(use_enable nls) \
+		$(use_enable test tests) \
+		$(use_enable unicode unicode-dict) \
+		$(use_with unicode ucd-dir "${EPREFIX}/usr/share/unicode-data") \
+		$(use_enable vala) \
+		$(use_enable wayland) \
+		"${python_conf[@]}"
+}
+
+src_test() {
+	unset DBUS_SESSION_BUS_ADDRESS
+	virtx emake -j1 check
+}
+
+src_install() {
+	default
+	find "${ED}" -name '*.la' -delete || die
+
+	if use python; then
+		python_install() {
+			emake -C bindings/pygobject \
+				pyoverridesdir="$(${EPYTHON} -c 'import gi; print(gi._overridesdir)')" \
+				DESTDIR="${D}" \
+				install
+		}
+		python_foreach_impl python_install
+	fi
+
+	keepdir /usr/share/ibus/engine
+
+	newbashcomp tools/${PN}.bash ${PN}
+
+	insinto /etc/X11/xinit/xinput.d
+	newins xinput-${PN} ${PN}.conf
+}
+
+pkg_preinst() {
+	use gconf && gnome2_gconf_savelist
+}
+
+pkg_postinst() {
+	use gconf && gnome2_gconf_install
+	use gtk && gnome2_query_immodules_gtk3
+	use gtk2 && gnome2_query_immodules_gtk2
+	gnome2_icon_cache_update
+	gnome2_schemas_update
+	dconf update
+}
+
+pkg_postrm() {
+	use gtk && gnome2_query_immodules_gtk3
+	use gtk2 && gnome2_query_immodules_gtk2
+	gnome2_icon_cache_update
+	gnome2_schemas_update
+}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-i18n/ibus/, app-i18n/ibus/files/
@ 2018-10-05  9:57 Naohiro Aota
  0 siblings, 0 replies; 6+ messages in thread
From: Naohiro Aota @ 2018-10-05  9:57 UTC (permalink / raw
  To: gentoo-commits

commit:     5cd01d132be45451a6ce59844c62b6d50242d5e9
Author:     Naohiro Aota <naota <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  4 21:47:46 2018 +0000
Commit:     Naohiro Aota <naota <AT> gentoo <DOT> org>
CommitDate: Fri Oct  5 09:55:59 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5cd01d13

app-i18n/ibus: add patch to fix test failures

Add upstream patch to enable GSettings in the test.
https://github.com/ibus/ibus/commit/10cc30eac200d10b581d9d2122d5a732f4880943

Closes: https://bugs.gentoo.org/664804
Signed-off-by: Naohiro Aota <naota <AT> gentoo.org>
Package-Manager: Portage-2.3.50, Repoman-2.3.11

 .../ibus-1.5.18-enable-gsettings-in-runtest.patch  | 62 ++++++++++++++++++++++
 app-i18n/ibus/ibus-1.5.18.ebuild                   |  4 +-
 2 files changed, 65 insertions(+), 1 deletion(-)

diff --git a/app-i18n/ibus/files/ibus-1.5.18-enable-gsettings-in-runtest.patch b/app-i18n/ibus/files/ibus-1.5.18-enable-gsettings-in-runtest.patch
new file mode 100644
index 00000000000..24b5cd3f6a8
--- /dev/null
+++ b/app-i18n/ibus/files/ibus-1.5.18-enable-gsettings-in-runtest.patch
@@ -0,0 +1,62 @@
+From 4b4fe00cc2750713ef8d2bc0a9f396ab577c36fc Mon Sep 17 00:00:00 2001
+From: Naohiro Aota <naota@gentoo.org>
+Date: Thu, 4 Oct 2018 18:14:17 +0900
+Subject: [PATCH] src/tests: Enable GSettings in runtest in ibus-1.5.18
+
+This patch is based on:
+https://github.com/ibus/ibus/commit/10cc30eac200d10b581d9d2122d5a732f4880943
+
+Signed-off-by: Naohiro Aota <naota@gentoo.org>
+---
+ src/tests/runtest | 21 +++++++++++++++++++++
+ 1 file changed, 21 insertions(+)
+
+diff --git a/src/tests/runtest b/src/tests/runtest
+index 0e43fee..84d85ab 100755
+--- a/src/tests/runtest
++++ b/src/tests/runtest
+@@ -29,6 +29,7 @@ ibus-engine-switch
+ ibus-compose
+ test-stress
+ "
++IBUS_SCHEMA_FILE='org.freedesktop.ibus.gschema.xml'
+ 
+ # Portable replacement of basename.
+ func_basename () {
+@@ -80,6 +81,12 @@ trap 'func_cleanup $tstdir' 1 2 3 15
+ tst=$1; shift
+ tstdir=tmp-`func_basename $tst`
+ 
++# IBusEngine has GSettings
++if test ! -f "$top_builddir/data/dconf/$IBUS_SCHEMA_FILE" ; then
++    echo "NOT FOUND $top_builddir/data/dconf/$IBUS_SCHEMA_FILE"
++    exit -1
++fi
++
+ test -d $tstdir || mkdir $tstdir
+ 
+ ( cd $tstdir
+@@ -101,6 +108,20 @@ test -d $tstdir || mkdir $tstdir
+     IBUS_ADDRESS_FILE=$PWD/ibus-daemon.pid
+     export IBUS_ADDRESS_FILE
+ 
++    cp "../$top_builddir/data/dconf/$IBUS_SCHEMA_FILE" $PWD
++    glib-compile-schemas $PWD
++    if test $? -ne 0 ; then
++        echo "FAILED glib-compile-schemas"
++        retval=1
++        return
++    fi
++    if test ! -f $PWD/gschemas.compiled ; then
++        echo "NOT FOUND $PWD/gschemas.compiled"
++        retval=1
++        return
++    fi
++    export GSETTINGS_SCHEMA_DIR=$PWD
++
+     # Start ibus-daemon.
+     ../$top_builddir/bus/ibus-daemon \
+     --daemonize \
+-- 
+2.19.0
+

diff --git a/app-i18n/ibus/ibus-1.5.18.ebuild b/app-i18n/ibus/ibus-1.5.18.ebuild
index 4aff43a818d..d966417a8ef 100644
--- a/app-i18n/ibus/ibus-1.5.18.ebuild
+++ b/app-i18n/ibus/ibus-1.5.18.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI="6"
@@ -72,6 +72,8 @@ DEPEND="${CDEPEND}
 	nls? ( sys-devel/gettext )
 	unicode? ( app-i18n/unicode-data )"
 
+PATCHES=( "${FILESDIR}"/${P}-enable-gsettings-in-runtest.patch )
+
 src_prepare() {
 	vala_src_prepare --ignore-use
 	sed -i "/UCD_DIR=/s/\$with_emoji_annotation_dir/\$with_ucd_dir/" configure.ac


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-i18n/ibus/, app-i18n/ibus/files/
@ 2020-03-16 15:14 Yixun Lan
  0 siblings, 0 replies; 6+ messages in thread
From: Yixun Lan @ 2020-03-16 15:14 UTC (permalink / raw
  To: gentoo-commits

commit:     a274fc8a5fd7791e5292e72f48586de6e503ef48
Author:     Yixun Lan <dlan <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 19 06:15:46 2019 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Mon Mar 16 15:14:13 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a274fc8a

app-i18n/ibus: fix missing authorization error

Bug: https://bugs.gentoo.org/695526
Package-Manager: Portage-2.3.79, Repoman-2.3.18
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>

 .../ibus/files/ibus-1.5.21-fix-authorization.patch | 175 +++++++++++++++++++++
 .../{ibus-1.5.21.ebuild => ibus-1.5.21-r1.ebuild}  |   1 +
 2 files changed, 176 insertions(+)

diff --git a/app-i18n/ibus/files/ibus-1.5.21-fix-authorization.patch b/app-i18n/ibus/files/ibus-1.5.21-fix-authorization.patch
new file mode 100644
index 00000000000..8b7674cddea
--- /dev/null
+++ b/app-i18n/ibus/files/ibus-1.5.21-fix-authorization.patch
@@ -0,0 +1,175 @@
+From 3d442dbf936d197aa11ca0a71663c2bc61696151 Mon Sep 17 00:00:00 2001
+From: fujiwarat <takao.fujiwara1@gmail.com>
+Date: Fri, 13 Sep 2019 15:59:03 +0900
+Subject: [PATCH] bus: Implement GDBusAuthObserver callback
+
+ibus uses a GDBusServer with G_DBUS_SERVER_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS,
+and doesn't set a GDBusAuthObserver, which allows anyone who can connect
+to its AF_UNIX socket to authenticate and be authorized to send method calls.
+It also seems to use an abstract AF_UNIX socket, which does not have
+filesystem permissions, so the practical effect might be that a local
+attacker can connect to another user's ibus service and make arbitrary
+method calls.
+
+BUGS=rhbz#1717958
+---
+ bus/server.c | 89 ++++++++++++++++++++++++++++++++++++++++++----------
+ 1 file changed, 73 insertions(+), 16 deletions(-)
+
+diff --git a/bus/server.c b/bus/server.c
+index 3a626230..2439de14 100644
+--- a/bus/server.c
++++ b/bus/server.c
+@@ -2,7 +2,8 @@
+ /* vim:set et sts=4: */
+ /* bus - The Input Bus
+  * Copyright (C) 2008-2010 Peng Huang <shawn.p.huang@gmail.com>
+- * Copyright (C) 2008-2010 Red Hat, Inc.
++ * Copyright (C) 2011-2019 Takao Fujiwara <takao.fujiwara1@gmail.com>
++ * Copyright (C) 2008-2019 Red Hat, Inc.
+  *
+  * This library is free software; you can redistribute it and/or
+  * modify it under the terms of the GNU Lesser General Public
+@@ -69,17 +70,64 @@ _restart_server (void)
+     exit (-1);
+ }
+ 
++/**
++ * bus_allow_mechanism_cb:
++ * @observer: A #GDBusAuthObserver.
++ * @mechanism: The name of the mechanism.
++ * @user_data: always %NULL.
++ *
++ * Check if @mechanism can be used to authenticate the other peer.
++ * Returns: %TRUE if the peer's mechanism is allowed.
++ */
++static gboolean
++bus_allow_mechanism_cb (GDBusAuthObserver     *observer,
++                        const gchar           *mechanism,
++                        G_GNUC_UNUSED gpointer user_data)
++{
++    if (g_strcmp0 (mechanism, "EXTERNAL") == 0)
++        return TRUE;
++    return FALSE;
++}
++
++/**
++ * bus_authorize_authenticated_peer_cb:
++ * @observer: A #GDBusAuthObserver.
++ * @stream: A #GIOStream.
++ * @credentials: A #GCredentials.
++ * @user_data: always %NULL.
++ *
++ * Check if a peer who has already authenticated should be authorized.
++ * Returns: %TRUE if the peer's credential is authorized.
++ */
++static gboolean
++bus_authorize_authenticated_peer_cb (GDBusAuthObserver     *observer,
++                                     GIOStream             *stream,
++                                     GCredentials          *credentials,
++                                     G_GNUC_UNUSED gpointer user_data)
++{
++    gboolean authorized = FALSE;
++    if (credentials) {
++        GCredentials *own_credentials = g_credentials_new ();
++        if (g_credentials_is_same_user (credentials, own_credentials, NULL))
++            authorized = TRUE;
++        g_object_unref (own_credentials);
++    }
++    return authorized;
++}
++
+ /**
+  * bus_new_connection_cb:
+- * @user_data: always NULL.
+- * @returns: TRUE when the function can handle the connection.
++ * @observer: A #GDBusAuthObserver.
++ * @dbus_connection: A #GDBusconnection.
++ * @user_data: always %NULL.
+  *
+  * Handle incoming connections.
++ * Returns: %TRUE when the function can handle the connection.
+  */
+ static gboolean
+-bus_new_connection_cb (GDBusServer     *server,
+-                       GDBusConnection *dbus_connection,
+-                       gpointer         user_data)
++bus_new_connection_cb (GDBusServer           *server,
++                       GDBusConnection       *dbus_connection,
++                       G_GNUC_UNUSED gpointer user_data)
+ {
+     BusConnection *connection = bus_connection_new (dbus_connection);
+     bus_dbus_impl_new_connection (dbus, connection);
+@@ -94,9 +142,9 @@ bus_new_connection_cb (GDBusServer     *server,
+ }
+ 
+ static void
+-_server_connect_start_portal_cb (GObject      *source_object,
+-                                 GAsyncResult *res,
+-                                 gpointer      user_data)
++_server_connect_start_portal_cb (GObject               *source_object,
++                                 GAsyncResult          *res,
++                                 G_GNUC_UNUSED gpointer user_data)
+ {
+     GVariant *result;
+     GError *error = NULL;
+@@ -113,9 +161,9 @@ _server_connect_start_portal_cb (GObject      *source_object,
+ }
+ 
+ static void
+-bus_acquired_handler (GDBusConnection *connection,
+-                      const gchar     *name,
+-                      gpointer         user_data)
++bus_acquired_handler (GDBusConnection       *connection,
++                      const gchar           *name,
++                      G_GNUC_UNUSED gpointer user_data)
+ {
+     g_dbus_connection_call (connection,
+                             IBUS_SERVICE_PORTAL,
+@@ -136,14 +184,17 @@ void
+ bus_server_init (void)
+ {
+     GError *error = NULL;
++    GDBusServerFlags flags = G_DBUS_SERVER_FLAGS_NONE;
++    gchar *guid;
++    GDBusAuthObserver *observer;
+ 
+     dbus = bus_dbus_impl_get_default ();
+     ibus = bus_ibus_impl_get_default ();
+     bus_dbus_impl_register_object (dbus, (IBusService *)ibus);
+ 
+     /* init server */
+-    GDBusServerFlags flags = G_DBUS_SERVER_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS;
+-    gchar *guid = g_dbus_generate_guid ();
++    guid = g_dbus_generate_guid ();
++    observer = g_dbus_auth_observer_new ();
+     if (!g_str_has_prefix (g_address, "unix:tmpdir=") &&
+         !g_str_has_prefix (g_address, "unix:path=")) {
+         g_error ("Your socket address does not have the format unix:tmpdir=$DIR "
+@@ -152,7 +203,7 @@ bus_server_init (void)
+     server =  g_dbus_server_new_sync (
+                     g_address, /* the place where the socket file lives, e.g. /tmp, abstract namespace, etc. */
+                     flags, guid,
+-                    NULL /* observer */,
++                    observer,
+                     NULL /* cancellable */,
+                     &error);
+     if (server == NULL) {
+@@ -162,7 +213,13 @@ bus_server_init (void)
+     }
+     g_free (guid);
+ 
+-    g_signal_connect (server, "new-connection", G_CALLBACK (bus_new_connection_cb), NULL);
++    g_signal_connect (observer, "allow-mechanism",
++                      G_CALLBACK (bus_allow_mechanism_cb), NULL);
++    g_signal_connect (observer, "authorize-authenticated-peer",
++                      G_CALLBACK (bus_authorize_authenticated_peer_cb), NULL);
++    g_object_unref (observer);
++    g_signal_connect (server, "new-connection",
++                      G_CALLBACK (bus_new_connection_cb), NULL);
+ 
+     g_dbus_server_start (server);
+ 
+-- 
+2.24.0
+

diff --git a/app-i18n/ibus/ibus-1.5.21.ebuild b/app-i18n/ibus/ibus-1.5.21-r1.ebuild
similarity index 98%
rename from app-i18n/ibus/ibus-1.5.21.ebuild
rename to app-i18n/ibus/ibus-1.5.21-r1.ebuild
index 7d58048b667..16b7862de4c 100644
--- a/app-i18n/ibus/ibus-1.5.21.ebuild
+++ b/app-i18n/ibus/ibus-1.5.21-r1.ebuild
@@ -71,6 +71,7 @@ DEPEND="${CDEPEND}
 	nls? ( sys-devel/gettext )
 	unicode? ( app-i18n/unicode-data )"
 
+PATCHES=( "${FILESDIR}"/${P}-fix-authorization.patch )
 src_prepare() {
 	vala_src_prepare --ignore-use
 	sed -i "/UCD_DIR=/s/\$with_emoji_annotation_dir/\$with_ucd_dir/" configure.ac


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-i18n/ibus/, app-i18n/ibus/files/
@ 2021-11-24  9:35 Yixun Lan
  0 siblings, 0 replies; 6+ messages in thread
From: Yixun Lan @ 2021-11-24  9:35 UTC (permalink / raw
  To: gentoo-commits

commit:     003bcb4ae9e303c8c491dac0e60ca8be2188e1c3
Author:     Yixun Lan <dlan <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 24 09:31:55 2021 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Wed Nov 24 09:33:36 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=003bcb4a

app-i18n/ibus: fix wrong candidate window position issue

Closes: https://bugs.gentoo.org/824494
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>

 .../ibus/files/ibus-1.5.25-ibusimcontext.patch     |  35 ++++
 app-i18n/ibus/ibus-1.5.25-r1.ebuild                | 194 +++++++++++++++++++++
 2 files changed, 229 insertions(+)

diff --git a/app-i18n/ibus/files/ibus-1.5.25-ibusimcontext.patch b/app-i18n/ibus/files/ibus-1.5.25-ibusimcontext.patch
new file mode 100644
index 000000000000..6187ff77fbac
--- /dev/null
+++ b/app-i18n/ibus/files/ibus-1.5.25-ibusimcontext.patch
@@ -0,0 +1,35 @@
+https://github.com/ibus/ibus/issues/2337
+https://bugs.gentoo.org/824494
+---
+diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c
+index da9a402..b1ccede 100644
+--- a/client/gtk2/ibusimcontext.c
++++ b/client/gtk2/ibusimcontext.c
+@@ -1497,7 +1497,10 @@ _set_cursor_location_internal (IBusIMContext *ibusimcontext)
+ 
+ #if GTK_CHECK_VERSION (3, 98, 4)
+ #elif GTK_CHECK_VERSION (2, 91, 0)
+-    area.y += gdk_window_get_height (ibusimcontext->client_window);
++    if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
++        area.x = 0;
++        area.y += gdk_window_get_height (ibusimcontext->client_window);
++    }
+ #else
+     if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
+         gint w, h;
+diff --git a/client/gtk3/ibusimcontext.c b/client/gtk3/ibusimcontext.c
+index da9a402..b1ccede 100644
+--- a/client/gtk3/ibusimcontext.c
++++ b/client/gtk3/ibusimcontext.c
+@@ -1497,7 +1497,10 @@ _set_cursor_location_internal (IBusIMContext *ibusimcontext)
+ 
+ #if GTK_CHECK_VERSION (3, 98, 4)
+ #elif GTK_CHECK_VERSION (2, 91, 0)
+-    area.y += gdk_window_get_height (ibusimcontext->client_window);
++    if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
++        area.x = 0;
++        area.y += gdk_window_get_height (ibusimcontext->client_window);
++    }
+ #else
+     if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
+         gint w, h;

diff --git a/app-i18n/ibus/ibus-1.5.25-r1.ebuild b/app-i18n/ibus/ibus-1.5.25-r1.ebuild
new file mode 100644
index 000000000000..e4d24fa2a59a
--- /dev/null
+++ b/app-i18n/ibus/ibus-1.5.25-r1.ebuild
@@ -0,0 +1,194 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+VALA_MIN_API_VERSION="0.34"
+VALA_MAX_API_VERSION="0.50"
+VALA_USE_DEPEND="vapigen"
+
+inherit autotools bash-completion-r1 gnome2-utils python-r1 vala virtualx xdg-utils
+
+GENTOO_VER=
+DESCRIPTION="Intelligent Input Bus for Linux / Unix OS"
+HOMEPAGE="https://github.com/ibus/ibus/wiki"
+
+[[ -n ${GENTOO_VER} ]] && \
+	GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-gentoo-patches-${GENTOO_VER}.tar.xz"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.gz
+	${GENTOO_PATCHSET_URI}"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="+X +emoji +gtk +gtk2 +introspection kde nls +python test +unicode vala wayland"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="emoji? ( gtk )
+	gtk2? ( gtk )
+	kde? ( gtk )
+	python? (
+		${PYTHON_REQUIRED_USE}
+		introspection
+	)
+	test? ( gtk )
+	vala? ( introspection )"
+
+CDEPEND="app-text/iso-codes
+	dev-libs/glib:2
+	gnome-base/dconf
+	gnome-base/librsvg:2
+	sys-apps/dbus[X?]
+	X? (
+		x11-libs/libX11
+		>=x11-libs/libXfixes-6.0.0
+		!gtk? ( x11-libs/gtk+:2 )
+	)
+	gtk? (
+		x11-libs/gtk+:3
+		x11-libs/libX11
+		x11-libs/libXi
+		gtk2? ( x11-libs/gtk+:2 )
+	)
+	introspection? ( dev-libs/gobject-introspection )
+	kde? ( dev-qt/qtgui:5 )
+	nls? ( virtual/libintl )
+	python? (
+		${PYTHON_DEPS}
+		dev-python/pygobject:3[${PYTHON_USEDEP}]
+	)
+	wayland? (
+		dev-libs/wayland
+		x11-libs/libxkbcommon
+	)"
+RDEPEND="${CDEPEND}
+	python? (
+		gtk? (
+			x11-libs/gtk+:3[introspection]
+		)
+	)"
+DEPEND="${CDEPEND}
+	$(vala_depend)
+	dev-util/glib-utils
+	virtual/pkgconfig
+	x11-misc/xkeyboard-config
+	emoji? (
+		app-i18n/unicode-cldr
+		app-i18n/unicode-emoji
+	)
+	nls? ( sys-devel/gettext )
+	unicode? ( app-i18n/unicode-data )"
+
+PATCHES=( "${FILESDIR}"/${P}-ibusimcontext.patch )
+
+src_prepare() {
+	vala_src_prepare --ignore-use
+	sed -i "/UCD_DIR=/s/\$with_emoji_annotation_dir/\$with_ucd_dir/" configure.ac
+	if ! has_version 'x11-libs/gtk+:3[wayland]'; then
+		touch ui/gtk3/panelbinding.vala
+	fi
+	if ! use emoji; then
+		touch \
+			tools/main.vala \
+			ui/gtk3/panel.vala
+	fi
+	if ! use kde; then
+		touch ui/gtk3/panel.vala
+	fi
+	if [[ -n ${GENTOO_VER} ]]; then
+		einfo "Try to apply Gentoo specific patch set"
+		eapply "${WORKDIR}"/patches-gentoo/*.patch
+	fi
+
+	# for multiple Python implementations
+	sed -i "s/^\(PYGOBJECT_DIR =\).*/\1/" bindings/Makefile.am
+	# fix for parallel install
+	sed -i "/^if ENABLE_PYTHON2/,/^endif/d" bindings/pygobject/Makefile.am
+	# require user interaction
+	sed -i "/^TESTS += ibus-\(compose\|keypress\)/d" src/tests/Makefile.am
+
+	sed -i "/^bash_completion/d" tools/Makefile.am
+
+	default
+	eautoreconf
+	xdg_environment_reset
+}
+
+src_configure() {
+	local unicodedir="${EPREFIX}"/usr/share/unicode
+	local python_conf=()
+	if use python; then
+		python_setup
+		python_conf+=(
+			$(use_enable gtk setup)
+			--with-python=${EPYTHON}
+		)
+	else
+		python_conf+=( --disable-setup )
+	fi
+
+	econf \
+		$(use_enable X xim) \
+		$(use_enable emoji emoji-dict) \
+		$(use_with emoji unicode-emoji-dir "${unicodedir}"/emoji) \
+		$(use_with emoji emoji-annotation-dir "${unicodedir}"/cldr/common/annotations) \
+		$(use_enable gtk gtk3) \
+		$(use_enable gtk ui) \
+		$(use_enable gtk2) \
+		$(use_enable introspection) \
+		$(use_enable kde appindicator) \
+		$(use_enable nls) \
+		$(use_enable test tests) \
+		$(use_enable unicode unicode-dict) \
+		$(use_with unicode ucd-dir "${EPREFIX}/usr/share/unicode-data") \
+		$(use_enable vala) \
+		$(use_enable wayland) \
+		"${python_conf[@]}"
+}
+
+src_test() {
+	unset DBUS_SESSION_BUS_ADDRESS
+	virtx emake -j1 check
+}
+
+src_install() {
+	default
+	find "${ED}" -name '*.la' -delete || die
+
+	if use python; then
+		python_install() {
+			emake -C bindings/pygobject \
+				pyoverridesdir="$(${EPYTHON} -c 'import gi; print(gi._overridesdir)')" \
+				DESTDIR="${D}" \
+				install
+
+			python_optimize
+		}
+		python_foreach_impl python_install
+	fi
+
+	keepdir /usr/share/ibus/engine
+
+	newbashcomp tools/${PN}.bash ${PN}
+
+	insinto /etc/X11/xinit/xinput.d
+	newins xinput-${PN} ${PN}.conf
+
+	# Undo compression of man page
+	find "${ED}"/usr/share/man -type f -name '*.gz' -exec gzip -d {} \; || die
+}
+
+pkg_postinst() {
+	use gtk && gnome2_query_immodules_gtk3
+	use gtk2 && gnome2_query_immodules_gtk2
+	xdg_icon_cache_update
+	gnome2_schemas_update
+	dconf update
+}
+
+pkg_postrm() {
+	use gtk && gnome2_query_immodules_gtk3
+	use gtk2 && gnome2_query_immodules_gtk2
+	xdg_icon_cache_update
+	gnome2_schemas_update
+}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-i18n/ibus/, app-i18n/ibus/files/
@ 2022-05-12 17:50 Matt Turner
  0 siblings, 0 replies; 6+ messages in thread
From: Matt Turner @ 2022-05-12 17:50 UTC (permalink / raw
  To: gentoo-commits

commit:     a38330bcb61155bcb7897f71ce07ba34272d4b9f
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Thu May 12 17:45:47 2022 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Thu May 12 17:50:08 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a38330bc

app-i18n/ibus: Fix memory leak

Closes: https://bugs.gentoo.org/843725
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 .../ibus-1.5.26-src-Fix-refcounting-issues.patch   | 273 +++++++++++++++++++++
 .../{ibus-1.5.26.ebuild => ibus-1.5.26-r1.ebuild}  |   4 +
 2 files changed, 277 insertions(+)

diff --git a/app-i18n/ibus/files/ibus-1.5.26-src-Fix-refcounting-issues.patch b/app-i18n/ibus/files/ibus-1.5.26-src-Fix-refcounting-issues.patch
new file mode 100644
index 000000000000..5bd610024a1b
--- /dev/null
+++ b/app-i18n/ibus/files/ibus-1.5.26-src-Fix-refcounting-issues.patch
@@ -0,0 +1,273 @@
+https://github.com/ibus/ibus/issues/2387
+https://bugs.gentoo.org/843725
+
+From 17648f0522910480b6c5dd4f5356ca1f6c160bf5 Mon Sep 17 00:00:00 2001
+From: Carlos Garnacho <carlosg@gnome.org>
+Date: Tue, 29 Mar 2022 22:48:19 +0200
+Subject: [PATCH] src: Fix refcounting issues
+
+Commit 5a455b1ead attempted to fix both GLib warnings around
+floating references and other presumed refcounting issues. However
+it missed 2 kinds of bugs:
+
+- The places that take an IBusText created from a static string
+  were made to avoid freeing it afterwards, but the staticness refers
+  to the string content, not the object itself.
+- The places that are documented to emit signals on floating object
+  references used to do the following after signal emission:
+
+  if (g_object_is_floating (object))
+    g_object_unref (object)
+
+  And did possibly trigger GLib warnings were changed to:
+
+  if (g_object_is_floating (object))
+    g_object_sink_ref (object);
+  g_object_unref (object);
+
+  Which fixes the GLib warning for floating references, but do
+  unintendedly steal one reference away for non floating references.
+
+This commit is essentially a revert of commit 5a455b1ead, but
+addressing both things differently:
+
+- All label/tooltip/symbol IBusText properties in IBusProperty do
+  now always sink the reference of the stored object.
+
+- All places documented as maybe using objects with a floating reference
+  on signals changed to doing:
+
+  if (g_object_is_floating (object)) {
+    g_object_ref_sink (object);
+    g_object_unref (object);
+  }
+
+  So the floating reference is owned and unreferenced without warnings,
+  but already owned references are left unchanged.
+
+This addresses the possible GLib warnings, fixes the possible double
+unrefs happening on IBusText used in signals, and fixes the missing
+unrefs on IBusText objects created from static strings.
+
+BUG=https://github.com/ibus/ibus/issues/2393
+BUG=https://github.com/ibus/ibus/issues/2387
+---
+ src/ibusinputcontext.c | 35 +++++++++++++++++++++--------------
+ src/ibusproperty.c     | 32 +++++++++++++++++---------------
+ 2 files changed, 38 insertions(+), 29 deletions(-)
+
+diff --git a/src/ibusinputcontext.c b/src/ibusinputcontext.c
+index 4b27551b..7981de38 100644
+--- a/src/ibusinputcontext.c
++++ b/src/ibusinputcontext.c
+@@ -549,9 +549,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
+         g_variant_unref (variant);
+         g_signal_emit (context, context_signals[COMMIT_TEXT], 0, text);
+ 
+-        if (g_object_is_floating (text))
++        if (g_object_is_floating (text)) {
+             g_object_ref_sink (text);
+-        g_object_unref (text);
++            g_object_unref (text);
++        }
+         return;
+     }
+     if (g_strcmp0 (signal_name, "UpdatePreeditText") == 0) {
+@@ -569,9 +570,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
+                        cursor_pos,
+                        visible);
+ 
+-        if (g_object_is_floating (text))
++        if (g_object_is_floating (text)) {
+             g_object_ref_sink (text);
+-        g_object_unref (text);
++            g_object_unref (text);
++        }
+         return;
+     }
+     if (g_strcmp0 (signal_name, "UpdatePreeditTextWithMode") == 0) {
+@@ -592,9 +594,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
+                        visible,
+                        mode);
+ 
+-        if (g_object_is_floating (text))
++        if (g_object_is_floating (text)) {
+             g_object_ref_sink (text);
+-        g_object_unref (text);
++            g_object_unref (text);
++        }
+         return;
+     }
+ 
+@@ -621,9 +624,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
+                        0,
+                        text,
+                        visible);
+-        if (g_object_is_floating (text))
++        if (g_object_is_floating (text)) {
+             g_object_ref_sink (text);
+-        g_object_unref (text);
++            g_object_unref (text);
++        }
+         return;
+     }
+ 
+@@ -640,9 +644,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
+                        0,
+                        table,
+                        visible);
+-        if (g_object_is_floating (table))
++        if (g_object_is_floating (table)) {
+             g_object_ref_sink (table);
+-        g_object_unref (table);
++            g_object_unref (table);
++        }
+         return;
+ 
+     }
+@@ -659,9 +664,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
+                        0,
+                        prop_list);
+ 
+-        if (g_object_is_floating (prop_list))
++        if (g_object_is_floating (prop_list)) {
+             g_object_ref_sink (prop_list);
+-        g_object_unref (prop_list);
++            g_object_unref (prop_list);
++        }
+         return;
+     }
+ 
+@@ -673,9 +679,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
+ 
+         g_signal_emit (context, context_signals[UPDATE_PROPERTY], 0, prop);
+ 
+-        if (g_object_is_floating (prop))
++        if (g_object_is_floating (prop)) {
+             g_object_ref_sink (prop);
+-        g_object_unref (prop);
++            g_object_unref (prop);
++        }
+         return;
+     }
+ 
+diff --git a/src/ibusproperty.c b/src/ibusproperty.c
+index 6d4ed088..cd8a0e2a 100644
+--- a/src/ibusproperty.c
++++ b/src/ibusproperty.c
+@@ -336,20 +336,17 @@ ibus_property_destroy (IBusProperty *prop)
+     prop->priv->icon = NULL;
+ 
+     if (prop->priv->label) {
+-        if (!ibus_text_get_is_static (prop->priv->label))
+-            g_object_unref (prop->priv->label);
++        g_object_unref (prop->priv->label);
+         prop->priv->label = NULL;
+     }
+ 
+     if (prop->priv->symbol) {
+-        if (!ibus_text_get_is_static (prop->priv->symbol))
+-            g_object_unref (prop->priv->symbol);
++        g_object_unref (prop->priv->symbol);
+         prop->priv->symbol = NULL;
+     }
+ 
+     if (prop->priv->tooltip) {
+-        if (!ibus_text_get_is_static (prop->priv->tooltip))
+-            g_object_unref (prop->priv->tooltip);
++        g_object_unref (prop->priv->tooltip);
+         prop->priv->tooltip = NULL;
+     }
+ 
+@@ -404,7 +401,7 @@ ibus_property_deserialize (IBusProperty *prop,
+     g_variant_get_child (variant, retval++, "u", &prop->priv->type);
+ 
+     GVariant *subvar = g_variant_get_child_value (variant, retval++);
+-    if (prop->priv->label && !ibus_text_get_is_static (prop->priv->label)) {
++    if (prop->priv->label) {
+         g_object_unref (prop->priv->label);
+     }
+     prop->priv->label = IBUS_TEXT (ibus_serializable_deserialize (subvar));
+@@ -414,7 +411,7 @@ ibus_property_deserialize (IBusProperty *prop,
+     ibus_g_variant_get_child_string (variant, retval++, &prop->priv->icon);
+ 
+     subvar = g_variant_get_child_value (variant, retval++);
+-    if (prop->priv->tooltip && !ibus_text_get_is_static (prop->priv->tooltip)) {
++    if (prop->priv->tooltip) {
+         g_object_unref (prop->priv->tooltip);
+     }
+     prop->priv->tooltip = IBUS_TEXT (ibus_serializable_deserialize (subvar));
+@@ -435,7 +432,7 @@ ibus_property_deserialize (IBusProperty *prop,
+ 
+     /* Keep the serialized order for the compatibility when add new members. */
+     subvar = g_variant_get_child_value (variant, retval++);
+-    if (prop->priv->symbol && !ibus_text_get_is_static (prop->priv->symbol)) {
++    if (prop->priv->symbol) {
+         g_object_unref (prop->priv->symbol);
+     }
+     prop->priv->symbol = IBUS_TEXT (ibus_serializable_deserialize (subvar));
+@@ -567,7 +564,7 @@ ibus_property_set_label (IBusProperty *prop,
+     g_assert (IBUS_IS_PROPERTY (prop));
+     g_return_if_fail (label == NULL || IBUS_IS_TEXT (label));
+ 
+-    if (prop->priv->label && !ibus_text_get_is_static (prop->priv->label)) {
++    if (prop->priv->label) {
+         g_object_unref (prop->priv->label);
+     }
+ 
+@@ -575,8 +572,10 @@ ibus_property_set_label (IBusProperty *prop,
+         prop->priv->label = ibus_text_new_from_static_string ("");
+     }
+     else {
+-        prop->priv->label = g_object_ref_sink (label);
++        prop->priv->label = label;
+     }
++
++    g_object_ref_sink (prop->priv->label);
+ }
+ 
+ void
+@@ -586,7 +585,7 @@ ibus_property_set_symbol (IBusProperty *prop,
+     g_assert (IBUS_IS_PROPERTY (prop));
+     g_return_if_fail (symbol == NULL || IBUS_IS_TEXT (symbol));
+ 
+-    if (prop->priv->symbol && !ibus_text_get_is_static (prop->priv->symbol)) {
++    if (prop->priv->symbol) {
+         g_object_unref (prop->priv->symbol);
+     }
+ 
+@@ -594,8 +593,10 @@ ibus_property_set_symbol (IBusProperty *prop,
+         prop->priv->symbol = ibus_text_new_from_static_string ("");
+     }
+     else {
+-        prop->priv->symbol = g_object_ref_sink (symbol);
++        prop->priv->symbol = symbol;
+     }
++
++    g_object_ref_sink (prop->priv->symbol);
+ }
+ 
+ void
+@@ -615,7 +616,7 @@ ibus_property_set_tooltip (IBusProperty *prop,
+     g_assert (IBUS_IS_PROPERTY (prop));
+     g_assert (tooltip == NULL || IBUS_IS_TEXT (tooltip));
+ 
+-    if (prop->priv->tooltip && !ibus_text_get_is_static (prop->priv->tooltip)) {
++    if (prop->priv->tooltip) {
+         g_object_unref (prop->priv->tooltip);
+     }
+ 
+@@ -624,8 +625,9 @@ ibus_property_set_tooltip (IBusProperty *prop,
+     }
+     else {
+         prop->priv->tooltip = tooltip;
+-        g_object_ref_sink (prop->priv->tooltip);
+     }
++
++    g_object_ref_sink (prop->priv->tooltip);
+ }
+ 
+ void
+-- 
+2.35.1
+

diff --git a/app-i18n/ibus/ibus-1.5.26.ebuild b/app-i18n/ibus/ibus-1.5.26-r1.ebuild
similarity index 98%
rename from app-i18n/ibus/ibus-1.5.26.ebuild
rename to app-i18n/ibus/ibus-1.5.26-r1.ebuild
index 93ead550b71b..40de7864df87 100644
--- a/app-i18n/ibus/ibus-1.5.26.ebuild
+++ b/app-i18n/ibus/ibus-1.5.26-r1.ebuild
@@ -77,6 +77,10 @@ BDEPEND="
 	nls? ( sys-devel/gettext )
 	unicode? ( app-i18n/unicode-data )"
 
+PATCHES=(
+	"${FILESDIR}"/${P}-src-Fix-refcounting-issues.patch
+)
+
 src_prepare() {
 	vala_src_prepare --ignore-use
 	sed -i "/UCD_DIR=/s/\$with_emoji_annotation_dir/\$with_ucd_dir/" configure.ac


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-i18n/ibus/, app-i18n/ibus/files/
@ 2023-11-19  1:04 Matt Turner
  0 siblings, 0 replies; 6+ messages in thread
From: Matt Turner @ 2023-11-19  1:04 UTC (permalink / raw
  To: gentoo-commits

commit:     af9760eed584f581e6bc26ca2e84b56c72c9c251
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 19 01:04:20 2023 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sun Nov 19 01:04:50 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=af9760ee

app-i18n/ibus: Drop old versions

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 app-i18n/ibus/Manifest                             |   3 -
 .../ibus-1.5.26-src-Fix-refcounting-issues.patch   | 273 ---------------------
 app-i18n/ibus/ibus-1.5.26-r1.ebuild                | 227 -----------------
 app-i18n/ibus/ibus-1.5.28-r1.ebuild                | 240 ------------------
 app-i18n/ibus/ibus-1.5.28.ebuild                   | 231 -----------------
 5 files changed, 974 deletions(-)

diff --git a/app-i18n/ibus/Manifest b/app-i18n/ibus/Manifest
index 60ec683629d8..3fd054db1f2c 100644
--- a/app-i18n/ibus/Manifest
+++ b/app-i18n/ibus/Manifest
@@ -1,6 +1,3 @@
-DIST ibus-1.5.26.tar.gz 3715263 BLAKE2B 80eb293b028d431b76c015c6d6d9fea92888554f6f34ec126853df189746d9976569ec2380146187d13337a011668b1f15fc57a95284658c8afc7824a67b5898 SHA512 923607c17114af673dcc36532fb44a278b61161ee1b7d4e01b2e0dcffc40c95eb91c6416acc9c0da0333e933863e15263e9a5ff1e467cfc02b71398d601b9714
 DIST ibus-1.5.27.tar.gz 3779541 BLAKE2B e98f775cd62036ae02dafd984933343e99390a6a1e77b672feb4bc00dd1d423126227bded2d22b8bc9fa214e572ea906c407658de8ee20e036f8753836d68f46 SHA512 b5f3ae555d19eb780a416383e6351ed2cd8834fcc2bc4ebe4f4a194fc934dd055c5e782f9ec382fb21e1e2103c5409804174a79d192b5494a9018ce9081305e4
-DIST ibus-1.5.28-upstream-patches-0.tar.xz 23820 BLAKE2B 773736257e166170060458ad66b99889d2e54ef480504fe86ee65bc41364243ddcb5c7625aaa66a3e266c735d024c4f6c51d559484214d1f1c04a30479ccba62 SHA512 5555162bcb129f9e07c135c921c778de080aeaec81d56bedcf62d3b568cf39515e41662790c5a3d34241586d58785b887bbbaa7a75f486338968e3a496aa6433
-DIST ibus-1.5.28.tar.gz 3871246 BLAKE2B 7117c09e708df8a08e6684cc1096f38873503eb2c7937e0e3b02aeff678c96b3e2fc59fa4dfc7a11275b2e1b3349ae136041f8f4730aadc66339914b77c577d3 SHA512 5bfb9158a5810d38af900775ed30406823872c431ef4772b476afa7b58c120ef508a51b961620ea6003549f1f49cf05484992beee8677b138f1162afc73ab247
 DIST ibus-1.5.29-rc1.tar.gz 3989492 BLAKE2B c99f42fcd18bed240bf5e9f5b406bc879b05b12f3d0c14713e21b8c99fbcde32cd880dead1374731914289c022b1f160d9961bdbd9e9a0a3ced86949c5beb811 SHA512 776a01bcfd730be67e0f7d730f7b4b0a586d39744deb605359330a1786542acae52efbc085c39b8417b20164e45c259b40b29725f53fb1b69e2b340778ff28dc
 DIST ibus-1.5.29-rc2.tar.gz 3991416 BLAKE2B c185c0cf8af79a80ee04f414e13c4b58bd2f18891851d2f018713848b3bc0fe0516c8c0cf8f64204040f10b6b4a5304c8be6305449d7290b5d08412246d3af40 SHA512 47dd39c9615783b6c157a25e8a2506dc2e1f440d56aa649ee8cb95a390cb4efab9c95e72ac84b5d042c25e350599b4d352ddc66f1385af6660d4a7a296e44ca7

diff --git a/app-i18n/ibus/files/ibus-1.5.26-src-Fix-refcounting-issues.patch b/app-i18n/ibus/files/ibus-1.5.26-src-Fix-refcounting-issues.patch
deleted file mode 100644
index 5bd610024a1b..000000000000
--- a/app-i18n/ibus/files/ibus-1.5.26-src-Fix-refcounting-issues.patch
+++ /dev/null
@@ -1,273 +0,0 @@
-https://github.com/ibus/ibus/issues/2387
-https://bugs.gentoo.org/843725
-
-From 17648f0522910480b6c5dd4f5356ca1f6c160bf5 Mon Sep 17 00:00:00 2001
-From: Carlos Garnacho <carlosg@gnome.org>
-Date: Tue, 29 Mar 2022 22:48:19 +0200
-Subject: [PATCH] src: Fix refcounting issues
-
-Commit 5a455b1ead attempted to fix both GLib warnings around
-floating references and other presumed refcounting issues. However
-it missed 2 kinds of bugs:
-
-- The places that take an IBusText created from a static string
-  were made to avoid freeing it afterwards, but the staticness refers
-  to the string content, not the object itself.
-- The places that are documented to emit signals on floating object
-  references used to do the following after signal emission:
-
-  if (g_object_is_floating (object))
-    g_object_unref (object)
-
-  And did possibly trigger GLib warnings were changed to:
-
-  if (g_object_is_floating (object))
-    g_object_sink_ref (object);
-  g_object_unref (object);
-
-  Which fixes the GLib warning for floating references, but do
-  unintendedly steal one reference away for non floating references.
-
-This commit is essentially a revert of commit 5a455b1ead, but
-addressing both things differently:
-
-- All label/tooltip/symbol IBusText properties in IBusProperty do
-  now always sink the reference of the stored object.
-
-- All places documented as maybe using objects with a floating reference
-  on signals changed to doing:
-
-  if (g_object_is_floating (object)) {
-    g_object_ref_sink (object);
-    g_object_unref (object);
-  }
-
-  So the floating reference is owned and unreferenced without warnings,
-  but already owned references are left unchanged.
-
-This addresses the possible GLib warnings, fixes the possible double
-unrefs happening on IBusText used in signals, and fixes the missing
-unrefs on IBusText objects created from static strings.
-
-BUG=https://github.com/ibus/ibus/issues/2393
-BUG=https://github.com/ibus/ibus/issues/2387
----
- src/ibusinputcontext.c | 35 +++++++++++++++++++++--------------
- src/ibusproperty.c     | 32 +++++++++++++++++---------------
- 2 files changed, 38 insertions(+), 29 deletions(-)
-
-diff --git a/src/ibusinputcontext.c b/src/ibusinputcontext.c
-index 4b27551b..7981de38 100644
---- a/src/ibusinputcontext.c
-+++ b/src/ibusinputcontext.c
-@@ -549,9 +549,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
-         g_variant_unref (variant);
-         g_signal_emit (context, context_signals[COMMIT_TEXT], 0, text);
- 
--        if (g_object_is_floating (text))
-+        if (g_object_is_floating (text)) {
-             g_object_ref_sink (text);
--        g_object_unref (text);
-+            g_object_unref (text);
-+        }
-         return;
-     }
-     if (g_strcmp0 (signal_name, "UpdatePreeditText") == 0) {
-@@ -569,9 +570,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
-                        cursor_pos,
-                        visible);
- 
--        if (g_object_is_floating (text))
-+        if (g_object_is_floating (text)) {
-             g_object_ref_sink (text);
--        g_object_unref (text);
-+            g_object_unref (text);
-+        }
-         return;
-     }
-     if (g_strcmp0 (signal_name, "UpdatePreeditTextWithMode") == 0) {
-@@ -592,9 +594,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
-                        visible,
-                        mode);
- 
--        if (g_object_is_floating (text))
-+        if (g_object_is_floating (text)) {
-             g_object_ref_sink (text);
--        g_object_unref (text);
-+            g_object_unref (text);
-+        }
-         return;
-     }
- 
-@@ -621,9 +624,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
-                        0,
-                        text,
-                        visible);
--        if (g_object_is_floating (text))
-+        if (g_object_is_floating (text)) {
-             g_object_ref_sink (text);
--        g_object_unref (text);
-+            g_object_unref (text);
-+        }
-         return;
-     }
- 
-@@ -640,9 +644,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
-                        0,
-                        table,
-                        visible);
--        if (g_object_is_floating (table))
-+        if (g_object_is_floating (table)) {
-             g_object_ref_sink (table);
--        g_object_unref (table);
-+            g_object_unref (table);
-+        }
-         return;
- 
-     }
-@@ -659,9 +664,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
-                        0,
-                        prop_list);
- 
--        if (g_object_is_floating (prop_list))
-+        if (g_object_is_floating (prop_list)) {
-             g_object_ref_sink (prop_list);
--        g_object_unref (prop_list);
-+            g_object_unref (prop_list);
-+        }
-         return;
-     }
- 
-@@ -673,9 +679,10 @@ ibus_input_context_g_signal (GDBusProxy  *proxy,
- 
-         g_signal_emit (context, context_signals[UPDATE_PROPERTY], 0, prop);
- 
--        if (g_object_is_floating (prop))
-+        if (g_object_is_floating (prop)) {
-             g_object_ref_sink (prop);
--        g_object_unref (prop);
-+            g_object_unref (prop);
-+        }
-         return;
-     }
- 
-diff --git a/src/ibusproperty.c b/src/ibusproperty.c
-index 6d4ed088..cd8a0e2a 100644
---- a/src/ibusproperty.c
-+++ b/src/ibusproperty.c
-@@ -336,20 +336,17 @@ ibus_property_destroy (IBusProperty *prop)
-     prop->priv->icon = NULL;
- 
-     if (prop->priv->label) {
--        if (!ibus_text_get_is_static (prop->priv->label))
--            g_object_unref (prop->priv->label);
-+        g_object_unref (prop->priv->label);
-         prop->priv->label = NULL;
-     }
- 
-     if (prop->priv->symbol) {
--        if (!ibus_text_get_is_static (prop->priv->symbol))
--            g_object_unref (prop->priv->symbol);
-+        g_object_unref (prop->priv->symbol);
-         prop->priv->symbol = NULL;
-     }
- 
-     if (prop->priv->tooltip) {
--        if (!ibus_text_get_is_static (prop->priv->tooltip))
--            g_object_unref (prop->priv->tooltip);
-+        g_object_unref (prop->priv->tooltip);
-         prop->priv->tooltip = NULL;
-     }
- 
-@@ -404,7 +401,7 @@ ibus_property_deserialize (IBusProperty *prop,
-     g_variant_get_child (variant, retval++, "u", &prop->priv->type);
- 
-     GVariant *subvar = g_variant_get_child_value (variant, retval++);
--    if (prop->priv->label && !ibus_text_get_is_static (prop->priv->label)) {
-+    if (prop->priv->label) {
-         g_object_unref (prop->priv->label);
-     }
-     prop->priv->label = IBUS_TEXT (ibus_serializable_deserialize (subvar));
-@@ -414,7 +411,7 @@ ibus_property_deserialize (IBusProperty *prop,
-     ibus_g_variant_get_child_string (variant, retval++, &prop->priv->icon);
- 
-     subvar = g_variant_get_child_value (variant, retval++);
--    if (prop->priv->tooltip && !ibus_text_get_is_static (prop->priv->tooltip)) {
-+    if (prop->priv->tooltip) {
-         g_object_unref (prop->priv->tooltip);
-     }
-     prop->priv->tooltip = IBUS_TEXT (ibus_serializable_deserialize (subvar));
-@@ -435,7 +432,7 @@ ibus_property_deserialize (IBusProperty *prop,
- 
-     /* Keep the serialized order for the compatibility when add new members. */
-     subvar = g_variant_get_child_value (variant, retval++);
--    if (prop->priv->symbol && !ibus_text_get_is_static (prop->priv->symbol)) {
-+    if (prop->priv->symbol) {
-         g_object_unref (prop->priv->symbol);
-     }
-     prop->priv->symbol = IBUS_TEXT (ibus_serializable_deserialize (subvar));
-@@ -567,7 +564,7 @@ ibus_property_set_label (IBusProperty *prop,
-     g_assert (IBUS_IS_PROPERTY (prop));
-     g_return_if_fail (label == NULL || IBUS_IS_TEXT (label));
- 
--    if (prop->priv->label && !ibus_text_get_is_static (prop->priv->label)) {
-+    if (prop->priv->label) {
-         g_object_unref (prop->priv->label);
-     }
- 
-@@ -575,8 +572,10 @@ ibus_property_set_label (IBusProperty *prop,
-         prop->priv->label = ibus_text_new_from_static_string ("");
-     }
-     else {
--        prop->priv->label = g_object_ref_sink (label);
-+        prop->priv->label = label;
-     }
-+
-+    g_object_ref_sink (prop->priv->label);
- }
- 
- void
-@@ -586,7 +585,7 @@ ibus_property_set_symbol (IBusProperty *prop,
-     g_assert (IBUS_IS_PROPERTY (prop));
-     g_return_if_fail (symbol == NULL || IBUS_IS_TEXT (symbol));
- 
--    if (prop->priv->symbol && !ibus_text_get_is_static (prop->priv->symbol)) {
-+    if (prop->priv->symbol) {
-         g_object_unref (prop->priv->symbol);
-     }
- 
-@@ -594,8 +593,10 @@ ibus_property_set_symbol (IBusProperty *prop,
-         prop->priv->symbol = ibus_text_new_from_static_string ("");
-     }
-     else {
--        prop->priv->symbol = g_object_ref_sink (symbol);
-+        prop->priv->symbol = symbol;
-     }
-+
-+    g_object_ref_sink (prop->priv->symbol);
- }
- 
- void
-@@ -615,7 +616,7 @@ ibus_property_set_tooltip (IBusProperty *prop,
-     g_assert (IBUS_IS_PROPERTY (prop));
-     g_assert (tooltip == NULL || IBUS_IS_TEXT (tooltip));
- 
--    if (prop->priv->tooltip && !ibus_text_get_is_static (prop->priv->tooltip)) {
-+    if (prop->priv->tooltip) {
-         g_object_unref (prop->priv->tooltip);
-     }
- 
-@@ -624,8 +625,9 @@ ibus_property_set_tooltip (IBusProperty *prop,
-     }
-     else {
-         prop->priv->tooltip = tooltip;
--        g_object_ref_sink (prop->priv->tooltip);
-     }
-+
-+    g_object_ref_sink (prop->priv->tooltip);
- }
- 
- void
--- 
-2.35.1
-

diff --git a/app-i18n/ibus/ibus-1.5.26-r1.ebuild b/app-i18n/ibus/ibus-1.5.26-r1.ebuild
deleted file mode 100644
index 03751566910e..000000000000
--- a/app-i18n/ibus/ibus-1.5.26-r1.ebuild
+++ /dev/null
@@ -1,227 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{9..10} )
-
-inherit autotools bash-completion-r1 gnome2-utils python-r1 toolchain-funcs vala virtualx xdg-utils
-
-GENTOO_VER=
-DESCRIPTION="Intelligent Input Bus for Linux / Unix OS"
-HOMEPAGE="https://github.com/ibus/ibus/wiki"
-
-[[ -n ${GENTOO_VER} ]] && \
-	GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-gentoo-patches-${GENTOO_VER}.tar.xz"
-SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.gz
-	${GENTOO_PATCHSET_URI}"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
-IUSE="X appindicator +emoji gtk2 +gtk3 +gtk4 +gui +introspection nls +python systemd test +unicode vala wayland"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="
-	appindicator? ( gtk3 )
-	python? (
-		${PYTHON_REQUIRED_USE}
-		introspection
-	)
-	test? ( gtk3 )
-	vala? ( introspection )
-	X? ( gtk3 )
-"
-DEPEND="
-	app-text/iso-codes
-	>=dev-libs/glib-2.65.0:2
-	gnome-base/dconf
-	gnome-base/librsvg:2
-	sys-apps/dbus[X?]
-	X? (
-		x11-libs/libX11
-		>=x11-libs/libXfixes-6.0.0
-	)
-	gtk2? ( x11-libs/gtk+:2 )
-	gtk3? ( x11-libs/gtk+:3 )
-	gtk4? ( gui-libs/gtk:4 )
-	gui? (
-		x11-libs/libX11
-		x11-libs/libXi
-	)
-	introspection? ( dev-libs/gobject-introspection )
-	nls? ( virtual/libintl )
-	python? (
-		${PYTHON_DEPS}
-		dev-python/pygobject:3[${PYTHON_USEDEP}]
-	)
-	wayland? (
-		dev-libs/wayland
-		x11-libs/libxkbcommon
-	)"
-RDEPEND="${DEPEND}
-	python? (
-		gui? (
-			x11-libs/gtk+:3[introspection]
-		)
-	)"
-BDEPEND="
-	$(vala_depend)
-	dev-libs/glib:2
-	dev-util/glib-utils
-	virtual/pkgconfig
-	x11-misc/xkeyboard-config
-	emoji? (
-		app-i18n/unicode-cldr
-		app-i18n/unicode-emoji
-	)
-	nls? ( sys-devel/gettext )
-	unicode? ( app-i18n/unicode-data )"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-src-Fix-refcounting-issues.patch
-)
-
-src_prepare() {
-	vala_src_prepare --ignore-use
-	sed -i "/UCD_DIR=/s/\$with_emoji_annotation_dir/\$with_ucd_dir/" configure.ac
-	if ! has_version 'x11-libs/gtk+:3[wayland]'; then
-		touch ui/gtk3/panelbinding.vala \
-			ui/gtk3/emojierapp.vala || die
-	fi
-	if ! use emoji; then
-		touch \
-			tools/main.vala \
-			ui/gtk3/panel.vala || die
-	fi
-	if ! use appindicator; then
-		touch ui/gtk3/panel.vala || die
-	fi
-	if [[ -n ${GENTOO_VER} ]]; then
-		einfo "Try to apply Gentoo specific patch set"
-		eapply "${WORKDIR}"/patches-gentoo/*.patch
-	fi
-
-	# for multiple Python implementations
-	sed -i "s/^\(PYGOBJECT_DIR =\).*/\1/" bindings/Makefile.am || die
-	# fix for parallel install
-	sed -i "/^if ENABLE_PYTHON2/,/^endif/d" bindings/pygobject/Makefile.am || die
-	# require user interaction
-	sed -i "/^TESTS += ibus-\(compose\|keypress\)/d" src/tests/Makefile.am || die
-
-	sed -i "/^bash_completion/d" tools/Makefile.am || die
-
-	default
-	eautoreconf
-	xdg_environment_reset
-}
-
-src_configure() {
-	local unicodedir="${EPREFIX}"/usr/share/unicode
-	local python_conf=()
-	if use python; then
-		python_setup
-		python_conf+=(
-			$(use_enable gui setup)
-			--with-python=${EPYTHON}
-		)
-	else
-		python_conf+=( --disable-setup )
-	fi
-
-	if tc-is-cross-compiler && { use emoji || use unicode; }; then
-		mkdir -p "${S}-build"
-		pushd "${S}-build" >/dev/null 2>&1 || die
-		ECONF_SOURCE=${S} econf_build --enable-static \
-			--disable-{dconf,gtk{2,3},python-library,shared,xim} \
-			ISOCODES_{CFLAG,LIB}S=-DSKIP \
-			$(use_enable emoji emoji-dict) \
-			$(use_enable unicode unicode-dict) \
-			$(use_with unicode ucd-dir "${EPREFIX}/usr/share/unicode-data")
-		popd >/dev/null 2>&1 || die
-	fi
-
-	local myconf=(
-		$(use_enable X xim)
-		$(use_enable appindicator)
-		$(use_enable emoji emoji-dict)
-		$(use_with emoji unicode-emoji-dir "${unicodedir}"/emoji)
-		$(use_with emoji emoji-annotation-dir "${unicodedir}"/cldr/common/annotations)
-		$(use_enable gtk2)
-		$(use_enable gtk3)
-		$(use_enable gtk4)
-		$(use_enable gui ui)
-		$(use_enable introspection)
-		$(use_enable nls)
-		$(use_enable systemd systemd-services)
-		$(use_enable test tests)
-		$(use_enable unicode unicode-dict)
-		$(use_with unicode ucd-dir "${EPREFIX}/usr/share/unicode-data")
-		$(use_enable vala)
-		$(use_enable wayland)
-		"${python_conf[@]}"
-	)
-	econf "${myconf[@]}"
-}
-
-src_compile() {
-	if tc-is-cross-compiler && { use emoji || use unicode; }; then
-		emake -C "${S}-build/src" \
-			$(usex emoji emoji-parser '') \
-			$(usex unicode unicode-parser '')
-		emake -C src \
-			$(usex emoji emoji-parser '') \
-			$(usex unicode unicode-parser '')
-		cp \
-			$(usex emoji "${S}-build/src/emoji-parser" '') \
-			$(usex unicode "${S}-build/src/unicode-parser" '') \
-			src || die
-	fi
-	emake
-}
-
-src_test() {
-	unset DBUS_SESSION_BUS_ADDRESS
-	virtx emake -j1 check
-}
-
-src_install() {
-	default
-	find "${ED}" -name '*.la' -delete || die
-
-	if use python; then
-		python_install() {
-			emake -C bindings/pygobject \
-				pyoverridesdir="$(${EPYTHON} -c 'import gi; print(gi._overridesdir)')" \
-				DESTDIR="${D}" \
-				install
-
-			python_optimize
-		}
-		python_foreach_impl python_install
-	fi
-
-	keepdir /usr/share/ibus/engine
-
-	newbashcomp tools/${PN}.bash ${PN}
-
-	insinto /etc/X11/xinit/xinput.d
-	newins xinput-${PN} ${PN}.conf
-
-	# Undo compression of man page
-	find "${ED}"/usr/share/man -type f -name '*.gz' -exec gzip -d {} \; || die
-}
-
-pkg_postinst() {
-	use gtk2 && gnome2_query_immodules_gtk2
-	use gtk3 && gnome2_query_immodules_gtk3
-	xdg_icon_cache_update
-	gnome2_schemas_update
-	dconf update
-}
-
-pkg_postrm() {
-	use gtk2 && gnome2_query_immodules_gtk2
-	use gtk3 && gnome2_query_immodules_gtk3
-	xdg_icon_cache_update
-	gnome2_schemas_update
-}

diff --git a/app-i18n/ibus/ibus-1.5.28-r1.ebuild b/app-i18n/ibus/ibus-1.5.28-r1.ebuild
deleted file mode 100644
index 7bec97c52d98..000000000000
--- a/app-i18n/ibus/ibus-1.5.28-r1.ebuild
+++ /dev/null
@@ -1,240 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit autotools bash-completion-r1 gnome2-utils python-r1 toolchain-funcs vala virtualx xdg-utils
-
-UPSTREAM_VER=0
-GENTOO_VER=
-DESCRIPTION="Intelligent Input Bus for Linux / Unix OS"
-HOMEPAGE="https://github.com/ibus/ibus/wiki"
-
-[[ -n ${UPSTREAM_VER} ]] && \
-	UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
-[[ -n ${GENTOO_VER} ]] && \
-	GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-gentoo-patches-${GENTOO_VER}.tar.xz"
-SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.gz
-	${UPSTREAM_PATCHSET_URI} ${GENTOO_PATCHSET_URI}"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-IUSE="X appindicator +emoji gtk2 +gtk3 +gtk4 +gui +introspection libnotify nls +python systemd test +unicode vala wayland"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="
-	appindicator? ( gtk3 )
-	python? (
-		${PYTHON_REQUIRED_USE}
-		introspection
-	)
-	test? ( gtk3 )
-	vala? ( introspection )
-	X? ( gtk3 )
-"
-DEPEND="
-	app-text/iso-codes
-	>=dev-libs/glib-2.65.0:2
-	gnome-base/dconf
-	gnome-base/librsvg:2
-	sys-apps/dbus[X?]
-	X? (
-		x11-libs/libX11
-		>=x11-libs/libXfixes-6.0.0
-	)
-	gtk2? ( x11-libs/gtk+:2 )
-	gtk3? ( x11-libs/gtk+:3 )
-	gtk4? ( gui-libs/gtk:4 )
-	gui? (
-		x11-libs/libX11
-		x11-libs/libXi
-	)
-	introspection? ( dev-libs/gobject-introspection )
-	libnotify? ( x11-libs/libnotify )
-	nls? ( virtual/libintl )
-	python? (
-		${PYTHON_DEPS}
-		dev-python/pygobject:3[${PYTHON_USEDEP}]
-	)
-	wayland? (
-		dev-libs/wayland
-		x11-libs/libxkbcommon
-	)"
-RDEPEND="${DEPEND}
-	python? (
-		gui? (
-			x11-libs/gtk+:3[introspection]
-		)
-	)"
-BDEPEND="
-	$(vala_depend)
-	dev-libs/glib:2
-	dev-util/glib-utils
-	virtual/pkgconfig
-	x11-misc/xkeyboard-config
-	emoji? (
-		app-i18n/unicode-cldr
-		app-i18n/unicode-emoji
-	)
-	nls? ( sys-devel/gettext )
-	test? ( x11-apps/setxkbmap )
-	unicode? ( app-i18n/unicode-data )"
-
-src_prepare() {
-	vala_src_prepare --ignore-use
-	if ! has_version 'x11-libs/gtk+:3[wayland]'; then
-		touch ui/gtk3/panelbinding.vala \
-			ui/gtk3/panel.vala \
-			ui/gtk3/emojierapp.vala || die
-	fi
-	if ! use emoji; then
-		touch \
-			tools/main.vala \
-			ui/gtk3/panel.vala || die
-	fi
-	if ! use appindicator; then
-		touch ui/gtk3/panel.vala || die
-	fi
-
-	if [[ -n ${UPSTREAM_VER} ]]; then
-		einfo "Try to apply Upstream specific patch set"
-		eapply "${WORKDIR}"/patches-upstream/*.patch
-	fi
-
-	if [[ -n ${GENTOO_VER} ]]; then
-		einfo "Try to apply Gentoo specific patch set"
-		eapply "${WORKDIR}"/patches-gentoo/*.patch
-	fi
-
-	# for multiple Python implementations
-	sed -i "s/^\(PYGOBJECT_DIR =\).*/\1/" bindings/Makefile.am || die
-	# fix for parallel install
-	sed -i "/^if ENABLE_PYTHON2/,/^endif/d" bindings/pygobject/Makefile.am || die
-	# require user interaction
-	sed -i "/^TESTS_C += ibus-\(compose\|keypress\)/d" src/tests/Makefile.am || die
-
-	sed -i "/^bash_completion/d" tools/Makefile.am || die
-
-	default
-	eautoreconf
-	xdg_environment_reset
-}
-
-src_configure() {
-	local unicodedir="${EPREFIX}"/usr/share/unicode
-	local python_conf=()
-	if use python; then
-		python_setup
-		python_conf+=(
-			$(use_enable gui setup)
-			--with-python=${EPYTHON}
-		)
-	else
-		python_conf+=( --disable-setup )
-	fi
-
-	if tc-is-cross-compiler && { use emoji || use unicode; }; then
-		mkdir -p "${S}-build"
-		pushd "${S}-build" >/dev/null 2>&1 || die
-		ECONF_SOURCE=${S} econf_build --enable-static \
-			--disable-{dconf,gtk{2,3},python-library,shared,xim} \
-			ISOCODES_{CFLAG,LIB}S=-DSKIP \
-			$(use_enable emoji emoji-dict) \
-			$(use_enable unicode unicode-dict) \
-			$(use_with unicode ucd-dir "${EPREFIX}/usr/share/unicode-data")
-		popd >/dev/null 2>&1 || die
-	fi
-
-	local myconf=(
-		$(use_enable X xim)
-		$(use_enable appindicator)
-		$(use_enable emoji emoji-dict)
-		$(use_with emoji unicode-emoji-dir "${unicodedir}"/emoji)
-		$(use_with emoji emoji-annotation-dir "${unicodedir}"/cldr/common/annotations)
-		$(use_enable gtk2)
-		$(use_enable gtk3)
-		$(use_enable gtk4)
-		$(use_enable gui ui)
-		$(use_enable introspection)
-		$(use_enable libnotify)
-		$(use_enable nls)
-		$(use_enable systemd systemd-services)
-		$(use_enable test tests)
-		$(use_enable unicode unicode-dict)
-		$(use_with unicode ucd-dir "${EPREFIX}/usr/share/unicode-data")
-		$(use_enable vala)
-		$(use_enable wayland)
-		"${python_conf[@]}"
-	)
-	econf "${myconf[@]}"
-}
-
-src_compile() {
-	if tc-is-cross-compiler && { use emoji || use unicode; }; then
-		emake -C "${S}-build/src" \
-			$(usex emoji emoji-parser '') \
-			$(usex unicode unicode-parser '')
-		emake -C src \
-			$(usex emoji emoji-parser '') \
-			$(usex unicode unicode-parser '')
-		cp \
-			$(usex emoji "${S}-build/src/emoji-parser" '') \
-			$(usex unicode "${S}-build/src/unicode-parser" '') \
-			src || die
-	fi
-	emake
-}
-
-src_test() {
-	unset DBUS_SESSION_BUS_ADDRESS
-	virtx emake -j1 check
-}
-
-src_install() {
-	default
-	# Remove la files
-	find "${ED}" -name '*.la' -delete || die
-
-	# Remove stray python files generated by the build system
-	find "${ED}" -name '*.pyc' -exec rm -f {} \; || die
-	find "${ED}" -name '*.pyo' -exec rm -f {} \; || die
-
-	if use python; then
-		python_install() {
-			emake -C bindings/pygobject \
-				pyoverridesdir="$(${EPYTHON} -c 'import gi; print(gi._overridesdir)')" \
-				DESTDIR="${D}" \
-				install
-
-			python_optimize
-		}
-		python_foreach_impl python_install
-	fi
-
-	keepdir /usr/share/ibus/engine
-
-	newbashcomp tools/${PN}.bash ${PN}
-
-	insinto /etc/X11/xinit/xinput.d
-	newins xinput-${PN} ${PN}.conf
-
-	# Undo compression of man page
-	find "${ED}"/usr/share/man -type f -name '*.gz' -exec gzip -d {} \; || die
-}
-
-pkg_postinst() {
-	use gtk2 && gnome2_query_immodules_gtk2
-	use gtk3 && gnome2_query_immodules_gtk3
-	xdg_icon_cache_update
-	gnome2_schemas_update
-	dconf update
-}
-
-pkg_postrm() {
-	use gtk2 && gnome2_query_immodules_gtk2
-	use gtk3 && gnome2_query_immodules_gtk3
-	xdg_icon_cache_update
-	gnome2_schemas_update
-}

diff --git a/app-i18n/ibus/ibus-1.5.28.ebuild b/app-i18n/ibus/ibus-1.5.28.ebuild
deleted file mode 100644
index 41f883c5e2b9..000000000000
--- a/app-i18n/ibus/ibus-1.5.28.ebuild
+++ /dev/null
@@ -1,231 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit autotools bash-completion-r1 gnome2-utils python-r1 toolchain-funcs vala virtualx xdg-utils
-
-GENTOO_VER=
-DESCRIPTION="Intelligent Input Bus for Linux / Unix OS"
-HOMEPAGE="https://github.com/ibus/ibus/wiki"
-
-[[ -n ${GENTOO_VER} ]] && \
-	GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-gentoo-patches-${GENTOO_VER}.tar.xz"
-SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.gz
-	${GENTOO_PATCHSET_URI}"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-IUSE="X appindicator +emoji gtk2 +gtk3 +gtk4 +gui +introspection libnotify nls +python systemd test +unicode vala wayland"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="
-	appindicator? ( gtk3 )
-	python? (
-		${PYTHON_REQUIRED_USE}
-		introspection
-	)
-	test? ( gtk3 )
-	vala? ( introspection )
-	X? ( gtk3 )
-"
-DEPEND="
-	app-text/iso-codes
-	>=dev-libs/glib-2.65.0:2
-	gnome-base/dconf
-	gnome-base/librsvg:2
-	sys-apps/dbus[X?]
-	X? (
-		x11-libs/libX11
-		>=x11-libs/libXfixes-6.0.0
-	)
-	gtk2? ( x11-libs/gtk+:2 )
-	gtk3? ( x11-libs/gtk+:3 )
-	gtk4? ( gui-libs/gtk:4 )
-	gui? (
-		x11-libs/libX11
-		x11-libs/libXi
-	)
-	introspection? ( dev-libs/gobject-introspection )
-	libnotify? ( x11-libs/libnotify )
-	nls? ( virtual/libintl )
-	python? (
-		${PYTHON_DEPS}
-		dev-python/pygobject:3[${PYTHON_USEDEP}]
-	)
-	wayland? (
-		dev-libs/wayland
-		x11-libs/libxkbcommon
-	)"
-RDEPEND="${DEPEND}
-	python? (
-		gui? (
-			x11-libs/gtk+:3[introspection]
-		)
-	)"
-BDEPEND="
-	$(vala_depend)
-	dev-libs/glib:2
-	dev-util/glib-utils
-	virtual/pkgconfig
-	x11-misc/xkeyboard-config
-	emoji? (
-		app-i18n/unicode-cldr
-		app-i18n/unicode-emoji
-	)
-	nls? ( sys-devel/gettext )
-	test? ( x11-apps/setxkbmap )
-	unicode? ( app-i18n/unicode-data )"
-
-src_prepare() {
-	vala_src_prepare --ignore-use
-	if ! has_version 'x11-libs/gtk+:3[wayland]'; then
-		touch ui/gtk3/panelbinding.vala \
-			ui/gtk3/panel.vala \
-			ui/gtk3/emojierapp.vala || die
-	fi
-	if ! use emoji; then
-		touch \
-			tools/main.vala \
-			ui/gtk3/panel.vala || die
-	fi
-	if ! use appindicator; then
-		touch ui/gtk3/panel.vala || die
-	fi
-	if [[ -n ${GENTOO_VER} ]]; then
-		einfo "Try to apply Gentoo specific patch set"
-		eapply "${WORKDIR}"/patches-gentoo/*.patch
-	fi
-
-	# for multiple Python implementations
-	sed -i "s/^\(PYGOBJECT_DIR =\).*/\1/" bindings/Makefile.am || die
-	# fix for parallel install
-	sed -i "/^if ENABLE_PYTHON2/,/^endif/d" bindings/pygobject/Makefile.am || die
-	# require user interaction
-	sed -i "/^TESTS_C += ibus-\(compose\|keypress\)/d" src/tests/Makefile.am || die
-
-	sed -i "/^bash_completion/d" tools/Makefile.am || die
-
-	default
-	eautoreconf
-	xdg_environment_reset
-}
-
-src_configure() {
-	local unicodedir="${EPREFIX}"/usr/share/unicode
-	local python_conf=()
-	if use python; then
-		python_setup
-		python_conf+=(
-			$(use_enable gui setup)
-			--with-python=${EPYTHON}
-		)
-	else
-		python_conf+=( --disable-setup )
-	fi
-
-	if tc-is-cross-compiler && { use emoji || use unicode; }; then
-		mkdir -p "${S}-build"
-		pushd "${S}-build" >/dev/null 2>&1 || die
-		ECONF_SOURCE=${S} econf_build --enable-static \
-			--disable-{dconf,gtk{2,3},python-library,shared,xim} \
-			ISOCODES_{CFLAG,LIB}S=-DSKIP \
-			$(use_enable emoji emoji-dict) \
-			$(use_enable unicode unicode-dict) \
-			$(use_with unicode ucd-dir "${EPREFIX}/usr/share/unicode-data")
-		popd >/dev/null 2>&1 || die
-	fi
-
-	local myconf=(
-		$(use_enable X xim)
-		$(use_enable appindicator)
-		$(use_enable emoji emoji-dict)
-		$(use_with emoji unicode-emoji-dir "${unicodedir}"/emoji)
-		$(use_with emoji emoji-annotation-dir "${unicodedir}"/cldr/common/annotations)
-		$(use_enable gtk2)
-		$(use_enable gtk3)
-		$(use_enable gtk4)
-		$(use_enable gui ui)
-		$(use_enable introspection)
-		$(use_enable libnotify)
-		$(use_enable nls)
-		$(use_enable systemd systemd-services)
-		$(use_enable test tests)
-		$(use_enable unicode unicode-dict)
-		$(use_with unicode ucd-dir "${EPREFIX}/usr/share/unicode-data")
-		$(use_enable vala)
-		$(use_enable wayland)
-		"${python_conf[@]}"
-	)
-	econf "${myconf[@]}"
-}
-
-src_compile() {
-	if tc-is-cross-compiler && { use emoji || use unicode; }; then
-		emake -C "${S}-build/src" \
-			$(usex emoji emoji-parser '') \
-			$(usex unicode unicode-parser '')
-		emake -C src \
-			$(usex emoji emoji-parser '') \
-			$(usex unicode unicode-parser '')
-		cp \
-			$(usex emoji "${S}-build/src/emoji-parser" '') \
-			$(usex unicode "${S}-build/src/unicode-parser" '') \
-			src || die
-	fi
-	emake
-}
-
-src_test() {
-	unset DBUS_SESSION_BUS_ADDRESS
-	virtx emake -j1 check
-}
-
-src_install() {
-	default
-	# Remove la files
-	find "${ED}" -name '*.la' -delete || die
-
-	# Remove stray python files generated by the build system
-	find "${ED}" -name '*.pyc' -exec rm -f {} \; || die
-	find "${ED}" -name '*.pyo' -exec rm -f {} \; || die
-
-	if use python; then
-		python_install() {
-			emake -C bindings/pygobject \
-				pyoverridesdir="$(${EPYTHON} -c 'import gi; print(gi._overridesdir)')" \
-				DESTDIR="${D}" \
-				install
-
-			python_optimize
-		}
-		python_foreach_impl python_install
-	fi
-
-	keepdir /usr/share/ibus/engine
-
-	newbashcomp tools/${PN}.bash ${PN}
-
-	insinto /etc/X11/xinit/xinput.d
-	newins xinput-${PN} ${PN}.conf
-
-	# Undo compression of man page
-	find "${ED}"/usr/share/man -type f -name '*.gz' -exec gzip -d {} \; || die
-}
-
-pkg_postinst() {
-	use gtk2 && gnome2_query_immodules_gtk2
-	use gtk3 && gnome2_query_immodules_gtk3
-	xdg_icon_cache_update
-	gnome2_schemas_update
-	dconf update
-}
-
-pkg_postrm() {
-	use gtk2 && gnome2_query_immodules_gtk2
-	use gtk3 && gnome2_query_immodules_gtk3
-	xdg_icon_cache_update
-	gnome2_schemas_update
-}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-11-19  1:04 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-11-24  9:35 [gentoo-commits] repo/gentoo:master commit in: app-i18n/ibus/, app-i18n/ibus/files/ Yixun Lan
  -- strict thread matches above, loose matches on Subject: below --
2023-11-19  1:04 Matt Turner
2022-05-12 17:50 Matt Turner
2020-03-16 15:14 Yixun Lan
2018-10-05  9:57 Naohiro Aota
2018-08-28 12:57 Akinori Hattori

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox