diff options
Diffstat (limited to 'src/backend/uninstall.py')
-rw-r--r-- | src/backend/uninstall.py | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/backend/uninstall.py b/src/backend/uninstall.py index 8da7e79..9d76067 100644 --- a/src/backend/uninstall.py +++ b/src/backend/uninstall.py @@ -1,9 +1,12 @@ #!/usr/bin/python3 +import atexit +import io import subprocess +import sys import sisyphus.check import sisyphus.database -import sys +import sisyphus.killportage def start(pkgname): if sisyphus.check.root(): @@ -12,3 +15,14 @@ def start(pkgname): sisyphus.database.syncLocal() else: sys.exit("\nYou need root permissions to do this, exiting!\n") + +def startqt(pkgname): + portageExec = subprocess.Popen(['emerge', '--depclean'] + pkgname, stdout=subprocess.PIPE) + # kill portage if the program dies or it's terminated by the user + atexit.register(sisyphus.killportage.start, portageExec) + + for portageOutput in io.TextIOWrapper(portageExec.stdout, encoding="utf-8"): + print(portageOutput.rstrip()) + + portageExec.wait() + sisyphus.database.syncLocal() |