From 67408d5a36523e2b3c2a052742f41c44c801ef44 Mon Sep 17 00:00:00 2001
From: Bryan Joshua Pedini <bryan@pedini.dev>
Date: Tue, 28 Jan 2025 15:10:25 +0100
Subject: [PATCH] updated push.sh to automate every aspect of a new release

---
 push.sh | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/push.sh b/push.sh
index ea248af..981cf63 100755
--- a/push.sh
+++ b/push.sh
@@ -1,5 +1,43 @@
 #!/usr/bin/env bash
 
+# Get version
+if [ $# -eq 1 ]; then
+  pkgver="$1"
+else
+  read -p "Version: " pkgver
+fi
+# Check version
+pkgname=$(grep "pkgver=" PKGBUILD | sed 's/pkgver="//;s/"//')
+if [ "$pkgver" = "$oldver" ]; then
+  echo >/dev/stderr "Error: same (old) version specified - update aborted"
+  exit 1
+fi
+
+# Get variables from PKGBUILD
+url=$(grep "source=" PKGBUILD | sed 's/source=("//;s/")//')
+pkgname=$(grep "_pkgname=" PKGBUILD | sed 's/_pkgname="//;s/"//')
+# Perform variable substitution
+archive_url="${url//\$\{_pkgname\}/$pkgname}"
+archive_url="${archive_url//\$\{pkgver\}/$pkgver}"
+
+# Download archive
+wget -O $pkgname.tar.gz "$archive_url"
+# Calculate checksums
+sha1sum=$(sha1sum $pkgname.tar.gz | awk '{print $1}')
+sha256sum=$(sha256sum $pkgname.tar.gz | awk '{print $1}')
+md5sum=$(md5sum $pkgname.tar.gz | awk '{print $1}')
+# Yoink the archive - unnecessary anymore
+rm -f $pkgname.tar.gz
+
+# Update PKGBUILD with new values
+sed -i -E "s/^pkgver=\"[^\"]+\"/pkgver=\"$pkgver\"/" PKGBUILD
+sed -i -E "s/^sha1sums=\(\"[^\"]+\"\)/sha1sums=(\"$sha1sum\")/" PKGBUILD
+sed -i -E "s/^sha256sums=\(\"[^\"]+\"\)/sha256sums=(\"$sha256sum\")/" PKGBUILD
+sed -i -E "s/^md5sums=\(\"[^\"]+\"\)/md5sums=(\"$md5sum\")/" PKGBUILD
+
+# In case of fire, git commit, git push, leave building
+git add .
+git commit -m "Updated $pkgname to $pkgver"
 git remote add aur ssh://aur@aur.archlinux.org/pman-helper.git
 git push origin main
 git push aur main:master