2 # - BASH command-not-found functionality disabled for now as it needs patched bash
3 # (details in bash from Fedora Rawhide)
6 %bcond_without doc # build without docs
7 %bcond_without introspection # gobject introspection, time to time broken
8 %bcond_without poldek # Poldek backend
9 %bcond_without smart # SMART backend
10 %bcond_without yum # YUM backend
11 %bcond_with hawkey # Hawkey backend
12 %bcond_with browser # browser plugin (patrys says: it's flawed by concept)
14 # default backend, configurable at runtime
15 %define backend poldek
17 Summary: System daemon that is a D-Bus abstraction layer for package management
18 Summary(pl.UTF-8): Demon systemowy będący warstwą abstrakcji D-Bus do zarządzania pakietami
23 Group: Applications/System
24 Source0: http://www.packagekit.org/releases/%{name}-%{version}.tar.xz
25 # Source0-md5: 147e35b64e3e3b9ca8b2baefb37531f6
26 Patch0: %{name}-hawkey-rpm5.patch
27 Patch3: smart-at-fix.patch
28 Patch4: %{name}-gstreamer.patch
29 Patch5: %{name}-bashcomp.patch
30 Patch6: %{name}-connman.patch
31 URL: http://www.packagekit.org/
32 BuildRequires: NetworkManager-devel >= 0.6.5
33 BuildRequires: autoconf >= 2.65
34 BuildRequires: automake >= 1:1.11
35 BuildRequires: connman-devel
36 BuildRequires: dbus-devel >= 1.2.0
37 BuildRequires: dbus-glib-devel >= 0.76
38 BuildRequires: docbook-dtd412-xml
39 BuildRequires: docbook-dtd42-xml
40 BuildRequires: fontconfig-devel
41 BuildRequires: gettext-devel
42 BuildRequires: glib2-devel >= 1:2.32.0
43 %{?with_introspection:BuildRequires: gobject-introspection-devel >= 0.9.9}
44 BuildRequires: gstreamer-devel >= 1.0.0
45 BuildRequires: gstreamer-plugins-base-devel >= 1.0.0
46 BuildRequires: gtk+2-devel >= 2:2.14.0
47 BuildRequires: gtk+3-devel >= 3.0.0
48 %{?with_doc:BuildRequires: gtk-doc >= 1.11}
49 %{?with_hawkey:BuildRequires: hawkey-devel >= 0.4.5}
50 BuildRequires: intltool >= 0.35.0
51 BuildRequires: libarchive-devel
52 %{?with_hawkey:BuildRequires: librepo-devel}
53 BuildRequires: libtool
54 BuildRequires: libxslt-progs
55 BuildRequires: pango-devel
56 BuildRequires: pkgconfig
57 %{?with_poldek:BuildRequires: poldek-devel >= 0.30-1.rc6.4}
58 BuildRequires: polkit-devel >= 0.98
59 BuildRequires: python-devel >= 1:2.7
60 BuildRequires: readline-devel
61 %{?with_hawkey:BuildRequires: rpm-devel >= 4.11.0}
62 BuildRequires: rpm-pythonprov
63 BuildRequires: rpmbuild(macros) >= 1.311
64 BuildRequires: sqlite3-devel >= 3
65 BuildRequires: systemd-devel
66 BuildRequires: tar >= 1:1.22
67 BuildRequires: udev-glib-devel
70 BuildRequires: cairo-devel
71 BuildRequires: nspr-devel >= 4.8
72 BuildRequires: xulrunner-devel >= 8.0
74 Requires(post,postun): shared-mime-info
75 Requires: %{name}-backend
76 Requires: %{name}-libs = %{version}-%{release}
77 Requires: ConsoleKit-x11
79 Requires: polkit >= 0.98
80 Obsoletes: PackageKit-docs < 0.8.4
81 Obsoletes: pm-utils-packagekit
82 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
85 PackageKit is a D-Bus abstraction layer that allows the session user
86 to manage packages in a secure way using a cross-distro,
87 cross-architecture API.
89 %description -l pl.UTF-8
90 PackageKit to warstwa abstrakcji D-Bus pozwalająca użytkownikowi
91 sesyjnemu w bezpieczny sposob zarządzać pakietami przy użyciu API
92 zgodnego z wieloma dystrybucjami i architekturami.
95 Summary: packagekit-glib library
96 Summary(pl.UTF-8): Biblioteka packagekit-glib
98 Requires: glib2 >= 1:2.32.0
101 packagekit-glib library.
103 %description libs -l pl.UTF-8
104 Biblioteka packagekit-glib.
107 Summary: Header files for packagekit-glib library
108 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki packagekit-glib
109 Group: Development/Libraries
110 Requires: %{name}-libs = %{version}-%{release}
111 Requires: dbus-devel >= 1.2.0
112 Requires: glib2-devel >= 1:2.32.0
113 Requires: sqlite3-devel
116 Header files for packagekit-glib library.
118 %description devel -l pl.UTF-8
119 Pliki nagłówkowe biblioteki packagekit-glib.
122 Summary: Static packagekit-glib library
123 Summary(pl.UTF-8): Statyczna biblioteka packagekit-glib
124 Group: Development/Libraries
125 Requires: %{name}-devel = %{version}-%{release}
128 Static packagekit-glib library.
130 %description static -l pl.UTF-8
131 Statyczna biblioteka packagekit-glib.
134 Summary: PackageKit library API documentation
135 Summary(pl.UTF-8): Dokumentacja API biblioteki PackageKit
137 Requires: gtk-doc-common
140 PackageKit library API documentation.
142 %description apidocs -l pl.UTF-8
143 Dokumentacja API biblioteki PackageKit.
145 %package backend-hawkey
146 Summary: PackageKit Hawkey backend
147 Summary(pl.UTF-8): Backend PackageKit oparty na Hawkeyu
149 Requires: %{name} = %{version}-%{release}
150 Requires: hawkey >= 0.4.5
151 Provides: %{name}-backend = %{version}-%{release}
152 Obsoletes: PackageKit-backend-zif < 0.8.14
154 %description backend-hawkey
155 A backend for PackageKit to enable Hawkey functionality.
157 %description backend-hawkey -l pl.UTF-8
158 Backend PackageKit dodający obsługę Hawkeya.
160 %package backend-poldek
161 Summary: PackageKit Poldek backend
162 Summary(pl.UTF-8): Backend PackageKit oparty na Poldku
164 Requires: %{name} = %{version}-%{release}
165 Requires: poldek >= 0.30-1.rc6.4
166 Provides: %{name}-backend = %{version}-%{release}
167 Conflicts: PackageKit < 0.6.8-3
169 %description backend-poldek
170 A backend for PackageKit to enable Poldek functionality.
172 %description backend-poldek -l pl.UTF-8
173 Backend PackageKit dodający obsługę Poldka.
175 %package backend-smart
176 Summary: PackageKit SMART backend
177 Summary(pl.UTF-8): Backend PackageKit oparty na zarządcy pakietów SMART
179 Requires: %{name} = %{version}-%{release}
182 %description backend-smart
183 A backend for PackageKit to enable SMART functionality.
185 %description backend-smart -l pl.UTF-8
186 Backend PackageKit dodający obsługę zarządcy pakietów SMART.
189 Summary: PackageKit YUM backend
190 Summary(pl.UTF-8): Backend PackageKit oparty na Yumie
192 Requires: %{name} = %{version}-%{release}
193 Requires: python-packagekit = %{version}-%{release}
194 Requires: yum >= 3.2.19
195 Provides: %{name}-backend = %{version}-%{release}
197 %description backend-yum
198 A backend for PackageKit to enable yum functionality.
200 %description backend-yum -l pl.UTF-8
201 Backend PackageKit dodający obsługę Yuma.
203 %package gstreamer-plugin
204 Summary: GStreamer codecs installer
205 Summary(pl.UTF-8): Instalator kodeków GStreamera
207 Requires: %{name} = %{version}-%{release}
208 Requires: %{name}-gtk-module = %{version}-%{release}
210 %description gstreamer-plugin
211 The PackageKit GStreamer plugin allows any GStreamer application to
212 install codecs from configured repositories using PackageKit.
214 %description gstreamer-plugin -l pl.UTF-8
215 Wtyczka GStreamer pozwala każdej aplikacji używającej GStreamera
216 zainstalować kodeki ze skonfigurowanych źródeł PackageKit.
219 Summary: GTK+ module to detect and install missing fonts
220 Summary(pl.UTF-8): Moduł GTK+ do wykrywania i instalowania brakujących czcionek
223 %description gtk-module
224 The PackageKit GTK+ module allows any pango application to install
225 missing fonts from configured repositories using PackageKit.
227 %description gtk-module -l pl.UTF-8
228 Moduł GTK+ pozwala każdej aplikacji używającej pango zainstalować
229 brakującą czcionkę ze skonfigurowanych źródeł PackageKit.
232 Summary: GTK+ 3.x module to detect and install missing fonts
233 Summary(pl.UTF-8): Moduł GTK+ 3.x do wykrywania i instalowania brakujących czcionek
236 %description gtk3-module
237 The PackageKit GTK+ 3.x module allows any pango application to install
238 missing fonts from configured repositories using PackageKit.
240 %description gtk3-module -l pl.UTF-8
241 Moduł GTK+ 3.x pozwala każdej aplikacji używającej pango zainstalować
242 brakującą czcionkę ze skonfigurowanych źródeł PackageKit.
244 %package -n bash-completion-packagekit
245 Summary: Bash completion for PackageKit console commands
246 Summary(pl.UTF-8): Bashowe uzupełnianie parametrów dla poleceń konsolowych PackageKit
247 Group: Applications/Shells
248 Requires: %{name} = %{version}-%{release}
249 Requires: bash-completion >= 2
250 %if "%{_rpmversion}" >= "5"
254 %description -n bash-completion-packagekit
255 This package provides bash-completion for PackageKit console commands.
257 %description -n bash-completion-packagekit -l pl.UTF-8
258 Pakiet ten dostarcza bashowe uzupełnianie parametrów dla poleceń
259 konsolowych PackageKit.
261 %package -n python-packagekit
262 Summary: PackageKit Python bindings
263 Summary(pl.UTF-8): Wiązania PackageKit dla Pythona
264 Group: Development/Languages/Python
265 Requires: python-dbus
266 Requires: python-pygobject
268 %description -n python-packagekit
269 PackageKit Python bindings.
271 %description -n python-packagekit -l pl.UTF-8
272 Wiązania PackageKit dla Pythona.
274 %package -n browser-plugin-packagekit
275 Summary: PackageKit's browser plugin
276 Summary(pl.UTF-8): Wtyczka PackageKit do przeglądarek WWW
278 Requires: %{name} = %{version}-%{release}
279 Requires: browser-plugins >= 2.0
280 Requires: browser-plugins(%{_target_base_arch})
282 %description -n browser-plugin-packagekit
283 PackageKit's plugin for browsers.
285 %description -n browser-plugin-packagekit -l pl.UTF-8
286 Wtyczka PackageKit do przeglądarek WWW.
307 --disable-command-not-found \
309 %{!?with_doc:--disable-gtk-doc} \
310 %{!?with_introspection:--disable-introspection} \
311 --disable-silent-rules \
312 --enable-bash-completion=%{bash_compdir} \
313 %{__enable_disable browser browser-plugin} \
314 %{__enable_disable hawkey} \
315 %{__enable_disable poldek} \
316 %{__enable_disable smart} \
317 %{__enable_disable yum} \
318 --with-default-backend=%{backend} \
319 --with-html-dir=%{_gtkdocdir} \
320 --with-mozilla-plugin-dir=%{_browserpluginsdir} \
321 --with-security-framework=polkit
325 rm -rf $RPM_BUILD_ROOT
328 DESTDIR=$RPM_BUILD_ROOT
330 # use pk-gstreamer-install as codec installer
331 ln -s pk-gstreamer-install $RPM_BUILD_ROOT%{_libdir}/gst-install-plugins-helper
333 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk-{2,3}.0/modules/*.{la,a}
334 %{__rm} $RPM_BUILD_ROOT%{_libdir}/packagekit-backend/*.{la,a}
335 %{__rm} $RPM_BUILD_ROOT%{_libdir}/packagekit-backend/libpk_backend_test_*.so
336 %{__rm} $RPM_BUILD_ROOT%{_libdir}/packagekit-plugins/*.{la,a}
337 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
338 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/test_spawn
341 %{__rm} $RPM_BUILD_ROOT%{_browserpluginsdir}/*.{la,a}
345 # yumBackend.py can't be compiled (invoked directly), other should be compiled
346 %py_comp $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum
347 %py_ocomp $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum
348 %{__rm} $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum/yum{Comps,Filter}.py
349 %{__rm} $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum/yumBackend.py[co]
352 # outdated copies of bg,it
353 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{bg_BG,it_IT}
354 # fa_IR uses short dir name
355 %{__mv} $RPM_BUILD_ROOT%{_localedir}/{fa_IR,fa}
362 rm -rf $RPM_BUILD_ROOT
365 %update_mime_database
368 %update_mime_database
370 %post libs -p /sbin/ldconfig
371 %postun libs -p /sbin/ldconfig
373 %post -n browser-plugin-packagekit
374 %update_browser_plugins
376 %postun -n browser-plugin-packagekit
377 if [ "$1" = 0 ]; then
378 %update_browser_plugins
381 %files -f %{name}.lang
382 %defattr(644,root,root,755)
383 %doc AUTHORS HACKING MAINTAINERS NEWS README TODO
384 %attr(755,root,root) %{_bindir}/packagekit-bugreport.sh
385 %attr(755,root,root) %{_bindir}/pkcon
386 %attr(755,root,root) %{_bindir}/pkmon
387 %attr(755,root,root) %{_bindir}/pk-debuginfo-install
388 %attr(750,root,root) /etc/cron.daily/packagekit-background.cron
389 %dir %{_libdir}/packagekit-backend
390 %dir %{_libdir}/packagekit-plugins
391 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-scan-desktop-files.so
392 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-systemd-updates.so
393 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-update-package-cache.so
394 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin_scripts.so
395 %attr(755,root,root) %{_libdir}/packagekitd
396 %attr(755,root,root) %{_libdir}/pk-clear-offline-update
397 %attr(755,root,root) %{_libdir}/pk-offline-update
398 %attr(755,root,root) %{_libdir}/pk-trigger-offline-update
399 %dir %{_sysconfdir}/PackageKit
400 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/PackageKit.conf
401 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/Vendor.conf
402 %dir %{_sysconfdir}/PackageKit/events
403 %{_sysconfdir}/PackageKit/events/post-transaction.d
404 %{_sysconfdir}/PackageKit/events/pre-transaction.d
405 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/packagekit-background
406 /etc/dbus-1/system.d/org.freedesktop.PackageKit.conf
407 %dir %{_datadir}/PackageKit
408 %dir %{_datadir}/PackageKit/helpers
409 %attr(755,root,root) %{_datadir}/PackageKit/pk-upgrade-distro.sh
410 %{_datadir}/polkit-1/actions/org.freedesktop.packagekit.policy
411 %{_datadir}/polkit-1/rules.d/org.freedesktop.packagekit.rules
412 %{_datadir}/dbus-1/system-services/org.freedesktop.PackageKit.service
413 %{_mandir}/man1/pkcon.1*
414 %{_mandir}/man1/pk-debuginfo-install.1*
415 %{_mandir}/man1/pkmon.1*
416 %{systemdunitdir}/packagekit.service
417 %{systemdunitdir}/packagekit-offline-update.service
418 %dir /var/cache/PackageKit
419 %dir /var/cache/PackageKit/downloads
420 %dir /var/lib/PackageKit
421 %ghost /var/lib/PackageKit/transactions.db
424 %defattr(644,root,root,755)
425 %attr(755,root,root) %{_libdir}/libpackagekit-glib2.so.*.*.*
426 %attr(755,root,root) %ghost %{_libdir}/libpackagekit-glib2.so.16
427 %{_libdir}/girepository-1.0/PackageKitGlib-1.0.typelib
428 %{_libdir}/girepository-1.0/PackageKitPlugin-1.0.typelib
429 # NOTE: dbus interface xmls are commonly used:
430 # - at runtime by packagekitd
431 # - for development of applications using PK dbus interface
432 %{_datadir}/dbus-1/interfaces/org.freedesktop.PackageKit.Transaction.xml
433 %{_datadir}/dbus-1/interfaces/org.freedesktop.PackageKit.xml
436 %defattr(644,root,root,755)
437 %attr(755,root,root) %{_libdir}/libpackagekit-glib2.so
438 %{_pkgconfigdir}/packagekit-glib2.pc
439 %{_pkgconfigdir}/packagekit-plugin.pc
440 %dir %{_includedir}/PackageKit
441 %{_includedir}/PackageKit/packagekit-glib2
442 %{_includedir}/PackageKit/plugin
443 %{_datadir}/gir-1.0/PackageKitGlib-1.0.gir
444 %{_datadir}/gir-1.0/PackageKitPlugin-1.0.gir
447 %defattr(644,root,root,755)
448 %{_libdir}/libpackagekit-glib2.a
451 %defattr(644,root,root,755)
452 %{_gtkdocdir}/PackageKit
455 %files backend-hawkey
456 %defattr(644,root,root,755)
457 %attr(755,root,root) %{_libdir}/packagekit-backend/libpk_backend_hawkey.so
461 %files backend-poldek
462 %defattr(644,root,root,755)
463 %attr(755,root,root) %{_libdir}/packagekit-backend/libpk_backend_poldek.so
468 %defattr(644,root,root,755)
469 %{_libdir}/packagekit-backend/libpk_backend_smart.so
470 %dir %{_datadir}/PackageKit/helpers/smart
471 %attr(755,root,root) %{_datadir}/PackageKit/helpers/smart/smartBackend.py
476 %defattr(644,root,root,755)
477 %attr(755,root,root) %{_libdir}/packagekit-backend/libpk_backend_yum.so
478 %dir %{_datadir}/PackageKit/helpers/yum
479 %{_datadir}/PackageKit/helpers/yum/licenses.txt
480 %{_datadir}/PackageKit/helpers/yum/yum-comps-groups.conf
481 %attr(755,root,root) %{_datadir}/PackageKit/helpers/yum/yumBackend.py
482 %{_datadir}/PackageKit/helpers/yum/yumComps.py[co]
483 %{_datadir}/PackageKit/helpers/yum/yumFilter.py[co]
486 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/yum/pluginconf.d/refresh-packagekit.conf
487 %{_prefix}/lib/yum-plugins/refresh-packagekit.py
490 %files gstreamer-plugin
491 %defattr(644,root,root,755)
492 %doc contrib/gstreamer-plugin/README
493 %attr(755,root,root) %{_libdir}/gst-install-plugins-helper
494 %attr(755,root,root) %{_libdir}/pk-gstreamer-install
497 %defattr(644,root,root,755)
498 %doc contrib/gtk-module/{GLASS.txt,README}
499 %attr(755,root,root) %{_libdir}/gtk-2.0/modules/libpk-gtk-module.so
502 %defattr(644,root,root,755)
503 %attr(755,root,root) %{_libdir}/gtk-3.0/modules/libpk-gtk-module.so
504 %{_libdir}/gnome-settings-daemon-3.0/gtk-modules/pk-gtk-module.desktop
506 %files -n bash-completion-packagekit
507 %defattr(644,root,root,755)
508 %{bash_compdir}/pkcon
510 %files -n python-packagekit
511 %defattr(644,root,root,755)
512 %dir %{py_sitescriptdir}/packagekit
513 %{py_sitescriptdir}/packagekit/*.py[co]
516 %files -n browser-plugin-packagekit
517 %defattr(644,root,root,755)
518 %attr(755,root,root) %{_browserpluginsdir}/packagekit-plugin.so