Mercurial > codedump
annotate updatechromium.py @ 36:8e49e6662429
Add updatechromium.py
committer: GitHub <noreply@github.com>
| author | Paper <37962225+mrpapersonic@users.noreply.github.com> | 
|---|---|
| date | Mon, 21 Jun 2021 10:24:19 -0400 | 
| parents | |
| children | 310a73329fa4 | 
| rev | line source | 
|---|---|
| 36 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 1 # https://github.com/ungoogled-software/ungoogled-chromium-archlinux/ | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 2 import urllib.request | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 3 import os | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 4 import json | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 5 import sys | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 6 import subprocess | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 7 from tqdm import tqdm | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 8 | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 9 # Returns 0 if running, 1 if not running, and 2 if it doesn't exist | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 10 def check_for_file(file): | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 11 process = subprocess.Popen(["which", file], stdout=subprocess.DEVNULL, stderr=subprocess.STDOUT) | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 12 process.wait() | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 13 | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 14 if process.returncode == 0: | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 15 try: | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 16 subprocess.check_output(["pidof", file]) | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 17 return 0 | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 18 except: | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 19 return 1 | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 20 else: | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 21 return 2 | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 22 | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 23 class DownloadProgressBar(tqdm): | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 24 def update_to(self, b=1, bsize=1, tsize=None): | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 25 if tsize is not None: | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 26 self.total = tsize | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 27 self.update(b * bsize - self.n) | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 28 | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 29 | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 30 def download_url(url, output_path): | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 31 with DownloadProgressBar(unit='B', unit_scale=True, | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 32 miniters=1, desc=url.split('/')[-1]) as t: | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 33 urllib.request.urlretrieve(url, filename=output_path, reporthook=t.update_to) | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 34 | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 35 if check_for_file("chromium") == 0: | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 36 print("Chromium is still running! Exiting...") | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 37 sys.exit(1) | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 38 if check_for_file("zstd") == 2: | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 39 print("zstd not found! Exiting...") | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 40 sys.exit(1) | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 41 if check_for_file("tar") == 2: | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 42 print("tar not found! Exiting...") | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 43 sys.exit(1) | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 44 OWNER = "ungoogled-software" | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 45 REPO = "ungoogled-chromium-archlinux" | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 46 r = urllib.request.urlopen(f"https://api.github.com/repos/{OWNER}/{REPO}/releases") | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 47 json = json.loads(r.read()) | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 48 for i in json[0]["assets"]: | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 49 if i["content_type"] == "application/octet-stream": | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 50 download_url(f"{i['browser_download_url']}", "/tmp/chromium.tar.zst") | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 51 os.system("sudo pacman -U /tmp/chromium.tar.zst") | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 52 os.remove("/tmp/chromium.tar.zst") | 
| 
8e49e6662429
Add updatechromium.py
 Paper <37962225+mrpapersonic@users.noreply.github.com> parents: diff
changeset | 53 | 
