I have made the following changes (currently locally): - New procedure ‘cargo-inputs’.
(cargo-inputs NAME) returns a copy of (@ (gnu packages rust-crates) NAME-cargo-inputs), with #f removed and symbols resolved to (@ (gnu packages rust-sources) SYMBOL). Both modules can be configured via keyword arguments. This eliminates the need to modify *-cargo-inputs manually. - Importer: Insert *-cargo-inputs alphabetically too. I'll try to keep cargo-build-system compatible with current packages. Draft migration path: 1. Import dependencies to (gnu packages rust-crates) and copy needed dependencies to (gnu packages rust-sources). 2. Remove #:cargo-inputs of applications, refine their definitions and relocate them to categorized modules. 3. Remove all crates-* modules.