%global _xinputconf %{_sysconfdir}/X11/xinit/xinput.d/fcitx5.conf Name: fcitx5 Version: 5.1.12 Release: 1 Summary: Next generation of fcitx License: LGPL-2.1-or-later URL: https://github.com/fcitx/fcitx5 Source0: https://download.fcitx-im.org/fcitx5/fcitx5/fcitx5-%{version}_dict.tar.zst Source1: fcitx5-xinput Source2: fcitx5.sh Patch0: fcitx5-disab-dbus-tests.patch BuildRequires: cmake BuildRequires: ninja-build BuildRequires: gnupg2 BuildRequires: desktop-file-utils BuildRequires: extra-cmake-modules BuildRequires: gcc-c++ BuildRequires: systemd BuildRequires: pkgconfig(cairo) BuildRequires: cldr-emoji-annotation-devel BuildRequires: pkgconfig(dri) BuildRequires: pkgconfig(enchant-2) BuildRequires: pkgconfig(expat) BuildRequires: pkgconfig(fmt) BuildRequires: pkgconfig(gdk-pixbuf-2.0) BuildRequires: pkgconfig(iso-codes) BuildRequires: pkgconfig(json-c) BuildRequires: pkgconfig(pango) BuildRequires: pkgconfig(uuid) BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(wayland-egl) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(wayland-protocols) BuildRequires: pkgconfig(xcb) BuildRequires: pkgconfig(xkbcommon-x11) BuildRequires: pkgconfig(xkbfile) BuildRequires: pkgconfig(xcb-ewmh) BuildRequires: pkgconfig(xcb-imdkit) BuildRequires: pkgconfig(xcb-icccm) BuildRequires: pkgconfig(xcb-keysyms) BuildRequires: pkgconfig(xkeyboard-config) BuildRequires: /usr/bin/appstream-util Requires: dbus-common Requires: %{name}-data = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: setup Requires(post): %{_sbindir}/alternatives Requires(postun): %{_sbindir}/alternatives Recommends: (fcitx5-gtk if (gtk2 or gtk3 or gtk4)) Recommends: (fcitx5-qt if (qt5-qtbase or qt6-qtbase)) Recommends: (fcitx5-qt-module if (qt5-qtbase or qt6-qtbase)) Recommends: fcitx5-configtool %description Fcitx 5 is a generic input method framework released under LGPL-2.1+. %package libs Summary: Libraries for %{name} %description libs The %{name}-libs package contains runtime shared libraries necessary for running programs using Fcitx5 libraries. %package data Summary: Data files of Fcitx5 BuildArch: noarch # require with isa will lead to problem on koji build Requires: %{name} = %{version}-%{release} Requires: hicolor-icon-theme Requires: dbus %description data The %{name}-data package provides shared data for Fcitx5. %package devel Summary: Development files for %{name} Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and header files necessary for developing programs using Fcitx5 libraries. %package autostart Summary: This package will make fcitx5 start with your GUI session BuildArch: noarch Requires: %{name} = %{version}-%{release} %description autostart This package will setup autostart and environment needed for fcitx5 to work properly. %prep %autosetup -p1 %build %cmake -S . -B %{_target_platform} \ -GNinja %cmake_build %install %cmake_install install -pm 644 -D %{S:1} %{buildroot}%{_xinputconf} install -pm 644 -D %{S:2} %{buildroot}%{_sysconfdir}/profile.d/fcitx5.sh install -d %{buildroot}%{_datadir}/%{name}/inputmethod install -d %{buildroot}%{_datadir}/%{name}/table # convert symlinked icons to copied icons, this will help co-existing with # fcitx4 for iconfile in $(find %{buildroot}%{_datadir}/icons -type l) do origicon=$(readlink -f ${iconfile}) rm -f ${iconfile} cp ${origicon} ${iconfile} done %find_lang %{name} %check %ctest appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.metainfo.xml %post %{_sbindir}/alternatives --install %{_sysconfdir}/X11/xinit/xinputrc xinputrc %{_xinputconf} 55 || : %postun if [ "$1" = "0" ]; then %{_sbindir}/alternatives --remove xinputrc %{_xinputconf} || : # if alternative was set to manual, reset to auto [ -L %{_sysconfdir}/alternatives/xinputrc -a "`readlink %{_sysconfdir}/alternatives/xinputrc`" = "%{_xinputconf}" ] && %{_sbindir}/alternatives --auto xinputrc || : fi %files -f %{name}.lang %license LICENSES/LGPL-2.1-or-later.txt %doc README.md %config %{_xinputconf} %{_bindir}/%{name} %{_bindir}/%{name}-configtool %{_bindir}/%{name}-remote %{_bindir}/%{name}-diagnose %{_libdir}/%{name}/ %{_libexecdir}/fcitx5-wayland-launcher %{_sysconfdir}/xdg/Xwayland-session.d/20-fcitx-x11 %files libs %license LICENSES/LGPL-2.1-or-later.txt %{_libdir}/libFcitx5*.so.*.* %{_libdir}/libFcitx5Config.so.6 %{_libdir}/libFcitx5Core.so.7 %{_libdir}/libFcitx5Utils.so.2 %files devel %{_includedir}/Fcitx5/ %{_libdir}/cmake/Fcitx5* %{_libdir}/libFcitx5*.so %{_libdir}/pkgconfig/Fcitx5*.pc %files data %{_datadir}/%{name} %{_datadir}/dbus-1/services/org.fcitx.Fcitx5.service %{_datadir}/applications/org.fcitx.Fcitx5.desktop %{_metainfodir}/org.fcitx.Fcitx5.metainfo.xml %{_datadir}/applications/%{name}-configtool.desktop %{_datadir}/applications/%{name}-wayland-launcher.desktop %{_datadir}/icons/hicolor/*/apps/* %files autostart %config %{_sysconfdir}/xdg/autostart/org.fcitx.Fcitx5.desktop %config %{_sysconfdir}/profile.d/fcitx5.sh %changelog * Wed Nov 20 2024 Funda Wang - 5.1.10-2 - adopt to new cmake macro - drop useless desktop-file-install - move metainfo validation into check section - disable dbus daemon test, as it does not pass during eulermaker * Wed Aug 14 2024 liu-hengjian <411918005@qq.com> - 5.1.10-1 - Init package version to 5.1.10