Skip to content

include partial+full guide for custom pacakges#122

Merged
jelletreep merged 5 commits into
mainfrom
add-custom-packages
May 13, 2026
Merged

include partial+full guide for custom pacakges#122
jelletreep merged 5 commits into
mainfrom
add-custom-packages

Conversation

@ShaivanBhagat
Copy link
Copy Markdown
Collaborator

includes:

  • partial (smaller) manual explaining custom packages and some quick info.
  • a longer detailed manual with more detailed how to use, where envs are stored, how to work with jupyter kernels, and install additional packages

I have not linked this to VRE Lab workspace manual (yet). If this looks good, then I will include the partial in the Vre lab manual

@jelletreep
Copy link
Copy Markdown
Member

Hi @ShaivanBhagat, Thanks so much for this contribution! I think it is very useful and complete, however also a bit on the long side. For the partial I provided a suggestion on how to shorten it. For the full manual I wasn't sure yet on what to remove. If you have ideas to shorten it, great! however, we could also keep it long for now and reduce later.

Since @dometto is author of this component, could you go over this and see if I missed some things in my review?

@dometto
Copy link
Copy Markdown
Member

dometto commented Apr 21, 2026

This looks great! Suggestions for shortening:

  • "Using Environments in Jupyter Notebooks" <-- could potentially be moved to a separate manual? Not sure!
  • The alternatives for python/conda in the various sections could be put in collapsible elements, so the manual doesn't appear as long for the enduser. This would also allow easily adding Julia at a later point.

Agree we can also merge as is and shorten later.

@ShaivanBhagat
Copy link
Copy Markdown
Collaborator Author

Dawa's suggestions make sense and will help shorten it. I will also see where can i shorten it without taking away much of the content. I can shorten the partials file to a good extent as well.

@ShaivanBhagat
Copy link
Copy Markdown
Collaborator Author

Hi @dometto @jelletreep, I have shortened the partial to some extent. For the full manual, i have used tabsets for conda/python-uv environments, and tried to shorten it as well. Let me know if it needs to be shortened further

@jelletreep
Copy link
Copy Markdown
Member

Hi @ShaivanBhagat,
I have made an effort to shorten things further and removed description of the component as end users are mainly interested in the functionality and might not know the term 'component'. Can you apply one more revision:

  • add instructions for creating new kernel when manually installing additional packages (i assume this is necessary??)

The **Custom Packages UU** optional component automatically installs project dependencies during workspace creation, saving you setup time. Instead of manually cloning repositories and setting up environments after your workspace is ready, Custom Packages does this work for you during the build process—ensuring your research environment is ready to use immediately when you log in. This is especially useful when you want to ensure a consistent environment across multiple workspaces and get started with your research right away.


**How it works:**
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the partial is a bit long, one idea for shortening is to merge the "how it works" section with the " how to use" sections into one "Instructions" step by step plan.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have made the partials more concise. All "extra" information can still be found in the full manual

::: {.callout-important}
The project you wish to install must contain valid dependency files (`environment.yml`, `requirements.txt`, `pyproject.toml`, etc.) for automatic installation to work.

**Note:** The "Python tools" optional component is not explicitly required for Custom Packages to work, but can be useful if you want additional environment managers like `uv` or `poetry` available.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this note can be removed here, this is more developers info I think

Comment thread docs/manuals/custom-packages-manual.qmd Outdated

## Overview

**Custom Packages** is an optional component available on certain SURF Research Cloud workspaces that automatically installs project dependencies during workspace creation.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**Custom Packages** is an optional component available on certain SURF Research Cloud workspaces that automatically installs project dependencies during workspace creation.
**Custom Packages UU** is an optional component available on certain SURF Research Cloud workspaces that automatically installs project dependencies during workspace creation.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"optional component" is a bit jargon that might not be known by all users. I guess when creating a workspace it is called "optional component" when they are there in the last step, so it might be necessary then to explain this term. Maybe easiest with a screenshot?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

screenshot included to show how to select it

Comment thread docs/manuals/custom-packages-manual.qmd Outdated
During workspace creation, select the **"Custom Packages UU"** option under the Optional Components section.

::: {.callout-note}
The 'Python tools' optional component is not explicitly required for Custom Packages to work. The system uses the base conda installation and includes uv for Python environments. However, you may want to enable Python tools if you want additional environment managers like `uv` or `poetry` available for creating new environments or installing packages faster after workspace creation.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe just suggest to select Python tools together with Custom packages

Comment thread docs/manuals/custom-packages-manual.qmd Outdated

**Manual Kernel Registration**

If the kernel wasn't registered automatically (due to dependency installation issues), you can register it manually:
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One route to clarify better is: adding libraries to an existing environment and updating or creating a new Jupyter kernel from it.
Adding libraries is now a separate section, maybe you can add in that section one line: if you add packages and work with jupyter, make sure to create a new jupyter kernel first

@ShaivanBhagat
Copy link
Copy Markdown
Collaborator Author

Hi @jelletreep I have made the necessary changes

@jelletreep jelletreep merged commit 95be22c into main May 13, 2026
1 check passed
@jelletreep jelletreep deleted the add-custom-packages branch May 13, 2026 14:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants