[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#53995] [PATCH 31/31] gnu: update rbw to 1.4.3.
From: |
Maxime Devos |
Subject: |
[bug#53995] [PATCH 31/31] gnu: update rbw to 1.4.3. |
Date: |
Tue, 15 Mar 2022 17:25:32 +0100 |
User-agent: |
Evolution 3.38.3-1 |
Nicolas Graves schreef op di 15-03-2022 om 14:26 [+0100]:
> > Wouldn't this be a problem of the 'rust-rsa' package? I would move
> > this version relaxing to the 'rust-rsa' package, such that all
> > dependents of rust-rsa can benefit.
>
> I don't think that necessarily applies to every package dependent on
> rust-rsa, I would rather keep it this way.
Some remarks:
* while cargo-build-system creates a "guix-vendor" directory,
this seems an implementation detail to me, maybe one day it will
switch to a {CROSS_,}LIBRARY_PATH system like gcc uses.
* IIUC it does necessarily apply to every package dependent on
rust-rsa, at least those using #:cargo-inputs
/ #:cargo-development-inputs.
Empirically: I searched for "rust-rsa" in the source code of Guix.
Its only user 'rbw' apparently copies the 'substitute*'.
Theoretically: suppose a package rust-foo depends on rust-rsa (and
for simplicity, assume that rust-rsa is its only dependency), via
#:cargo-inputs / #:cargo-development-inputs.
Then currently, rust-rsa builds because of its 'relax-requirements'
phase, but IIUC, this is forgotten when 'rust-foo' is being built,
because 'expand-crate-sources' in (guix build-system cargo) just
looks at the 'source' field of 'rust-rsa' and not the build result,
so the build of rust-foo would fail (unverified).
* even if it's not necessary for all dependents, but only for, say,
20%, it seems more convenient to me to only have to do the
substitute* in a single location (i.e., rust-rsa). An additional
benefit is that, if the version requirements change at some point
in the future, then the 'substitute*' only has to be adjusted in a
single place.
Greetings,
Maxime.
signature.asc
Description: This is a digitally signed message part