[Pkg-rust-maintainers] Infrastructure to automatically build depdency crates using debcargo

Josh Triplett josh at joshtriplett.org
Tue Jun 13 22:32:20 UTC 2017


On Tue, Jun 13, 2017 at 08:28:41PM +0530, Vasudev Kamath wrote:
> 
> Hello All,
> 
> I was working on debcargo on points mentioned by Ximin (infinity0). I've
> now completed refactoring debcargo. We were discussing next steps to
> package crates in IRC and Ximin brought up need for infrastructure for
> doing automated packaging of dependencies of rustc and cargo.

Nice! Are those changes in the repository? I'll try to take a look soon.

> Here I'm quoting full text from IRC on our discussion.
> 
> 
> > [19:48:41] <infinity0> i'd like this process to be as automatic as
> > possible b/c i don't want to maintain 20 separate rust packages
> 
> > [20:01:00] <infinity0> like, we'll have a script that automatically
> > runs debcargo on the 20 dependencies of rustc and cargo, rather than
> > me doing this manually 
> > [20:01:09] <copyninja> ah
> > [20:02:03] <infinity0> if we need to make any patches to the
> > debcargo-generated packaging, we figure out some efficient way of
> > storing this under version control (.diff is the obvious choice but
> > it's not so nice to manually hand-edit these), and integrate this with
> > the script so that these patches also get applied when the script is
> > run, so we don't need to run patch(1) manually ourselves
> 
> I also agree with Ximin as there are lot of small dependencies for
> crates and they in turn depend on another set of crates. So manually
> trying to package is a lot of task.
> 
> Can we discuss on this and try to come to some sort of solution which
> reduces manual tasks.

Increasingly, I think the right approach would be to have a single
repository which contains a list of crates we want to package (with easy
ways to update the list to include recursive dependencies), as well as
subdirectories for any of those crates that need any manual overrides of
the autogenerated packaging. Then we can run debcargo *once*, on the
top-level repo, and it'll pop out with any new source and binary
packages. Run it, upload any new ones, done.

- Josh Triplett



More information about the Pkg-rust-maintainers mailing list