Summary(uk.UTF-8): Менеджер пакетів від RPM
Name: rpm
Version: 5.4.10
-Release: 35.1
+Release: 35.5
License: LGPL
Group: Base
# http://rpm5.org/files/rpm/rpm-5.4/rpm-5.4.10-0.20120706.src.rpm
Source26: rpmdb_checkversion.c
Source27: macros.lang
Source28: rpmdb_reset.c
+Source29: dbupgrade.sh
Patch0: %{name}-branch.patch
Patch1: %{name}-man_pl.patch
Patch2: %{name}-popt-aliases.patch
-Patch3: %{name}-rpmpopt.patch
Patch4: %{name}-perl-macros.patch
Patch5: %{name}-perl-req-perlfile.patch
Patch6: %{name}-scripts-closefds.patch
Patch55: %{name}-disable-hmac-verify.patch
Patch56: rpm-macros.patch
Patch57: %{name}-db5.2.patch
+Patch58: %{name}-preserve-iterator.patch
+Patch59: %{name}-triggerin-compat.patch
# Patches imported from Mandriva
BuildRequires: popt-static >= %{reqpopt_ver}
BuildRequires: zlib-static
%endif
+Requires(posttrans): coreutils
Requires: %{name}-base = %{version}-%{release}
Requires: %{name}-lib = %{version}-%{release}
Requires: beecrypt >= %{beecrypt_ver}
%define _rpmlibdir /usr/lib/rpm
%define _noautocompressdoc RPM-GPG-KEY
-%define specflags -fno-strict-aliasing
-
%description
RPM is a powerful package manager, which can be used to build,
install, query, verify, update, and uninstall individual software
#patch0 -p1
%patch1 -p1
%patch2 -p1
-%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch55 -p1
%patch56 -p1
%patch57 -p1
+%patch58 -p1
+%patch59 -p1
%patch1000 -p1
%patch1001 -p1
install tools/rpmdb_checkversion $RPM_BUILD_ROOT%{_rpmlibdir}/bin
install tools/rpmdb_reset $RPM_BUILD_ROOT%{_rpmlibdir}/bin
+install %{SOURCE29} $RPM_BUILD_ROOT%{_rpmlibdir}/bin/dbupgrade.sh
# create macro loading wrappers for backward compatibility
for m in gstreamer java mono perl php python; do
mkdir %{_sysconfdir}/rpm/sysinfo
fi
-%if 0
%posttrans
-if [ ! -e /var/lib/rpm/Packages ]; then
- %{__rm} -f /var/lib/rpm/need_rpmdb_downgrade 2>/dev/null >/dev/null
- exit 0
-fi
-NEEDDBCONV=
-if [ -e /var/lib/rpm/need_rpmdb_downgrade ]; then
- if [ ! -e /var/lib/rpm.rpmbackup-%{version}-%{release} ] && [ -x /bin/cp ] && \
- /bin/cp -a /var/lib/rpm /var/lib/rpm.rpmbackup-%{version}-%{release}; then
- echo
- echo "Backup of the rpm database has been created in /var/lib/rpm.rpmbackup-%{version}-%{release}"
- echo
- fi
- %{__rm} -f /var/lib/rpm/log/*
- /usr/bin/db5.2_dump /var/lib/rpm/Packages | /usr/bin/db5.2_load /var/lib/rpm/Packages.downgraded
- %{__mv} -f /var/lib/rpm/Packages /var/lib/rpm/Packages.rpmsave
- %{__mv} -f /var/lib/rpm/Packages.downgraded /var/lib/rpm/Packages
- NEEDDBCONV="YES"
-fi
-if [ -x %{_rpmlibdir}/bin/rpmdb_checkversion ] && \
+if [ -e /var/lib/rpm/Packages ] && \
! %{_rpmlibdir}/bin/rpmdb_checkversion -h /var/lib/rpm -d /var/lib/rpm; then
- if [ ! -e /var/lib/rpm.rpmbackup-%{version}-%{release} ] && [ -x /bin/cp ] && \
+ if [ ! -e /var/lib/rpm.rpmbackup-%{version}-%{release} ] && \
/bin/cp -a /var/lib/rpm /var/lib/rpm.rpmbackup-%{version}-%{release}; then
echo
echo "Backup of the rpm database has been created in /var/lib/rpm.rpmbackup-%{version}-%{release}"
echo
fi
- NEEDDBCONV="YES"
+ echo
+ echo 'If poldek aborts after migration with rpmdb error, this is expected behaviour,'
+ echo 'you should ignore it and restart poldek'
+ echo
+ %{_rpmlibdir}/bin/dbupgrade.sh
fi
-if [ "x$NEEDDBCONV" = "xYES" ]; then
- echo 'If poldek aborts after migration with rpmdb error, this is "normal", you should ignore it'
-
- if [ -x %{_rpmlibdir}/bin/dbconvert ]; then
- if ! %{_rpmlibdir}/bin/dbconvert --rebuilddb; then
- echo
- echo "rpm database conversion failed!"
- echo "You have to run %{_rpmlibdir}/bin/dbconvert manually"
- echo
- fi
- fi
-fi
-endif
-
-%triggerpostun -- %{name} > 5.0.0-1, %{name} < 5.4.10-36
-:>/var/lib/rpm/need_rpmdb_downgrade
%triggerpostun -- %{name} < 4.4.9-44
%{_rpmlibdir}/hrmib-cache
%dir %{_rpmlibdir}/bin
%attr(755,root,root) %{_rpmlibdir}/bin/dbconvert
+%attr(755,root,root) %{_rpmlibdir}/bin/dbupgrade.sh
%attr(755,root,root) %{_rpmlibdir}/bin/rpmdb_checkversion
%attr(755,root,root) %{_rpmlibdir}/bin/rpmdb_reset