* Second attempt to fix lmod "module" for ipython ("fix2")

(dated: 2020-06-09).
  WIP: Prevent indefinite lengthening of sys.path but not complete
  fix yet.

  Sigs:
    # -rw------- 1 wpurwant users 1290 2020-06-09 19:28 lmod_python_fix2.py
    # e218a4ac73762e0380c4bbe2290906b1  lmod_python_fix2.py
master
Wirawan Purwanto 3 years ago
parent 5c0b516026
commit 232cc5cafb
  1. 13
      lmod/ipython/startup/lmod_python_fix.py

@ -9,8 +9,19 @@ from env_modules_python import module as lmod_module
def module(command, *arguments): def module(command, *arguments):
lmod_module(command, *arguments) lmod_module(command, *arguments)
sys.path = os.environ.get('PYTHONPATH').split(':') + sys.path # BAD: This will cause alteration of PYTHONPATH in a way that may not be desirable.
sys_path_orig = sys.path
PYTHONPATH = os.environ.get('PYTHONPATH')
sys_path_new = PYTHONPATH.split(':') if PYTHONPATH is not None else []
for p in sys_path_orig:
if p not in sys_path_new:
sys_path_new.append(p)
print(sys_path_new)
sys.path = sys_path_new
manual_ld_library_dir = os.environ.get('LMOD_MANUAL_LD_LIBRARY_PATH') manual_ld_library_dir = os.environ.get('LMOD_MANUAL_LD_LIBRARY_PATH')
if manual_ld_library_dir is None:
return
for search_path in os.getenv('LD_LIBRARY_PATH').split(':')[::-1]: for search_path in os.getenv('LD_LIBRARY_PATH').split(':')[::-1]:
if not os.path.isdir(search_path): if not os.path.isdir(search_path):

Loading…
Cancel
Save