Par défaut, lorsque l’on installe The Littlest JupyterHub, le kernel par défaut est un environnement Anaconda. Nous allons voir comment rajouter le kernel de Sagemath.
L’avantage d’avoir cet environnement est la facilité d’installer des outils à jours et cohérents, grâce à l’écosystème fourni pour Anaconda. Sagemath 9 enfin compatible avec la version 3 de python, le plus simple pour l’installer est d’utiliser anaconda lui-même.
Ouvrez une console via l’interface admin de votre jupyterhub, et écrivez les commandes suivantes:
sudo -E conda install mamba -c conda-forge sudo -E mamba create -n sage sage -c conda-forge
Cela crée un environnement sage
indépendant de celui par défaut (vous aurez donc deux kernels, un python3 utilisant l’environnement par défaut de conda, et l’autre sagemath).
Sagemath vient avec un kernel déjà configuré, reste à le rendre visible dans l’interface.
cd /opt/tljh/user/share/jupyter/kernels
Par défaut, seul python3
est présent.
sudo -E cp -R /opt/tljh/user/envs/sage/share/jupyter/kernels/sagemath .
Si on regarde le fichier kernel.json
s’y trouvant, on remarque qu’il exécute le programme /opt/tljh/user/envs/sage/bin/sage
.
kernel.json
via la clé env
. On obtient le fichier suivant: { "argv": [ "/opt/tljh/user/envs/sage/bin/sage", "--python", "-m", "sage.repl.ipython_kernel", "-f", "{connection_file}" ], "display_name": "SageMath 9.0", "language": "sage", "env": { "SAGE_ROOT": "/opt/tljh/user/envs/sage", "SAGE_LOCAL": "/opt/tljh/user/envs/sage" } }
On peut vérifier que le kernel apparaît bien ensuite.