# TODO:
# - BASH command-not-found functionality disabled for now as it needs patched bash
# (details in bash from Fedora Rawhide)
-# - package browser plugin
+# - do not package browser plugin (it's flawed by concept)
+# - package: gir stuff (invert bcond if works)
+# /usr/lib/girepository-1.0/PackageKitGlib-1.0.typelib
+# /usr/share/gir-1.0/PackageKitGlib-1.0.gir
+# - todo:
+# configure: WARNING: unrecognized options: --disable-ruck
#
# Conditional build:
%bcond_without qt # don't build packagekit-qt library
-%bcond_without docs # build without docs
-#
+%bcond_without doc # build without docs
+%bcond_with gir # gobject introspection, time to time broken
+%bcond_without poldek # build default backend as poldek
+%bcond_with yum # build default backend as yum
+
+%if %{with yum}
+%define backend yum
+%undefine with_poldek
+%endif
+
+%if %{with poldek}
+%define backend poldek
+%undefine with_yum
+%endif
+
Summary: System daemon that is a D-Bus abstraction layer for package management
Summary(pl.UTF-8): Demon systemowy będący warstwą abstrakcji D-Bus do zarządzania pakietami
Name: PackageKit
-Version: 0.5.3
-Release: 1
+Version: 0.6.8
+Release: 2
License: GPL v2+
Group: Applications/System
Source0: http://www.packagekit.org/releases/%{name}-%{version}.tar.bz2
-# Source0-md5: 0f4aeac4abfa939d219b33d3ac4d5ccf
+# Source0-md5: 47987b91826bd522de1202d5a1e2510d
Patch1: %{name}-PLD.patch
+Patch2: bashism.patch
URL: http://www.packagekit.org/
BuildRequires: NetworkManager-devel >= 0.6.5
%if %{with qt}
BuildRequires: QtSql-devel >= 4.4.0
BuildRequires: QtXml-devel >= 4.4.0
%endif
-BuildRequires: autoconf >= 2.52
+BuildRequires: autoconf >= 2.65
BuildRequires: automake
%{?with_qt:BuildRequires: cppunit-devel}
BuildRequires: dbus-devel >= 1.2.0
BuildRequires: dbus-glib-devel >= 0.76
-%{?with_docs:BuildRequires: docbook-to-man}
+BuildRequires: docbook-dtd412-xml
+BuildRequires: docbook-dtd42-xml
BuildRequires: gettext-devel
-BuildRequires: glib2-devel >= 1:2.16.1
+BuildRequires: glib2-devel >= 1:2.22.0
BuildRequires: gstreamer-plugins-base-devel
BuildRequires: gtk+2-devel >= 2:2.14.0
-%{?with_docs:BuildRequires: gtk-doc >= 1.9}
+%{?with_doc:BuildRequires: gtk-doc >= 1.9}
BuildRequires: intltool >= 0.35.0
BuildRequires: libarchive-devel
BuildRequires: libtool
BuildRequires: pkgconfig
-BuildRequires: poldek-devel >= 0.30-0.20080820.23.31
-BuildRequires: polkit-devel
+BuildRequires: pm-utils
+%{?with_poldek:BuildRequires: poldek-devel >= 0.30-0.20080820.23.20}
+BuildRequires: polkit-devel >= 0.92
BuildRequires: python-devel
-BuildRequires: readline-devel
%{?with_qt:BuildRequires: qt4-build >= 4.4.0}
+BuildRequires: readline-devel
BuildRequires: rpm-pythonprov
BuildRequires: rpmbuild(macros) >= 1.311
BuildRequires: sqlite3-devel
+BuildRequires: udev-glib-devel
+BuildRequires: xorg-lib-libXt-devel
BuildRequires: xulrunner-devel
Requires(post,postun): shared-mime-info
Requires: %{name}-libs = %{version}-%{release}
-Requires: PolicyKit >= 0.8
+Requires: ConsoleKit
Requires: crondaemon
-Requires: poldek >= poldek-0.30-0.20080820.23.31
+%{?with_poldek:Requires: poldek >= 0.30-0.20080820.23.20}
+Requires: polkit >= 0.92
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Summary: packagekit-glib library
Summary(pl.UTF-8): Biblioteka packagekit-glib
Group: Libraries
+Requires: glib2 >= 1:2.22.0
%description libs
packagekit-glib library.
Summary(pl.UTF-8): Pliki nagłówkowe biblioteki packagekit-glib
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
-Requires: glib2-devel >= 1:2.16.1
+Requires: dbus-devel >= 1.2.0
+Requires: glib2-devel >= 1:2.22.0
+Requires: sqlite3-devel
%description devel
Header files for packagekit-glib library.
%description -n python-packagekit
PackageKit Python bindings.
-%description -n python-packagekit
+%description -n python-packagekit -l pl.UTF-8
Wiązania PackageKit dla Pythona.
%prep
%setup -q
%patch1 -p1
-mkdir m4
+%patch2 -p1
%build
-%if %{with docs}
+%if %{with doc}
%{__gtkdocize}
%endif
%{__intltoolize}
--disable-dummy \
--disable-ruck \
--disable-command-not-found \
- --enable-poldek \
- --%{!?with_docs:dis}%{?with_docs:en}able-gtk-doc \
+ --disable-browser-plugin \
+ %{!?with_gir:--disable-introspection} \
+ %{?with_poldek:--enable-poldek} \
+ %{?with_yum:--enable-yum} \
+ --%{!?with_doc:dis}%{?with_doc:en}able-gtk-doc \
--%{?with_qt:en}%{!?with_qt:dis}able-qt \
--with-html-dir=%{_gtkdocdir} \
- --with-default-backend=poldek
+ --with-default-backend=%{backend}
%{__make}
%install
# use pk-gstreamer-install as codec installer
ln -s pk-gstreamer-install $RPM_BUILD_ROOT%{_libdir}/gst-install-plugins-helper
+install -d $RPM_BUILD_ROOT%{_libdir}/pm-utils/sleep.d
+install -p contrib/pm-utils/95packagekit $RPM_BUILD_ROOT%{_libdir}/pm-utils/sleep.d
+
rm -f $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/modules/*.{la,a}
rm -f $RPM_BUILD_ROOT%{_libdir}/mozilla/plugins/*.{la,a}
rm -f $RPM_BUILD_ROOT%{_libdir}/packagekit-backend/*.{la,a}
%attr(755,root,root) %{_bindir}/pk-debuginfo-install
%attr(750,root,root) /etc/cron.daily/packagekit-background.cron
%dir %{_libdir}/packagekit-backend
-%attr(755,root,root) %{_libdir}/packagekit-backend/libpk_backend_poldek.so
%attr(755,root,root) %{_libdir}/polkit-1/extensions/libpackagekit-action-lookup.so
-%attr(755,root,root) %{_sbindir}/packagekitd
-#%attr(755,root,root) %{_sbindir}/pk-device-rebind
+%attr(755,root,root) %{_libdir}/packagekitd
+%attr(755,root,root) %{_sbindir}/pk-device-rebind
%dir %{_sysconfdir}/PackageKit
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/PackageKit.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/Vendor.conf
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/packagekit-background
/etc/dbus-1/system.d/org.freedesktop.PackageKit.conf
%dir %{_datadir}/PackageKit
+%dir %{_datadir}/PackageKit/helpers
%attr(755,root,root) %{_datadir}/PackageKit/pk-upgrade-distro.sh
%{_datadir}/polkit-1/actions/org.freedesktop.packagekit.policy
%{_datadir}/dbus-1/system-services/org.freedesktop.PackageKit.service
%{_datadir}/mime/packages/packagekit-servicepack.xml
%{_mandir}/man1/pkcon.1*
%{_mandir}/man1/pk-debuginfo-install.1*
-#%{_mandir}/man1/pk-device-rebind.1*
+%{_mandir}/man1/pk-device-rebind.1*
%{_mandir}/man1/pkgenpack.1*
%{_mandir}/man1/pkmon.1*
%dir /var/cache/PackageKit
%dir /var/lib/PackageKit
%ghost /var/lib/PackageKit/transactions.db
+# backend: poldek
+%if %{with poldek}
+%attr(755,root,root) %{_libdir}/packagekit-backend/libpk_backend_poldek.so
+%endif
+
+# backend: yum
+%if %{with yum}
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/PackageKit/Yum.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/yum/pluginconf.d/refresh-packagekit.conf
+%attr(755,root,root) %{_libdir}/packagekit-backend/libpk_backend_yum.so
+%{_libdir}/yum-plugins/refresh-packagekit.py
+%dir %{_datadir}/PackageKit/helpers/yum
+%{_datadir}/PackageKit/helpers/yum/licenses.txt
+%{_datadir}/PackageKit/helpers/yum/yum-comps-groups.conf
+%{_datadir}/PackageKit/helpers/yum/yumBackend.py
+%{_datadir}/PackageKit/helpers/yum/yumComps.py
+%{_datadir}/PackageKit/helpers/yum/yumFilter.py
+%endif
+
%files libs
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libpackagekit-glib.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpackagekit-glib.so.12
%attr(755,root,root) %{_libdir}/libpackagekit-glib2.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpackagekit-glib2.so.12
+%attr(755,root,root) %ghost %{_libdir}/libpackagekit-glib2.so.14
%files devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libpackagekit-glib.so
%attr(755,root,root) %{_libdir}/libpackagekit-glib2.so
-%{_libdir}/libpackagekit-glib.la
%{_libdir}/libpackagekit-glib2.la
-%{_pkgconfigdir}/packagekit-glib.pc
%{_pkgconfigdir}/packagekit-glib2.pc
%dir %{_includedir}/PackageKit
%{_includedir}/PackageKit/backend
-%{_includedir}/PackageKit/packagekit-glib
%{_includedir}/PackageKit/packagekit-glib2
%files static
%defattr(644,root,root,755)
-%{_libdir}/libpackagekit-glib.a
%{_libdir}/libpackagekit-glib2.a
%if %{with qt}
%files qt
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libpackagekit-qt.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpackagekit-qt.so.12
+%attr(755,root,root) %ghost %{_libdir}/libpackagekit-qt.so.14
%files qt-devel
%defattr(644,root,root,755)