]> git.pld-linux.org Git - packages/PackageKit.git/blob - PackageKit.spec
- updated to 0.8.11
[packages/PackageKit.git] / PackageKit.spec
1 # TODO:
2 # - send poldek patch upstream
3 # - BASH command-not-found functionality disabled for now as it needs patched bash
4 #   (details in bash from Fedora Rawhide)
5 #
6 # Conditional build:
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)
13
14 # default backend, configurable at runtime
15 %define         backend poldek
16
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
19 Name:           PackageKit
20 Version:        0.8.11
21 Release:        1
22 License:        GPL v2+
23 Group:          Applications/System
24 Source0:        http://www.packagekit.org/releases/%{name}-%{version}.tar.xz
25 # Source0-md5:  676ebf95830373b84d5599f4e5039b72
26 Patch0:         %{name}-poldek.patch
27 Patch1:         %{name}-PLD.patch
28 Patch2:         bashism.patch
29 Patch3:         smart-at-fix.patch
30 Patch4:         %{name}-gstreamer.patch
31 Patch5:         %{name}-bashcomp.patch
32 Patch6:         %{name}-connman.patch
33 URL:            http://www.packagekit.org/
34 BuildRequires:  NetworkManager-devel >= 0.6.5
35 BuildRequires:  autoconf >= 2.65
36 BuildRequires:  automake >= 1:1.11
37 BuildRequires:  connman-devel
38 BuildRequires:  dbus-devel >= 1.2.0
39 BuildRequires:  dbus-glib-devel >= 0.76
40 BuildRequires:  docbook-dtd412-xml
41 BuildRequires:  docbook-dtd42-xml
42 BuildRequires:  fontconfig-devel
43 BuildRequires:  gettext-devel
44 BuildRequires:  glib2-devel >= 1:2.30.0
45 %{?with_gir:BuildRequires:      gobject-introspection-devel >= 0.9.9}
46 BuildRequires:  gstreamer-devel >= 1.0.0
47 BuildRequires:  gstreamer-plugins-base-devel >= 1.0.0
48 BuildRequires:  gtk+2-devel >= 2:2.14.0
49 BuildRequires:  gtk+3-devel >= 3.0.0
50 %{?with_doc:BuildRequires:      gtk-doc >= 1.11}
51 BuildRequires:  intltool >= 0.35.0
52 BuildRequires:  libarchive-devel
53 BuildRequires:  libtool
54 BuildRequires:  libxslt-progs
55 BuildRequires:  pango-devel
56 BuildRequires:  pkgconfig
57 BuildRequires:  pm-utils
58 %{?with_poldek:BuildRequires:   poldek-devel >= 0.30-1.rc6.4}
59 BuildRequires:  polkit-devel >= 0.98
60 BuildRequires:  python-devel >= 1:2.7
61 BuildRequires:  readline-devel
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
68 BuildRequires:  xz
69 %if %{with browser}
70 BuildRequires:  cairo-devel
71 BuildRequires:  nspr-devel >= 4.8
72 BuildRequires:  xulrunner-devel >= 8.0
73 %endif
74 Requires(post,postun):  shared-mime-info
75 Requires:       %{name}-backend
76 Requires:       %{name}-libs = %{version}-%{release}
77 Requires:       ConsoleKit-x11
78 Requires:       crondaemon
79 Requires:       polkit >= 0.92
80 Obsoletes:      PackageKit-docs < 0.8.4
81 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
82
83 %description
84 PackageKit is a D-Bus abstraction layer that allows the session user
85 to manage packages in a secure way using a cross-distro,
86 cross-architecture API.
87
88 %description -l pl.UTF-8
89 PackageKit to warstwa abstrakcji D-Bus pozwalająca użytkownikowi
90 sesyjnemu w bezpieczny sposob zarządzać pakietami przy użyciu API
91 zgodnego z wieloma dystrybucjami i architekturami.
92
93 %package libs
94 Summary:        packagekit-glib library
95 Summary(pl.UTF-8):      Biblioteka packagekit-glib
96 Group:          Libraries
97 Requires:       glib2 >= 1:2.30.0
98
99 %description libs
100 packagekit-glib library.
101
102 %description libs -l pl.UTF-8
103 Biblioteka packagekit-glib.
104
105 %package devel
106 Summary:        Header files for packagekit-glib library
107 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki packagekit-glib
108 Group:          Development/Libraries
109 Requires:       %{name}-libs = %{version}-%{release}
110 Requires:       dbus-devel >= 1.2.0
111 Requires:       glib2-devel >= 1:2.30.0
112 Requires:       sqlite3-devel
113
114 %description devel
115 Header files for packagekit-glib library.
116
117 %description devel -l pl.UTF-8
118 Pliki nagłówkowe biblioteki packagekit-glib.
119
120 %package static
121 Summary:        Static packagekit-glib library
122 Summary(pl.UTF-8):      Statyczna biblioteka packagekit-glib
123 Group:          Development/Libraries
124 Requires:       %{name}-devel = %{version}-%{release}
125
126 %description static
127 Static packagekit-glib library.
128
129 %description static -l pl.UTF-8
130 Statyczna biblioteka packagekit-glib.
131
132 %package backend-poldek
133 Summary:        PackageKit Poldek backend
134 Group:          Libraries
135 Requires:       %{name} = %{version}-%{release}
136 Requires:       poldek >= 0.30-1.rc6.4
137 Provides:       %{name}-backend
138 Conflicts:      %{name} < 0.6.8-3
139
140 %description backend-poldek
141 A backend for PackageKit to enable Poldek functionality.
142
143 %package backend-smart
144 Summary:        PackageKit SMART backend
145 Group:          Libraries
146 Requires:       %{name} = %{version}-%{release}
147 Requires:       smart
148
149 %description backend-smart
150 A backend for PackageKit to enable SMART functionality.
151
152 %package backend-yum
153 Summary:        PackageKit YUM backend
154 Group:          Libraries
155 Requires:       %{name} = %{version}-%{release}
156 Requires:       python-packagekit = %{version}-%{release}
157 Requires:       yum >= 3.2.19
158 Provides:       %{name}-backend
159
160 %description backend-yum
161 A backend for PackageKit to enable yum functionality.
162
163 %package apidocs
164 Summary:        PackageKit library API documentation
165 Summary(pl.UTF-8):      Dokumentacja API biblioteki PackageKit
166 Group:          Documentation
167 Requires:       gtk-doc-common
168
169 %description apidocs
170 PackageKit library API documentation.
171
172 %description apidocs -l pl.UTF-8
173 Dokumentacja API biblioteki PackageKit.
174
175 %package gstreamer-plugin
176 Summary:        GStreamer codecs installer
177 Summary(pl.UTF-8):      Instalator kodeków GStreamera
178 Group:          Applications
179 Requires:       %{name} = %{version}-%{release}
180 Requires:       %{name}-gtk-module = %{version}-%{release}
181
182 %description gstreamer-plugin
183 The PackageKit GStreamer plugin allows any GStreamer application to
184 install codecs from configured repositories using PackageKit.
185
186 %description gstreamer-plugin -l pl.UTF-8
187 Wtyczka GStreamer pozwala każdej aplikacji używającej GStreamera
188 zainstalować kodeki ze skonfigurowanych źródeł PackageKit.
189
190 %package gtk-module
191 Summary:        GTK+ module to detect and install missing fonts
192 Summary(pl.UTF-8):      Moduł GTK+ do wykrywania i instalowania brakujących czcionek
193 Group:          X11/Libraries
194
195 %description gtk-module
196 The PackageKit GTK+ module allows any pango application to install
197 missing fonts from configured repositories using PackageKit.
198
199 %description gtk-module -l pl.UTF-8
200 Moduł GTK+ pozwala każdej aplikacji używającej pango zainstalować
201 brakującą czcionkę ze skonfigurowanych źródeł PackageKit.
202
203 %package gtk3-module
204 Summary:        GTK+ 3.x module to detect and install missing fonts
205 Summary(pl.UTF-8):      Moduł GTK+ 3.x do wykrywania i instalowania brakujących czcionek
206 Group:          X11/Libraries
207
208 %description gtk3-module
209 The PackageKit GTK+ 3.x module allows any pango application to install
210 missing fonts from configured repositories using PackageKit.
211
212 %description gtk3-module -l pl.UTF-8
213 Moduł GTK+ 3.x pozwala każdej aplikacji używającej pango zainstalować
214 brakującą czcionkę ze skonfigurowanych źródeł PackageKit.
215
216 %package -n bash-completion-packagekit
217 Summary:        bash-completion for PackageKit
218 Summary(pl.UTF-8):      bashowe uzupełnianie nazw dla PackageKit
219 Group:          Applications/Shells
220 Requires:       %{name} = %{version}-%{release}
221 Requires:       bash-completion >= 2
222
223 %description -n bash-completion-packagekit
224 This package provides bash-completion for PackageKit.
225
226 %description -n bash-completion-packagekit -l pl.UTF-8
227 Pakiet ten dostarcza bashowe uzupełnianie nazw dla PackageKit.
228
229 %package -n pm-utils-packagekit
230 Summary:        PackageKit script for pm-utils
231 Summary(pl.UTF-8):      Skrypt PackageKit dla pm-utils
232 Group:          Applications/System
233 Requires:       pm-utils
234
235 %description -n pm-utils-packagekit
236 PackageKit script for pm-utils.
237
238 %description -n pm-utils-packagekit -l pl.UTF-8
239 Skrypt PackageKit dla pm-utils.
240
241 %package -n python-packagekit
242 Summary:        PackageKit Python bindings
243 Summary(pl.UTF-8):      Wiązania PackageKit dla Pythona
244 Group:          Development/Languages/Python
245 Requires:       python-dbus
246 Requires:       python-pygobject
247
248 %description -n python-packagekit
249 PackageKit Python bindings.
250
251 %description -n python-packagekit -l pl.UTF-8
252 Wiązania PackageKit dla Pythona.
253
254 %package -n browser-plugin-packagekit
255 Summary:        PackageKit's browser plugin
256 Summary(pl.UTF-8):      Wtyczka PackageKit do przeglądarek WWW
257 Group:          X11/Libraries
258 Requires:       %{name} = %{version}-%{release}
259 Requires:       browser-plugins >= 2.0
260 Requires:       browser-plugins(%{_target_base_arch})
261
262 %description -n browser-plugin-packagekit
263 PackageKit's plugin for browsers.
264
265 %description -n browser-plugin-packagekit -l pl.UTF-8
266 Wtyczka PackageKit do przeglądarek WWW.
267
268 %prep
269 %setup -q
270 %patch0 -p1
271 %patch1 -p1
272 %patch2 -p1
273 %patch3 -p0
274 %patch4 -p1
275 %patch5 -p1
276 %patch6 -p1
277
278 %build
279 %if %{with doc}
280 %{__gtkdocize}
281 %endif
282 %{__intltoolize}
283 %{__libtoolize}
284 %{__aclocal} -I m4
285 %{__autoconf}
286 %{__autoheader}
287 %{__automake}
288 %configure \
289         --disable-command-not-found \
290         --disable-dummy \
291         %{!?with_doc:--disable-gtk-doc} \
292         %{!?with_gir:--disable-introspection} \
293         --disable-silent-rules \
294         --enable-bash-completion=%{bash_compdir} \
295         %{__enable_disable browser browser-plugin} \
296         %{__enable_disable poldek} \
297         %{__enable_disable smart} \
298         %{__enable_disable yum} \
299         --with-default-backend=%{backend} \
300         --with-html-dir=%{_gtkdocdir} \
301         --with-mozilla-plugin-dir=%{_browserpluginsdir} \
302         --with-security-framework=polkit
303 %{__make}
304
305 %install
306 rm -rf $RPM_BUILD_ROOT
307
308 %{__make} install \
309         DESTDIR=$RPM_BUILD_ROOT
310
311 # use pk-gstreamer-install as codec installer
312 ln -s pk-gstreamer-install $RPM_BUILD_ROOT%{_libdir}/gst-install-plugins-helper
313
314 install -d $RPM_BUILD_ROOT%{_libdir}/pm-utils/sleep.d
315 install -p contrib/pm-utils/95packagekit $RPM_BUILD_ROOT%{_libdir}/pm-utils/sleep.d
316
317 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk-{2,3}.0/modules/*.{la,a}
318 %{__rm} $RPM_BUILD_ROOT%{_libdir}/packagekit-backend/*.{la,a}
319 %{__rm} $RPM_BUILD_ROOT%{_libdir}/packagekit-backend/libpk_backend_test_*.so
320 %{__rm} $RPM_BUILD_ROOT%{_libdir}/packagekit-plugins/*.{la,a}
321 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
322 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/test_spawn
323
324 %if %{with browser}
325 %{__rm} $RPM_BUILD_ROOT%{_browserpluginsdir}/*.{la,a}
326 %endif
327
328 %if %{with yum}
329 # yumBackend.py can't be compiled (invoked directly), other should be compiled
330 %py_comp $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum
331 %py_ocomp $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum
332 %{__rm} $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum/yum{Comps,Filter}.py
333 %{__rm} $RPM_BUILD_ROOT%{_datadir}/PackageKit/helpers/yum/yumBackend.py[co]
334 %endif
335
336 # outdated copy of it
337 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/it_IT
338
339 %py_postclean
340
341 %find_lang %{name}
342
343 %clean
344 rm -rf $RPM_BUILD_ROOT
345
346 %post
347 %update_mime_database
348
349 %postun
350 %update_mime_database
351
352 %post   libs -p /sbin/ldconfig
353 %postun libs -p /sbin/ldconfig
354
355 %post -n browser-plugin-packagekit
356 %update_browser_plugins
357
358 %postun -n browser-plugin-packagekit
359 if [ "$1" = 0 ]; then
360         %update_browser_plugins
361 fi
362
363 %files -f %{name}.lang
364 %defattr(644,root,root,755)
365 %doc AUTHORS HACKING MAINTAINERS NEWS README TODO
366 %attr(755,root,root) %{_bindir}/packagekit-bugreport.sh
367 %attr(755,root,root) %{_bindir}/pkcon
368 %attr(755,root,root) %{_bindir}/pkgenpack
369 %attr(755,root,root) %{_bindir}/pkmon
370 %attr(755,root,root) %{_bindir}/pk-debuginfo-install
371 %attr(750,root,root) /etc/cron.daily/packagekit-background.cron
372 %dir %{_libdir}/packagekit-backend
373 %dir %{_libdir}/packagekit-plugins
374 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-check-shared-libraries-in-use.so
375 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-clear-firmware-requests.so
376 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-no-update-process.so
377 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-require-restart.so
378 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-scan-desktop-files.so
379 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-systemd-updates.so
380 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-update-check-processes.so
381 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin-update-package-cache.so
382 %attr(755,root,root) %{_libdir}/packagekit-plugins/libpk_plugin_scripts.so
383 %attr(755,root,root) %{_libdir}/packagekitd
384 %attr(755,root,root) %{_libdir}/pk-clear-offline-update
385 %attr(755,root,root) %{_libdir}/pk-offline-update
386 %attr(755,root,root) %{_libdir}/pk-trigger-offline-update
387 %attr(755,root,root) %{_sbindir}/pk-device-rebind
388 %dir %{_sysconfdir}/PackageKit
389 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/PackageKit.conf
390 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/Vendor.conf
391 %dir %{_sysconfdir}/PackageKit/events
392 %{_sysconfdir}/PackageKit/events/post-transaction.d
393 %{_sysconfdir}/PackageKit/events/pre-transaction.d
394 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/packagekit-background
395 /etc/dbus-1/system.d/org.freedesktop.PackageKit.conf
396 %dir %{_datadir}/PackageKit
397 %dir %{_datadir}/PackageKit/helpers
398 %attr(755,root,root) %{_datadir}/PackageKit/pk-upgrade-distro.sh
399 %{_datadir}/polkit-1/actions/org.freedesktop.packagekit.policy
400 %{_datadir}/polkit-1/rules.d/org.freedesktop.packagekit.rules
401 %{_datadir}/dbus-1/interfaces/org.freedesktop.PackageKit.Transaction.xml
402 %{_datadir}/dbus-1/interfaces/org.freedesktop.PackageKit.xml
403 %{_datadir}/dbus-1/system-services/org.freedesktop.PackageKit.service
404 %{_datadir}/mime/packages/packagekit-catalog.xml
405 %{_datadir}/mime/packages/packagekit-package-list.xml
406 %{_datadir}/mime/packages/packagekit-servicepack.xml
407 %{_mandir}/man1/pkcon.1*
408 %{_mandir}/man1/pk-debuginfo-install.1*
409 %{_mandir}/man1/pk-device-rebind.1*
410 %{_mandir}/man1/pkgenpack.1*
411 %{_mandir}/man1/pkmon.1*
412 %{systemdunitdir}/packagekit-offline-update.service
413 %dir /var/cache/PackageKit
414 %dir /var/cache/PackageKit/downloads
415 %dir /var/lib/PackageKit
416 %ghost /var/lib/PackageKit/transactions.db
417
418 %files libs
419 %defattr(644,root,root,755)
420 %attr(755,root,root) %{_libdir}/libpackagekit-glib2.so.*.*.*
421 %attr(755,root,root) %ghost %{_libdir}/libpackagekit-glib2.so.16
422 %{_libdir}/girepository-1.0/PackageKitGlib-1.0.typelib
423 %{_libdir}/girepository-1.0/PackageKitPlugin-1.0.typelib
424
425 %files devel
426 %defattr(644,root,root,755)
427 %attr(755,root,root) %{_libdir}/libpackagekit-glib2.so
428 %{_pkgconfigdir}/packagekit-glib2.pc
429 %{_pkgconfigdir}/packagekit-plugin.pc
430 %dir %{_includedir}/PackageKit
431 %{_includedir}/PackageKit/packagekit-glib2
432 %{_includedir}/PackageKit/plugin
433 %{_datadir}/gir-1.0/PackageKitGlib-1.0.gir
434 %{_datadir}/gir-1.0/PackageKitPlugin-1.0.gir
435
436 %files static
437 %defattr(644,root,root,755)
438 %{_libdir}/libpackagekit-glib2.a
439
440 %if %{with poldek}
441 %files backend-poldek
442 %defattr(644,root,root,755)
443 %attr(755,root,root) %{_libdir}/packagekit-backend/libpk_backend_poldek.so
444 %endif
445
446 %if %{with smart}
447 %files backend-smart
448 %defattr(644,root,root,755)
449 %{_libdir}/packagekit-backend/libpk_backend_smart.so
450 %dir %{_datadir}/PackageKit/helpers/smart
451 %attr(755,root,root) %{_datadir}/PackageKit/helpers/smart/smartBackend.py
452 %endif
453
454 %if %{with yum}
455 %files backend-yum
456 %defattr(644,root,root,755)
457 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/Yum.conf
458 %attr(755,root,root) %{_libdir}/packagekit-backend/libpk_backend_yum.so
459 %dir %{_datadir}/PackageKit/helpers/yum
460 %{_datadir}/PackageKit/helpers/yum/licenses.txt
461 %{_datadir}/PackageKit/helpers/yum/yum-comps-groups.conf
462 %attr(755,root,root) %{_datadir}/PackageKit/helpers/yum/yumBackend.py
463 %{_datadir}/PackageKit/helpers/yum/yumComps.py[co]
464 %{_datadir}/PackageKit/helpers/yum/yumFilter.py[co]
465
466 # yum plugin
467 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/yum/pluginconf.d/refresh-packagekit.conf
468 %{_prefix}/lib/yum-plugins/refresh-packagekit.py
469 %endif
470
471 %files apidocs
472 %defattr(644,root,root,755)
473 %{_gtkdocdir}/PackageKit
474
475 %files gstreamer-plugin
476 %defattr(644,root,root,755)
477 %doc contrib/gstreamer-plugin/README
478 %attr(755,root,root) %{_libdir}/gst-install-plugins-helper
479 %attr(755,root,root) %{_libdir}/pk-gstreamer-install
480
481 %files gtk-module
482 %defattr(644,root,root,755)
483 %doc contrib/gtk-module/{GLASS.txt,README}
484 %attr(755,root,root) %{_libdir}/gtk-2.0/modules/libpk-gtk-module.so
485
486 %files gtk3-module
487 %defattr(644,root,root,755)
488 %attr(755,root,root) %{_libdir}/gtk-3.0/modules/libpk-gtk-module.so
489 %{_libdir}/gnome-settings-daemon-3.0/gtk-modules/pk-gtk-module.desktop
490
491 %files -n bash-completion-packagekit
492 %defattr(644,root,root,755)
493 %{bash_compdir}/pkcon
494
495 %files -n pm-utils-packagekit
496 %defattr(644,root,root,755)
497 %attr(755,root,root) %{_libdir}/pm-utils/sleep.d/95packagekit
498
499 %files -n python-packagekit
500 %defattr(644,root,root,755)
501 %dir %{py_sitescriptdir}/packagekit
502 %{py_sitescriptdir}/packagekit/*.py[co]
503
504 %if %{with browser}
505 %files -n browser-plugin-packagekit
506 %defattr(644,root,root,755)
507 %attr(755,root,root) %{_browserpluginsdir}/packagekit-plugin.so
508 %endif
This page took 0.060237 seconds and 3 git commands to generate.