2 # - BASH command-not-found functionality disabled for now as it needs patched bash
3 # (details in bash from Fedora Rawhide)
6 %bcond_without qt # don't build packagekit-qt library
7 %bcond_without doc # build without docs
8 %bcond_without gir # gobject introspection, time to time broken
9 %bcond_without poldek # build Poldek backend
10 %bcond_without smart # build SMART backend
11 %bcond_without yum # build YUM backend
12 %bcond_with browser # build 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: 584932c90e4c0f7c55f2dd8ede1eb400
26 Patch1: %{name}-PLD.patch
28 Patch3: smart-at-fix.patch
29 Patch4: %{name}-git.patch
30 Patch5: %{name}-gstreamer.patch
31 URL: http://www.packagekit.org/
32 BuildRequires: NetworkManager-devel >= 0.6.5
34 BuildRequires: QtCore-devel >= 4.4.0
35 BuildRequires: QtDBus-devel >= 4.4.0
36 BuildRequires: QtGui-devel >= 4.4.0
37 BuildRequires: QtSql-devel >= 4.4.0
38 BuildRequires: QtXml-devel >= 4.4.0
40 BuildRequires: autoconf >= 2.65
41 BuildRequires: automake >= 1.11
42 %{?with_qt:BuildRequires: cppunit-devel}
43 BuildRequires: dbus-devel >= 1.2.0
44 BuildRequires: dbus-glib-devel >= 0.76
45 BuildRequires: docbook-dtd412-xml
46 BuildRequires: docbook-dtd42-xml
47 BuildRequires: fontconfig-devel
48 BuildRequires: gettext-devel
49 BuildRequires: glib2-devel >= 1:2.22.0
50 %{?with_gir:BuildRequires: gobject-introspection-devel}
51 BuildRequires: gstreamer-devel >= 1.0.0
52 BuildRequires: gstreamer-plugins-base-devel >= 1.0.0
53 BuildRequires: gtk+2-devel >= 2:2.14.0
54 BuildRequires: gtk+3-devel >= 3.0.0
55 %{?with_doc:BuildRequires: gtk-doc >= 1.9}
56 BuildRequires: intltool >= 0.35.0
57 BuildRequires: libarchive-devel
58 BuildRequires: libtool
59 BuildRequires: libxslt-progs
60 BuildRequires: pango-devel
61 BuildRequires: pkgconfig
62 BuildRequires: pm-utils
63 %{?with_poldek:BuildRequires: poldek-devel >= 0.30-1.rc6.4}
64 BuildRequires: polkit-devel >= 0.97
65 BuildRequires: python-devel
66 %{?with_qt:BuildRequires: qt4-build >= 4.4.0}
67 BuildRequires: readline-devel
68 BuildRequires: rpm-pythonprov
69 BuildRequires: rpmbuild(macros) >= 1.311
70 BuildRequires: sqlite3-devel
71 BuildRequires: tar >= 1:1.22
72 BuildRequires: udev-glib-devel
75 BuildRequires: cairo-devel
76 BuildRequires: nspr-devel >= 4.8
77 BuildRequires: xulrunner-devel >= 8.0
79 Requires(post,postun): shared-mime-info
80 Requires: %{name}-backend
81 Requires: %{name}-libs = %{version}-%{release}
82 Requires: ConsoleKit-x11
84 Requires: polkit >= 0.92
85 Obsoletes: PackageKit-docs < 0.8.4
86 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
89 PackageKit is a D-Bus abstraction layer that allows the session user
90 to manage packages in a secure way using a cross-distro,
91 cross-architecture API.
93 %description -l pl.UTF-8
94 PackageKit to warstwa abstrakcji D-Bus pozwalająca użytkownikowi
95 sesyjnemu w bezpieczny sposob zarządzać pakietami przy użyciu API
96 zgodnego z wieloma dystrybucjami i architekturami.
99 Summary: packagekit-glib library
100 Summary(pl.UTF-8): Biblioteka packagekit-glib
102 Requires: glib2 >= 1:2.22.0
105 packagekit-glib library.
107 %description libs -l pl.UTF-8
108 Biblioteka packagekit-glib.
111 Summary: Header files for packagekit-glib library
112 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki packagekit-glib
113 Group: Development/Libraries
114 Requires: %{name}-libs = %{version}-%{release}
115 Requires: dbus-devel >= 1.2.0
116 Requires: glib2-devel >= 1:2.22.0
117 Requires: sqlite3-devel
120 Header files for packagekit-glib library.
122 %description devel -l pl.UTF-8
123 Pliki nagłówkowe biblioteki packagekit-glib.
126 Summary: Static packagekit-glib library
127 Summary(pl.UTF-8): Statyczna biblioteka packagekit-glib
128 Group: Development/Libraries
129 Requires: %{name}-devel = %{version}-%{release}
132 Static packagekit-glib library.
134 %description static -l pl.UTF-8
135 Statyczna biblioteka packagekit-glib.
137 %package backend-poldek
138 Summary: PackageKit Poldek backend
140 Requires: %{name} = %{version}-%{release}
141 Requires: poldek >= 0.30-1.rc6.4
142 Provides: %{name}-backend
143 Conflicts: %{name} < 0.6.8-3
145 %description backend-poldek
146 A backend for PackageKit to enable Poldek functionality.
148 %package backend-smart
149 Summary: PackageKit SMART backend
151 Requires: %{name} = %{version}-%{release}
154 %description backend-smart
155 A backend for PackageKit to enable SMART functionality.
158 Summary: PackageKit YUM backend
160 Requires: %{name} = %{version}-%{release}
161 Requires: python-packagekit = %{version}-%{release}
162 Requires: yum >= 3.2.19
163 Provides: %{name}-backend
165 %description backend-yum
166 A backend for PackageKit to enable yum functionality.
169 Summary: packagekit-qt2 library
170 Summary(pl.UTF-8): Biblioteka packagekit-qt2
172 Obsoletes: PackageKit-qt < 0.8.4
173 Obsoletes: qpackagekit < 0.4.0
176 packagekit-qt2 library.
178 %description qt2 -l pl.UTF-8
179 Biblioteka packagekit-qt2.
182 Summary: Header files for packagekit-qt2 library
183 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki packagekit-qt2
184 Group: Development/Libraries
185 Requires: %{name}-qt2 = %{version}-%{release}
186 Requires: QtCore-devel >= 4.4.0
187 Requires: QtDBus-devel >= 4.4.0
188 Requires: QtGui-devel >= 4.4.0
189 Requires: QtSql-devel >= 4.4.0
190 Requires: QtXml-devel >= 4.4.0
191 Obsoletes: PackageKit-qt-devel < 0.8.4
192 Obsoletes: qpackagekit-devel < 0.4.0
194 %description qt2-devel
195 Header files for packagekit-qt2 library.
197 %description qt2-devel -l pl.UTF-8
198 Pliki nagłówkowe biblioteki packagekit-qt2.
201 Summary: Static packagekit-qt2 library
202 Summary(pl.UTF-8): Statyczna biblioteka packagekit-qt2
203 Group: Development/Libraries
204 Requires: %{name}-qt2-devel = %{version}-%{release}
205 Obsoletes: PackageKit-qt-static < 0.8.4
207 %description qt2-static
208 Static packagekit-qt2 library.
210 %description qt2-static -l pl.UTF-8
211 Statyczna biblioteka packagekit-qt2.
214 Summary: PackageKit library API documentation
215 Summary(pl.UTF-8): Dokumentacja API biblioteki PackageKit
217 Requires: gtk-doc-common
220 PackageKit library API documentation.
222 %description apidocs -l pl.UTF-8
223 Dokumentacja API biblioteki PackageKit.
225 %package gstreamer-plugin
226 Summary: GStreamer codecs installer
227 Summary(pl.UTF-8): Instalator kodeków GStreamera
229 Requires: %{name} = %{version}-%{release}
230 Requires: %{name}-gtk-module = %{version}-%{release}
232 %description gstreamer-plugin
233 The PackageKit GStreamer plugin allows any GStreamer application to
234 install codecs from configured repositories using PackageKit.
236 %description gstreamer-plugin -l pl.UTF-8
237 Wtyczka GStreamer pozwala każdej aplikacji używającej GStreamera
238 zainstalować kodeki ze skonfigurowanych źródeł PackageKit.
241 Summary: GTK+ module to detect and install missing fonts
242 Summary(pl.UTF-8): Moduł GTK+ do wykrywania i instalowania brakujących czcionek
245 %description gtk-module
246 The PackageKit GTK+ module allows any pango application to install
247 missing fonts from configured repositories using PackageKit.
249 %description gtk-module -l pl.UTF-8
250 Moduł GTK+ pozwala każdej aplikacji używającej pango zainstalować
251 brakującą czcionkę ze skonfigurowanych źródeł PackageKit.
254 Summary: GTK+ 3.x module to detect and install missing fonts
255 Summary(pl.UTF-8): Moduł GTK+ 3.x do wykrywania i instalowania brakujących czcionek
258 %description gtk3-module
259 The PackageKit GTK+ 3.x module allows any pango application to install
260 missing fonts from configured repositories using PackageKit.
262 %description gtk3-module -l pl.UTF-8
263 Moduł GTK+ 3.x pozwala każdej aplikacji używającej pango zainstalować
264 brakującą czcionkę ze skonfigurowanych źródeł PackageKit.
266 %package -n bash-completion-packagekit
267 Summary: bash-completion for PackageKit
268 Summary(pl.UTF-8): bashowe uzupełnianie nazw dla PackageKit
269 Group: Applications/Shells
270 Requires: bash-completion
272 %description -n bash-completion-packagekit
273 This package provides bash-completion for PackageKit.
275 %description -n bash-completion-packagekit -l pl.UTF-8
276 Pakiet ten dostarcza bashowe uzupełnianie nazw dla PackageKit.
278 %package -n pm-utils-packagekit
279 Summary: PackageKit script for pm-utils
280 Summary(pl.UTF-8): Skrypt PackageKit dla pm-utils
281 Group: Applications/System
284 %description -n pm-utils-packagekit
285 PackageKit script for pm-utils.
287 %description -n pm-utils-packagekit -l pl.UTF-8
288 Skrypt PackageKit dla pm-utils.
290 %package -n python-packagekit
291 Summary: PackageKit Python bindings
292 Summary(pl.UTF-8): Wiązania PackageKit dla Pythona
293 Group: Development/Languages/Python
294 Requires: python-dbus
295 Requires: python-pygobject
297 %description -n python-packagekit
298 PackageKit Python bindings.
300 %description -n python-packagekit -l pl.UTF-8
301 Wiązania PackageKit dla Pythona.
303 %package -n browser-plugin-packagekit
304 Summary: PackageKit's browser plugin
305 Summary(pl.UTF-8): Wtyczka PackageKit do przeglądarek WWW
307 Requires: %{name} = %{version}-%{release}
308 Requires: browser-plugins >= 2.0
309 Requires: browser-plugins(%{_target_base_arch})
311 %description -n browser-plugin-packagekit
312 PackageKit's plugin for browsers.
314 %description -n browser-plugin-packagekit -l pl.UTF-8
315 Wtyczka PackageKit do przeglądarek WWW.
336 --disable-silent-rules \
338 --disable-command-not-found \
339 %{!?with_gir:--disable-introspection} \
340 %{__enable_disable browser browser-plugin} \
341 %{__enable_disable poldek} \
342 %{__enable_disable smart} \
343 %{__enable_disable yum} \
344 %{__enable_disable dok gtk-doc}\
345 %{__enable_disable qt} \
346 --with-html-dir=%{_gtkdocdir} \
347 --with-default-backend=%{backend} \
348 --with-security-framework=polkit \
349 --with-mozilla-plugin-dir=%{_browserpluginsdir}
353 rm -rf $RPM_BUILD_ROOT
356 DESTDIR=$RPM_BUILD_ROOT
358 # use pk-gstreamer-install as codec installer
359 ln -s pk-gstreamer-install $RPM_BUILD_ROOT%{_libdir}/gst-install-plugins-helper
361 install -d $RPM_BUILD_ROOT%{_libdir}/pm-utils/sleep.d
362 install -p contrib/pm-utils/95packagekit $RPM_BUILD_ROOT%{_libdir}/pm-utils/sleep.d
364 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk-{2,3}.0/modules/*.{la,a}
365 %{__rm} $RPM_BUILD_ROOT%{_libdir}/packagekit-backend/*.{la,a}
366 %{__rm} $RPM_BUILD_ROOT%{_libdir}/packagekit-backend/libpk_backend_test_*.so
367 %{__rm} $RPM_BUILD_ROOT%{_libdir}/packagekit-plugins/*.{la,a}
368 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
369 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/test_spawn
372 %{__rm} $RPM_BUILD_ROOT%{_browserpluginsdir}/*.{la,a}
376 # yumBackend.py can't be compiled (invoked directly), other should be compiled
377 %py_comp $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum
378 %py_ocomp $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum
379 %{__rm} $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum/yum{Comps,Filter}.py
380 %{__rm} $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum/yumBackend.py[co]
384 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/it_IT
391 rm -rf $RPM_BUILD_ROOT
394 %update_mime_database
397 %update_mime_database
399 %post libs -p /sbin/ldconfig
400 %postun libs -p /sbin/ldconfig
402 %post qt2 -p /sbin/ldconfig
403 %postun qt2 -p /sbin/ldconfig
405 %post -n browser-plugin-packagekit
406 %update_browser_plugins
408 %postun -n browser-plugin-packagekit
409 if [ "$1" = 0 ]; then
410 %update_browser_plugins
413 %files -f %{name}.lang
414 %defattr(644,root,root,755)
415 %doc AUTHORS ChangeLog HACKING NEWS README TODO
416 %attr(755,root,root) %{_bindir}/packagekit-bugreport.sh
417 %attr(755,root,root) %{_bindir}/pkcon
418 %attr(755,root,root) %{_bindir}/pkgenpack
419 %attr(755,root,root) %{_bindir}/pkmon
420 %attr(755,root,root) %{_bindir}/pk-debuginfo-install
421 %attr(750,root,root) /etc/cron.daily/packagekit-background.cron
422 %dir %{_libdir}/packagekit-backend
423 %dir %{_libdir}/packagekit-plugins
424 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-check-shared-libraries-in-use.so
425 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-clear-firmware-requests.so
426 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-clear-system-update.so
427 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-no-update-process.so
428 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-scan-desktop-files.so
429 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-systemd-updates.so
430 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-update-check-processes.so
431 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-update-package-cache.so
432 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin_scripts.so
433 %attr(755,root,root) %{_libdir}/packagekitd
434 %attr(755,root,root) %{_libdir}/pk-clear-offline-update
435 %attr(755,root,root) %{_libdir}/pk-offline-update
436 %attr(755,root,root) %{_libdir}/pk-trigger-offline-update
437 %attr(755,root,root) %{_sbindir}/pk-device-rebind
438 %dir %{_sysconfdir}/PackageKit
439 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/PackageKit.conf
440 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/Vendor.conf
441 %dir %{_sysconfdir}/PackageKit/events
442 %{_sysconfdir}/PackageKit/events/post-transaction.d
443 %{_sysconfdir}/PackageKit/events/pre-transaction.d
444 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/packagekit-background
445 /etc/dbus-1/system.d/org.freedesktop.PackageKit.conf
446 %dir %{_datadir}/PackageKit
447 %dir %{_datadir}/PackageKit/helpers
448 %attr(755,root,root) %{_datadir}/PackageKit/pk-upgrade-distro.sh
449 %{_datadir}/polkit-1/actions/org.freedesktop.packagekit.policy
450 %{_datadir}/dbus-1/interfaces/org.freedesktop.PackageKit.Transaction.xml
451 %{_datadir}/dbus-1/interfaces/org.freedesktop.PackageKit.xml
452 %{_datadir}/dbus-1/system-services/org.freedesktop.PackageKit.service
453 %{_datadir}/mime/packages/packagekit-catalog.xml
454 %{_datadir}/mime/packages/packagekit-package-list.xml
455 %{_datadir}/mime/packages/packagekit-servicepack.xml
456 %{_mandir}/man1/pkcon.1*
457 %{_mandir}/man1/pk-debuginfo-install.1*
458 %{_mandir}/man1/pk-device-rebind.1*
459 %{_mandir}/man1/pkgenpack.1*
460 %{_mandir}/man1/pkmon.1*
461 %{systemdunitdir}/packagekit-offline-update.service
462 %dir /var/cache/PackageKit
463 %dir /var/cache/PackageKit/downloads
464 %dir /var/lib/PackageKit
465 %ghost /var/lib/PackageKit/transactions.db
468 %defattr(644,root,root,755)
469 %attr(755,root,root) %{_libdir}/libpackagekit-glib2.so.*.*.*
470 %attr(755,root,root) %ghost %{_libdir}/libpackagekit-glib2.so.16
471 %{_libdir}/girepository-1.0/PackageKitGlib-1.0.typelib
472 %{_libdir}/girepository-1.0/PackageKitPlugin-1.0.typelib
475 %defattr(644,root,root,755)
476 %attr(755,root,root) %{_libdir}/libpackagekit-glib2.so
477 %{_pkgconfigdir}/packagekit-glib2.pc
478 %{_pkgconfigdir}/packagekit-plugin.pc
479 %dir %{_includedir}/PackageKit
480 %{_includedir}/PackageKit/packagekit-glib2
481 %{_includedir}/PackageKit/plugin
482 %{_datadir}/gir-1.0/PackageKitGlib-1.0.gir
483 %{_datadir}/gir-1.0/PackageKitPlugin-1.0.gir
486 %defattr(644,root,root,755)
487 %{_libdir}/libpackagekit-glib2.a
490 %files backend-poldek
491 %defattr(644,root,root,755)
492 %attr(755,root,root) %{_libdir}/packagekit-backend/libpk_backend_poldek.so
497 %defattr(644,root,root,755)
498 %{_libdir}/packagekit-backend/libpk_backend_smart.so
499 %dir %{_datadir}/PackageKit/helpers/smart
500 %attr(755,root,root) %{_datadir}/PackageKit/helpers/smart/smartBackend.py
505 %defattr(644,root,root,755)
506 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/Yum.conf
507 %attr(755,root,root) %{_libdir}/packagekit-backend/libpk_backend_yum.so
508 %dir %{_datadir}/PackageKit/helpers/yum
509 %{_datadir}/PackageKit/helpers/yum/licenses.txt
510 %{_datadir}/PackageKit/helpers/yum/yum-comps-groups.conf
511 %attr(755,root,root) %{_datadir}/PackageKit/helpers/yum/yumBackend.py
512 %{_datadir}/PackageKit/helpers/yum/yumComps.py[co]
513 %{_datadir}/PackageKit/helpers/yum/yumFilter.py[co]
516 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/yum/pluginconf.d/refresh-packagekit.conf
517 %{_prefix}/lib/yum-plugins/refresh-packagekit.py
522 %defattr(644,root,root,755)
523 %attr(755,root,root) %{_libdir}/libpackagekit-qt2.so.*.*.*
524 %attr(755,root,root) %ghost %{_libdir}/libpackagekit-qt2.so.4
527 %defattr(644,root,root,755)
528 %attr(755,root,root) %{_libdir}/libpackagekit-qt2.so
529 %{_pkgconfigdir}/packagekit-qt2.pc
530 %{_includedir}/PackageKit/packagekit-qt2
531 %dir %{_libdir}/cmake/packagekit-qt2
532 %{_libdir}/cmake/packagekit-qt2/packagekit-qt2-config-version.cmake
533 %{_libdir}/cmake/packagekit-qt2/packagekit-qt2-config.cmake
536 %defattr(644,root,root,755)
537 %{_libdir}/libpackagekit-qt2.a
541 %defattr(644,root,root,755)
542 %{_gtkdocdir}/PackageKit
544 %files gstreamer-plugin
545 %defattr(644,root,root,755)
546 %doc contrib/gstreamer-plugin/README
547 %attr(755,root,root) %{_libdir}/gst-install-plugins-helper
548 %attr(755,root,root) %{_libdir}/pk-gstreamer-install
551 %defattr(644,root,root,755)
552 %doc contrib/gtk-module/{GLASS.txt,README}
553 %attr(755,root,root) %{_libdir}/gtk-2.0/modules/libpk-gtk-module.so
556 %defattr(644,root,root,755)
557 %attr(755,root,root) %{_libdir}/gtk-3.0/modules/libpk-gtk-module.so
558 %{_libdir}/gnome-settings-daemon-3.0/gtk-modules/pk-gtk-module.desktop
560 %files -n bash-completion-packagekit
561 %defattr(644,root,root,755)
562 %{_sysconfdir}/bash_completion.d/pk-completion.bash
564 %files -n pm-utils-packagekit
565 %defattr(644,root,root,755)
566 %attr(755,root,root) %{_libdir}/pm-utils/sleep.d/95packagekit
568 %files -n python-packagekit
569 %defattr(644,root,root,755)
570 %dir %{py_sitescriptdir}/packagekit
571 %{py_sitescriptdir}/packagekit/*.py[co]
574 %files -n browser-plugin-packagekit
575 %defattr(644,root,root,755)
576 %attr(755,root,root) %{_browserpluginsdir}/packagekit-plugin.so