Hi, On Tue, 29 Mar 2022 at 10:50, Brendan Tildesley <m...@brendan.scot> wrote:
> Therefore I'm working on making use of > https://github.com/rust-lang/crates.io-index to fully import base definitions > all required crates rather than pulling metadata from the internet with each > refresh. >From my point of view, the issue is that it requires external Rust tools and I think such tool will never be part of the Guix dependencies. Guix itself cannot depends on Rust-thing, GHC-thing, OCaml-thing, Julia-thing, etc. because they ease the importers. And that’s why the current importers parse metadata and somehow “reimplement” the logic behind the package manager of each language. I agree that it is a lot of work and hard to maintain but doing so allow Guix to have a small footprint (dependency, speaking). That’s said, how to improve the importers? Well, Guix provides now GUIX_EXTENSIONS_PATH which allows to extend by other subcommands. “guix workflow” is an example, I do not remember how “guix home” did initially, anyway! My point is: this mechanism allows to have a package (with many dependencies) extending Guix itself. Somehow, it reads guix install guix-rusty guix rusty <stuff> where ’guix-rusty’ would be a Guile package (program) using whatever it needs from the Rust ecosystem (say parse system calls of cargo or whatever). Guix is Scheme library after all, let use it! :-) Cheers, simon