feat: Integrate Devbox shell for virtualized local development #3122
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Use Devbox shell for isolating dependency installs
Hi, I would like to introduce Devbox Shell to make it easier to contribute to Jan AI code. Devbox shell offers a local virtualized environment (similar to Pyenv) that allows me to install dependencies such as Node, without corrupting my PATH and Node versions.
Why not use
ASDF
Allows for future proofing, if we need to virtualise other dependencies such as Python in future
Why not use VSCode Dev Containers
We evaluated this in my company previously, found it was not as performant and half-baked in terms of features, documentation and support, compared to Devbox Shell / Nix
Benefit to the community
I can just run
devbox shell
to get the requirements set up. In future someone can add scripts to preconfig the environment where needed, without messing up the environment. (Themake clean
is rather lengthy and could be improved IMO).Installation
Clone the Jan repository
Run
devbox shell
to install X version of Node YarnRun
make dev
or equivalentFixes Issues
Self Checklist