#! /bin/sh # $Id$ set -ex l="$*" [ -z "$l" ] && l="$(rpm -qla|perl -lne 'chomp;s/$/.rpmnew/;print if -f;')" for base in $l;do base=`echo $base|sed 's/[.]rpmnew$//'` test -f $base test -f $base.rpmnew test ! -f $base.orig test ! -f $base.rej if test ! -f $base-orig then cmp $base $base.rpmnew mv -f $base.rpmnew $base continue fi if diff -u $base-orig $base.rpmnew | patch -f $base then test ! -f $base.rej rm -f $base.orig mv -f $base.rpmnew $base-orig continue fi test -f $base.orig test -f $base.rej mv -f $base.orig $base rm -f $base.rej exit 1 done rpm -qac|perl -ne 'chomp;next if $_ eq "(contains no files)";next if m{^/var/lib/rpm/};next if ! -f $_;$o="$_-orig";next if -e $o;system "cp -i -p '\''$_'\'' '\''$o'\''" and die "$_: $!";' echo OK