%define alphatag #ALPHATAG# 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: systemd BuildRequires: python3-devel BuildRequires: glib2-devel >= 2.46.0 BuildRequires: xmlto BuildRequires: gtk-doc BuildRequires: sqlite-devel BuildRequires: polkit-devel >= 0.92 BuildRequires: libtool BuildRequires: gtk3-devel BuildRequires: docbook-utils BuildRequires: gnome-doc-utils BuildRequires: meson BuildRequires: gettext BuildRequires: vala BuildRequires: gstreamer1-devel BuildRequires: gstreamer1-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: rpm-devel >= 4.11.0 BuildRequires: appstream-devel BuildRequires: librepo-devel >= 1.1.5 BuildRequires: libsolv-devel BuildRequires: libdnf-devel >= 0.7.0 %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} Obsoletes: PackageKit-browser-plugin < %{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 Obsoletes: PackageKit-backend-devel < 0.9.6 # 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 gstreamer-plugin Summary: Install GStreamer codecs using PackageKit 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} Requires: PackageKit %description command-not-found A simple helper that offers to install new packages on the command line using PackageKit. %prep %setup -q %build %meson \ -Dgtk_doc=true \ -Dpython_backend=false \ %if 0%{?rhel} == 0 -Dpackaging_backend=dnf \ -Dbash_completion=true \ %else -Dbash_completion=false \ %endif -Dlocal_checkout=false %meson_build %install %meson_install mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/PackageKit/downloads mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/PackageKit/metadata mkdir -p $RPM_BUILD_ROOT/usr/lib/systemd/system/system-update.target.wants ln -sf /usr/lib/systemd/system/packagekit-offline-update.service \ $RPM_BUILD_ROOT/usr/lib/systemd/system/system-update.target.wants/packagekit-offline-update.service # 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 glib -p /sbin/ldconfig %postun glib -p /sbin/ldconfig %files -f %{name}.lang %license COPYING %doc README AUTHORS NEWS %dir %{_datadir}/PackageKit %dir %{_sysconfdir}/PackageKit %dir %{_localstatedir}/lib/PackageKit %dir %{_localstatedir}/cache/PackageKit %dir %{_localstatedir}/cache/PackageKit/downloads %dir %{_localstatedir}/cache/PackageKit/metadata %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/* %{_datadir}/PackageKit/icons %{_datadir}/man/man1/pkcon.1.gz %{_datadir}/man/man1/pkmon.1.gz %{_datadir}/polkit-1/actions/*.policy %{_datadir}/polkit-1/rules.d/* %{_datadir}/PackageKit/pk-upgrade-distro.sh %{_datadir}/PackageKit/helpers/test_spawn/search-name.sh %{_libexecdir}/packagekitd %{_libexecdir}/packagekit-direct %{_libexecdir}/packagekit-dnf-refresh-repo %pycached %{python3_sitelib}/dnf-plugins/notify_packagekit.py %{_bindir}/pkmon %{_bindir}/pkcon %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 %{_datadir}/dbus-1/interfaces/*.xml %{_unitdir}/packagekit-offline-update.service %{_unitdir}/packagekit.service %{_unitdir}/system-update.target.wants/ %{_libexecdir}/pk-*offline-update %if 0%{?rhel} == 0 %{_libdir}/packagekit-backend/libpk_backend_dnf.so %endif %files glib %{_libdir}/*packagekit-glib2.so.* %{_libdir}/girepository-1.0/PackageKitGlib-1.0.typelib %files cron %config %{_sysconfdir}/cron.daily/packagekit-background.cron %config(noreplace) %{_sysconfdir}/sysconfig/packagekit-background %files gstreamer-plugin %{_libexecdir}/pk-gstreamer-install %{_libexecdir}/gst-install-plugins-helper %files gtk3-module %{_libdir}/gtk-3.0/modules/*.so %{_libdir}/gnome-settings-daemon-3.0/gtk-modules/*.desktop %files command-not-found %{_sysconfdir}/profile.d/* %{_libexecdir}/pk-command-not-found %config(noreplace) %{_sysconfdir}/PackageKit/CommandNotFound.conf %files glib-devel %{_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}/gtk-doc/html/PackageKit %{_datadir}/vala/vapi/packagekit-glib2.vapi %{_datadir}/vala/vapi/packagekit-glib2.deps %changelog * #LONGDATE# Richard Hughes #VERSION#-0.#BUILD##ALPHATAG# - Update from git