From e6670fce608c250efe2b320ef72a1454267a88e0 Mon Sep 17 00:00:00 2001 From: Joel Grunbaum <joelgrun@gmail.com> Date: Fri, 16 Oct 2020 00:16:10 +0000 Subject: [PATCH] added remove option to remove official packages --- main.sh | 25 +++++++++++++++++++------ 1 files changed, 19 insertions(+), 6 deletions(-) diff --git a/main.sh b/main.sh index 6438552..1317507 100755 --- a/main.sh +++ b/main.sh @@ -205,13 +205,26 @@ } #Remove a package from the build list and repository -# Usage remove [package name] +#Usage of -a removes all packages moved to official repos +# Usage remove [-a|package name] function remove { - for i in $@; do - rm -rf $BUILDDIR/$i - repo-remove $REPODIR/$REPONAME.db.tar.$([ -n "$COMPRESSION" ] || echo $COMPRESSION && echo zst) $i - rm -f $REPODIR/*$i* - done + if [[ "$1" == "-a" ]]; then + rmlist="" + rmlist="$rmlist $(comm -12 <(pacman -Slq $REPONAME | sort) <(pacman -Slq core | sort) | tr '\n' ' ')" + rmlist="$rmlist $(comm -12 <(pacman -Slq $REPONAME | sort) <(pacman -Slq extra | sort) | tr '\n' ' ')" + rmlist="$rmlist $(comm -12 <(pacman -Slq $REPONAME | sort) <(pacman -Slq community | sort) | tr '\n' ' ')" + for i in $rmlist; do + rm -rf $BUILDDIR/$i + repo-remove $([[ "$SIGN" == "Y" ]] && echo "--sign --key $KEY") $REPODIR/$REPONAME.db.tar.$([ -n "$COMPRESSION" ] || echo $COMPRESSION && echo zst) $i + rm -f $REPODIR/*$i* + done + else + for i in $@; do + rm -rf $BUILDDIR/$i + repo-remove $([[ "$SIGN" == "Y" ]] && echo "--sign --key $KEY") $REPODIR/$REPONAME.db.tar.$([ -n "$COMPRESSION" ] || echo $COMPRESSION && echo zst) $i + rm -f $REPODIR/*$i* + done + fi } #Check config and create build folders -- Gitblit v1.9.3