Danny Milosavljevic <dan...@scratchpost.org> writes: > Hi Leo, > > On Tue, 19 Jul 2016 23:58:23 -0400 > Leo Famulari <l...@famulari.name> wrote: > >> In this case, it looks like the Python 2 variant of the package is the >> same as the Python 3 variant, aside from the Python version. So, you >> should be able to drop the (properties `((python2-variant ...) line from >> the python-ptpython package. > > I tried that, but I still can't do > > $ guix package -i ptpython-2 > > because: > > guix package: error: ptpython: package not found for version 2
What you wrote there is the old way of asking Guix to install a particular *version* of a package. This has been changed to “@” some time ago. This means that you are asking Guix to install a package named “ptpython” with package version “2” (not Python version 2), but no such package exists — you only defined two variants of a package with version 0.34. Our policy with Python *modules* is to prefix them with “python-” or “python2-”. When you define the Python 3 variant as “python-ptpython” and give it the name “python-ptpython” then “package-with-python2” will take care of renaming this to “python2-ptpython” for the Python 2 variant. (For packages that only provide executables we usually don’t add the prefix.) > Now, the ptpython executables are still called the same - so you can't > install ptpython and ptpython-2 at the same time. Ah, an executable. If this is not to be used as a library/module does it even make sense to build it with different versions of Python? If all you care about is the executables then having a variant with only the latest version of Python seems sufficient. (We do the same for snakemake, for example.) ~~ Ricardo