-
Notifications
You must be signed in to change notification settings - Fork 16
Description
Is your feature request related to a problem? Please describe.
The problem is that the current documentation for the CodeJail plugin within Tutor does not provide any guidance on how to add additional Python packages or Conda virtual environments (venvs) to the CodeJail sandbox. This lack of information makes it challenging for users to incorporate custom packages or tools like SageMath, which may have unique dependencies, into the CodeJail environment.
Describe the solution you'd like
I would like to have the ability to add custom Python packages and Conda venvs to the CodeJail sandbox directly from the Tutor-CodeJail project. This means introducing new configuration options in the Tutor-CodeJail settings that allow users to specify the additional Python packages and Conda venvs they want to include. These packages and venvs should be isolated from the host system, ensuring security and preventing conflicts.
Describe alternatives you've considered
One alternative could be manually modifying the apparmor filterfile to include additional packages, but this approach lacks user-friendliness and may not provide the desired isolation. Another alternative could be running CodeJail inside an existing Conda venv, but this may not be feasible for all use cases and could still lead to dependency conflicts.
Additional context
This feature request aims to enhance the usability and flexibility of Tutor-CodeJail by addressing the need for custom Python packages and Conda venvs within the CodeJail sandbox. It would make Tutor-CodeJail a more versatile tool for educational and research purposes and help users work with specialized packages like SageMath effectively while maintaining isolation from the host system.