Skip to content

vub-hpc/jupyter-lmod

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jupyter Lmod

Jupyter interactive notebook server extension that allows user to interact with environment modules before launching kernels. The extension use Lmod's Python interface to accomplish module related task like loading, unloading, saving collection, etc.

requirements

If jupyter-server-proxy and jupyterlab-server-proxy are detected, jupyter-lmod will add the proxy server launchers to JupyterLab UI when modules with matching names are loaded.

setup

install

pip install jupyterlmod

Disable jupyter-server-proxy notebook and lab extensions

To avoid having items in the launcher that cannot be launched because the binaries location are not in PATH, jupyter-lmod hides launcher items that do not have a corresponding loaded module. jupyter-server-proxy notebook and lab extension always display the launcher item. To avoid a situation where an item would be shown twice, we recommend disabling jupyter-server-proxy notebook and lab extensions.

This can be done with the following command for notebook:

jupyter nbextension disable --py jupyter_server_proxy --sys-prefix

and with the following commands for jupyterlab:

jupyter labextension disable @jupyterlab/server-proxy
jupyter labextension disable jupyterlab-server-proxy

Pinning launcher items

If server proxies do not have a corresponding modules, or you wish to have their launcher items displayed regardless of the loaded modules, you can define a list of items that will be pinned in the Jupyter notebook configuration file, like this:

c.Lmod.launcher_pins = ['Desktop', 'RStudio']

demo

Jupyter notebook demo

JupyterLab demo

develop

requirements

  • pip >= 23
  • build
  • nodejs >= 18.x

build

  • wheel and tarball:
    pyproject-build
  • labextension
    cd jupyterlab
    npm install
    npm run build
    # To install extension in jupyterlab in develop mode:
    npm run install:extension

About

Jupyter plugin that provides a tab for TACC Lmod (https://github.com/TACC/Lmod)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 34.3%
  • Python 22.6%
  • CSS 22.1%
  • TypeScript 21.0%