aboutsummaryrefslogtreecommitdiff
path: root/update.py
diff options
context:
space:
mode:
authorAlexander Hayden <alexhayden25@gmail.com>2018-11-09 20:38:13 -0500
committerAlexander Hayden <alexhayden25@gmail.com>2018-11-09 20:38:13 -0500
commit0ae30d1679e12642e7bc73dcc2df078c27644366 (patch)
tree1257954cb9fd83adc44c466b4a63533f60cf5a70 /update.py
downloadmodpackman-0ae30d1679e12642e7bc73dcc2df078c27644366.tar.gz
modpackman-0ae30d1679e12642e7bc73dcc2df078c27644366.zip
Initial Commit
Diffstat (limited to 'update.py')
-rwxr-xr-xupdate.py39
1 files changed, 39 insertions, 0 deletions
diff --git a/update.py b/update.py
new file mode 100755
index 0000000..11c6b4c
--- /dev/null
+++ b/update.py
@@ -0,0 +1,39 @@
+#!/bin/python3
+
+from urllib.request import urlretrieve
+from os import listdir, remove
+from shutil import rmtree
+
+INSTALL_DIR = ""
+with open("pack-location.txt", "r") as f:
+ INSTALL_DIR = f.read().strip()
+
+DOWNLOADS = []
+NAMES = set()
+FILES = listdir(INSTALL_DIR)
+
+with open("downloads.txt", "r") as f:
+ for line in f:
+ dl = line.strip().split(" ")
+ if len(line) > 3 and len(dl) == 2 and line[0] != '#':
+ dl[0] = dl[0].strip()
+ dl[1] = dl[1].strip()
+ DOWNLOADS.append(dl)
+ NAMES.add(dl[0])
+
+print("Updating pack...")
+for mod in DOWNLOADS:
+ if mod[0] in FILES:
+ print("Skipping " + mod[0] + ", already up-to-date")
+ else:
+ print("Installing " + mod[0] + " from " + mod[1] + "...")
+ urlretrieve(mod[1], INSTALL_DIR + "/" + mod[0])
+ print("Done!")
+
+print("\nRemoving old versions...")
+for jar in FILES:
+ if jar not in NAMES and jar[-4:] == ".jar":
+ remove(INSTALL_DIR + "/" + jar)
+ print("Removing '" + jar + "'")
+
+print("\nFinished updating pack!")