* Modify the custom Python kernel
- to activate the custom environment
- for the respective Jupyter Notebook and Jupyter Console
Signed-off-by: Ayaz Salikhov <mathbunnyru@gmail.com>
* Add DL3059 to hadolint ignore list
Signed-off-by: Ayaz Salikhov <mathbunnyru@gmail.com>
* Move hadolint ignore to a single line
* Use python heredoc
* Remove unused print
* Fix style
* Do not hardcode CONDA_DIR
* Update custom_environment.dockerfile
* Use indent=1
* Implement activate_notebook_custom_env.py as a separate script
* Do not call Python manually
---------
Signed-off-by: Ayaz Salikhov <mathbunnyru@gmail.com>
Co-authored-by: Olivier Benz <olivier.benz@b-data.ch>
* Automatically install latest julia version
* Better text
* Fix
* Fix
* Update setup-julia.bash
* Install plumbum
* Better docs
* Better docs
* Use subprocess.check_call instead of plumbum
* Do not use dash in python filename
* Remove plumbum from the image
* Remove jq from the image
* Remove setup-julia.bash file
* Fix file name
* Fix docstring
* Fix conda hook to work in both terminal and Jupyter Notebook
* Fix hook for Jupyter Terminals
* Rename startup hook to have order of precedence
* Try to increase sleep
* Comment making env_name default in custom_environment
* Specify multiple architectures for Julia to precompile to
For amd64 (x86_64), we should specify what specific targets the
precompilation should be done for. If we don't specify it,
it's *only* done for the target of the host doing the compilation.
When the container runs on a host that's still x86_64, but
a *different* generation of CPU than what the build host was, the
precompilation is useless and Julia takes a long long time to start
up. This specific multitarget comes from
https://docs.julialang.org/en/v1/devdocs/sysimg/#Specifying-multiple-system-image-targets,
and is the same set of options that the official Julia x86_64 build is
compiled with. If the architecture the container runs on is
different, precompilation may still have to be re-done on first
startup - but this *should* catch most of the issues.
h/t to
https://discourse.julialang.org/t/is-it-possible-to-make-precompilation-portable-for-docker-images-built-with-a-different-cpu/95913
which helped point me towards `JULIA_CPU_TARGET`.
Fixes https://github.com/jupyter/docker-stacks/issues/2015 for more information
* Fix bash syntax issue
* Add JULIA_CPU_TARGET for aarch64 as well
- Don't need `export` as this is only used within this
script
- Steal from upstream what should be setup for aarch64
* Re-add export for JULIA_CPU_TARGET
Quietens pre-commit