Dear, On Fri, 26 Jun 2020 at 19:15, Julien Lepiller <jul...@lepiller.eu> wrote:
> - use r from an old revision of guix that had the version you're looking for. > This can be done using an "inferior". The package will more likely build (and > even have substitutes), but it uses the old version of all its dependencies, > which are not necessarily patched for vulnerabilities and may require more > space to be stored, as they are not shared with other packages. It is not easy to find the old revision (commit) which owns the version you are looking for. In such cases, the Guix Data Service could help. For example, this URL lists all the R versions in Guix over the time: https://data.guix.gnu.org/repository/1/branch/master/package/r As you can see, it is rare that 2 versions of R exist at the same time in Guix. I let you click and you will find that the last commit containing the R version 3.6.3 is the commit 899093. https://data.guix.gnu.org/revision/89909327d017198969436237acc7c93823ff8147/package/r/3.6.3 Then the way for creating an inferior is "guix time-machine". It goes back but without polluting your current setup; you can have different versions from different time/commit. The following command creates temporarily an old Guix version and use it for spawning an environment containing R. --8<---------------cut here---------------start------------->8--- $ guix time-machine --commit=899093 \ -- environment --ad-hoc r-minimal \ -- R R version 3.6.3 (2020-02-29) -- "Holding the Windsock" [...] > sessionInfo() R version 3.6.3 (2020-02-29) Platform: x86_64-unknown-linux-gnu (64-bit) Running under: Debian GNU/Linux 10 (buster) Matrix products: default BLAS/LAPACK: /gnu/store/vax1vsg3ivf0r7j7n2xkbi1z3r0504l9-openblas-0.3.7/lib/libopenblasp-r0.3.7.so locale: [1] C attached base packages: [1] stats graphics grDevices utils datasets methods base loaded via a namespace (and not attached): [1] compiler_3.6.3 > --8<---------------cut here---------------end--------------->8--- Instead of 'environment', you can use 'install -p /path/to/profile/with/old/R'. However, it is important to be clear with which version of R you are using and which version is used to "compile" the R packages you will install, and use a manifest.scm file is really a good practise when traveling in time. :-) Hope that helps, simon