3 ms·
That's interesting, but where does it specify which python version is used and the version of all the dependencies? If the versions are specified in the 'pytho
by justinsaccount 8y ago
That's interesting, but where does it specify which python version is used and the version of all the dependencies?
If the versions are specified in the 'python-botocore' type definitions, how do you install more than one version of a library?
Does guix only track the latest version of dependencies or can you request any version of something?
- rekado 8y agoPackages in Guix are just Scheme variables. The package here uses the `python-build-system`, which defaults to the latest version of Python, but you can override that by specifying `(arguments '(#:python ,my-python))`, where `my-python` is a variable bound to a package value of the Python variant that you want to use. You can easily install more than one version of a package as long as you have a package definition for it. You can install different variants (not just different versions) into separate profiles. Guix is a Scheme library providing lots of variables that are bound to package values. These package values may have links to other packages (that's done with quasiquotation). Together they form a big graph of packages with zero degrees of freedom. Every version of Guix provides a slightly different variant of this package graph. When installing any package you instantiate a subset of this particular graph. Updating or modifying Guix gives you a different graph. In order to keep things manageable we try to keep the number of variants of any particular package in Guix to a minimum, but you can install older variants by using an older version of Guix; or you can add new variables that are bound to package variants or different versions and install those. It's very convenient and conceptually simple.