codespace icon indicating copy to clipboard operation
codespace copied to clipboard

Simplify the process of installing data-science related toolkits

Open rongxin-liu opened this issue 2 years ago • 4 comments

rongxin-liu avatar Jan 09 '23 15:01 rongxin-liu

What might be best? A .cs50.yml file or .cs50.json or such, inside of which could be packages to install when the container starts/restarts, a la cmd for https://cs50.readthedocs.io/sandbox/#api? Or support for execution of an arbitrary .sh file in a specified location?

dmalan avatar Jan 09 '23 16:01 dmalan

For this particular issue, I'm thinking of adding a button in our menu allowing one-click install Jupyter notebook extension and scikit-learn python package. This should be enough for students to start with their projects that rely on jupyter notebook. Jupyter is bundled with VS Code when Codespace starts and we decided to force uninstall jupyter a while back, causing some headache for students, so I think we'd want to provide an easy way for them to re-install jupyter.

rongxin-liu avatar Jan 09 '23 17:01 rongxin-liu

Relatedly, to allow users further customize their codespaces (install Ubuntu/Python packages, run scripts, etc.,) I'd suggest we do that via postCreateCommand, in which we look for a user-defined script to execute at a specific location. That should give users more flexibility.

rongxin-liu avatar Jan 09 '23 17:01 rongxin-liu

Know of any conventions we could/should adopt? E.g., other tools or Linux distros that look for a specifically named file and executes it on start? At the root level, there are files like rc.local on some distros, but not sure about user accounts.

dmalan avatar Jan 09 '23 23:01 dmalan