On Thu, 25 Oct 2018 10:25:01 -0700 Nam Nguyen wrote: > I want to use guix environment with icedtea@3.7:jdk. > --8<---------------cut here---------------start------------->8--- > user@antelope ~$ guix environment icedtea@3.7:jdk > user@antelope ~ [env]$ java -version > java version "1.7.0_171" > OpenJDK Runtime Environment (IcedTea 2.6.13) (linux-gnu build > 1.7.0_171-b02) OpenJDK 64-Bit Server VM (build 24.171-b02, mixed mode) > --8<---------------cut here---------------end--------------->8--- > > When I installed to my user profile, I was able to get the desired > icedtea version. > --8<---------------cut here---------------start------------->8--- > user@antelope ~$ guix package -i icedtea@3.7:jdk > user@antelope ~$ java -version > openjdk version "1.8.0_161" > OpenJDK Runtime Environment (IcedTea 3.7.0) (guix build 1.8.0_161-b12) > OpenJDK 64-Bit Server VM (build 25.161-b12, mixed mode) > --8<---------------cut here---------------end--------------->8--- > > Is guix environment installing an incorrect version of icedtea? Hi Nam, read the docs :-) guix environment PACKAGE is setting up an environment FOR developing PACKAGE, i.e. all its dependencies/compilers are added to the environment. If you want to have a package directly IN the environment, use the --ad-hoc switch: guix environment --ad-hoc PACKAGE You can even combine both, for example to add more tools: guix environment --pure guix --ad-hoc git That would create a pure environment where the git command is available and all tools to develop guix. The guix command is not in here! In your case, IcedTea 2 is used to develop IcedTea 3, that's the reason why you found that in your environment. Finally, you can add a "-- command" to the environment to execute a command, so this should tell you the right version and afterwards automatically exit the environment(-C == --container, to be absolutely sure): $ guix environment -C --ad-hoc icedtea@3.7:jdk -- javac -version javac 1.8.0_161 I'm closing that bug, Björn