Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] - Cannot installing JupyterLab extensions on deployments without swapping docker image #2299

Open
krassowski opened this issue Mar 7, 2024 · 4 comments
Labels
needs: discussion 💬 Needs discussion with the rest of the team type: bug 🐛 Something isn't working

Comments

@krassowski
Copy link
Member

krassowski commented Mar 7, 2024

Describe the bug

Recent PR #2191 disabled global use of pip. The default Extension Manager in JupyterLab 4.0+ uses PyPI as registry and pip as underlying command to install extensions (although for extensions which are frontend only it really is language and packager agnostic).

It is currently impossible to install a JupyterLab extension.

  • users cannot install extensions at all
  • deployment operators/admins have to modify the docker image to install an extension

Three weeks ago I opened nebari-dev/nebari-docker-images#120 to add jupyterlab-favourites which is needed for one of the deployments. Well actually, we just want to evaluate it. It should not take months to evaluate a single extension.

This is what user sees today when they try to use the Extension Manager:

image

Expected behavior

Either:

OS and architecture in which you are running Nebari

latest

How to Reproduce the problem?

Try to install an extension

Command output

No response

Versions and dependencies used.

No response

Compute environment

None

Integrations

No response

Anything else?

No response

@krassowski krassowski added type: bug 🐛 Something isn't working needs: triage 🚦 Someone needs to have a look at this issue and triage labels Mar 7, 2024
@krassowski
Copy link
Member Author

The ability to install jupyterlab extensions via conda store was listed as long term plan in: nebari-dev/governance#22 (comment) so I assume this is planned?

@pavithraes pavithraes added needs: discussion 💬 Needs discussion with the rest of the team and removed needs: triage 🚦 Someone needs to have a look at this issue and triage labels Mar 12, 2024
@Adam-D-Lewis
Copy link
Member

Adam-D-Lewis commented Mar 12, 2024

Even if we allow users to install extension, it seems like we should be able to disable that in case an org doesn't want their users to install extensions. It seems like there are some potential security concerns around extensions, is that right?

@krassowski
Copy link
Member Author

we should be able to disable that in case an org doesn't want their users to install extensions

That can be done or multiple levels. JupyterLab offers granular ability to define an allow list of plugins, block list of plugins, lock the plugin enabled/disabled state, or even disable extension manager outright. All of that can be controlled from the config files which are already used be nebari, we would just needs to setup the config.

@dharhas
Copy link
Member

dharhas commented Mar 18, 2024

The ability to install jupyterlab extensions via conda store was listed as long term plan in: nebari-dev/governance#22 (comment) so I assume this is planned?

I would say it is desired but no-one has investigated what would require to implement. Adding this would be high value and we could address security considerations with documentation/examples of how to enable/disable things in nebari/jupyter config.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs: discussion 💬 Needs discussion with the rest of the team type: bug 🐛 Something isn't working
Projects
Status: New 🚦
Development

No branches or pull requests

4 participants