From ac0efd1bd6c703147bd8d3caedf489fab87d6131 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 6 Jun 2020 16:22:04 +0100 Subject: big rewrite : split the backend in smaller pieces, rework the cli frontend to work with the new backend ... gui frontend wip --- src/backend/check.py | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 src/backend/check.py (limited to 'src/backend/check.py') diff --git a/src/backend/check.py b/src/backend/check.py new file mode 100644 index 0000000..eb786aa --- /dev/null +++ b/src/backend/check.py @@ -0,0 +1,49 @@ +#!/usr/bin/python3 + +import os +import sys +import subprocess + +gentooEbuildDir = '/usr/ports/gentoo' +redcoreEbuildDir = '/usr/ports/redcore' + +def root(): + if not os.getuid() == 0: + sys.exit("\nYou need root permissions to do this, exiting!\n") + +def portage(): + os.chdir(gentooEbuildDir) + needsPortageSync = int() + + localBranch = subprocess.check_output(['git', 'rev-parse', '--abbrev-ref', 'HEAD']) + localHash = subprocess.check_output(['git', 'rev-parse', '@']) + remoteHash = subprocess.check_output(['git', 'rev-parse', '@{u}']) + + gitExec = subprocess.Popen(['git', 'fetch', '--depth=1', 'origin'] + localBranch.decode().strip().split() + ['--quiet'], stdout=subprocess.PIPE) + + if not localHash.decode().strip() == remoteHash.decode().strip(): + needsPortageSync = int(1) + + gitExec.wait() + return needsPortageSync + +def overlay(): + os.chdir(redcoreEbuildDir) + needsOverlaySync = int() + + localBranch = subprocess.check_output(['git', 'rev-parse', '--abbrev-ref', 'HEAD']) + localHash = subprocess.check_output(['git', 'rev-parse', '@']) + remoteHash = subprocess.check_output(['git', 'rev-parse', '@{u}']) + + gitExec = subprocess.Popen(['git', 'fetch', '--depth=1', 'origin'] + localBranch.decode().strip().split() + ['--quiet'], stdout=subprocess.PIPE) + + if not localHash.decode().strip() == remoteHash.decode().strip(): + needsOverlaySync = int(1) + + gitExec.wait() + return needsOverlaySync + +def update(): + portage() + overlay() + -- cgit v1.2.3