%define alphatag #ALPHATAG# %{!?python_sitelib: %define python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} Summary: Package management service Name: PackageKit Version: #VERSION# Release: 0.#BUILD#%{?alphatag}%{?dist} License: GPLv2+ and LGPLv2+ URL: http://www.freedesktop.org/software/PackageKit/ Source0: http://www.freedesktop.org/software/PackageKit/releases/%{name}-%{version}.tar.xz Requires: %{name}-glib%{?_isa} = %{version}-%{release} Requires: shared-mime-info Requires: comps-extras Requires: systemd BuildRequires: glib2-devel >= 2.32.0 BuildRequires: dbus-devel >= 1.1.1 BuildRequires: dbus-glib-devel >= 0.74 BuildRequires: pam-devel BuildRequires: libX11-devel BuildRequires: xmlto BuildRequires: gtk-doc BuildRequires: gcc-c++ BuildRequires: sqlite-devel BuildRequires: NetworkManager-devel BuildRequires: polkit-devel >= 0.92 BuildRequires: libtool BuildRequires: gtk2-devel BuildRequires: gtk3-devel BuildRequires: docbook-utils BuildRequires: gnome-doc-utils BuildRequires: python3-devel BuildRequires: perl(XML::Parser) BuildRequires: intltool BuildRequires: gettext BuildRequires: libgudev1-devel BuildRequires: xulrunner-devel BuildRequires: libarchive-devel BuildRequires: gstreamer-devel BuildRequires: gstreamer-plugins-base-devel BuildRequires: pango-devel BuildRequires: fontconfig-devel BuildRequires: systemd-devel BuildRequires: gobject-introspection-devel %if !0%{?rhel} BuildRequires: bash-completion %endif %if !0%{?rhel} BuildRequires: hawkey-devel >= 0.4.6 BuildRequires: rpm-devel >= 4.11.0 BuildRequires: librepo-devel >= 1.1.5 BuildRequires: libsolv-devel %endif # functionality moved to udev itself Obsoletes: PackageKit-udev-helper < %{version}-%{release} Obsoletes: udev-packagekit < %{version}-%{release} # No more GTK+-2 plugin Obsoletes: PackageKit-gtk-module < %{version}-%{release} # No more zif, smart or yum in Fedora Obsoletes: PackageKit-smart < %{version}-%{release} Obsoletes: PackageKit-yum < 0.8.15-2 Obsoletes: PackageKit-yum-plugin < 0.8.15-2 Obsoletes: PackageKit-zif < 0.8.13-2 # components now built-in Obsoletes: PackageKit-debug-install < 0.8.15-2 Obsoletes: PackageKit-hawkey < 0.8.15-2 # Udev no longer provides this functionality Obsoletes: PackageKit-device-rebind < 0.8.13-2 %description PackageKit is a D-Bus abstraction layer that allows the session user to manage packages in a secure way using a cross-distro, cross-architecture API. %package glib Summary: GLib libraries for accessing PackageKit Requires: dbus >= 1.1.1 Requires: gobject-introspection Obsoletes: PackageKit-libs < %{version}-%{release} Provides: PackageKit-libs = %{version}-%{release} %description glib GLib libraries for accessing PackageKit. %package cron Summary: Cron job and related utilities for PackageKit Requires: crontabs Requires: %{name}%{?_isa} = %{version}-%{release} %description cron Crontab and utilities for running PackageKit as a cron job. %package glib-devel Summary: GLib Libraries and headers for PackageKit Requires: %{name}-glib%{?_isa} = %{version}-%{release} Requires: dbus-devel%{?_isa} >= 1.1.1 Requires: sqlite-devel%{?_isa} Obsoletes: PackageKit-devel < %{version}-%{release} Provides: PackageKit-devel = %{version}-%{release} Obsoletes: PackageKit-docs < %{version}-%{release} Provides: PackageKit-docs = %{version}-%{release} %description glib-devel GLib headers and libraries for PackageKit. %package backend-devel Summary: Headers to compile out of tree PackageKit backends # explicit dep: packagekit-plugin.pc links with -lpackagekit-glib2 # but doesn't refer to packagekit-glib2.pc Requires: %{name}-glib-devel%{?_isa} = %{version}-%{release} %description backend-devel Headers to compile out of tree PackageKit backends. %package browser-plugin Summary: Browser Plugin for PackageKit Requires: gtk2 Requires: %{name}-glib%{?_isa} = %{version}-%{release} Requires: mozilla-filesystem %description browser-plugin The PackageKit browser plugin allows web sites to offer the ability to users to install and update packages from configured repositories using PackageKit. %package gstreamer-plugin Summary: Install GStreamer codecs using PackageKit Requires: gstreamer Requires: %{name}-glib%{?_isa} = %{version}-%{release} Obsoletes: codeina < 0.10.1-10 Provides: codeina = 0.10.1-10 %description gstreamer-plugin The PackageKit GStreamer plugin allows any Gstreamer application to install codecs from configured repositories using PackageKit. %package gtk3-module Summary: Install fonts automatically using PackageKit Requires: pango Requires: %{name}-glib%{?_isa} = %{version}-%{release} %description gtk3-module The PackageKit GTK3+ module allows any Pango application to install fonts from configured repositories using PackageKit. %package command-not-found Summary: Ask the user to install command line programs automatically Requires: bash Requires: %{name}-glib%{?_isa} = %{version}-%{release} %description command-not-found A simple helper that offers to install new packages on the command line using PackageKit. %prep %setup -q %build %configure \ --disable-static \ --enable-python3 \ %if 0%{?rhel} == 0 --enable-hawkey \ --enable-introspection \ --enable-bash-completion \ %else --disable-bash-completion \ %endif --with-default-backend=auto \ --with-python-package-dir=%{python3_sitearch} \ --disable-local \ --disable-strict \ --disable-silent-rules \ --disable-tests make %{?_smp_mflags} V=1 %install make install DESTDIR=$RPM_BUILD_ROOT rm -f $RPM_BUILD_ROOT%{_libdir}/libpackagekit*.la rm -f $RPM_BUILD_ROOT%{_libdir}/packagekit-backend/*.la rm -f $RPM_BUILD_ROOT%{_libdir}/packagekit-plugins-2/*.la rm -f $RPM_BUILD_ROOT%{_libdir}/mozilla/plugins/packagekit-plugin.la rm -f $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/modules/*.la rm -f $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/modules/*.la rm -f $RPM_BUILD_ROOT%{_libdir}/polkit-1/extensions/libpackagekit-action-lookup.la touch $RPM_BUILD_ROOT%{_localstatedir}/cache/PackageKit/groups.sqlite # create a link that GStreamer will recognise pushd ${RPM_BUILD_ROOT}%{_libexecdir} > /dev/null ln -s pk-gstreamer-install gst-install-plugins-helper popd > /dev/null # create a link that from the comps icons to PK, as PackageKit frontends # cannot add /usr/share/pixmaps/comps to the icon search path as some distros # do not use comps. Patching this in the frontend is not a good idea, as there # are multiple frontends in multiple programming languages. pushd ${RPM_BUILD_ROOT}%{_datadir}/PackageKit > /dev/null ln -s ../pixmaps/comps icons popd > /dev/null %find_lang %name %post %systemd_post packagekit-offline-update.service packagekit.service %post glib -p /sbin/ldconfig %preun %systemd_preun packagekit-offline-update.service packagekit.service %postun %systemd_postun_with_restart packagekit-offline-update.service packagekit.service %postun glib -p /sbin/ldconfig %files -f %{name}.lang %defattr(-,root,root,-) %doc README AUTHORS NEWS COPYING %dir %{_datadir}/PackageKit %dir %{_datadir}/PackageKit/helpers %dir %{_sysconfdir}/PackageKit %dir %{_sysconfdir}/PackageKit/events %dir %{_sysconfdir}/PackageKit/events/post-transaction.d %dir %{_sysconfdir}/PackageKit/events/pre-transaction.d %{_sysconfdir}/PackageKit/events/*.d/README %dir %{_localstatedir}/lib/PackageKit %dir %{python3_sitearch}/packagekit %dir %{_localstatedir}/cache/PackageKit %ghost %verify(not md5 size mtime) %{_localstatedir}/cache/PackageKit/groups.sqlite %dir %{_localstatedir}/cache/PackageKit/downloads %dir %{_localstatedir}/cache/PackageKit/metadata %{python3_sitearch}/packagekit/*py* %if !0%{?rhel} %{_datadir}/bash-completion/completions/pkcon %endif %dir %{_libdir}/packagekit-backend %config(noreplace) %{_sysconfdir}/PackageKit/PackageKit.conf %config(noreplace) %{_sysconfdir}/PackageKit/Vendor.conf %config %{_sysconfdir}/dbus-1/system.d/* %dir %{_datadir}/PackageKit/helpers/test_spawn %{_datadir}/PackageKit/icons %{_datadir}/PackageKit/helpers/test_spawn/* %{_datadir}/man/man1/pkcon.1.gz %{_datadir}/man/man1/pkmon.1.gz %{_datadir}/man/man1/pk-debuginfo-install.1.gz %{_datadir}/polkit-1/actions/*.policy %{_datadir}/polkit-1/rules.d/* %{_datadir}/PackageKit/pk-upgrade-distro.sh %{_libexecdir}/packagekitd %{_bindir}/pkmon %{_bindir}/pkcon %{_bindir}/pk-debuginfo-install %exclude %{_libdir}/libpackagekit*.so.* %{_libdir}/packagekit-backend/libpk_backend_dummy.so %{_libdir}/packagekit-backend/libpk_backend_test_*.so %ghost %verify(not md5 size mtime) %{_localstatedir}/lib/PackageKit/transactions.db %{_datadir}/dbus-1/system-services/*.service %dir %{_libdir}/packagekit-plugins-2 %{_libdir}/packagekit-plugins-2/*.so %{_libdir}/girepository-1.0/PackageKitPlugin-1.0.typelib %{_datadir}/dbus-1/interfaces/*.xml %{_unitdir}/packagekit-offline-update.service %{_unitdir}/packagekit.service %{_libexecdir}/pk-*offline-update %if 0%{?rhel} == 0 %{_libdir}/packagekit-backend/libpk_backend_hawkey.so %endif %files glib %defattr(-,root,root,-) %{_libdir}/*packagekit-glib2.so.* %{_libdir}/girepository-1.0/PackageKitGlib-1.0.typelib %files cron %defattr(-,root,root,-) %config %{_sysconfdir}/cron.daily/packagekit-background.cron %config(noreplace) %{_sysconfdir}/sysconfig/packagekit-background %files browser-plugin %defattr(-,root,root,-) %{_libdir}/mozilla/plugins/packagekit-plugin.so %files gstreamer-plugin %defattr(-,root,root,-) %{_libexecdir}/pk-gstreamer-install %{_libexecdir}/gst-install-plugins-helper %files gtk3-module %defattr(-,root,root,-) %{_libdir}/gtk-2.0/modules/*.so %{_libdir}/gtk-3.0/modules/*.so %{_libdir}/gnome-settings-daemon-3.0/gtk-modules/*.desktop %files command-not-found %defattr(-,root,root,-) %{_sysconfdir}/profile.d/* %{_libexecdir}/pk-command-not-found %config(noreplace) %{_sysconfdir}/PackageKit/CommandNotFound.conf %files glib-devel %defattr(-,root,root,-) %{_libdir}/libpackagekit-glib2.so %{_libdir}/pkgconfig/packagekit-glib2.pc %dir %{_includedir}/PackageKit %dir %{_includedir}/PackageKit/packagekit-glib2 %{_includedir}/PackageKit/packagekit-glib*/*.h %{_datadir}/gir-1.0/PackageKitGlib-1.0.gir %{_datadir}/gir-1.0/PackageKitPlugin-1.0.gir %{_datadir}/gtk-doc/html/PackageKit %files backend-devel %defattr(-,root,root,-) %dir %{_includedir}/PackageKit %{_includedir}/PackageKit/plugin %{_libdir}/pkgconfig/packagekit-plugin.pc %changelog * #LONGDATE# Richard Hughes #VERSION#-0.#BUILD##ALPHATAG# - Update from git