2 # - clean .py in %{_datadir}/{setup,ui/gtk} if possible
5 %bcond_without static_libs # don't build static library
6 %bcond_without vala # Vala API
7 %bcond_without wayland # Wayland client
9 Summary: Intelligent Input Bus for Linux OS
10 Summary(pl.UTF-8): IBus - inteligentna szyna wejściowa dla Linuksa
16 #Source0Download: http://code.google.com/p/ibus/downloads/list
17 Source0: https://github.com/ibus/ibus/releases/download/%{version}/%{name}-%{version}.tar.gz
18 # Source0-md5: a6e820db4fe3d82c825398f1ed19c77e
19 Source1: %{name}.xinputd
20 Patch0: %{name}-1136623-lost-by-another-focus.patch
21 Patch1: %{name}-HEAD.patch
22 Patch2: %{name}-xx-increase-timeout.patch
23 Patch3: python-path.patch
24 URL: http://code.google.com/p/ibus/
25 BuildRequires: GConf2-devel >= 2.12
26 BuildRequires: atk-devel
27 BuildRequires: autoconf >= 2.62
28 BuildRequires: automake >= 1:1.11.1
29 BuildRequires: dbus-devel
30 BuildRequires: dbus-glib-devel
31 BuildRequires: dconf-devel >= 0.7.5
32 BuildRequires: desktop-file-utils
33 BuildRequires: gettext-tools
34 BuildRequires: glib2-devel >= 1:2.32.0
35 BuildRequires: gobject-introspection-devel >= 0.9.6
36 BuildRequires: gtk+2-devel >= 2.0
37 BuildRequires: gtk+3-devel >= 3.0
38 BuildRequires: gtk-doc >= 1.9
39 BuildRequires: intltool >= 0.35.0
40 BuildRequires: iso-codes
41 BuildRequires: libnotify-devel >= 0.7
42 BuildRequires: libtool
43 BuildRequires: pkgconfig
44 BuildRequires: python >= 1:2.5
45 BuildRequires: python-dbus-devel >= 0.83.0
46 BuildRequires: python-pygobject3 >= 3.0.0
47 BuildRequires: python-pygobject3-common-devel >= 3.0.0
48 BuildRequires: rpm-pythonprov
49 BuildRequires: rpmbuild(macros) >= 1.596
50 %{?with_vala:BuildRequires: vala >= 2:0.16}
52 %{?with_wayland:BuildRequires: wayland-devel >= 1.2.0}
53 BuildRequires: xorg-lib-libX11-devel
54 %{?with_wayland:BuildRequires: xorg-lib-libxkbcommon-devel}
55 Requires: %{name}-conf = %{version}-%{release}
56 Requires: %{name}-libs = %{version}-%{release}
57 Requires: dbus >= 1.2.4
58 Requires: gtk-update-icon-cache
59 Requires: hicolor-icon-theme
62 Requires: libnotify >= 0.7
63 Requires: python-ibus = %{version}-%{release}
64 Requires: python-pygtk-gtk
65 Requires: python-pynotify
66 Requires: xorg-app-setxkbmap
67 # input-keyboard-symbolic icon
68 Suggests: gnome-icon-theme-symbolic
70 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
72 %define _libexecdir %{_libdir}/ibus
75 IBus means Intelligent Input Bus. It is an input framework for Linux
78 %description -l pl.UTF-8
79 IBus (Intelligent Input Bus) to inteligentna szyna wejściowa. Jest to
80 szkielet wprowadzania tekstu dla Linuksa.
83 Summary: IBus configuration module using DConf
84 Summary(pl.UTF-8): Moduł konfiguracji IBus wykorzystujący mechanizm DConf
86 Requires(post,postun): glib2 >= 1:2.32
87 Requires: %{name} = %{version}-%{release}
88 Requires: dconf >= 0.7.5
89 Provides: %{name}-conf = %{version}-%{release}
92 IBus configuration module using DConf.
94 %description dconf -l pl.UTF-8
95 Moduł konfiguracji IBus wykorzystujący mechanizm DConf.
98 Summary: IBus configuration module using GConf
99 Summary(pl.UTF-8): Moduł konfiguracji IBus wykorzystujący mechanizm GConf
101 Requires(post,postun): GConf2 >= 2.12
102 Requires: %{name} = %{version}-%{release}
103 Requires: GConf2 >= 2.12
104 Provides: %{name}-conf = %{version}-%{release}
107 IBus configuration module using GConf.
109 %description gconf -l pl.UTF-8
110 Moduł konfiguracji IBus wykorzystujący mechanizm GConf.
113 Summary: IBus im module for GTK+ 2.x
114 Summary(pl.UTF-8): Moduł im IBus dla GTK+ 2.x
116 Requires: %{name} = %{version}-%{release}
117 Requires: imsettings-gnome2
118 Requires(post): glib2 >= 1:2.32.0
121 This package contains IBus im module for GTK+ 2.x.
123 %description gtk2 -l pl.UTF-8
124 Ten pakiet zawiera moduł im IBus dla GTK+ 2.x.
127 Summary: IBus im module for GTK+ 3.x
128 Summary(pl.UTF-8): Moduł im IBus dla GTK+ 3.x
130 Requires: %{name} = %{version}-%{release}
131 Requires: imsettings-gnome3
132 Requires(post): glib2 >= 1:2.32.0
135 This package contains IBus im module for GTK+ 3.x.
137 %description gtk3 -l pl.UTF-8
138 Ten pakiet zawiera moduł im IBus dla GTK+ 3.x.
141 Summary: Wayland im protocol support for IBus
142 Summary(pl.UTF-8): Obsługa protokołu im Waylanda dla systemu IBus
144 Requires: %{name} = %{version}-%{release}
145 Requires: wayland >= 1.2.0
148 Wayland im protocol support for IBus.
150 %description wayland -l pl.UTF-8
151 Obsługa protokołu im Waylanda dla systemu IBus.
154 Summary: IBus library
155 Summary(pl.UTF-8): Biblioteka IBus
157 Requires: glib2 >= 1:2.32.0
158 Obsoletes: ibus-xkb-libs
161 This package contains the IBus shared library.
163 %description libs -l pl.UTF-8
164 Ten pakiet zawiera bibliotekę współdzieloną IBus.
167 Summary: Development files for IBus
168 Summary(pl.UTF-8): Pliki programistyczne IBus
169 Group: Development/Libraries
170 Requires: %{name}-libs = %{version}-%{release}
171 Requires: glib2-devel >= 1:2.32.0
172 Obsoletes: ibus-xkb-devel
175 The ibus-devel package contains the header files for IBus.
177 %description devel -l pl.UTF-8
178 Ten pakiet zawiera pliki nagłówkowe dla szkieletu IBus.
181 Summary: Static ibus library
182 Summary(pl.UTF-8): Biblioteka statyczna ibus
183 Group: Development/Libraries
184 Requires: %{name}-devel = %{version}-%{release}
185 Obsoletes: ibus-xkb-static
190 %description static -l pl.UTF-8
191 Biblioteka statyczna ibus.
194 Summary: Development documentation for IBus
195 Summary(pl.UTF-8): Dokumentacja programisty dla szkieletu IBus
196 Group: Development/Libraries
197 Requires: gtk-doc-common
198 Conflicts: ibus-devel < 1.4.2
199 %if "%{_rpmversion}" >= "5"
204 Development documentation for IBus.
206 %description apidocs -l pl.UTF-8
207 Dokumentacja programisty dla szkieletu IBus.
209 %package -n python-ibus
210 Summary: Python interface to IBus framework
211 Summary(pl.UTF-8): Pythonowy interfejs do szkieletu IBus
212 Group: Development/Languages/Python
213 Requires: python-dbus >= 0.83.0
214 Requires: python-pygobject3 >= 3.0.0
215 Requires: python-pygtk-pango
216 Requires: python-pyxdg
217 Conflicts: ibus < 1.4.2
219 %description -n python-ibus
220 Python interface to IBus framework.
222 %description -n python-ibus -l pl.UTF-8
223 Pythonowy interfejs do szkieletu IBus.
225 %package -n vala-ibus
226 Summary: Vala API for ibus library
227 Summary(pl.UTF-8): API języka Vala do biblioteki ibus
228 Group: Development/Libraries
229 Requires: %{name}-devel = %{version}-%{release}
230 Requires: vala >= 2:0.16
232 %description -n vala-ibus
233 Vala API for ibus library.
235 %description -n vala-ibus -l pl.UTF-8
236 API języka Vala do biblioteki ibus.
238 %package -n bash-completion-ibus
239 Summary: Bash completion for ibus commands
240 Summary(pl.UTF-8): Bashowe dopełnianie parametrów dla poleceń ibus
241 Group: Applications/Shells
242 Requires: bash-completion >= 2
243 %if "%{_rpmversion}" >= "5"
247 %description -n bash-completion-ibus
248 Bash completion for ibus commands.
250 %description -n bash-completion-ibus -l pl.UTF-8
251 Bashowe dopełnianie parametrów dla poleceń ibus.
268 --disable-silent-rules \
273 --enable-introspection \
274 --enable-python-library \
275 %{?with_static_libs:--enable-static} \
276 --enable-surrounding-text \
277 --enable-vala%{!?with_vala:=no} \
278 %{?with_wayland:--enable-wayland} \
280 --with-html-dir=%{_gtkdocdir} \
281 --with-no-snooper-apps='gnome-do,Do.*,firefox.*,.*chrome.*,.*chromium.*'
283 %{__make} -C ui/gtk3 maintainer-clean-generic
288 rm -rf $RPM_BUILD_ROOT
289 install -d $RPM_BUILD_ROOT%{_sysconfdir}/X11/xinit/xinput.d
292 DESTDIR=$RPM_BUILD_ROOT
294 %{__sed} -e 's|@@LIB@@|%{_lib}|g' %{SOURCE1} >$RPM_BUILD_ROOT%{_sysconfdir}/X11/xinit/xinput.d/ibus.conf
296 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
297 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk*/*/immodules/*.la
298 %if %{with static_libs}
299 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk*/*/immodules/*.a
307 rm -rf $RPM_BUILD_ROOT
310 %update_icon_cache hicolor
313 %update_icon_cache hicolor
316 %glib_compile_schemas
319 %glib_compile_schemas
322 %gconf_schema_install ibus.schemas
325 %gconf_schema_uninstall ibus.schemas
328 %if "%{_lib}" != "lib"
329 %{_bindir}/gtk-query-immodules-2.0-64 > %{_sysconfdir}/gtk64-2.0/gtk.immodules
331 %{_bindir}/gtk-query-immodules-2.0 > %{_sysconfdir}/gtk-2.0/gtk.immodules
335 %if "%{_lib}" != "lib"
336 %{_bindir}/gtk-query-immodules-2.0-64 > %{_sysconfdir}/gtk64-2.0/gtk.immodules
338 %{_bindir}/gtk-query-immodules-2.0 > %{_sysconfdir}/gtk-2.0/gtk.immodules
342 %if "%{_lib}" != "lib"
343 %{_bindir}/gtk-query-immodules-3.0-64 --update-cache
345 %{_bindir}/gtk-query-immodules-3.0 --update-cache
349 %if "%{_lib}" != "lib"
350 %{_bindir}/gtk-query-immodules-3.0-64 --update-cache
352 %{_bindir}/gtk-query-immodules-3.0 --update-cache
355 %post libs -p /sbin/ldconfig
356 %postun libs -p /sbin/ldconfig
358 %files -f %{name}10.lang
359 %defattr(644,root,root,755)
361 %config(noreplace) %verify(not md5 mtime size) /etc/X11/xinit/xinput.d/ibus.conf
362 %attr(755,root,root) %{_bindir}/ibus
363 %attr(755,root,root) %{_bindir}/ibus-daemon
364 %attr(755,root,root) %{_bindir}/ibus-setup
366 %attr(755,root,root) %{_libexecdir}/ibus-engine-simple
367 %attr(755,root,root) %{_libexecdir}/ibus-ui-gtk3
368 %attr(755,root,root) %{_libexecdir}/ibus-x11
369 %dir %{_datadir}/ibus
370 %dir %{_datadir}/ibus/component
371 %{_datadir}/ibus/component/gtkpanel.xml
372 %{_datadir}/ibus/component/simple.xml
373 %{_datadir}/ibus/engine
374 %{_datadir}/ibus/keymaps
375 %{_datadir}/ibus/setup
376 %{_desktopdir}/ibus-setup.desktop
377 %{_iconsdir}/hicolor/*/apps/ibus-*.png
378 %{_iconsdir}/hicolor/scalable/apps/ibus*.svg
379 %{_mandir}/man1/ibus.1*
380 %{_mandir}/man1/ibus-daemon.1*
381 %{_mandir}/man1/ibus-setup.1*
384 %defattr(644,root,root,755)
385 %attr(755,root,root) %{_libexecdir}/ibus-dconf
386 %{_datadir}/ibus/component/dconf.xml
387 %dir %{_sysconfdir}/dconf/db/ibus.d
388 %{_sysconfdir}/dconf/db/ibus.d/00-upstream-settings
389 %{_sysconfdir}/dconf/profile/ibus
390 %{_datadir}/GConf/gsettings/ibus.convert
391 %{_datadir}/glib-2.0/schemas/org.freedesktop.ibus.gschema.xml
394 %defattr(644,root,root,755)
395 %attr(755,root,root) %{_libexecdir}/ibus-gconf
396 %{_datadir}/ibus/component/gconf.xml
397 %{_sysconfdir}/gconf/schemas/ibus.schemas
400 %defattr(644,root,root,755)
401 %attr(755,root,root) %{_libdir}/gtk-2.0/*/immodules/im-ibus.so
404 %defattr(644,root,root,755)
405 %attr(755,root,root) %{_libdir}/gtk-3.0/*/immodules/im-ibus.so
408 %defattr(644,root,root,755)
409 %attr(755,root,root) %{_libexecdir}/ibus-wayland
412 %defattr(644,root,root,755)
413 %attr(755,root,root) %{_libdir}/libibus-1.0.so.*.*.*
414 %attr(755,root,root) %ghost %{_libdir}/libibus-1.0.so.5
415 %{_libdir}/girepository-1.0/IBus-1.0.typelib
418 %defattr(644,root,root,755)
419 %attr(755,root,root) %{_libdir}/libibus-1.0.so
420 %{_pkgconfigdir}/ibus-1.0.pc
421 %{_includedir}/ibus-1.0
422 %{_datadir}/gir-1.0/IBus-1.0.gir
424 %if %{with static_libs}
426 %defattr(644,root,root,755)
427 %{_libdir}/libibus-1.0.a
431 %defattr(644,root,root,755)
434 %files -n python-ibus
435 %defattr(644,root,root,755)
436 %dir %{py_sitescriptdir}/ibus
437 %{py_sitescriptdir}/ibus/*.py[co]
438 %dir %{py_sitescriptdir}/ibus/interface
439 %{py_sitescriptdir}/ibus/interface/*.py[co]
440 %{py_sitedir}/gi/overrides/IBus.py[co]
444 %defattr(644,root,root,755)
445 %{_datadir}/vala/vapi/ibus-1.0.vapi
446 %{_datadir}/vala/vapi/ibus-1.0.deps
449 %files -n bash-completion-ibus
450 %defattr(644,root,root,755)
451 %{_datadir}/bash-completion/completions/ibus.bash