* Fixed inverted generation issues with pottery option * Moved SRAM according to SRAM standard * Removed equitable algorithm * Upped TFH goal limit to 254 * Cuccos should no longer cause trap door rooms to not open * Added double click fix for install.py * Fix for pottery item palettes near bonkable torches * Fix for multiworld progression balancing would place Nothing or Arrow items
97 lines
2.5 KiB
Python
97 lines
2.5 KiB
Python
import common
|
|
import argparse
|
|
import os
|
|
import platform
|
|
import subprocess # do stuff at the shell level
|
|
|
|
env = common.prepare_env()
|
|
|
|
pip_requirements = os.path.join("..","resources","app","meta","manifests","pip_requirements.txt")
|
|
if not os.path.isfile(pip_requirements):
|
|
pip_requirements = os.path.join("..","..","..","resources","app","meta","manifests","pip_requirements.txt")
|
|
|
|
def run_install(PY_VERSION,USER):
|
|
# get executables
|
|
# python
|
|
# linux/windows: python
|
|
# macosx: python3
|
|
# pip
|
|
# linux/macosx: pip3
|
|
# windows: pip
|
|
PYTHON_PATH = env["PYTHON_EXE_PATH"]
|
|
PYTHON_EXECUTABLE = "python3" if "osx" in env["OS_NAME"] else "python"
|
|
PIP_PATH = env["PIP_EXE_PATH"]
|
|
PIP_EXECUTABLE = "pip" if "windows" in env["OS_NAME"] else "pip3"
|
|
PIP_EXECUTABLE = "pip" if "osx" in env["OS_NAME"] and "actions" in env["CI_SYSTEM"] else PIP_EXECUTABLE
|
|
|
|
if PY_VERSION == None:
|
|
PY_VERSION = 0
|
|
if USER == None:
|
|
USER = False
|
|
|
|
if float(PY_VERSION) > 0:
|
|
PYTHON_EXECUTABLE = "py"
|
|
PYTHON_PATH = env["PY_EXE_PATH"]
|
|
print("Installing to Python %.1f via Py Launcher" % float(PY_VERSION))
|
|
else:
|
|
print("Installing to Python %s" % platform.python_version())
|
|
print("Installing packages at %s level" % ("User" if USER else "Global"))
|
|
|
|
print()
|
|
print("Upgrading pip-")
|
|
# upgrade pip
|
|
args = [
|
|
PYTHON_PATH + PYTHON_EXECUTABLE,
|
|
'-' + str(PY_VERSION),
|
|
"-m",
|
|
"pip",
|
|
"install",
|
|
"--upgrade",
|
|
"--user",
|
|
"pip"
|
|
]
|
|
if not USER:
|
|
args.remove("--user")
|
|
if PY_VERSION == 0:
|
|
del args[1]
|
|
subprocess.check_call(args)
|
|
|
|
# if pip3, install wheel
|
|
if PIP_EXECUTABLE == "pip3":
|
|
print("Installing Wheel!")
|
|
args = [
|
|
PIP_PATH + PIP_EXECUTABLE,
|
|
"install",
|
|
"--user",
|
|
"-U",
|
|
"wheel"
|
|
]
|
|
if not USER:
|
|
args.remove("--user")
|
|
subprocess.check_call(args)
|
|
|
|
print()
|
|
# install listed dependencies
|
|
print("Installing dependencies")
|
|
print("-----------------------")
|
|
args = [
|
|
PIP_PATH + PIP_EXECUTABLE,
|
|
"install",
|
|
"--user",
|
|
"-r",
|
|
pip_requirements
|
|
]
|
|
if not USER:
|
|
args.remove("--user")
|
|
subprocess.check_call(args)
|
|
|
|
if __name__ == "__main__":
|
|
parser = argparse.ArgumentParser(add_help=False)
|
|
parser.add_argument('--py', default=0)
|
|
parser.add_argument('--user', default=False, action="store_true")
|
|
command_line_args = parser.parse_args()
|
|
PY_VERSION = vars(command_line_args)["py"]
|
|
USER = vars(command_line_args)["user"]
|
|
|
|
run_install(PY_VERSION,USER)
|