# IT4Innovations # LK 2024 easyblock = 'PythonBundle' name = 'JupyterLab' version = '4.2.0' homepage = 'https://jupyter.org/' description = """JupyterLab is the next-generation user interface for Project Jupyter offering all the familiar building blocks of the classic Jupyter Notebook (notebook, terminal, text editor, file browser, rich outputs, etc.) in a flexible and powerful user interface. JupyterLab will eventually replace the classic Jupyter Notebook.""" toolchain = {'name': 'GCCcore', 'version': '13.2.0'} builddependencies = [ ('binutils', '2.40'), ('hatch-jupyter-builder', '0.9.1'), ] dependencies = [ ('Python', '3.11.5'), ('jupyter-server', '2.14.0'), ] use_pip = True sanity_pip_check = True exts_list = [ ('json5', '0.9.25', { 'checksums': ['548e41b9be043f9426776f05df8635a00fe06104ea51ed24b67f908856e151ae'], }), ('jupyterlab_server', '2.27.1', { 'checksums': ['097b5ac709b676c7284ac9c5e373f11930a561f52cd5a86e4fc7e5a9c8a8631d'], }), ('jupyter-lsp', '2.2.5', { 'checksums': ['793147a05ad446f809fd53ef1cd19a9f5256fd0a2d6b7ce943a982cb4f545001'], }), ('async-lru', '2.0.4', { 'checksums': ['b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627'], }), ('h11', '0.14.0', { 'checksums': ['8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d'], }), ('httpcore', '1.0.5', { 'checksums': ['34a38e2f9291467ee3b44e89dd52615370e152954ba21721378a87b2960f7a61'], }), ('httpx', '0.27.0', { 'checksums': ['a0cb88a46f32dc874e04ee956e4c2764aba2aa228f650b06788ba6bda2962ab5'], }), ('jupyterlab', version, { 'checksums': ['356e9205a6a2ab689c47c8fe4919dba6c076e376d03f26baadc05748c2435dd5'], }), ] sanity_check_paths = { 'files': ['bin/jupyter-lab', 'bin/jupyter-labextension', 'bin/jupyter-labhub'], 'dirs': ['etc/jupyter', 'share/jupyter'], } sanity_check_commands = ['jupyter lab --help'] modextrapaths = {'EB_ENV_JUPYTER_ROOT': ''} modextravars = { # only one path allowed as JUPYTERLAB_DIR 'JUPYTERLAB_DIR': '%(installdir)s/share/jupyter/lab', } # keep user's configuration in their home directory # note: '~' is not expanded by JupyterLab modluafooter = """ setenv("JUPYTERLAB_SETTINGS_DIR", pathJoin(os.getenv("HOME"), ".jupyter", "lab", "user-settings")) setenv("JUPYTERLAB_WORKSPACES_DIR", pathJoin(os.getenv("HOME"), ".jupyter", "lab", "workspaces")) """ modtclfooter = """ setenv JUPYTERLAB_SETTINGS_DIR "$::env(HOME)/.jupyter/lab/user-settings" setenv JUPYTERLAB_WORKSPACES_DIR "$::env(HOME)/.jupyter/lab/workspaces" """ moduleclass = 'tools'