Fork me on GitHub
#guix
<
2023-06-19
>
Drew Verlee20:06:49

I'm I correct that the best way to compose version-locked packages (e.g. java, Nodejs) is via Guix shell? So, for example: > guix shell openjdk@11 nodejs@12 -- bash Follow-up questions... using Guix like this would supplant the need for nvm, right? Meanwhile, java doesn't seem to have a good way to switch versions on a per-project (file directory) basis, or is there one?

Benjamin C20:06:37

I'm on the clock so apologies in advance for this incomplete response: I think you can set up each project with a manifest file to specify exact versions and packages per each.

👍 2
Eugen08:06:49

yes, but IMO, guix currently does not have a sistem to work with multiple versions at the same time. Debian has alternatives for example https://wiki.debian.org/DebianAlternatives . nvm, sdk are designed with this purpose in mind. I don't know os such a thing in guix per se. As a package manager you can choose to support multiple versions at the same time, but I believe end user does not have a way to specify which version to use (except maybe JAVA_HOME or similar, but not sure how this works in guix ).

Eugen08:06:46

I do believe that guix could have used a package naming like maven / flatpak (with group/artifact:version scheme) so this use case could have been better addressed