]> git.pld-linux.org Git - packages/ibus.git/blob - ibus.spec
- release 3 (by relup.sh)
[packages/ibus.git] / ibus.spec
1 # TODO
2 # - clean .py in %{_datadir}/{setup,ui/gtk} if possible
3 #
4 # Conditional build:
5 %bcond_without  static_libs     # don't build static library
6 %bcond_without  vala            # Vala API
7 %bcond_without  wayland         # Wayland client
8
9 Summary:        Intelligent Input Bus for Linux OS
10 Summary(pl.UTF-8):      IBus - inteligentna szyna wejściowa dla Linuksa
11 Name:           ibus
12 Version:        1.5.20
13 Release:        3
14 License:        LGPL v2+
15 Group:          Libraries
16 #Source0Download: https://github.com/ibus/ibus/releases/
17 Source0:        https://github.com/ibus/ibus/releases/download/%{version}/%{name}-%{version}.tar.gz
18 # Source0-md5:  f4966898b6a87b3a5e1f723317e91811
19 Source1:        %{name}.xinputd
20 Patch0:         python-path.patch
21 URL:            https://github.com/ibus/ibus/
22 BuildRequires:  Qt5Gui-devel >= 5.4
23 BuildRequires:  atk-devel
24 BuildRequires:  autoconf >= 2.62
25 BuildRequires:  automake >= 1:1.11.1
26 BuildRequires:  cldr-emoji-annotation
27 BuildRequires:  dbus-devel
28 BuildRequires:  dbus-glib-devel
29 BuildRequires:  dconf-devel >= 0.13.4
30 BuildRequires:  desktop-file-utils
31 BuildRequires:  gettext-tools >= 0.19.8
32 BuildRequires:  glib2-devel >= 1:2.46.0
33 BuildRequires:  gobject-introspection-devel >= 0.9.6
34 BuildRequires:  gtk+2-devel >= 2.0
35 BuildRequires:  gtk+3-devel >= 3.0
36 BuildRequires:  gtk-doc >= 1.9
37 BuildRequires:  intltool >= 0.35.0
38 BuildRequires:  iso-codes
39 BuildRequires:  libnotify-devel >= 0.7
40 BuildRequires:  libtool >= 2:2
41 BuildRequires:  pkgconfig
42 BuildRequires:  python >= 1:2.5
43 BuildRequires:  python-dbus-devel >= 0.83.0
44 BuildRequires:  python-pygobject3 >= 3.0.0
45 BuildRequires:  python-pygobject3-common-devel >= 3.0.0
46 BuildRequires:  python3 >= 1:3.2
47 BuildRequires:  python3-pygobject3 >= 3.0.0
48 BuildRequires:  rpm-pythonprov
49 BuildRequires:  rpmbuild(macros) >= 1.673
50 # emoji-test.txt
51 BuildRequires:  unicode-emoji >= 4.0
52 # Blocks.txt, NamesList.txt
53 BuildRequires:  unicode-ucd
54 %{?with_vala:BuildRequires:     vala >= 2:0.20}
55 # wayland-client
56 %{?with_wayland:BuildRequires:  wayland-devel >= 1.2.0}
57 BuildRequires:  xorg-lib-libX11-devel
58 %{?with_wayland:BuildRequires:  xorg-lib-libxkbcommon-devel}
59 Requires:       %{name}-conf = %{version}-%{release}
60 Requires:       %{name}-libs = %{version}-%{release}
61 Requires:       dbus >= 1.2.4
62 Requires:       gtk-update-icon-cache
63 Requires:       hicolor-icon-theme
64 Requires:       im-chooser
65 Requires:       iso-codes
66 Requires:       libnotify >= 0.7
67 Requires:       python-ibus = %{version}-%{release}
68 Requires:       python-pygtk-gtk
69 Requires:       python-pynotify
70 Requires:       xorg-app-setxkbmap
71 # input-keyboard-symbolic icon
72 Suggests:       gnome-icon-theme-symbolic
73 Obsoletes:      ibus-gconf
74 Obsoletes:      ibus-xkb
75 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
76
77 %define         _libexecdir     %{_libdir}/ibus
78
79 %description
80 IBus means Intelligent Input Bus. It is an input framework for Linux
81 OS.
82
83 %description -l pl.UTF-8
84 IBus (Intelligent Input Bus) to inteligentna szyna wejściowa. Jest to
85 szkielet wprowadzania tekstu dla Linuksa.
86
87 %package dconf
88 Summary:        IBus configuration module using DConf
89 Summary(pl.UTF-8):      Moduł konfiguracji IBus wykorzystujący mechanizm DConf
90 Group:          Libraries
91 Requires(post,postun):  glib2 >= 1:2.46.0
92 Requires:       %{name} = %{version}-%{release}
93 Requires:       dconf >= 0.13.4
94 Provides:       %{name}-conf = %{version}-%{release}
95
96 %description dconf
97 IBus configuration module using DConf.
98
99 %description dconf -l pl.UTF-8
100 Moduł konfiguracji IBus wykorzystujący mechanizm DConf.
101
102 %package gtk2
103 Summary:        IBus im module for GTK+ 2.x
104 Summary(pl.UTF-8):      Moduł im IBus dla GTK+ 2.x
105 Group:          Libraries
106 Requires:       %{name} = %{version}-%{release}
107 Requires:       imsettings-gnome2
108 Requires(post): glib2 >= 1:2.46.0
109
110 %description gtk2
111 This package contains IBus im module for GTK+ 2.x.
112
113 %description gtk2 -l pl.UTF-8
114 Ten pakiet zawiera moduł im IBus dla GTK+ 2.x.
115
116 %package gtk3
117 Summary:        IBus im module for GTK+ 3.x
118 Summary(pl.UTF-8):      Moduł im IBus dla GTK+ 3.x
119 Group:          Libraries
120 Requires:       %{name} = %{version}-%{release}
121 Requires:       imsettings-gnome3
122 Requires(post): glib2 >= 1:2.46.0
123
124 %description gtk3
125 This package contains IBus im module for GTK+ 3.x.
126
127 %description gtk3 -l pl.UTF-8
128 Ten pakiet zawiera moduł im IBus dla GTK+ 3.x.
129
130 %package wayland
131 Summary:        Wayland im protocol support for IBus
132 Summary(pl.UTF-8):      Obsługa protokołu im Waylanda dla systemu IBus
133 Group:          Libraries
134 Requires:       %{name} = %{version}-%{release}
135 Requires:       wayland >= 1.2.0
136
137 %description wayland
138 Wayland im protocol support for IBus.
139
140 %description wayland -l pl.UTF-8
141 Obsługa protokołu im Waylanda dla systemu IBus.
142
143 %package libs
144 Summary:        IBus library
145 Summary(pl.UTF-8):      Biblioteka IBus
146 Group:          Libraries
147 Requires:       glib2 >= 1:2.46.0
148 Obsoletes:      ibus-xkb-libs
149
150 %description libs
151 This package contains the IBus shared library.
152
153 %description libs -l pl.UTF-8
154 Ten pakiet zawiera bibliotekę współdzieloną IBus.
155
156 %package devel
157 Summary:        Development files for IBus
158 Summary(pl.UTF-8):      Pliki programistyczne IBus
159 Group:          Development/Libraries
160 Requires:       %{name}-libs = %{version}-%{release}
161 Requires:       glib2-devel >= 1:2.46.0
162 Obsoletes:      ibus-xkb-devel
163
164 %description devel
165 The ibus-devel package contains the header files for IBus.
166
167 %description devel -l pl.UTF-8
168 Ten pakiet zawiera pliki nagłówkowe dla szkieletu IBus.
169
170 %package static
171 Summary:        Static ibus library
172 Summary(pl.UTF-8):      Biblioteka statyczna ibus
173 Group:          Development/Libraries
174 Requires:       %{name}-devel = %{version}-%{release}
175 Obsoletes:      ibus-xkb-static
176
177 %description static
178 Static ibus library.
179
180 %description static -l pl.UTF-8
181 Biblioteka statyczna ibus.
182
183 %package apidocs
184 Summary:        Development documentation for IBus
185 Summary(pl.UTF-8):      Dokumentacja programisty dla szkieletu IBus
186 Group:          Development/Libraries
187 Requires:       gtk-doc-common
188 Conflicts:      ibus-devel < 1.4.2
189 %if "%{_rpmversion}" >= "5"
190 BuildArch:      noarch
191 %endif
192
193 %description apidocs
194 Development documentation for IBus.
195
196 %description apidocs -l pl.UTF-8
197 Dokumentacja programisty dla szkieletu IBus.
198
199 %package -n python-ibus
200 Summary:        Python 2 interfaces to IBus framework
201 Summary(pl.UTF-8):      Interfejsy Pythona 2 do szkieletu IBus
202 Group:          Development/Languages/Python
203 Requires:       %{name}-libs = %{version}-%{release}
204 Requires:       python-dbus >= 0.83.0
205 Requires:       python-pygobject3 >= 3.0.0
206 Requires:       python-pygtk-pango
207 Requires:       python-pyxdg
208 Conflicts:      ibus < 1.4.2
209
210 %description -n python-ibus
211 Python 2 interfaces to IBus framework.
212
213 %description -n python-ibus -l pl.UTF-8
214 Interfejsy Pythona 2 do szkieletu IBus.
215
216 %package -n python3-ibus
217 Summary:        Python 3 interface to IBus framework
218 Summary(pl.UTF-8):      Interfejs Pythona 3 do szkieletu IBus
219 Group:          Development/Languages/Python
220 Requires:       %{name}-libs = %{version}-%{release}
221 Requires:       python3-pygobject3 >= 3.0.0
222
223 %description -n python3-ibus
224 Python 3 interface to IBus framework.
225
226 %description -n python3-ibus -l pl.UTF-8
227 Interfejs Pythona 3 interfejs do szkieletu IBus.
228
229 %package -n vala-ibus
230 Summary:        Vala API for ibus library
231 Summary(pl.UTF-8):      API języka Vala do biblioteki ibus
232 Group:          Development/Libraries
233 Requires:       %{name}-devel = %{version}-%{release}
234 Requires:       vala >= 2:0.20
235 %if "%{_rpmversion}" >= "5"
236 BuildArch:      noarch
237 %endif
238
239 %description -n vala-ibus
240 Vala API for ibus library.
241
242 %description -n vala-ibus -l pl.UTF-8
243 API języka Vala do biblioteki ibus.
244
245 %package -n bash-completion-ibus
246 Summary:        Bash completion for ibus commands
247 Summary(pl.UTF-8):      Bashowe dopełnianie parametrów dla poleceń ibus
248 Group:          Applications/Shells
249 Requires:       bash-completion >= 2
250 %if "%{_rpmversion}" >= "5"
251 BuildArch:      noarch
252 %endif
253
254 %description -n bash-completion-ibus
255 Bash completion for ibus commands.
256
257 %description -n bash-completion-ibus -l pl.UTF-8
258 Bashowe dopełnianie parametrów dla poleceń ibus.
259
260 %prep
261 %setup -q
262 %patch0 -p1
263
264 %build
265 %{__libtoolize}
266 %{__aclocal} -I m4
267 %{__autoconf}
268 %{__autoheader}
269 %{__automake}
270 %configure \
271         --disable-gtk-doc \
272         --disable-silent-rules \
273         --enable-dconf \
274         --enable-gtk2 \
275         --enable-gtk3 \
276         --enable-introspection \
277         --enable-python-library \
278         %{?with_static_libs:--enable-static} \
279         --enable-surrounding-text \
280         --enable-vala%{!?with_vala:=no} \
281         %{?with_wayland:--enable-wayland} \
282         --enable-xim \
283         --with-html-dir=%{_gtkdocdir} \
284         --with-no-snooper-apps='gnome-do,Do.*,firefox.*,.*chrome.*,.*chromium.*' \
285         --with-python=%{__python3}
286
287 %{__make} -C ui/gtk3 maintainer-clean-generic
288
289 %{__make}
290
291 %install
292 rm -rf $RPM_BUILD_ROOT
293 install -d $RPM_BUILD_ROOT%{_sysconfdir}/X11/xinit/xinput.d
294
295 %{__make} install \
296         DESTDIR=$RPM_BUILD_ROOT
297
298 %{__sed} -e 's|@@LIB@@|%{_lib}|g' %{SOURCE1} >$RPM_BUILD_ROOT%{_sysconfdir}/X11/xinit/xinput.d/ibus.conf
299
300 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
301 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk*/*/immodules/*.la
302 %if %{with static_libs}
303 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk*/*/immodules/*.a
304 %endif
305
306 %py_postclean
307
308 %find_lang %{name}10
309
310 %clean
311 rm -rf $RPM_BUILD_ROOT
312
313 %post
314 %update_icon_cache hicolor
315
316 %postun
317 %update_icon_cache hicolor
318
319 %post dconf
320 %glib_compile_schemas
321
322 %postun dconf
323 %glib_compile_schemas
324
325 %post gtk2
326 %if "%{_lib}" != "lib"
327 %{_bindir}/gtk-query-immodules-2.0-64 > %{_sysconfdir}/gtk64-2.0/gtk.immodules
328 %else
329 %{_bindir}/gtk-query-immodules-2.0 > %{_sysconfdir}/gtk-2.0/gtk.immodules
330 %endif
331
332 %postun gtk2
333 %if "%{_lib}" != "lib"
334 %{_bindir}/gtk-query-immodules-2.0-64 > %{_sysconfdir}/gtk64-2.0/gtk.immodules
335 %else
336 %{_bindir}/gtk-query-immodules-2.0 > %{_sysconfdir}/gtk-2.0/gtk.immodules
337 %endif
338
339 %post gtk3
340 %if "%{_lib}" != "lib"
341 %{_bindir}/gtk-query-immodules-3.0-64 --update-cache
342 %else
343 %{_bindir}/gtk-query-immodules-3.0 --update-cache
344 %endif
345
346 %postun gtk3
347 %if "%{_lib}" != "lib"
348 %{_bindir}/gtk-query-immodules-3.0-64 --update-cache
349 %else
350 %{_bindir}/gtk-query-immodules-3.0 --update-cache
351 %endif
352
353 %post   libs -p /sbin/ldconfig
354 %postun libs -p /sbin/ldconfig
355
356 %files -f %{name}10.lang
357 %defattr(644,root,root,755)
358 %doc AUTHORS README
359 %config(noreplace) %verify(not md5 mtime size) /etc/X11/xinit/xinput.d/ibus.conf
360 %attr(755,root,root) %{_bindir}/ibus
361 %attr(755,root,root) %{_bindir}/ibus-daemon
362 %attr(755,root,root) %{_bindir}/ibus-setup
363 %dir %{_libexecdir}
364 %attr(755,root,root) %{_libexecdir}/ibus-engine-simple
365 %attr(755,root,root) %{_libexecdir}/ibus-extension-gtk3
366 %attr(755,root,root) %{_libexecdir}/ibus-portal
367 %attr(755,root,root) %{_libexecdir}/ibus-ui-emojier
368 %attr(755,root,root) %{_libexecdir}/ibus-ui-gtk3
369 %attr(755,root,root) %{_libexecdir}/ibus-x11
370 %dir %{_datadir}/ibus
371 %dir %{_datadir}/ibus/component
372 %{_datadir}/ibus/component/gtkextension.xml
373 %{_datadir}/ibus/component/gtkpanel.xml
374 %{_datadir}/ibus/component/simple.xml
375 %{_datadir}/ibus/dicts
376 %{_datadir}/ibus/engine
377 %{_datadir}/ibus/keymaps
378 %{_datadir}/ibus/setup
379 %{_datadir}/dbus-1/services/org.freedesktop.IBus.service
380 %{_datadir}/dbus-1/services/org.freedesktop.portal.IBus.service
381 %{_desktopdir}/org.freedesktop.IBus.Panel.Emojier.desktop
382 %{_desktopdir}/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop
383 %{_desktopdir}/org.freedesktop.IBus.Setup.desktop
384 %{_iconsdir}/hicolor/*x*/apps/ibus-keyboard.png
385 %{_iconsdir}/hicolor/scalable/apps/ibus*.svg
386 %{_mandir}/man1/ibus.1*
387 %{_mandir}/man1/ibus-daemon.1*
388 %{_mandir}/man1/ibus-setup.1*
389 %{_mandir}/man5/00-upstream-settings.5*
390 %{_mandir}/man5/ibus.5*
391 %{_mandir}/man7/ibus-emoji.7*
392
393 %files dconf
394 %defattr(644,root,root,755)
395 %attr(755,root,root) %{_libexecdir}/ibus-dconf
396 %{_datadir}/ibus/component/dconf.xml
397 %dir %{_sysconfdir}/dconf/db/ibus.d
398 %{_sysconfdir}/dconf/db/ibus.d/00-upstream-settings
399 %{_sysconfdir}/dconf/profile/ibus
400 %{_datadir}/GConf/gsettings/ibus.convert
401 %{_datadir}/glib-2.0/schemas/org.freedesktop.ibus.gschema.xml
402
403 %files gtk2
404 %defattr(644,root,root,755)
405 %attr(755,root,root) %{_libdir}/gtk-2.0/*/immodules/im-ibus.so
406
407 %files gtk3
408 %defattr(644,root,root,755)
409 %attr(755,root,root) %{_libdir}/gtk-3.0/*/immodules/im-ibus.so
410
411 %files wayland
412 %defattr(644,root,root,755)
413 %attr(755,root,root) %{_libexecdir}/ibus-wayland
414
415 %files libs
416 %defattr(644,root,root,755)
417 %attr(755,root,root) %{_libdir}/libibus-1.0.so.*.*.*
418 %attr(755,root,root) %ghost %{_libdir}/libibus-1.0.so.5
419 %{_libdir}/girepository-1.0/IBus-1.0.typelib
420
421 %files devel
422 %defattr(644,root,root,755)
423 %attr(755,root,root) %{_libdir}/libibus-1.0.so
424 %{_pkgconfigdir}/ibus-1.0.pc
425 %{_includedir}/ibus-1.0
426 %{_datadir}/gir-1.0/IBus-1.0.gir
427
428 %if %{with static_libs}
429 %files static
430 %defattr(644,root,root,755)
431 %{_libdir}/libibus-1.0.a
432 %endif
433
434 %files apidocs
435 %defattr(644,root,root,755)
436 %{_gtkdocdir}/ibus
437
438 %files -n python-ibus
439 %defattr(644,root,root,755)
440 %dir %{py_sitescriptdir}/ibus
441 %{py_sitescriptdir}/ibus/*.py[co]
442 %dir %{py_sitescriptdir}/ibus/interface
443 %{py_sitescriptdir}/ibus/interface/*.py[co]
444 %{py_sitedir}/gi/overrides/IBus.py[co]
445
446 %files -n python3-ibus
447 %defattr(644,root,root,755)
448 %{py3_sitedir}/gi/overrides/IBus.py
449 %{py3_sitedir}/gi/overrides/__pycache__/IBus.cpython-*.py[co]
450
451 %if %{with vala}
452 %files -n vala-ibus
453 %defattr(644,root,root,755)
454 %{_datadir}/vala/vapi/ibus-1.0.vapi
455 %{_datadir}/vala/vapi/ibus-1.0.deps
456 %endif
457
458 %files -n bash-completion-ibus
459 %defattr(644,root,root,755)
460 %{bash_compdir}/ibus.bash
This page took 0.081265 seconds and 3 git commands to generate.