File yum.spec of Package yum.3698
#
# spec file for package yum
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: yum
Version: 3.4.3
Release: 0
Summary: RPM installer/updater
License: GPL-2.0+
Group: System/Packages
Url: http://linux.duke.edu/yum/
Source: %{name}-%{version}.tar.gz
Source1: %{name}.conf
Source2: %{name}-updatesd.init
# PATCH-FIX-OPENSUSE
Patch1: %{name}-3.4.3-license-to-confirm.patch
# PATCH-FIX-OPENSUSE
Patch2: %{name}-3.4.3-suse-changelogs.patch
# PATCH-FIX-OPENSUSE
Patch3: %{name}-3.4.3-suse-missing-tags.patch
# PATCH-FIX-OPENSUSE
Patch6: %{name}-3.4.3-add-lib-cpp-file.patch
# PATCH-FIX-UPSTREAM
Patch7: %{name}-3.4.3-updatesd-dbus-conf-syntax.patch
# PATCH-FIX-UPSTREAM
Patch8: %{name}-3.4.3-speedup-bnc810074.patch
# PATCH-FIX-OPENSUSE
Patch9: %{name}-3.4.3-fix-repo-tag.patch
# PATCH-FIX-UPSTREAM bnc#896844
Patch10: %{name}-3.4.3-preserve-queryparams-in-urls.patch
# PATCH-FIX-OPENSUSE
Patch11: %{name}-3.2.29-parse-restart_suggested.patch
BuildRequires: dbus-1
BuildRequires: intltool
BuildRequires: python-devel
Requires: python-gpgme
Requires: python-iniparse
Requires: python-xml
Requires: python-yum = %{version}
Requires: rpm >= 4.4.0
Requires: rpm-python
Suggests: cron
Suggests: logrotate
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires(pre): coreutils
Requires(pre): %insserv_prereq
Requires(pre): %fillup_prereq
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
%{!?python_sitearch: %global python_sitearch %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
%endif
%lang_package
%description
Yum is a utility that can check for and automatically download and
install updated RPM packages. Dependencies are obtained and downloaded
automatically prompting the user as necessary.
%package updatesd
Summary: YUM update notification daemon
Group: System/Packages
Requires: %{name} = %{version}
Requires: dbus-1-python
Requires: python-gobject2
Requires(pre): %insserv_prereq
%description updatesd
yum-updatesd provides a daemon which checks for available updates and
can notify you when they are available via email, syslog or dbus.
%package -n python-yum
Summary: YUM update notification daemon
Group: Development/Languages/Python
Requires: dbus-1-python
Requires: python-gobject2
Requires: python-urlgrabber
Requires: python-urlgrabber
Requires: yum-metadata-parser >= 1.1.0
Provides: yum-common = %{version}
Obsoletes: yum-common < %{version}
%description -n python-yum
Common libraries for YUM based programs
%prep
%setup -q
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p0
# Fix non-executable scripts rpmlint issue:
sed -i "s|#!.*/usr/bin/python.*||" rpmUtils/{arch,__init__,miscutils,oldUtils,transaction,updates}.py
sed -i "s|#!.*/usr/bin/python.*||" yum/{callbacks,comps,config,constants,depsolve,Errors,failover,history,i18n,__init__,logginglevels,mdparser,metalink,misc,packages,packageSack,parser,pgpmsg,pkgtag_db,plugins,repoMDObject,repos,rpmsack,rpmtrans,sqlitesack,sqlutils,transactioninfo,update_md,yumRepo}.py
%ifnarch %{ix86}
for i in rpmUtils yum
do
pushd $i
sed -e "s/lib/%{_lib}/" Makefile > Makefile.new
mv Makefile.new Makefile
popd
done
%endif
%build
make
%install
%makeinstall
install -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/%{name}/yum.conf
# install custom init script
mkdir -p %{buildroot}%{_sysconfdir}/init.d
install %{SOURCE2} %{buildroot}%{_initddir}/yum-updatesd
ln -s %{_initddir}/yum-updatesd %{buildroot}%{_sbindir}/rcyum-updatesd
# remove the original one
rm %{buildroot}%{_sysconfdir}/rc.d/init.d/yum-updatesd
rm -rf %{buildroot}%{_sysconfdir}/rc.d
mkdir -p %{buildroot}/%{_sysconfdir}/%{name}/pluginconf.d/ \
%{buildroot}%{_prefix}/lib/yum-plugins/ \
%{buildroot}%{_localstatedir}/adm/fillup-templates/
mv %{buildroot}%{_sysconfdir}/sysconfig/yum-cron %{buildroot}%{_localstatedir}/adm/fillup-templates/sysconfig.yum-cron
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
rm -rf %{buildroot}%{_prefix}/share/locale/id_ID
rm -rf %{buildroot}%{_prefix}/share/locale/lt_LT
%endif
%find_lang %{name}
%post
%fillup_only -n yum-cron
# if we are upgrading from older distros the config should be moved
# to the new place
CONFD="/etc/yum"
OCONF="/etc/yum.conf"
NCONF="${CONFD}/yum.conf"
NCONFB="${CONFD}/yum.conf.rpmsave"
if [ -e "$OCONF" ] ; then
#
# in worst case we will get:
# /etc/yum/yum.conf - the old /etc/yum.conf
# /etc/yum/yum.conf.rpmnew - the config of the newly installed package.
# /etc/yum/yum.conf.rpmsave - the old /etc/yum/yum.conf
#
if [ ! -d "$CONFD" ] ; then
mkdir "$CONFD"
fi
#
# we dont need to handle the case that /etc/yum/yum.conf
# exists. rpm does that for us.
# it creates /etc/yum/yum.conf.rpmnew
#
if [ -e "$NCONF" ] ; then
mv "$NCONF" "$NCONFB"
echo "warning: /etc/yum/yum.conf backed up as /etc/yum/yum.conf.rpmsave" >&2
fi
echo "warning: /etc/yum.conf moved to /etc/yum/yum.conf" >&2
mv "$OCONF" "$NCONF"
fi
# migrate /etc/yum.repos.d to /etc/yum/repos.d/
if [ -d "/etc/yum.repos.d" ] ; then
if [ ! -d "/etc/yum/repos.d" ] ; then
mkdir "/etc/yum/repos.d"
fi
if [ "/etc/yum.repos.d/*" != '/etc/yum.repos.d/*' ] ; then
for i in /etc/yum.repos.d/*;
do
NCONF="/etc/yum/repos.d/`basename $i`"
NCONFB="/etc/yum/repos.d/`basename $i`.rpmsave"
OCONF="/etc/yum.repos.d/`basename $i`"
if [ -e "$NCONF" ] ; then
mv "$NCONF" "$NCONFB"
echo "warning: $NCONF backed up as $NCONFB" >&2
fi
echo "warning: $OCONF moved to $NCONF" >&2
mv "$OCONF" "$NCONF"
done
fi
fi
%preun updatesd
%stop_on_removal yum-updatesd
%postun updatesd
%restart_on_update yum-updatesd
%insserv_cleanup
%files
%defattr(-,root,root)
%doc README AUTHORS COPYING TODO PLUGINS
%dir %{_localstatedir}/cache/%{name}
%dir %{_sysconfdir}/%{name}
%dir %{_sysconfdir}/%{name}/repos.d
%dir %{_sysconfdir}/%{name}/pluginconf.d
%dir %{_prefix}/lib/yum-plugins
%config(noreplace) %{_sysconfdir}/%{name}/yum.conf
%config %{_sysconfdir}/logrotate.d/%{name}
%{_localstatedir}/adm/fillup-templates/sysconfig.yum-cron
%{_sysconfdir}/cron.daily/0yum.cron
%config %{_sysconfdir}/%{name}/yum-daily.yum
%config %{_sysconfdir}/%{name}/yum-weekly.yum
%config %{_sysconfdir}/bash_completion.d/yum.bash
%{_mandir}/*/*
%defattr(0755,root,root)
%{_datadir}/yum-cli
%{_bindir}/*
%exclude %{_mandir}/man*/yum-updatesd*
%files lang -f %name.lang
%defattr(-,root,root)
%files -n python-yum
%defattr(-,root,root)
%{python_sitearch}/*
%files updatesd
%defattr(-,root,root)
%attr(644,root,root) %config(noreplace) %{_sysconfdir}/%{name}/yum-updatesd.conf
%config %{_sysconfdir}/init.d/yum-updatesd
%{_sbindir}/rcyum-updatesd
%attr(644,root,root) %config %{_sysconfdir}/dbus-1/system.d/yum-updatesd.conf
%config(noreplace) %{_sysconfdir}/%{name}/version-groups.conf
%{_sbindir}/yum-updatesd
%{_mandir}/man*/yum-updatesd*
%changelog