From a7de1d6a5c60d23540f5bc00f69d11edc51c2a15 Mon Sep 17 00:00:00 2001 From: Tracey Clark Date: Fri, 15 Mar 2019 14:47:07 -0500 Subject: [PATCH 1/2] Fixed regex for getting current version --- update-gitea.pl | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/update-gitea.pl b/update-gitea.pl index 873641d..bf9d396 100644 --- a/update-gitea.pl +++ b/update-gitea.pl @@ -42,7 +42,7 @@ $VAR1 = { my $gitea_bin = '/home/gitea/bin/gitea'; my $gitea_current_version_string = `$gitea_bin --version`; my $gitea_current_version; -if ( $gitea_current_version_string =~ m/ion\ (\w+)\ b/ ) { +if ( $gitea_current_version_string =~ m/ion\ (\d+\.\d+\.\d*)\s+b/ ) { $gitea_current_version = $1; } printf("The version of gitea that is running is \"$gitea_current_version\"\n"); @@ -63,6 +63,10 @@ my $input = $gitea_bin; my $temp_out = '/home/gitea/tempout.bz'; my $bz = new IO::Compress::Bzip2 $temp_out or die "bzip2 failed: $Bzip2Error\n"; + +# bzip2 $input => "$temp_out" +# or die "bzip2 failed: $Bzip2Error\n"; # This only writes the filepath to the output + # bzip2 $input => "$gitea_bin_backup" # or die "bzip2 failed: $Bzip2Error\n"; # This works, but writes garbage to end of filename # need to do in OO way From b8f5daa778eeca4da0013ddd62eed51011661450 Mon Sep 17 00:00:00 2001 From: Tracey Clark Date: Fri, 29 Mar 2019 08:55:30 -0500 Subject: [PATCH 2/2] Added checkPPAs script which checks PPAs for how many things installed from and if the source is still available --- checkPPAs.sh | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100755 checkPPAs.sh diff --git a/checkPPAs.sh b/checkPPAs.sh new file mode 100755 index 0000000..2fd3797 --- /dev/null +++ b/checkPPAs.sh @@ -0,0 +1,31 @@ +#!/usr/bin/env bash +for f in /etc/apt/sources.list.d/*.list; do + grep -Po "(?<=^deb\s).*?(?=#|$)" "$f" | while read -r ENTRY ; do + echo "ENTRY: $ENTRY" + HOST=$(cut -d/ -f3 <<< "$ENTRY") + + if [ "ppa.launchpad.net" = "$HOST" ]; then + USER=$(cut -d/ -f4 <<< "$ENTRY") + PPA=$(cut -d/ -f5 <<< "$ENTRY") + packageCount=$(awk '$1=="Package:" {if (a[$2]++ == 0) {system("dpkg -l "$2)}}' /var/lib/apt/lists/*"$USER"*"$PPA"*Packages 2>/dev/null | awk '/^ii/' | wc -l) + echo "PPA: ppa:$USER/$PPA" + echo "FILENAME: $f" + echo "$packageCount package(s) installed" + if [ "$packageCount" -eq 0 ] && [ "$1" == "--delete" ]; then + sudo rm "$f" && echo "$f deleted" + fi + echo + else + USER=$(cut -d/ -f3 <<< "$ENTRY") + PPA=$(cut -d/ -f4 <<< "$ENTRY") + packageCount=$(awk '$1=="Package:" {if (a[$2]++ == 0) {system("dpkg -l "$2)}}' /var/lib/apt/lists/*"$USER"*Packages 2>/dev/null | awk '/^ii/' | wc -l) + echo "REPOSITORY: $USER/$PPA" + echo "FILENAME: $f" + echo "$packageCount package(s) installed" + if [ "$packageCount" -eq 0 ] && [ "$1" == "--delete" ]; then + sudo rm "$f" && echo "$f deleted" + fi + echo + fi + done +done