[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ASDF Builder (Common Lisp) & "package-inferred-system" Packages
From: |
Pierre Neidhardt |
Subject: |
Re: ASDF Builder (Common Lisp) & "package-inferred-system" Packages |
Date: |
Fri, 02 Aug 2019 18:28:34 +0200 |
Hi!
It's been a while, and now that I'm on the verge of releasing Next 1.3
and a dependency is a package-inferred-system, I thought it would be the
perfect time to dig out this issue! :)
So I'm trying to package cl-dbus (https://github.com/death/dbus).
You'll find the recipes here:
https://gitlab.com/atlas-engineer/next-guix-channel
I can package it in several ways, but the result does not work for the
reasons mentioned in this topic.
I thought of the following trick: what about just dumping the full source
into "/lib/sbcl"? Wouldn't that work?
Do we really need the .fasl files?
When I try to build Next with dbus packaged using this last trick, it
actually gets quite far, until it complains about circular dependencies:
--8<---------------cut here---------------start------------->8---
Unhandled ASDF/ACTION:CIRCULAR-DEPENDENCY in thread #<SB-THREAD:THREAD "main
thread" RUNNING
{10005385B3}>:
Circular dependency:
((#<ASDF/LISP-ACTION:LOAD-OP >
. #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM "dbus">)
(#<ASDF/LISP-ACTION:PREPARE-OP >
. #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM "dbus">)
(#<ASDF/LISP-ACTION:LOAD-OP >
. #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM "dbus/all">)
(#<ASDF/LISP-ACTION:LOAD-OP >
. #<ASDF/LISP-ACTION:CL-SOURCE-FILE "dbus/all" "lisp">)
(#<ASDF/LISP-ACTION:PREPARE-OP >
. #<ASDF/LISP-ACTION:CL-SOURCE-FILE "dbus/all" "lisp">)
(#<ASDF/LISP-ACTION:PREPARE-OP >
. #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM "dbus/all">)
(#<ASDF/LISP-ACTION:LOAD-OP >
. #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM
"dbus/convenience">)
(#<ASDF/LISP-ACTION:LOAD-OP >
. #<ASDF/LISP-ACTION:CL-SOURCE-FILE "dbus/convenience" "lisp">)
(#<ASDF/LISP-ACTION:PREPARE-OP >
. #<ASDF/LISP-ACTION:CL-SOURCE-FILE "dbus/convenience" "lisp">)
(#<ASDF/LISP-ACTION:PREPARE-OP >
. #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM
"dbus/convenience">)
(#<ASDF/LISP-ACTION:LOAD-OP >
. #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM "dbus/publish">)
(#<ASDF/LISP-ACTION:LOAD-OP >
. #<ASDF/LISP-ACTION:CL-SOURCE-FILE "dbus/publish" "lisp">)
(#<ASDF/LISP-ACTION:PREPARE-OP >
. #<ASDF/LISP-ACTION:CL-SOURCE-FILE "dbus/publish" "lisp">)
(#<ASDF/LISP-ACTION:PREPARE-OP >
. #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM
"dbus/publish">))
--8<---------------cut here---------------end--------------->8---
I've asked for help on ASDF issue tracker:
https://gitlab.common-lisp.net/asdf/asdf/issues/10
By the way, there they confirmed that using `*source-registry*` is the
right way to go. Note that this is _not_ the same variable as
`*source-registry-parameter*` that Katherine mentioned.
So we are good on that front.
Thoughts?
--
Pierre Neidhardt
https://ambrevar.xyz/
signature.asc
Description: PGP signature
- Re: ASDF Builder (Common Lisp) & "package-inferred-system" Packages,
Pierre Neidhardt <=