On Thu, Dec 08, 2016 at 04:30:27PM +0100, Sebastien Marie wrote:

Hello Sebastien,

> So I would like to open the discussion on the "proper" way to manage crates
> inside OpenBSD ports tree.

First of all, thanks for all your hard work in getting Rust up and running so
well on OpenBSD!

I must admit, I have also wondered how we could go about dealing with crates
and OpenBSD's ports. There are a couple of things which you mention, but
which may be worth emphasising for those less familiar with Rust.

First, Cargo is the only language package manager I've used which I respect.
It enables sane, repeatable builds, and handles a number of hard cases well.
Second -- probably because Cargo is so good -- Rust has quickly grown a
culture of having lots of small libraries, often far smaller than (say) C or
Python equivalents.

The sheer number of crates that a typical Rust program uses, the frequency
with which they're updated, and the fact that different programs use
different versions, means that I think we would quickly overwhelm OpenBSD
human packagers. Even though we could probably largely automate the creation
of such ports, the generation and checking would quickly become tiresome.

So I tend to think that your first option (embedding the Crate list) is the
most practical way to get started. Maybe when the Rust ecosystem's
expansion has slowed down (which, as it becomes more mature, it inevitably
will) and/or there's a larger number of people able and willing to maintain
Rust packages on OpenBSD we could change to the second option.


Laurie
-- 
Personal                                             http://tratt.net/laurie/
Software Development Team                                http://soft-dev.org/
   https://github.com/ltratt              http://twitter.com/laurencetratt

Reply via email to