diff options
Diffstat (limited to 'build_tools/bin/repo-cleanup.sh')
-rwxr-xr-x | build_tools/bin/repo-cleanup.sh | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/build_tools/bin/repo-cleanup.sh b/build_tools/bin/repo-cleanup.sh new file mode 100755 index 0000000..bb4c369 --- /dev/null +++ b/build_tools/bin/repo-cleanup.sh @@ -0,0 +1,28 @@ +#!/bin/bash +currentrepo=$1 +echo $currentrepo +if [ x$currentrepo = "x" ] +then + echo "./repo_cleanup.sh $repo [core,core-testing,extra,extra-testing]" + exit 1 +fi +REPO=/data/pkg_repo/i686/$currentrepo +pacman -Sl $repo |cut -d" " -f 2- |tr " " - > /tmp/$currentrepo-list +cd $REPO >/dev/null +ls *-i686.pkg.tar.gz|sed -e "s/-i686.pkg.tar.gz//" > /tmp/pkglist-$currentrepo +cd - > /dev/null +if [ ! -e /tmp/$currentrepo_dups ] +then + mkdir /tmp/$currentrepo_dups/ +fi +while read LINE +do +# echo $LINE + grep -q $LINE /tmp/$currentrepo-list + if [ $? = 1 ] + then + echo "removing file $LINE" + mv $REPO/$LINE-i686.pkg.tar.gz /tmp/$currentrepo_dups/ + fi +done < /tmp/pkglist-$currentrepo + |