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