Add systemd unit file

- Do not mkdir abstract unix socket
- Fix IBus.key_event_from_string
This commit is contained in:
Takao Fujiwara 2022-02-12 11:49:17 +09:00
parent 7fd881404a
commit ee71d023a9
3 changed files with 639 additions and 11 deletions

View File

@ -1644,16 +1644,634 @@ index e8d0ce2b..6abf8427 100644
--
2.33.1
From 3abcb19619750e242e1641c1c443fb460f055289 Mon Sep 17 00:00:00 2001
From dfd3fbf26fa4b5ff20512b166a8dd321afc10344 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Tue, 18 Jan 2022 17:03:53 +0900
Subject: [PATCH] src/tests: Update ibus-desktop-testing-autostart
Date: Thu, 3 Feb 2022 17:31:08 +0900
Subject: [PATCH] bus: Do not mkdir abstract unix socket
IBus ran mkdir for unix abstract sockets for --address=unix:abstract
but should not need to mkdir.
BUG=https://github.com/ibus/ibus/issues/2363
---
src/tests/ibus-desktop-testing-autostart | 2+
src/tests/ibus-desktop-testing.desktop.in | 2 +-
2 file changed, 3 insertion(+), 1 deletion(-)
bus/server.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/bus/server.c b/bus/server.c
index 6abf8427..968d5346 100644
--- a/bus/server.c
+++ b/bus/server.c
@@ -265,13 +265,15 @@ bus_server_init (void)
const char *unix_path = socket_address + strlen (prefix); \
unix_dir = g_path_get_dirname (unix_path); \
}
+#define IF_GET_UNIX_DIR_FROM_ABSTRACT(prefix) \
+ if (g_str_has_prefix (socket_address, (prefix))) {}
IF_GET_UNIX_DIR_FROM_DIR (IBUS_UNIX_TMPDIR)
else
IF_GET_UNIX_DIR_FROM_PATH (IBUS_UNIX_PATH)
else
- IF_GET_UNIX_DIR_FROM_PATH (IBUS_UNIX_ABSTRACT)
+ IF_GET_UNIX_DIR_FROM_ABSTRACT (IBUS_UNIX_ABSTRACT)
else
IF_GET_UNIX_DIR_FROM_DIR (IBUS_UNIX_DIR)
else {
@@ -281,7 +283,8 @@ bus_server_init (void)
IBUS_UNIX_ABSTRACT "FILE, " IBUS_UNIX_DIR "DIR.",
socket_address);
}
- if (!g_file_test (unix_dir, G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR)) {
+ if (unix_dir &&
+ !g_file_test (unix_dir, G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR)) {
/* Require mkdir for BSD system.
* The mode 0700 can eliminate malicious users change the mode.
* `chmod` runs for the last directory only not to change the modes
@@ -337,6 +340,7 @@ bus_server_init (void)
#undef IF_GET_UNIX_DIR_FROM_DIR
#undef IF_GET_UNIX_DIR_FROM_PATH
+#undef IF_GET_UNIX_DIR_FROM_ABSTRACT
#undef IBUS_UNIX_TMPDIR
#undef IBUS_UNIX_PATH
#undef IBUS_UNIX_ABSTRACT
--
2.33.1
From c69b61aa66239e1b13c9764b2d3bf6f02d086785 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Fri, 4 Feb 2022 15:08:36 +0900
Subject: [PATCH] src: Fix ibus_key_event_from_string for
gobject-introspection
BUG=https://github.com/ibus/ibus/issues/2330
---
src/ibusshare.h | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/ibusshare.h b/src/ibusshare.h
index d70af29f..d739e2ff 100644
--- a/src/ibusshare.h
+++ b/src/ibusshare.h
@@ -2,8 +2,8 @@
/* vim:set et sts=4: */
/* ibus - The Input Bus
* Copyright (C) 2008-2013 Peng Huang <shawn.p.huang@gmail.com>
- * Copyright (C) 2015-2018 Takao Fujiwara <takao.fujiwara1@gmail.com>
- * Copyright (C) 2008-2018 Red Hat, Inc.
+ * Copyright (C) 2015-2022 Takao Fujiwara <takao.fujiwara1@gmail.com>
+ * Copyright (C) 2008-2022 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
@@ -333,8 +333,8 @@ gchar *ibus_key_event_to_string
/**
* ibus_key_event_from_string:
* @string: Key event string.
- * @keyval: Variable that hold key symbol result.
- * @modifiers: Variable that hold modifiers result.
+ * @keyval: (out): Variable that hold key symbol result.
+ * @modifiers: (out): Variable that hold modifiers result.
*
* Parse key event string and return key symbol and modifiers.
*
--
2.33.1
From a076b388d856aeb4c8f8317dd6cd9dd6d61fe9ac Mon Sep 17 00:00:00 2001
From: Carlos Garnacho <carlosg@gnome.org>
Date: Wed, 4 Nov 2020 10:48:45 +0100
Subject: [PATCH] src, client/x11: Add systemd unit file
This so far depends on GNOME targets, and is thus just usable there.
Other DEs wishing to use systemd and ibus will need to add the
necessary dependencies where applicable.
There are 2 scenarios here:
- On X11 sessions, ibus-daemon will be launched with --xim parameter,
so ibus-x11 is started with it.
- On Wayland sessions, ibus-daemon will be started without XIM support,
ibus-x11 will be launched and tear down together with all other
session X11 services while Xwayland is running.
For the second part of the second situation, additionally install
a script at /etc/xdg/Xwayland-session.d, which takes care of X11
service initialization together with the Xwayland instance.
BUG=https://github.com/ibus/ibus/pull/2377
---
client/x11/10-ibus-x11.in | 2 ++
client/x11/Makefile.am | 18 ++++++++++++
configure.ac | 17 +++++++++++
src/Makefile.am | 16 +++++++++++
....freedesktop.IBus.session.GNOME.service.in | 28 +++++++++++++++++++
5 files changed, 81 insertions(+)
create mode 100755 client/x11/10-ibus-x11.in
create mode 100644 bus/services/org.freedesktop.IBus.session.GNOME.service.in
diff --git a/client/x11/10-ibus-x11.in b/client/x11/10-ibus-x11.in
new file mode 100755
index 00000000..973cbb6f
--- /dev/null
+++ b/client/x11/10-ibus-x11.in
@@ -0,0 +1,2 @@
+#!/bin/sh
+@libexecdir@/ibus-x11 &
diff --git a/client/x11/Makefile.am b/client/x11/Makefile.am
index 12de6ea8..90454bcf 100644
--- a/client/x11/Makefile.am
+++ b/client/x11/Makefile.am
@@ -67,6 +67,16 @@ noinst_HEADERS = \
locales.h \
$(NULL)
+xwaylandsessiond_in_files = 10-ibus-x11.in
+xwaylandsessiond_DATA = $(xwaylandsessiond_in_files:.in=)
+xwaylandsessionddir=$(sysconfdir)/xdg/Xwayland-session.d
+
+10-ibus-x11: 10-ibus-x11.in
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@.tmp && mv $@.tmp $@
+
+install-data-hook:
+ chmod 755 $(DESTDIR)$(xwaylandsessionddir)/10-ibus-x11
+
$(libIMdkit):
(cd $(top_builddir)/util/IMdkit; make)
@@ -81,4 +91,12 @@ locales.h:
xargs python -c 'import sys;print "#define LOCALES_STRING \"%s\"" % ",".join(sys.argv[1:])' \
) > $@
+CLEANFILES = \
+ $(xwaylandsessiond_DATA) \
+ $(NULL)
+
+EXTRA_DIST = \
+ 10-ibus-x11.in \
+ $(NULL)
+
-include $(top_srcdir)/git.mk
diff --git a/configure.ac b/configure.ac
index ce096ad3..73c5e429 100644
--- a/configure.ac
+++ b/configure.ac
@@ -393,6 +393,22 @@ if test x"$enable_dconf" = x"yes"; then
enable_dconf="yes (enabled, use --disable-dconf to disable)"
fi
+AC_ARG_ENABLE(systemd-services,
+ AS_HELP_STRING([--disable-systemd-services],
+ [Disable systemd services installation]),
+ [enable_systemd=$enableval],
+ [enable_systemd=yes]
+)
+AM_CONDITIONAL([ENABLE_SYSTEMD], [test x"$enable_systemd" = x"yes"])
+
+if test x"$enable_systemd" = x"yes"; then
+ PKG_CHECK_MODULES(SYSTEMD, [
+ systemd >= 0.7.5
+ ])
+ AC_SUBST([SYSTEMD_USER_UNIT_DIR], [`$PKG_CONFIG --variable systemduserunitdir systemd`])
+ enable_systemd="yes (enabled, use --disable-systemd-services to disable)"
+fi
+
# Check env.
AC_PATH_PROG(ENV_IBUS_TEST, env)
AC_SUBST(ENV_IBUS_TEST)
@@ -860,6 +876,7 @@ Build options:
UCD directory $UCD_DIR
Socket directory "$IBUS_SOCKET_DIR"
XFixes client disconnect $have_xfixes
+ Install systemd service $enable_systemd
Run test cases $enable_tests
Install tests $enable_install_tests
])
diff --git a/src/Makefile.am b/src/Makefile.am
index 578694b5..bbaa6c90 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -317,6 +317,11 @@ install-data-hook:
rm "$(DESTDIR)$(dictdir)/$$file" || exit $$?; \
fi; \
done
+ $(MKDIR_P) "$(DESTDIR)$(SYSTEMD_USER_UNIT_DIR)/gnome-session.target.wants/"
+ ( \
+ cd "$(DESTDIR)$(SYSTEMD_USER_UNIT_DIR)/gnome-session.target.wants" ; \
+ $(LN_S) -f "../org.freedesktop.IBus.session.GNOME.service" .; \
+ )
emoji_parser_SOURCES = \
emoji-parser.c \
@@ -383,7 +388,17 @@ clean-local:
$(NULL)
endif
+if ENABLE_SYSTEMD
+systemdservice_in_files = org.freedesktop.IBus.session.GNOME.service.in
+systemdservice_DATA = $(systemdservice_in_files:.service.in=.service)
+systemdservicedir=$(SYSTEMD_USER_UNIT_DIR)
+
+org.freedesktop.IBus.session.GNOME.service: org.freedesktop.IBus.session.GNOME.service.in
+ $(AM_V_GEN) sed -e "s|\@bindir\@|$(bindir)|" $< > $@.tmp && mv $@.tmp $@
+endif
+
EXTRA_DIST = \
+ org.freedesktop.IBus.session.GNOME.service.in \
emoji-parser.c \
ibusversion.h.in \
ibusmarshalers.list \
@@ -393,6 +408,7 @@ EXTRA_DIST = \
$(NULL)
CLEANFILES += \
+ $(systemdservice_DATA) \
$(BUILT_SOURCES) \
stamp-ibusmarshalers.h \
stamp-ibusenumtypes.h \
diff --git a/bus/services/org.freedesktop.IBus.session.GNOME.service.in b/bus/services/org.freedesktop.IBus.session.GNOME.service.in
new file mode 100644
index 00000000..76444dbd
--- /dev/null
+++ b/bus/services/org.freedesktop.IBus.session.GNOME.service.in
@@ -0,0 +1,28 @@
+[Unit]
+Description=IBus Daemon
+CollectMode=inactive-or-failed
+
+# Require GNOME session and specify startup ordering
+Requisite=gnome-session-initialized.target
+After=gnome-session-initialized.target
+PartOf=gnome-session-initialized.target
+Before=gnome-session.target
+
+# Needs to run when DISPLAY/WAYLAND_DISPLAY is set
+After=gnome-session-initialized.target
+PartOf=gnome-session-initialized.target
+
+# Never run in GDM
+Conflicts=gnome-session@gnome-login.target
+
+[Service]
+Type=dbus
+# Only pull --xim in X11 session, it is done via Xwayland-session.d on Wayland
+ExecStart=sh -c '@bindir@/ibus-daemon --panel disable $([[ $XDG_SESSION_TYPE == "x11" ]] && echo "--xim")'
+Restart=on-abnormal
+BusName=org.freedesktop.IBus
+TimeoutStopSec=5
+Slice=session.slice
+
+[Install]
+WantedBy=gnome-session.target
--
2.33.1
From 9a87a78549cb938c4810bcd311dd36823afd0fcd Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Sat, 12 Feb 2022 10:50:54 +0900
Subject: [PATCH] src/services: Add org.freedesktop.IBus.session.generic.service
Move bus/*.service.in & src/*.service.in into bus/services
BUG=https://github.com/ibus/ibus/pull/2381
---
bus/Makefile.am | 16 +----
bus/services/Makefile.am | 68 +++++++++++++++++++
.../org.freedesktop.IBus.service.in | 0
....freedesktop.IBus.session.GNOME.service.in | 2 +-
...reedesktop.IBus.session.generic.service.in | 15 ++++
configure.ac | 48 ++++++-------
src/Makefile.am | 16 -----
7 files changed, 112 insertions(+), 53 deletions(-)
create mode 100644 bus/services/Makefile.am
create mode 100644 bus/services/org.freedesktop.IBus.service.in
create mode 100644 bus/services/org.freedesktop.IBus.session.generic.service.in
diff --git a/bus/Makefile.am b/bus/Makefile.am
index 4383a874..e173ee25 100644
--- a/bus/Makefile.am
+++ b/bus/Makefile.am
@@ -3,8 +3,8 @@
# ibus - The Input Bus
#
# Copyright (c) 2007-2013 Peng Huang <shawn.p.huang@gmail.com>
-# Copyright (c) 2013-2018 Takao Fujiwara <takao.fujiwara1@gmail.com>
-# Copyright (c) 2007-2018 Red Hat, Inc.
+# Copyright (c) 2013-2022 Takao Fujiwara <takao.fujiwara1@gmail.com>
+# Copyright (c) 2007-2022 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
@@ -22,6 +22,7 @@
# USA
NULL =
+SUBDIRS = . services
libibus = $(top_builddir)/src/libibus-@IBUS_API_VERSION@.la
@@ -190,15 +191,4 @@ man_onedir = $(mandir)/man1
%.1.gz: %.1
$(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@
-
-dbusservice_in_files = org.freedesktop.IBus.service.in
-dbusservice_DATA = $(dbusservice_in_files:.service.in=.service)
-dbusservicedir=${datadir}/dbus-1/services
-
-org.freedesktop.IBus.service: org.freedesktop.IBus.service.in
- $(AM_V_GEN) sed -e "s|\@bindir\@|$(bindir)|" -e "s|\@xim_cli_arg\@|$(XIM_CLI_ARG)|" $< > $@.tmp && mv $@.tmp $@
-
-EXTRA_DIST += $(dbusservice_in_files)
-CLEANFILES += $(dbusservice_DATA)
-
-include $(top_srcdir)/git.mk
diff --git a/bus/services/Makefile.am b/bus/services/Makefile.am
new file mode 100644
index 00000000..53c21f58
--- /dev/null
+++ b/bus/services/Makefile.am
@@ -0,0 +1,68 @@
+# vim:set noet ts=4:
+#
+# ibus - The Input Bus
+#
+# Copyright (c) 2022 Takao Fujiwara <takao.fujiwara1@gmail.com>
+# Copyright (c) 2022 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
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+# USA
+
+NULL =
+
+# Originally this file was added for GNOME but seems not to be used
+# at present.
+#
+# TODO: Check if flatpack uses this file and we could rename
+# org.freedesktop.IBus.service to org.freedesktop.IBus.DBus.GNOME.service
+dbusservice_in_files = org.freedesktop.IBus.service.in
+dbusservice_DATA = $(dbusservice_in_files:.service.in=.service)
+dbusservicedir=${datadir}/dbus-1/services
+
+systemdservice_in_files = \
+ org.freedesktop.IBus.session.generic.service.in \
+ org.freedesktop.IBus.session.GNOME.service.in \
+ $(NULL)
+
+%.service: %.service.in
+ $(AM_V_GEN) sed -e "s|\@bindir\@|$(bindir)|" \
+ -e "s|\@xim_cli_arg\@|$(XIM_CLI_ARG)|" $< > $@.tmp && \
+ mv $@.tmp $@
+
+if ENABLE_SYSTEMD
+systemdservice_DATA = $(systemdservice_in_files:.service.in=.service)
+systemdservicedir = $(SYSTEMD_USER_UNIT_DIR)
+
+# in install-data-hook.
+install-data-hook:
+ $(MKDIR_P) "$(DESTDIR)$(SYSTEMD_USER_UNIT_DIR)/gnome-session.target.wants/"
+ ( \
+ cd "$(DESTDIR)$(SYSTEMD_USER_UNIT_DIR)/gnome-session.target.wants" ; \
+ $(LN_S) -f "../org.freedesktop.IBus.session.GNOME.service" .; \
+ )
+ $(NULL)
+endif
+
+EXTRA_DIST = \
+ $(dbusservice_in_files) \
+ $(systemdservice_in_files) \
+ $(NULL)
+
+CLEANFILES = \
+ $(dbusservice_DATA) \
+ $(systemdservice_DATA) \
+ $(NULL)
+
+-include $(top_srcdir)/git.mk
diff --git a/bus/org.freedesktop.IBus.service.in b/bus/services/org.freedesktop.IBus.service.in
new file mode 100644
index 00000000..9d493159
--- /dev/null
+++ b/bus/services/org.freedesktop.IBus.service.in
@@ -0,0 +1,3 @@
+[D-BUS Service]
+Name=org.freedesktop.IBus
+Exec=@bindir@/ibus-daemon --replace --panel disable @xim_cli_arg@
diff --git a/bus/services/org.freedesktop.IBus.session.GNOME.service.in b/bus/services/org.freedesktop.IBus.session.GNOME.service.in
index 76444dbd..a99370fa 100644
--- a/bus/services/org.freedesktop.IBus.session.GNOME.service.in
+++ b/bus/services/org.freedesktop.IBus.session.GNOME.service.in
@@ -1,5 +1,5 @@
[Unit]
-Description=IBus Daemon
+Description=IBus Daemon for GNOME
CollectMode=inactive-or-failed
# Require GNOME session and specify startup ordering
diff --git a/bus/services/org.freedesktop.IBus.session.generic.service.in b/bus/services/org.freedesktop.IBus.session.generic.service.in
new file mode 100644
index 00000000..9d493159
--- /dev/null
+++ b/bus/services/org.freedesktop.IBus.session.generic.service.in
@@ -0,0 +1,15 @@
+[Unit]
+Description=IBus Daemon for generic sessions
+CollectMode=inactive-or-failed
+
+# Never run in GNOME
+Conflicts=gnome-session-initialized.target
+
+[Service]
+Type=dbus
+# Only pull --xim in X11 session, it is done via Xwayland-session.d on Wayland
+ExecStart=sh -c '@bindir@/ibus-daemon $IBUS_DAEMON_ARGS'
+Restart=on-abnormal
+BusName=org.freedesktop.IBus
+TimeoutStopSec=5
+Slice=session.slice
diff --git a/configure.ac b/configure.ac
index 73c5e429..4137e6cc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,8 +3,8 @@
# ibus - The Input Bus
#
# Copyright (c) 2007-2016 Peng Huang <shawn.p.huang@gmail.com>
-# Copyright (c) 2015-2021 Takao Fujiwara <takao.fujiwara1@gmail.com>
-# Copyright (c) 2007-2021 Red Hat, Inc.
+# Copyright (c) 2015-2022 Takao Fujiwara <takao.fujiwara1@gmail.com>
+# Copyright (c) 2007-2022 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
@@ -791,24 +791,22 @@ AC_SUBST(XKBCONFIG_BASE)
AC_SUBST([GDBUS_CODEGEN], [`$PKG_CONFIG --variable gdbus_codegen gio-2.0`])
# OUTPUT files
-AC_CONFIG_FILES([ po/Makefile.in
-Makefile
-ibus-1.0.pc
-ibus.spec
+AC_CONFIG_FILES([
+po/Makefile.in
+bindings/Makefile
+bindings/pygobject/Makefile
+bindings/vala/Makefile
+bus/Makefile
+bus/services/Makefile
client/Makefile
client/gtk2/Makefile
client/gtk3/Makefile
client/gtk4/Makefile
client/x11/Makefile
client/wayland/Makefile
-src/Makefile
-src/ibusversion.h
-src/tests/Makefile
-bus/Makefile
-portal/Makefile
-engine/Makefile
-util/Makefile
-util/IMdkit/Makefile
+conf/Makefile
+conf/dconf/Makefile
+conf/memconf/Makefile
data/Makefile
data/annotations/Makefile
data/icons/Makefile
@@ -819,20 +817,24 @@ docs/Makefile
docs/reference/Makefile
docs/reference/ibus/ibus-docs.sgml
docs/reference/ibus/Makefile
-m4/Makefile
+engine/Makefile
ibus/_config.py
ibus/Makefile
ibus/interface/Makefile
-ui/Makefile
-ui/gtk3/Makefile
+m4/Makefile
+portal/Makefile
setup/Makefile
-bindings/Makefile
-bindings/pygobject/Makefile
-bindings/vala/Makefile
-conf/Makefile
-conf/dconf/Makefile
-conf/memconf/Makefile
+src/Makefile
+src/ibusversion.h
+src/tests/Makefile
tools/Makefile
+ui/Makefile
+ui/gtk3/Makefile
+util/Makefile
+util/IMdkit/Makefile
+Makefile
+ibus-1.0.pc
+ibus.spec
])
AC_OUTPUT
diff --git a/src/Makefile.am b/src/Makefile.am
index bbaa6c90..578694b5 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -317,11 +317,6 @@ install-data-hook:
rm "$(DESTDIR)$(dictdir)/$$file" || exit $$?; \
fi; \
done
- $(MKDIR_P) "$(DESTDIR)$(SYSTEMD_USER_UNIT_DIR)/gnome-session.target.wants/"
- ( \
- cd "$(DESTDIR)$(SYSTEMD_USER_UNIT_DIR)/gnome-session.target.wants" ; \
- $(LN_S) -f "../org.freedesktop.IBus.session.GNOME.service" .; \
- )
emoji_parser_SOURCES = \
emoji-parser.c \
@@ -388,17 +383,7 @@ clean-local:
$(NULL)
endif
-if ENABLE_SYSTEMD
-systemdservice_in_files = org.freedesktop.IBus.session.GNOME.service.in
-systemdservice_DATA = $(systemdservice_in_files:.service.in=.service)
-systemdservicedir=$(SYSTEMD_USER_UNIT_DIR)
-
-org.freedesktop.IBus.session.GNOME.service: org.freedesktop.IBus.session.GNOME.service.in
- $(AM_V_GEN) sed -e "s|\@bindir\@|$(bindir)|" $< > $@.tmp && mv $@.tmp $@
-endif
-
EXTRA_DIST = \
- org.freedesktop.IBus.session.GNOME.service.in \
emoji-parser.c \
ibusversion.h.in \
ibusmarshalers.list \
@@ -408,7 +393,6 @@ EXTRA_DIST = \
$(NULL)
CLEANFILES += \
- $(systemdservice_DATA) \
$(BUILT_SOURCES) \
stamp-ibusmarshalers.h \
stamp-ibusenumtypes.h \
--
2.33.1
From e325fc21b492eee83cb93712472495059395dc7b Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Sat, 12 Feb 2022 11:02:29 +0900
Subject: [PATCH] src/tests: Fix typos
- test_metas_in location
- Check ibus processes in CI
- Fix libexec path
---
src/tests/Makefile.am | 8 ++++----
src/tests/ibus-desktop-testing-autostart | 2 ++
src/tests/ibus-desktop-testing.desktop.in | 2 +-
3 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am
index 7d00f236..f932f18f 100644
--- a/src/tests/Makefile.am
+++ b/src/tests/Makefile.am
@@ -3,7 +3,7 @@
# ibus - The Input Bus
#
# Copyright (c) 2007-2015 Peng Huang <shawn.p.huang@gmail.com>
-# Copyright (c) 2015-2021 Takao Fujiwara <takao.fujiwara1@gmail.com>
+# Copyright (c) 2015-2022 Takao Fujiwara <takao.fujiwara1@gmail.com>
# Copyright (c) 2007-2018 Red Hat, Inc.
#
# This library is free software; you can redistribute it and/or
@@ -117,11 +117,11 @@ org.freedesktop.IBus.Desktop.Testing.desktop: ibus-desktop-testing.desktop.in
mv $@.tmp $@
endif
-$(test_metas): $(test_metas_in) $(test_programs)
+$(test_metas): $(test_metas_in)
f=`echo $@ | sed -e 's/\.test//'`; \
TEST_EXEC=$(test_execsdir)/$$f; \
- sed -e "s|@TEST_EXEC[@]|$$TEST_EXEC|g" $(test_metas_in) > $@.tmp; \
- mv $@.tmp $@; \
+ sed -e "s|@TEST_EXEC[@]|$$TEST_EXEC|g" $(srcdir)/$(test_metas_in) \
+ > $@.tmp && mv $@.tmp $@; \
$(NULL)
ibus-compose-locales: ibus-compose-locales.in
diff --git a/src/tests/ibus-desktop-testing-autostart b/src/tests/ibus-desktop-testing-autostart
index da22b64e..1e1eb180 100755
--- a/src/tests/ibus-desktop-testing-autostart

View File

@ -1,6 +1,6 @@
From d63da885f8f4e3764b8b572347b70a0cefadc335 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Wed, 16 Jun 2021 20:55:20 +0900
Date: Fri, 11 Feb 2022 11:43:57 +0900
Subject: [PATCH] src/tests: Change window manager to mutter for RHEL
---
@ -11,16 +11,16 @@ diff --git a/src/tests/ibus-desktop-testing-runner.in b/src/tests/ibus-desktop-t
index 54b7e0d7..211e0da5 100755
--- a/src/tests/ibus-desktop-testing-runner.in
+++ b/src/tests/ibus-desktop-testing-runner.in
@@ -44,7 +44,7 @@ TEST_LOG="test-suite.log"
TEST_LOG_STDOUT=0
@@ -45,7 +45,7 @@ TEST_LOG_STDOUT=0
RESULT_LOG=""
SCREEN_LOG=""
HAVE_GRAPHICS=1
-DESKTOP_COMMAND="dbus-launch --exit-with-session gnome-session"
+DESKTOP_COMMAND="dbus-launch --exit-with-session mutter"
PID_XORG=0
PID_GNOME_SESSION=0
TESTING_RUNNER="default"
@@ -80,9 +80,9 @@ usage()
@@ -81,9 +81,9 @@ usage()
"-b, --builddir=BUILDDIR Set the BUILDDIR\n" \
"-s, --srcdir=SOURCEDIR Set the SOURCEDIR\n" \
"-c, --no-graphics Use Xvfb instead of Xorg\n" \

View File

@ -39,7 +39,7 @@
Name: ibus
Version: 1.5.25
Release: 9%{?dist}
Release: 10%{?dist}
Summary: Intelligent Input Bus for Linux OS
License: LGPLv2+
URL: https://github.com/ibus/%name/wiki
@ -88,6 +88,7 @@ BuildRequires: wayland-devel
BuildRequires: cldr-emoji-annotation
BuildRequires: unicode-emoji
BuildRequires: unicode-ucd
BuildRequires: systemd
# for ibus-keypress
BuildRequires: libXtst-devel
@ -433,6 +434,10 @@ dconf update || :
%{_libexecdir}/ibus-x11
%{_sysconfdir}/dconf/db/ibus.d
%{_sysconfdir}/dconf/profile/ibus
%dir %{_sysconfdir}/xdg/Xwayland-session.d
%{_sysconfdir}/xdg/Xwayland-session.d/10-ibus-x11
%{_prefix}/lib/systemd/user/gnome-session.target.wants/*.service
%{_prefix}/lib/systemd/user/org.freedesktop.IBus.session.*.service
%python3_sitearch/gi/overrides/__pycache__/*.py*
%python3_sitearch/gi/overrides/IBus.py
# ibus owns xinput.d because gnome does not like to depend on imsettings.
@ -517,6 +522,11 @@ dconf update || :
%{_datadir}/installed-tests/ibus
%changelog
* Fri Feb 11 2022 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.25-10
- Do not mkdir abstract unix socket
- Fix IBus.key_event_from_string
- Add systemd unit file
* Thu Feb 03 2022 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.25-9
- Change XKB layout string color in panel
- Add Ctrl-semicolon to Emoji shortcut key