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 diff --git a/update-gitea.pl b/update-gitea.pl index 9a8fc6c..7306597 100755 --- a/update-gitea.pl +++ b/update-gitea.pl @@ -33,7 +33,8 @@ unless ( defined $gitea_current_version_string ) { } my $gitea_current_version; -if ( $gitea_current_version_string =~ m/ion\ (\d+\.\d+\.\d*)\s/ ) { +if ( $gitea_current_version_string =~ m/ion\ (\d+\.\d+\.\d*)\s+b/ ) { +#if ( $gitea_current_version_string =~ m/ion\ (\d+\.\d+\.\d*)\s/ ) { $gitea_current_version = $1; printf("Current version of gitea that is installed is $1\n"); } @@ -52,6 +53,22 @@ unless ( defined $gitea_current_version ) { } # Backup the current binary +my $gitea_bin_backup = '/home/gitea/bin/gitea.' . $gitea_current_version . '.bz2'; +printf("Gitea bin backup will be $gitea_bin_backup\n"); +printf("!! Input is $gitea_bin\n and output is $gitea_bin_backup\n"); + +=example +# IO::File mode +print($z $string); +printf($z $format, $string); +close($z); +=cut + +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"; + backup_bin( \%binary_file ); my $baseURL = q{https://github.com/go-gitea/gitea/};