Am Samstag, 19. Januar 2013 schrieb Ludovic Courtès:
> This has to do with how guix-package interprets package names.
>
> As noted in the manual, users can write either “guix-package -i guile”
> or “guix-package -i guile-2.0.7”. In the latter case, guix-package
> assumes that “2.0.7” is a version number, and then searches all packages
> whose name is “guile” and whose version is “2.0.7”.
>
> In your case, it searches for packages named “libjpeg” and whose version
> number is “8”–which fails.
>
> The fix it to not introduce the version number in the ‘name’ field, and
> instead leave it in the ‘version’ field.
Thanks for the explanation. I was confusing scheme variable names and package names, which are the same most of the time. With
(define-public libjpeg-8
(package (inherit libjpeg)
(name "libjpeg")
(version "8d")
$ guix-package -i libjpeg-8d
indeed works as expected.
However, now
$ guix-build libjpeg-8d
returns
libjpeg-8d: unknown package
Using the scheme variable name does not help:
$ guix-build libjpeg-8
libjpeg-8: unknown package
Could the behaviour of guix-build be made the same as that of guix-package?
Andreas