diff --git a/README.md b/README.md index cae8d02..0996a8a 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in 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. -**Shipped version:** 4.0.2~ynh1 +**Shipped version:** 4.0.2~ynh2 **Demo:** https://mybinder.org/v2/gh/jupyterlab/jupyterlab-demo/master?urlpath=lab/tree/demo diff --git a/README_fr.md b/README_fr.md index 2f1ecbb..c871c1e 100644 --- a/README_fr.md +++ b/README_fr.md @@ -19,7 +19,7 @@ Si vous n’avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) po 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. -**Version incluse :** 4.0.2~ynh1 +**Version incluse :** 4.0.2~ynh2 **Démo :** https://mybinder.org/v2/gh/jupyterlab/jupyterlab-demo/master?urlpath=lab/tree/demo diff --git a/conf/systemd.service b/conf/systemd.service index a6c56ff..e6fbc31 100644 --- a/conf/systemd.service +++ b/conf/systemd.service @@ -8,8 +8,8 @@ User=root WorkingDirectory=__FINALPATH__/ Environment="LC_ALL=C.UTF-8" Environment="LANG=C.UTF-8" -Environment="__YNH_NODE_LOAD_PATH__:__FINALPATH__/.venv/bin" -ExecStart=__FINALPATH__/.venv/bin/jupyterhub -f __FINALPATH__/config/jupyterhub_config.py --upgrade-db +Environment="__YNH_NODE_LOAD_PATH__:__FINALPATH__/venv/bin" +ExecStart=__FINALPATH__/venv/bin/jupyterhub -f __FINALPATH__/config/jupyterhub_config.py --upgrade-db Restart=always RestartSec=10 diff --git a/manifest.json b/manifest.json index bffcca9..770e14a 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Code console environment for running Python code interactively", "fr": "Console de code pour exécuter du code Python de manière interactive" }, - "version": "4.0.2~ynh1", + "version": "4.0.2~ynh2", "url": "https://jupyter.org", "upstream": { "license": "BSD-3-Clause", diff --git a/scripts/_common.sh b/scripts/_common.sh index b067b0a..41ddd3c 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -5,7 +5,7 @@ #================================================= # dependencies used by the app -pkg_dependencies="python3-dev python3-pip" +pkg_dependencies="python3-dev python3-pip python3-venv" nodejs_version="18" diff --git a/scripts/install b/scripts/install index f9a19d9..a660ea3 100644 --- a/scripts/install +++ b/scripts/install @@ -99,8 +99,9 @@ ynh_app_setting_set --app=$app --key=final_path --value=$final_path mkdir -p "$final_path" pushd $final_path - mkdir -p .venv - PIPENV_VENV_IN_PROJECT="enabled" PIPENV_SKIP_LOCK=true ynh_exec_warn_less python3 -m pipenv install jupyterlab==$jupyterlab_version jupyterhub notebook jupyterhub-ldapauthenticator pyzmq jupyterlab-language-pack-fr-FR + python3 -m venv $final_path/venv + source $final_path/venv/bin/activate + ynh_exec_warn_less pip install jupyterlab==$jupyterlab_version jupyterhub jupyter_collaboration notebook jupyterhub-ldapauthenticator pyzmq jupyterlab-language-pack-fr-FR popd #================================================= @@ -116,7 +117,7 @@ ynh_add_config --template="../conf/jupyterhub_config.py" --destination="$final_p ynh_add_config --template="../conf/jupyter_notebook_config.py" --destination="$final_path/config/jupyter_notebook_config.py" chown -R root: $final_path/ -chown -R $admin: $final_path/.venv/ +chown -R $admin: $final_path/venv/ #================================================= # SETUP SYSTEMD diff --git a/scripts/restore b/scripts/restore index c2ff4d9..e7d4bc8 100644 --- a/scripts/restore +++ b/scripts/restore @@ -57,7 +57,7 @@ ynh_script_progression --message="Restoring the app main directory..." --weight= ynh_restore_file --origin_path="$final_path" chown -R root: $final_path/ -chown -R $admin: $final_path/.venv/ +chown -R $admin: $final_path/venv/ #================================================= # SPECIFIC RESTORATION @@ -71,7 +71,6 @@ ynh_install_app_dependencies $pkg_dependencies ynh_exec_warn_less ynh_install_nodejs --nodejs_version=$nodejs_version ynh_use_nodejs $ynh_npm install -g configurable-http-proxy -python3 -m pip install pipenv #================================================= # RESTORE SYSTEMD diff --git a/scripts/upgrade b/scripts/upgrade index fa7c9db..871c306 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -28,7 +28,6 @@ enable_terminal=$(ynh_app_setting_get --app=$app --key=enable_terminal) #================================================= # CHECK VERSION #================================================= -ynh_script_progression --message="Checking version..." upgrade_type=$(ynh_check_app_version_changed) @@ -64,9 +63,7 @@ ynh_script_progression --message="Ensuring downward compatibility..." # If final_path doesn't exist, create it if [ -z "$final_path" ]; then final_path=/opt/$app - mkdir -p $final_path - ynh_app_setting_set --app=$app --key=final_path --value=$final_path fi @@ -88,13 +85,13 @@ ynh_add_nginx_config #================================================= # UPGRADE DEPENDENCIES #================================================= -ynh_script_progression --message="Upgrading dependencies..." --weight=83 +ynh_script_progression --message="Upgrading dependencies..." --weight=10 ynh_install_app_dependencies $pkg_dependencies ynh_exec_warn_less ynh_install_nodejs --nodejs_version=$nodejs_version ynh_use_nodejs -$ynh_npm install -g configurable-http-proxy -python3 -m pip install pipenv + +$ynh_npm install -g configurable-http-proxy npm #================================================= # SPECIFIC UPGRADE @@ -106,9 +103,12 @@ if [ "$upgrade_type" == "UPGRADE_APP" ] then ynh_script_progression --message="Building app..." --weight=160 + ynh_secure_remove $final_path/.venv + python3 -m venv $final_path/venv + source $final_path/venv/bin/activate + pushd $final_path - mkdir -p .venv - PIPENV_VENV_IN_PROJECT="enabled" PIPENV_SKIP_LOCK=true ynh_exec_warn_less python3 -m pipenv install jupyterlab==$jupyterlab_version jupyterhub notebook jupyterhub-ldapauthenticator pyzmq + ynh_exec_warn_less pip install jupyterlab==$jupyterlab_version jupyterhub notebook jupyter_collaboration jupyterhub-ldapauthenticator pyzmq popd fi @@ -126,7 +126,7 @@ ynh_add_config --template="../conf/jupyterhub_config.py" --destination="$final_p ynh_add_config --template="../conf/jupyter_notebook_config.py" --destination="$final_path/config/jupyter_notebook_config.py" chown -R root: $final_path/ -chown -R $admin: $final_path/.venv/ +chown -R $admin: $final_path/venv/ #================================================= # SETUP SYSTEMD