]> git.pld-linux.org Git - packages/rpm-build-tools.git/blobdiff - clean-distfiles.sh
do exact bcond match when reporting active bconds
[packages/rpm-build-tools.git] / clean-distfiles.sh
old mode 100644 (file)
new mode 100755 (executable)
index 8e7cea9..459f731
@@ -1,16 +1,33 @@
 #!/bin/sh
-# cleanup distfiles like files, i.e archives that can be likely be
+# cleanup distfiles-like files, i.e archives that can be likely be
 # re-downloaded.
+#
+# TODO:
+# - make it smarter:
+#   - consult .gitignore of each package first
+#   - do not clean NoSource files
+#   - do not clean proprietary License packages
+set -e
 
 # be sure we are in right dir
-dir=$(dirname "$0")
-cd "$dir"
+topdir="${1:-$(rpm -E %_topdir)}"
+topdir=$(readlink -f "$topdir")
+purgedir=$topdir/df-purge
 
-ext=bz2,gz,rar,tgz,tbz2,zip,jar,Z,tar,png,ico,xpm,gif,rpm,bin,run,exe,iso,xpi,ZIP,dll,pdf
-ls -ldrSh */*.{$ext}
+if [ -d "$purgedir" ]; then
+       echo >&2 "Previous pruge dir exists: $purgedir, remove it to resume"
+       exit 1
+fi
+
+cd "$topdir"
+
+ext=bz2,gz,rar,tgz,tbz2,zip,jar,Z,tar,png,ico,xpm,gif,rpm,bin,run,exe,iso,xpi,ZIP,dll,pdf,xz,deb,crx
+ls -ldrSh */*.{$ext} || :
 echo */*.{$ext} | xargs stat -c %s | awk '{s+=$1} END {printf("Total: %d MiB\n", s/1014/1024)}'
 
-echo remove? ctrl+c to abort
+echo Move to $purgedir? Hit Ctrl+C to abort
 read a
 
-rm -vf */*.{$ext}
+install -d $purgedir
+mv */*.{$ext} $purgedir
+rmdir $purgedir || :
This page took 0.147123 seconds and 4 git commands to generate.