guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Removing #:skip-build? from the crate importer?


From: Liliana Marie Prikler
Subject: Removing #:skip-build? from the crate importer?
Date: Thu, 31 Mar 2022 21:07:32 +0200
User-agent: Evolution 3.42.1

Hi Maxime,

similar discussions have been had in the past, but thanks for raising
them again.  As far as I'm aware, the "consensus" – if it can be called
such – is that due to Rust packages often being a giant nothing burger
both in terms of what they actually do and in what can be used for
subsequent builds, but still generating a lot of hot air literally when
evaluated on CI, we ought to skip the build in intermediate packages.

There are a few counter-proposals.  One suggestion that has been
raised, but not yet implemented, would be to make it so that build
results can actually be reused.  This is the most promising
conceptually, but from what I can gather from those working on it might
not be that easy to pull off.  Another one I recently thought about
myself would be to demote these packages to origins, which they in fact
are.  This could fairly easily be done by simply allowing an optional
license field in origins, but we'd have to apply a special trick to get
back the recursive unpacking.  Basically, what we'd have to do is for
e.g. rust-serde, (define rust-serde (append (list rust-serde-origin)
other-origins ...) where other-origins ... are the "packages" rust-
serde pulls in, add those to inputs via append and then unpack all of
them in an "unpack-all-those-crates" phase to be added to cargo-build-
system.  I am probably missing further proposals that have been made
over time.

In any case, #:skip-build? is far from being the right thing we
typically aim for, and I support every attempt to remove it that allows
us to meet our climate goals.

Cheers



reply via email to

[Prev in Thread] Current Thread [Next in Thread]