mirror of
https://github.com/easydiffusion/easydiffusion.git
synced 2024-11-29 11:43:41 +01:00
90 lines
2.4 KiB
Python
90 lines
2.4 KiB
Python
import os
|
|
import platform
|
|
import subprocess
|
|
|
|
|
|
def configure_env(dir):
|
|
env_entries = {
|
|
"PATH": [
|
|
f"{dir}",
|
|
f"{dir}/bin",
|
|
f"{dir}/Library/bin",
|
|
f"{dir}/Scripts",
|
|
f"{dir}/usr/bin",
|
|
],
|
|
"PYTHONPATH": [
|
|
f"{dir}",
|
|
f"{dir}/lib/site-packages",
|
|
f"{dir}/lib/python3.10/site-packages",
|
|
],
|
|
"PYTHONHOME": [],
|
|
"PY_LIBS": [
|
|
f"{dir}/Scripts/Lib",
|
|
f"{dir}/Scripts/Lib/site-packages",
|
|
f"{dir}/lib",
|
|
f"{dir}/lib/python3.10/site-packages",
|
|
],
|
|
"PY_PIP": [f"{dir}/Scripts", f"{dir}/bin"],
|
|
}
|
|
|
|
if platform.system() == "Windows":
|
|
env_entries["PATH"].append("C:/Windows/System32")
|
|
env_entries["PATH"].append("C:/Windows/System32/wbem")
|
|
env_entries["PYTHONNOUSERSITE"] = ["1"]
|
|
env_entries["PYTHON"] = [f"{dir}/python"]
|
|
env_entries["GIT"] = [f"{dir}/Library/bin/git"]
|
|
else:
|
|
env_entries["PATH"].append("/bin")
|
|
env_entries["PATH"].append("/usr/bin")
|
|
env_entries["PATH"].append("/usr/sbin")
|
|
env_entries["PYTHONNOUSERSITE"] = ["y"]
|
|
env_entries["PYTHON"] = [f"{dir}/bin/python"]
|
|
env_entries["GIT"] = [f"{dir}/bin/git"]
|
|
|
|
env = {}
|
|
for key, paths in env_entries.items():
|
|
paths = [p.replace("/", os.path.sep) for p in paths]
|
|
paths = os.pathsep.join(paths)
|
|
|
|
os.environ[key] = paths
|
|
|
|
return env
|
|
|
|
|
|
def print_env_info():
|
|
which_cmd = "where" if platform.system() == "Windows" else "which"
|
|
|
|
def run(cmd):
|
|
with subprocess.Popen(cmd, shell=True) as p:
|
|
p.wait()
|
|
|
|
run([which_cmd, "git"])
|
|
run(["git", "--version"])
|
|
run([which_cmd, "python"])
|
|
run(["python", "--version"])
|
|
|
|
print(f"PATH={os.environ['PATH']}")
|
|
|
|
if platform.system() == "Windows":
|
|
print(f"COMSPEC={os.environ['COMSPEC']}")
|
|
print("")
|
|
run("wmic path win32_VideoController get name,AdapterRAM,DriverDate,DriverVersion".split(" "))
|
|
|
|
print(f"PYTHONPATH={os.environ['PYTHONPATH']}")
|
|
print("")
|
|
|
|
|
|
def open_dev_shell():
|
|
if platform.system() == "Windows":
|
|
subprocess.Popen("cmd", shell=True).communicate()
|
|
else:
|
|
subprocess.Popen("bash", shell=True).communicate()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
env_dir = os.path.abspath(os.path.join("webui", "system"))
|
|
|
|
configure_env(env_dir)
|
|
print_env_info()
|
|
open_dev_shell()
|