diff --git a/images/jupyterlab/jupyter-ompp-proxy/jupyter_ompp_proxy/__init__.py b/images/jupyterlab/jupyter-ompp-proxy/jupyter_ompp_proxy/__init__.py new file mode 100644 index 000000000..0c0cd4c28 --- /dev/null +++ b/images/jupyterlab/jupyter-ompp-proxy/jupyter_ompp_proxy/__init__.py @@ -0,0 +1,30 @@ +import os +import logging + +logger = logging.getLogger(__name__) +logger.setLevel("INFO") + +def setup_ompp(): + + def _get_cmd(): + + return [ + "bash", + "-c", + "/usr/local/bin/start-oms.sh >> /tmp/oms_logfile.log" + ] + + def _rewrite_response(response): + if 'Location' in response.headers: + response.headers['Location'] = response.headers['Location'].replace('/SASStudio', os.environ.get('NB_PREFIX') + '/sasstudio/SASStudio') + + return { + "command": _get_cmd, + "timeout": 60, + "port": 4040, + "launcher_entry": { + "title": "OpenM++", + "icon_path": os.path.join(os.getenv("OMPP_INSTALL_DIR", None), "html", "icons", "openmpp.svg"), + }, + "rewrite_response": _rewrite_response, + } diff --git a/images/jupyterlab/jupyter-ompp-proxy/setup.py b/images/jupyterlab/jupyter-ompp-proxy/setup.py new file mode 100644 index 000000000..1c071802a --- /dev/null +++ b/images/jupyterlab/jupyter-ompp-proxy/setup.py @@ -0,0 +1,23 @@ +import setuptools + +setuptools.setup( + name="jupyter-ompp-proxy", + version='0.0.1', + url="https://github.com/StatCan/jupyter-ompp-proxy", + author="Her Majesty The Queen In Right of Canada", + description="Jupyter extension to proxy OpenM++ webui", + packages=setuptools.find_packages(), + keywords=['SAS'], + classifiers=['Framework :: Jupyter'], + install_requires=[ + 'jupyter-server-proxy>=3.2.0' + ], + entry_points={ + 'jupyter_serverproxy_servers': [ + 'ompp = jupyter_ompp_proxy:setup_ompp' + ] + }, + # package_data={ + # 'jupyter_sasstudio_proxy': ['icons/sasstudio.svg'], + # }, +) diff --git a/images/jupyterlab/jupyterlab-overrides.json b/images/jupyterlab/jupyterlab-overrides.json new file mode 100644 index 000000000..4b2a1f770 --- /dev/null +++ b/images/jupyterlab/jupyterlab-overrides.json @@ -0,0 +1,5 @@ +{ + "@jupyterlab/notebook-extension:tracker" : { + "recordTiming": true + } +} diff --git a/images/jupyterlab/languagepacks.json b/images/jupyterlab/languagepacks.json new file mode 100644 index 000000000..8bc5d9bdc --- /dev/null +++ b/images/jupyterlab/languagepacks.json @@ -0,0 +1 @@ +{"fr":{"hash":"47a558d4f1fc711d563de8f2fc0d86d1","extensions":[{"extensionIdentifier":{"id":"ms-ceintl.vscode-language-pack-fr","uuid":"3851b234-107a-4b82-a50d-0414e166220d"},"version":"1.75.0"}],"translations":{"vscode":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/main.i18n.json","ms-vscode.js-debug":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/ms-vscode.js-debug.i18n.json","vscode.bat":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.bat.i18n.json","vscode.builtin-notebook-renderers":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.builtin-notebook-renderers.i18n.json","vscode.clojure":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.clojure.i18n.json","vscode.coffeescript":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.coffeescript.i18n.json","vscode.configuration-editing":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.configuration-editing.i18n.json","vscode.cpp":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.cpp.i18n.json","vscode.csharp":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.csharp.i18n.json","vscode.css-language-features":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.css-language-features.i18n.json","vscode.css":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.css.i18n.json","vscode.dart":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.dart.i18n.json","vscode.debug-auto-launch":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.debug-auto-launch.i18n.json","vscode.debug-server-ready":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.debug-server-ready.i18n.json","vscode.diff":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.diff.i18n.json","vscode.docker":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.docker.i18n.json","vscode.emmet":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.emmet.i18n.json","vscode.extension-editing":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.extension-editing.i18n.json","vscode.fsharp":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.fsharp.i18n.json","vscode.git-base":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.git-base.i18n.json","vscode.git":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.git.i18n.json","vscode.github-authentication":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.github-authentication.i18n.json","vscode.github":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.github.i18n.json","vscode.go":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.go.i18n.json","vscode.groovy":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.groovy.i18n.json","vscode.grunt":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.grunt.i18n.json","vscode.gulp":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.gulp.i18n.json","vscode.handlebars":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.handlebars.i18n.json","vscode.hlsl":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.hlsl.i18n.json","vscode.html-language-features":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.html-language-features.i18n.json","vscode.html":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.html.i18n.json","vscode.ini":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.ini.i18n.json","vscode.ipynb":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.ipynb.i18n.json","vscode.jake":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.jake.i18n.json","vscode.java":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.java.i18n.json","vscode.javascript":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.javascript.i18n.json","vscode.json-language-features":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.json-language-features.i18n.json","vscode.json":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.json.i18n.json","vscode.julia":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.julia.i18n.json","vscode.latex":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.latex.i18n.json","vscode.less":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.less.i18n.json","vscode.log":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.log.i18n.json","vscode.lua":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.lua.i18n.json","vscode.make":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.make.i18n.json","vscode.markdown-language-features":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.markdown-language-features.i18n.json","vscode.markdown-math":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.markdown-math.i18n.json","vscode.markdown":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.markdown.i18n.json","vscode.media-preview":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.media-preview.i18n.json","vscode.merge-conflict":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.merge-conflict.i18n.json","vscode.microsoft-authentication":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.microsoft-authentication.i18n.json","vscode.npm":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.npm.i18n.json","vscode.objective-c":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.objective-c.i18n.json","vscode.perl":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.perl.i18n.json","vscode.php-language-features":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.php-language-features.i18n.json","vscode.php":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.php.i18n.json","vscode.powershell":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.powershell.i18n.json","vscode.pug":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.pug.i18n.json","vscode.python":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.python.i18n.json","vscode.r":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.r.i18n.json","vscode.razor":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.razor.i18n.json","vscode.references-view":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.references-view.i18n.json","vscode.restructuredtext":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.restructuredtext.i18n.json","vscode.ruby":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.ruby.i18n.json","vscode.rust":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.rust.i18n.json","vscode.scss":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.scss.i18n.json","vscode.search-result":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.search-result.i18n.json","vscode.shaderlab":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.shaderlab.i18n.json","vscode.shellscript":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.shellscript.i18n.json","vscode.simple-browser":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.simple-browser.i18n.json","vscode.sql":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.sql.i18n.json","vscode.swift":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.swift.i18n.json","vscode.theme-abyss":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.theme-abyss.i18n.json","vscode.theme-defaults":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.theme-defaults.i18n.json","vscode.theme-kimbie-dark":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.theme-kimbie-dark.i18n.json","vscode.theme-monokai-dimmed":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.theme-monokai-dimmed.i18n.json","vscode.theme-monokai":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.theme-monokai.i18n.json","vscode.theme-quietlight":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.theme-quietlight.i18n.json","vscode.theme-red":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.theme-red.i18n.json","vscode.theme-solarized-dark":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.theme-solarized-dark.i18n.json","vscode.theme-solarized-light":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.theme-solarized-light.i18n.json","vscode.theme-tomorrow-night-blue":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.theme-tomorrow-night-blue.i18n.json","vscode.typescript-language-features":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.typescript-language-features.i18n.json","vscode.typescript":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.typescript.i18n.json","vscode.vb":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.vb.i18n.json","vscode.vscode-theme-seti":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.vscode-theme-seti.i18n.json","vscode.xml":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.xml.i18n.json","vscode.yaml":"/etc/share/code-server/extensions/ms-ceintl.vscode-language-pack-fr-1.75.0-universal/translations/extensions/vscode.yaml.i18n.json"},"label":"français"}} \ No newline at end of file diff --git a/images/jupyterlab/vscode-overrides.json b/images/jupyterlab/vscode-overrides.json new file mode 100644 index 000000000..d66e5c597 --- /dev/null +++ b/images/jupyterlab/vscode-overrides.json @@ -0,0 +1,3 @@ +{ + "workbench.colorTheme": "Default Dark Modern" +}