import ibus-1.5.19-12.el8

This commit is contained in:
CentOS Sources 2020-11-03 07:09:33 -05:00 committed by Andrew Lukoshko
parent 37dced47bc
commit 0f8d32f9c2
3 changed files with 1688 additions and 6 deletions

View File

@ -2391,3 +2391,249 @@ index 72537cd4..981941d5 100755
--
2.21.0
From 74863851e83972e86a5bdb3da3d99784fc8d4955 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Tue, 28 Jan 2020 18:46:13 +0900
Subject: [PATCH] src/tests: Increase sleep to 3 waiting for IBusConfig
Sleep 1 would be too short for ibus-daemon which could run all components.
ibus-config test requires the running IBusConfig and the test could fail
in some slow systems.
Sleep time will be increased to 3 to run all components.
BUG=https://github.com/ibus/ibus/issues/2170
---
src/tests/ibus-config.c | 4 ++++
src/tests/ibus-desktop-testing-runner.in | 2 +-
src/tests/runtest | 2 +-
3 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/tests/ibus-config.c b/src/tests/ibus-config.c
index 5e845f10..0d9812a3 100644
--- a/src/tests/ibus-config.c
+++ b/src/tests/ibus-config.c
@@ -16,6 +16,10 @@ finish_create_config_async_success (GObject *source_object,
IBusConfig *config =
ibus_config_new_async_finish (res, &error);
+ if (error) {
+ g_message ("Failed to generate IBusConfig: %s", error->message);
+ g_error_free (error);
+ }
g_assert (IBUS_IS_CONFIG (config));
/* Since we reuse single D-Bus connection, we need to remove the
diff --git a/src/tests/ibus-desktop-testing-runner.in b/src/tests/ibus-desktop-testing-runner.in
index 981941d5..0d9a847c 100755
--- a/src/tests/ibus-desktop-testing-runner.in
+++ b/src/tests/ibus-desktop-testing-runner.in
@@ -190,7 +190,7 @@ run_desktop()
HAS_GNOME=`echo $DESKTOP_COMMAND | grep gnome-session`
if [ x"$HAS_GNOME" = x ] ; then
ibus-daemon --daemonize --verbose
- sleep 1
+ sleep 3
fi
}
diff --git a/src/tests/runtest b/src/tests/runtest
index ed38992f..a6e4194b 100755
--- a/src/tests/runtest
+++ b/src/tests/runtest
@@ -180,7 +180,7 @@ run_test_case()
fi
# Wait until all necessary components are up.
- sleep 1
+ sleep 3
export GTK_IM_MODULE=ibus
fi
--
2.24.1
From 7b0d091839a4f1315ba216175fb2787e86f7fa31 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Tue, 3 Mar 2020 17:08:30 +0900
Subject: [PATCH] src/tests: Delete graves in substitution in
ibus-desktop-testing-runner
Delete the single quotations to enclose grave chracters because
DASH saves the single quoted '`id -u`' as the raw string in the command
substitution not to be extracted.
BUG=https://github.com/ibus/ibus/issues/2189
---
src/tests/ibus-desktop-testing-runner.in | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/tests/ibus-desktop-testing-runner.in b/src/tests/ibus-desktop-testing-runner.in
index 0d9a847c..f9238e69 100755
--- a/src/tests/ibus-desktop-testing-runner.in
+++ b/src/tests/ibus-desktop-testing-runner.in
@@ -4,7 +4,7 @@
#
# ibus - The Input Bus
#
-# Copyright (c) 2018-2019 Takao Fujiwara <takao.fujiwara1@gmail.com>
+# Copyright (c) 2018-2020 Takao Fujiwara <takao.fujiwara1@gmail.com>
# Copyright (c) 2018 Red Hat, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -31,7 +31,8 @@
# POSIX sh has no 'echo -e'
: ${ECHO:='/usr/bin/echo'}
# POSIX sh has $UID
-: ${UID:='`id -u`'}
+# DASH saves the graves in '``' as characters not to be extracted
+: ${UID:=`id -u`}
PROGNAME=`basename $0`
@@ -170,7 +171,7 @@ _EOF
run_dbus_daemon()
{
# Use dbus-launch --exit-with-session later instead of --sh-syntax
- export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$UID/bus
+ export DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/$UID/bus"
}
run_desktop()
--
2.24.1
From 8da016764cee9616cca4658d1fb311d6b3bfc0df Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Wed, 15 Apr 2020 17:55:03 +0900
Subject: [PATCH] src/tests: Fix to get focus events with su in
ibus-desktop-testing-runner
GtkWindow haven't received focus events in any test cases since Fedora 31
whenever Ansible runs ibus-desktop-testing-runner after `su root`.
Seems su command does not run systemd automatically and now systemd
requires XDG_RUNTIME_DIR and Ansible requires root access with ssh.
This fix requires to restart sshd with modified /etc/ssh/sshd_config
with "PermitRootLogin yes" in order to run with su command.
Ansible with ibus-desktop-testin-runner has worked fine if root console
login is used without this patch because PAM runs systemd by login.
---
src/tests/ibus-desktop-testing-runner.in | 36 ++++++++++++++++++++++--
1 file changed, 33 insertions(+), 3 deletions(-)
diff --git a/src/tests/ibus-desktop-testing-runner.in b/src/tests/ibus-desktop-testing-runner.in
index f9238e69..f760fd5b 100755
--- a/src/tests/ibus-desktop-testing-runner.in
+++ b/src/tests/ibus-desktop-testing-runner.in
@@ -49,6 +49,7 @@ PID_XORG=0
PID_GNOME_SESSION=0
TESTING_RUNNER="default"
TESTS=""
+TIMEOUT=300
GREEN='\033[0;32m'
RED='\033[0;31m'
NC='\033[0m'
@@ -84,6 +85,7 @@ usage()
"-r, --runner=RUNNER Run TESTS programs with a test RUNNER.\n" \
" RUNNDER = gnome or default.\n" \
" default is an embedded runner.\n" \
+"-T, --timeout=TIMEOUT Set timeout (default TIMEOUT is 300 sec).\n" \
"-o, --output=OUTPUT_FILE OUtput the log to OUTPUT_FILE\n" \
"-O, --result=RESULT_FILE OUtput the result to RESULT_FILE\n" \
""
@@ -92,8 +94,8 @@ usage()
parse_args()
{
# This is GNU getopt. "sudo port getopt" in BSD?
- ARGS=`getopt -o hvb:s:cd:t:r:o:O: --long \
- help,version,builddir:,srcdir:,no-graphics,desktop:,tests:,runner:,output:,result:\
+ ARGS=`getopt -o hvb:s:cd:t:r:T:o:O: --long \
+ help,version,builddir:,srcdir:,no-graphics,desktop:,tests:,runner:,timeout:,output:,result:\
-- "$@"`;
eval set -- "$ARGS"
while [ 1 ] ; do
@@ -106,6 +108,7 @@ parse_args()
-d | --desktop ) DESKTOP_COMMAND="$2"; shift 2;;
-t | --tests ) TESTS="$2"; shift 2;;
-r | --runner ) TESTING_RUNNER="$2"; shift 2;;
+ -T | --timeout ) TIMEOUT="$2"; shift 2;;
-o | --output ) TEST_LOG="$2"; shift 2;;
-O | --result ) RESULT_LOG="$2"; shift 2;;
-- ) shift; break;;
@@ -166,11 +169,37 @@ _EOF
fi
# `su` command does not run loginctl
export XDG_SESSION_TYPE='x11'
+ export XDG_SESSION_CLASS=user
+ # `su` command does not get focus in events without this variable.
+ # Need to restart sshd after set "PermitRootLogin yes" in sshd_config
+ if [ "x$XDG_RUNTIME_DIR" = x ] ; then
+ export XDG_RUNTIME_DIR=/run/user/$UID
+ is_root_login=`grep "^PermitRootLogin" /etc/ssh/sshd_config | grep yes`
+ if [ "x$ANSIBLE" != x ] && [ "x$is_root_login" = x ] ; then
+ print_log -e "${RED}FAIL${NC}: No permission to get focus-in events in GtkWindow with ansible"
+ echo "su command does not configure necessary login info " \
+ "with systemd and GtkWindow cannot receive focus-events " \
+ "when ibus-desktop-testing-runner is executed by " \
+ "ansible-playbook." >> $TEST_LOG
+ echo "Enabling root login via sshd, restarting sshd, set " \
+ "XDG_RUNTIME_DIR can resolve the problem under " \
+ "ansible-playbook." >> $TEST_LOG
+ exit 255
+ fi
+ fi
+ # Do we need XDG_SESSION_ID and XDG_SEAT?
+ #export XDG_CONFIG_DIRS=/etc/xdg
+ #export XDG_SESSION_ID=10
+ #export XDG_SESSION_DESKTOP=gnome
+ #export XDG_SEAT=seat0
}
run_dbus_daemon()
{
# Use dbus-launch --exit-with-session later instead of --sh-syntax
+ # GNOME uses a unix:abstract address and it effects gsettings set values
+ # in each test case.
+ # TODO: Should we comment out this line?
export DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/$UID/bus"
}
@@ -288,7 +317,8 @@ run_gnome_desktop_testing_runner()
fail=1
continue
fi
- gnome-desktop-testing-runner $tst 2>>$TEST_LOG 1>>$TEST_LOG
+ gnome-desktop-testing-runner --timeout=$TIMEOUT $tst \
+ 2>>$TEST_LOG 1>>$TEST_LOG
retval=$?
read pass fail << EOF
`count_case_result $retval $pass $fail`
--
2.24.1
From 0b9d9365988a96a2bc31c48624f9c2b8081601b6 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Wed, 22 Apr 2020 20:17:12 +0900
Subject: [PATCH] client/gtk2: Fix typo
---
client/gtk2/ibusim.c | 4 ++--
src/tests/ibus-desktop-testing-runner.in | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/tests/ibus-desktop-testing-runner.in b/src/tests/ibus-desktop-testing-runner.in
index f760fd5b..4232c549 100755
--- a/src/tests/ibus-desktop-testing-runner.in
+++ b/src/tests/ibus-desktop-testing-runner.in
@@ -173,7 +173,7 @@ _EOF
# `su` command does not get focus in events without this variable.
# Need to restart sshd after set "PermitRootLogin yes" in sshd_config
if [ "x$XDG_RUNTIME_DIR" = x ] ; then
- export XDG_RUNTIME_DIR=/run/user/$UID
+ export XDG_RUNTIME_DIR="/run/user/$UID"
is_root_login=`grep "^PermitRootLogin" /etc/ssh/sshd_config | grep yes`
if [ "x$ANSIBLE" != x ] && [ "x$is_root_login" = x ] ; then
print_log -e "${RED}FAIL${NC}: No permission to get focus-in events in GtkWindow with ansible"
--
2.24.1

File diff suppressed because it is too large Load Diff

View File

@ -31,7 +31,7 @@
Name: ibus
Version: 1.5.19
Release: 11%{?dist}
Release: 12%{?dist}
Summary: Intelligent Input Bus for Linux OS
License: LGPLv2+
Group: System Environment/Libraries
@ -55,6 +55,8 @@ Patch4: %{name}-xx-setup-env.patch
Patch5: %{name}-1750836-server-auth-observer.patch
# RHEL 8.2 Bug 1682157 - Integrate ibus-desktop-testing and test cases
Patch6: %{name}-1682157-ci.patch
# RHEL 8.2 Bug 1713606 - Fix hangul preedit commit with mouse click
Patch7: %{name}-1713606-hangul-with-mouse.patch
# RHEL 8.0 Under testing #1349148 #1385349 #1350291 #1406699 #1432252 #1601577
Patch100: %{name}-1385349-segv-bus-proxy.patch
@ -73,9 +75,12 @@ BuildRequires: dconf-devel
BuildRequires: dbus-x11
BuildRequires: python3-devel
BuildRequires: python3-gobject
%if %with_python2
# http://pkgs.devel.redhat.com/cgit/rpms/GConf2/commit/?h=rhel-8.3.0&id=82fe51c3
# https://bugzilla.gnome.org/show_bug.cgi?id=759334
# Need python2 for gsettings-schema-convert
BuildRequires: python2-devel
%endif
BuildRequires: vala
BuildRequires: vala-devel
BuildRequires: vala-tools
@ -281,11 +286,14 @@ cp client/gtk2/ibusimcontext.c client/gtk3/ibusimcontext.c || :
zcat %SOURCE3 | tar xfv -
# prep test
diff client/gtk2/ibusimcontext.c client/gtk3/ibusimcontext.c
if test $? -ne 0 ; then
echo "Have to copy ibusimcontext.c into client/gtk3"
abort
fi
for f in ibusimcontext.c ibusim.c
do
diff client/gtk2/$f client/gtk3/$f
if test $? -ne 0 ; then
echo "Have to copy $f into client/gtk3"
abort
fi
done
%build
#autoreconf -f -i -v
@ -478,6 +486,10 @@ dconf update || :
%{_datadir}/installed-tests/ibus
%changelog
* Thu Jun 04 2020 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.19-12
- Resolves: #1713606 - Fix hangul preedit commit with mouse click
- Update 1682157-ci.patch
* Thu Jan 09 2020 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.19-11
- Resolves: #1750836 - Fix CVE-2019-14822