From b5c2bd2504eb3b092561fca2d125a23eca5f105a Mon Sep 17 00:00:00 2001
From: Julian <julianteule@gmail.com>
Date: Mon, 16 Jan 2017 19:50:49 +0100
Subject: Added PPA script

---
 Scripts/JUUPPA.py | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)
 create mode 100644 Scripts/JUUPPA.py

diff --git a/Scripts/JUUPPA.py b/Scripts/JUUPPA.py
new file mode 100644
index 0000000..cc70ff5
--- /dev/null
+++ b/Scripts/JUUPPA.py
@@ -0,0 +1,52 @@
+import requests, bs4, re, os, sys
+
+def getPPA(link):
+    m = re.search('\/.(.*)\/\+archive\/\w*\/(.*)', link)
+    if m != None:
+        return m.group(1) + "/" + m.group(2)
+    else:
+        return "Sorry could not find PPA"
+
+res = requests.get("https://launchpad.net/ubuntu/+ppas?name_filter=" + sys.argv[1])
+
+
+soup = bs4.BeautifulSoup(res.text, "html.parser")
+
+element = soup.find("table", {"class" : "listing"})
+if element != None:
+    elements = element.find("tbody").find_all("tr")
+
+    count = len(elements)
+    results = []
+
+    print("Found", len(elements),"results:\n")
+    for item in reversed(elements):
+        count -= 1
+        name = item.find("td").find("a").string
+        PPA = getPPA(item.find("td").find("a")["href"])
+        sources = item.find_all("td")[-2].string
+        binaries = item.find_all("td")[-1].string
+
+        results.append((name, PPA, sources, binaries))
+
+        print("Option number", count)
+        print("Name :", name)
+        print("PPA :", PPA)
+        print("Sources :", sources)
+        print("Binaries :", binaries)
+        print("")
+        
+
+    print("Please select PPA", 0, "to", len(results))
+    index = int(input("Number: "))
+
+    print("Adding PPA", results[index-1][1], "with command 'sudo add-apt-repository ppa:" + results[index-1][1] + "'" + str(index-1))
+    os.system("sudo add-apt-repository ppa:" + results[index-1][1])
+
+    print("Updating packages")
+    os.system("sudo apt update")
+
+    print("Installing", "grub-customizer")
+    os.system("sudo apt install " + "grub-customizer")
+else:
+    print("No results where found for", sys.argv[1])
\ No newline at end of file
-- 
cgit v1.2.3