diff options
author | Owl <isaclien9752@gmail.com> | 2025-08-26 19:49:28 -0400 |
---|---|---|
committer | Owl <isaclien9752@gmail.com> | 2025-08-26 19:49:28 -0400 |
commit | a2ffb5ad9cb86a86a7fe92d258c893f982cf84c0 (patch) | |
tree | f95ae420de177ee70fea13cf1da2b3867dbb0688 /required_modules.py | |
parent | 2119dafbffb9a948ae90ebbcbf3c1448f2395f29 (diff) | |
download | blenxy-a2ffb5ad9cb86a86a7fe92d258c893f982cf84c0.tar.gz blenxy-a2ffb5ad9cb86a86a7fe92d258c893f982cf84c0.zip |
more robust module checking/updating
Diffstat (limited to 'required_modules.py')
-rw-r--r-- | required_modules.py | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/required_modules.py b/required_modules.py deleted file mode 100644 index 5eb1604..0000000 --- a/required_modules.py +++ /dev/null @@ -1,51 +0,0 @@ -import bpy, numpy, subprocess -from . import file_ops - -# register func -@bpy.app.handlers.persistent -def register(dummy): - # get python's binary path (literally my saviour) - py_bin = bpy.app.binary_path_python - pip_install = [py_bin, "-B", "-m", "pip", "install", - "--trusted-host", "pypi.python.org", - "--trusted-host", "files.pythonhosted.org", - "--trusted-host", "pypi.org", - "-U", "--force-reinstall", "--only-binary", ":all:"] - upd_mods = ["pip", "wheel", "setuptools"] - new_mods = ["lxml"] - - # try importing pip/lxml to trigger - # the module updating on failure - try: - import pip - import lxml - except: - # hecking install pip (ensurepip) + required modules - subprocess.run([py_bin, "-B", "-m", "ensurepip"]) - # update basic modules then download new modules - subprocess.run(pip_install + upd_mods) - subprocess.run(pip_install + new_mods) - # rename numpy's installation folder (cannot delete the folder in windows) - file_ops.rename(numpy.__path__[0], numpy.__path__[0] + "_bad") - subprocess.run(pip_install + ["numpy==1.18.5"]) # install a newer version - print("First exit!") - bpy.ops.wm.quit_blender() - exit(0) - - # print module's versions installed - print("pip %s is installed!" % (pip.__version__)) - print("lxml %s is installed!" % (lxml.__version__)) - # for those who have installed blenxy before, update numpy - # hacky way to do it but it is the only way that works - if (numpy.__version__ != "1.18.5"): - # rename numpy's installation folder (cannot delete the folder in windows) - file_ops.rename(numpy.__path__[0], numpy.__path__[0] + "_bad") - subprocess.run(pip_install + ["numpy==1.18.5"]) # install a newer version - print("Second exit!") - bpy.ops.wm.quit_blender() - exit(0) - print("numpy %s is installed!" % (numpy.__version__)) - -# unregister func -def unregister(): - return |