<div dir="ltr"><div>Cool!</div><div><br></div>I need to go read the patch/PR again, but I'm still unclear whether any of <a href="https://github.com/rust-lang/cargo/pull/2857">https://github.com/rust-lang/cargo/pull/2857</a> allows for *modified* local registries (ie: those where the contents are not a strict, hash-identical subset of <a href="http://crates.io">crates.io</a>).<div><br></div><div>The main hurdles (as I see them) are:</div><div>- some sort of cargo support for local *possibly patched* registries</div><div>- some sort of toolchain for easily generating/maintaining Debian packages for crates.  Doesn't have to be fancy, just better than making 50 packages by hand.</div><div>- we probably need a conversation/policy around library versions.  It's easy for a cargo package to need multiple versions of a single crate, and we need to work out how much we want to accommodate that versus patching applications/libraries to use a narrower set of versions.</div><div>- an application package that provides motivation (git-series!)</div><div><br></div><div>Fwiw, in my earlier testing I found it easy to make cargo fail if it tries to access the network by just setting a bogus http_proxy env var.</div><div><br></div><div>I did some work earlier towards a "cargo debmake" subcommand (<a href="https://github.com/anguslees/cargo-debmake">https://github.com/anguslees/cargo-debmake</a>) but I got lost in trying to add something like Alex's directory registries PR to cargo (before that PR came out) and made little further progress.  It may be easier to just start again.</div><div><br></div><div>Re helping: Yes, any of it would be helpful!  I guess first we hack things up until git-series will compile from crates provided via a central on-disk registry - and then we worry about making that pretty.</div><div><br></div><div> - Gus</div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, 18 Jul 2016 at 10:45 Josh Triplett <<a href="mailto:josh@joshtriplett.org">josh@joshtriplett.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I've just released git-series<br>
(<a href="https://github.com/git-series/git-series" rel="noreferrer" target="_blank">https://github.com/git-series/git-series</a>), a git tool written in Rust.<br>
git-series tracks the "history of history", tracking changes to a patch<br>
series over time through rebases and other non-fast-forwarding changes.<br>
I wrote git-series to help with the maintenance of distribution<br>
packages, backports, patch series for submission (PATCHv2, PATCHv3,<br>
...), and other development processes that may want to rewrite history.<br>
In particular, git-series avoids having to pull patches out of git and<br>
into something like quilt in order to version them.<br>
<br>
I'm interested in packaging git-series (and its dependencies) for<br>
Debian.<br>
<br>
We previously discussed the process of packaging Rust software for<br>
Debian.  Since then, Alex Crichton wrote a new version of cargo support<br>
for "local registries" and "directory registries" (see<br>
<a href="https://github.com/rust-lang/cargo/pull/2857" rel="noreferrer" target="_blank">https://github.com/rust-lang/cargo/pull/2857</a>), which I think should<br>
support the approach of packaging libraries as source.  In addition,<br>
<a href="https://github.com/rust-lang/cargo/pull/2811" rel="noreferrer" target="_blank">https://github.com/rust-lang/cargo/pull/2811</a> adds a flag to cause Cargo<br>
to fail if it would access the network.<br>
<br>
Other than those Cargo pull requests, what would need to happen to make<br>
it possible to package software written in Rust for Debian?  And how can<br>
I help?<br>
<br>
- Josh Triplett<br>
</blockquote></div>