diff options
Diffstat (limited to 'linhes')
-rw-r--r-- | linhes/linhes-dev/PKGBUILD | 5 | ||||
-rwxr-xr-x | linhes/linhes-dev/chk_aur_pkg.py | 79 |
2 files changed, 82 insertions, 2 deletions
diff --git a/linhes/linhes-dev/PKGBUILD b/linhes/linhes-dev/PKGBUILD index 3c6287e..88d34b9 100644 --- a/linhes/linhes-dev/PKGBUILD +++ b/linhes/linhes-dev/PKGBUILD @@ -1,14 +1,15 @@ pkgname=linhes-dev pkgver=9.0.0 -pkgrel=9 +pkgrel=10 pkgdesc="Scripts to develop LinHES" arch=('x86_64') license=('GPL2') depends=('clean-chroot-manager' 'git' 'pacman-contrib' 'package-query' 'pigz' 'python-gitpython' 'rclone' 'yaah') url="http://linhes.org/" -source=('lh_sync.sh' 'mp.py' 'lh_setup_dev.sh' 'lh_update_db_repo.sh') +source=('lh_sync.sh' 'chk_aur_pkg.py' 'mp.py' 'lh_setup_dev.sh' 'lh_update_db_repo.sh') sha256sums=('3a64b4125b56c6f95cc9dc85ce58ebd1c0612b22fb27c3e76d4d9a5570f2d61e' + '864192e9fe627c5a85d4c33ba30df7c870783a450f5fea7c550dd9490d48f2ab' 'ae515d0ef707daf5565b828b5e16e3812bcbe5060754ad06f783173b3fa1dedd' '24310eb2e957d2ac56739ca8286fcf8bd87776f0daa1f7e7bc67d7e39018e8db' '86c9ebe77228f7e3cc07cb05f480e5584e0e3cad1b889b63a50821f7323bf449') diff --git a/linhes/linhes-dev/chk_aur_pkg.py b/linhes/linhes-dev/chk_aur_pkg.py new file mode 100755 index 0000000..6dc7fa5 --- /dev/null +++ b/linhes/linhes-dev/chk_aur_pkg.py @@ -0,0 +1,79 @@ +#!/usr/bin/python +#Checks the aur version and compares it to the /data/dev/linhes_pkgbuild/linhes directory. + + +import os,sys +import shutil +import urllib.request, urllib.error, urllib.parse +import re +import subprocess +import glob + +def getArchVer(): + try: + archVer = subprocess.check_output(["package-query", "-A", "-i", "-f %v", "--nocolor", currDirName]) + archVer = archVer.strip().decode('utf-8') + return archVer + except: + return "None" + +def getLHVer(): + pkgfile = currDir + "/PKGBUILD" + if not os.path.isfile(pkgfile): + print(currDirName + " version in LH PKGBUILD is: Unknown") + print(" Can't find",pkgfile) + #sys.exit(2) + else: + LHVer="" + variables=["pkgbase", "pkgname", "pkgver", "pkgrel", "epoch"] + # Loop over contents to get our variables + # Use bash to do it because PKGBUILDs are very loose with their format + for item in variables: + v = subprocess.Popen(['/bin/bash','-c', 'source ' + + pkgfile + + '; echo ${' + item + '[@]}'], + stdout = subprocess.PIPE,) + value = v.communicate()[0].strip(b'\n') + value = value.decode('utf-8') + if item == "pkgbase": + pkgbase = value + elif item == "pkgname": + pkgname = value + pkglist = list(value.split()) + elif item == "epoch": + if value: + epoch = "%s:" %value + LHVer=epoch + elif item == "pkgver": + pkgver = value + elif item == "pkgrel": + pkgrel = value + LHVer=LHVer + pkgver + "-" + pkgrel + return LHVer +# print(currDirName + " version in LH PKGBUILD is: " + LHVer) + +def main(): + global currDirName + global currDir + + LHdir="/data/dev/linhes_pkgbuild/linhes/*" + + for currDir in glob.glob(LHdir): + if os.path.isdir(currDir): + currDirName = os.path.basename(currDir) + if currDirName == "mythtv": + continue + archVer = getArchVer() + if archVer == "None": + continue + #print("Searching for " + currDirName + " on archlinux.org...") + #print("AUR:",archVer) + LHVer = getLHVer() + #print("LH:",LHVer) + if archVer != LHVer: + print(currDirName,"needs update: [AUR]:",archVer,"[LH]:",LHVer) + +if __name__ == "__main__": + print("--------------------------") + main() + print("--------------------------") |