[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: guix package path
From: |
zimoun |
Subject: |
Re: guix package path |
Date: |
Fri, 30 Dec 2022 15:57:43 +0100 |
Hi Ludo,
On Wed, 21 Dec 2022 at 23:42, Ludovic Courtès <ludo@gnu.org> wrote:
> We don’t have enough info to be sure, but could it be that there are two
> ‘gtklp’ packages in your package collection, for instance because
> ‘gtklp-bad-tool’ is also public? ‘specification->package’ prints a
> warning if it’s ambiguous.
I do not think the issue is about your assumption. I guess it is about
Guile modules and compilation.
The package gtklp-bad-tool is defined by:
--8<---------------cut here---------------start------------->8---
(define-public gtklp-bad-tool
(package
(name "gtklp")
(version "1.3.4")
[...]
--8<---------------cut here---------------end--------------->8---
Then gtklp is defined by:
--8<---------------cut here---------------start------------->8---
(define-public gtklp
(let ((toolchain (specification->package "clang-toolchain@10")))
(package-with-c-toolchain gtklp-bad-tool `(("toolchain" ,toolchain)))))
--8<---------------cut here---------------end--------------->8---
Here, the issue is ’(specification->package "clang-toolchain@10")’. For
instance, you get:
$ guix show -L /tmp/my-guix sbcl-lispiec
guix show: error: sbcl-lispiec: package not found
where nothing is ambiguous; the package ’sbcl-lispiec’ is unrelated to
both gtklp-bad-tool or gtklp.
If you replace [1] ’specification->package’ by the symbol
clang-toolchain-10, then it just works.
Last, if you use the broken channel with ’specification->package’ but
instead of --load-path, you run “time-machine” or “pull”, then the issue
is gone.
https://gitlab.com/acpadoanjr/my-guix/-/blob/0e540b6fce0409330cb1ca3453d81f18c8e60163/my-packages/extra.scm#L71-115
https://gitlab.com/acpadoanjr/my-guix/-/blob/0e540b6fce0409330cb1ca3453d81f18c8e60163/my-packages/extra.scm#L313-315
1: <87cz8fo412.fsf@gmail.com">https://yhetil.org/guix/87cz8fo412.fsf@gmail.com>
Cheers,
simon