Resolves #2297735 Move ibus.conf to ibus-xinit sub package

- Resolves #2297147 Add directory datadir/GConf/gsettings
- Add directory %%{_prefix}/lib/systemd/user/gnome-session.target.wants
- Add directory %%{_libdir}/gtk-4.0/%{gtk4_binary_version}/immodules
This commit is contained in:
Takao Fujiwara 2024-07-18 21:17:59 +09:00
parent c76094d165
commit 8f00eaae8e

View File

@ -30,6 +30,7 @@
%bcond_with gtk4 %bcond_with gtk4
%endif %endif
%global ibus_xinit_condition %ibus_panel_condition
# FIXME: How to write a condition with multiple lines # FIXME: How to write a condition with multiple lines
%global ibus_panel_condition (%pcd1 or %pcd2 or %pcd3) %global ibus_panel_condition (%pcd1 or %pcd2 or %pcd3)
%global pcd1 budgie-desktop or cinnamon or deepin-desktop or i3 %global pcd1 budgie-desktop or cinnamon or deepin-desktop or i3
@ -75,7 +76,7 @@ Patch0: %{name}-HEAD.patch
Patch1: %{name}-2267615-wayland-init-keymap.patch Patch1: %{name}-2267615-wayland-init-keymap.patch
# Under testing #1349148 #1385349 #1350291 #1406699 #1432252 #1601577 # Under testing #1349148 #1385349 #1350291 #1406699 #1432252 #1601577
Patch2: %{name}-1385349-segv-bus-proxy.patch Patch2: %{name}-1385349-segv-bus-proxy.patch
%if %{without xinit} %if 0%{?rhel} > 8
# Use mutter window manager in RHEL CI # Use mutter window manager in RHEL CI
Patch100: %{name}-xx-desktop-testing-mutter.patch Patch100: %{name}-xx-desktop-testing-mutter.patch
# Disable to run setxkbmap # Disable to run setxkbmap
@ -127,14 +128,16 @@ BuildRequires: xorg-x11-server-Xvfb
BuildRequires: libX11 BuildRequires: libX11
BuildRequires: mutter BuildRequires: mutter
Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%if %{with gtk2} %if %{with gtk2}
Requires: (%{name}-gtk2%{?_isa} = %{version}-%{release} if gtk2) Requires: (%{name}-gtk2%{?_isa} = %{version}-%{release} if gtk2)
%endif %endif
Requires: %{name}-gtk3%{?_isa} = %{version}-%{release} Requires: %{name}-gtk3%{?_isa} = %{version}-%{release}
Requires: %{name}-setup = %{version}-%{release} Requires: %{name}-setup = %{version}-%{release}
Requires: (%{name}-panel%{?_isa} = %{version}-%{release} if %ibus_panel_condition) Requires: (%{name}-panel%{?_isa} = %{version}-%{release} if %ibus_panel_condition)
%if %{with xinit}
Requires: (%{name}-xinit = %{version}-%{release} if %ibus_xinit_condition)
%endif
Requires: iso-codes Requires: iso-codes
Requires: dconf Requires: dconf
@ -144,15 +147,6 @@ Requires: dconf
Requires: python3-gobject Requires: python3-gobject
# https://bugzilla.redhat.com/show_bug.cgi?id=1161871 # https://bugzilla.redhat.com/show_bug.cgi?id=1161871
%{?__python3:Requires: %{__python3}} %{?__python3:Requires: %{__python3}}
%if %{with xinit}
# Owner of %%{_sysconfdir}/X11/xinit
Requires: xorg-x11-xinit
Requires: setxkbmap
%endif
%if (0%{?fedora} > 29 || 0%{?rhel} > 8)
%else
Requires: dbus-x11
%endif
Requires: desktop-file-utils Requires: desktop-file-utils
Requires(post): desktop-file-utils Requires(post): desktop-file-utils
@ -275,8 +269,9 @@ This package contains IBus IM module for Wayland
Summary: IBus Panel icon Summary: IBus Panel icon
Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%if %{without xinit} %if %{with xinit}
# ibus-xinit is not available in RHEL # setxkbmap can change XKB options for Xorg desktop sessions
Requires: setxkbmap
%endif %endif
BuildRequires: libdbusmenu-gtk3-devel BuildRequires: libdbusmenu-gtk3-devel
@ -286,16 +281,18 @@ in non-GNOME desktop sessions likes XFCE or Plasma because gnome-shell
shows the IBus Icon. This package depends on libdbusmenu-gtk3 for Wayland shows the IBus Icon. This package depends on libdbusmenu-gtk3 for Wayland
desktop sessions. desktop sessions.
%if %{without xinit}
%package xinit %package xinit
Summary: IBus Xinit Summary: IBus Xinit
Requires: %{name} = %{version}-%{release} Requires: %{name} = %{version}-%{release}
%if %{with xinit}
# Owner of %%{_sysconfdir}/X11/xinit
Requires: xorg-x11-xinit
%endif
BuildArch: noarch BuildArch: noarch
%description xinit %description xinit
This package includes xinit scripts to set environment variables of IBus This package includes xinit scripts to set environment variables of IBus
for Xorg desktop sessions and this is not needed by Wayland desktop sessions. for Xorg desktop sessions and this is not needed by Wayland desktop sessions.
%endif
%package devel %package devel
Summary: Development tools for ibus Summary: Development tools for ibus
@ -505,6 +502,8 @@ dconf update || :
%{_datadir}/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop %{_datadir}/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop
%{_datadir}/bash-completion/completions/ibus.bash %{_datadir}/bash-completion/completions/ibus.bash
%{_datadir}/dbus-1/services/*.service %{_datadir}/dbus-1/services/*.service
%dir %{_datadir}/GConf
%dir %{_datadir}/GConf/gsettings
%{_datadir}/GConf/gsettings/* %{_datadir}/GConf/gsettings/*
%{_datadir}/glib-2.0/schemas/*.xml %{_datadir}/glib-2.0/schemas/*.xml
%{_datadir}/ibus/component %{_datadir}/ibus/component
@ -517,9 +516,6 @@ dconf update || :
%{_datadir}/man/man7/ibus-emoji.7.gz %{_datadir}/man/man7/ibus-emoji.7.gz
%{_datadir}/man/man5/00-upstream-settings.5.gz %{_datadir}/man/man5/00-upstream-settings.5.gz
%{_datadir}/man/man5/ibus.5.gz %{_datadir}/man/man5/ibus.5.gz
%if %{with xinit}
%{_datadir}/man/man5/ibus.conf.5.gz
%endif
%{_libexecdir}/ibus-engine-simple %{_libexecdir}/ibus-engine-simple
%{_libexecdir}/ibus-dconf %{_libexecdir}/ibus-dconf
%{_libexecdir}/ibus-portal %{_libexecdir}/ibus-portal
@ -530,17 +526,11 @@ dconf update || :
%{_sysconfdir}/dconf/profile/ibus %{_sysconfdir}/dconf/profile/ibus
%dir %{_sysconfdir}/xdg/Xwayland-session.d %dir %{_sysconfdir}/xdg/Xwayland-session.d
%{_sysconfdir}/xdg/Xwayland-session.d/10-ibus-x11 %{_sysconfdir}/xdg/Xwayland-session.d/10-ibus-x11
%dir %{_prefix}/lib/systemd/user/gnome-session.target.wants
%{_prefix}/lib/systemd/user/gnome-session.target.wants/*.service %{_prefix}/lib/systemd/user/gnome-session.target.wants/*.service
%{_prefix}/lib/systemd/user/org.freedesktop.IBus.session.*.service %{_prefix}/lib/systemd/user/org.freedesktop.IBus.session.*.service
%python3_sitearch/gi/overrides/__pycache__/*.py* %python3_sitearch/gi/overrides/__pycache__/*.py*
%python3_sitearch/gi/overrides/IBus.py %python3_sitearch/gi/overrides/IBus.py
%if %{with xinit}
# ibus owns xinput.d because gnome does not like to depend on imsettings.
%dir %{_sysconfdir}/X11/xinit/xinput.d
# Do not use %%config(noreplace) to always get the new keywords in _xinputconf
# For user customization, $HOME/.xinputrc can be used instead.
%config %{_xinputconf}
%endif
%verify(not mtime) %dir %pkgcache %verify(not mtime) %dir %pkgcache
%verify(not mtime) %dir %pkgcache/bus %verify(not mtime) %dir %pkgcache/bus
# 'ibus write-cache --system' updates the system cache. # 'ibus write-cache --system' updates the system cache.
@ -561,6 +551,7 @@ dconf update || :
%if %{with gtk4} %if %{with gtk4}
%files gtk4 %files gtk4
%dir %{_libdir}/gtk-4.0/%{gtk4_binary_version}/immodules
%{_libdir}/gtk-4.0/%{gtk4_binary_version}/immodules/libim-ibus.so %{_libdir}/gtk-4.0/%{gtk4_binary_version}/immodules/libim-ibus.so
%endif %endif
@ -594,14 +585,16 @@ dconf update || :
%{_datadir}/applications/org.freedesktop.IBus.Panel.Wayland.Gtk3.desktop %{_datadir}/applications/org.freedesktop.IBus.Panel.Wayland.Gtk3.desktop
%{_libexecdir}/ibus-ui-gtk3 %{_libexecdir}/ibus-ui-gtk3
%if %{without xinit}
%files xinit %files xinit
%{_datadir}/man/man5/ibus.conf.5.gz %{_datadir}/man/man5/ibus.conf.5.gz
%if %{without xinit}
# ibus owns xinit directory without xorg-x11-xinit package # ibus owns xinit directory without xorg-x11-xinit package
%dir %{_sysconfdir}/X11/xinit %dir %{_sysconfdir}/X11/xinit
%dir %{_sysconfdir}/X11/xinit/xinput.d %dir %{_sysconfdir}/X11/xinit/xinput.d
%config %{_xinputconf}
%endif %endif
# Do not use %%config(noreplace) to always get the new keywords in _xinputconf
# For user customization, $HOME/.xinputrc can be used instead.
%config %{_xinputconf}
%files devel %files devel
%{_libdir}/ibus %{_libdir}/ibus
@ -636,6 +629,10 @@ dconf update || :
%changelog %changelog
* Thu Jul 18 2024 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.30-9 * Thu Jul 18 2024 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.30-9
- Fix OpenScanHub issues - Fix OpenScanHub issues
- Resolves #2297735 Move ibus.conf to ibus-xinit sub package
- Resolves #2297147 Add directory datadir/GConf/gsettings
- Add directory %%{_prefix}/lib/systemd/user/gnome-session.target.wants
- Add directory %%{_libdir}/gtk-4.0/%{gtk4_binary_version}/immodules
* Sat Jul 13 2024 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.30-8 * Sat Jul 13 2024 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.30-8
- adobe-source-code-pro-fonts is no longer available in CI - adobe-source-code-pro-fonts is no longer available in CI