The D ecosystem in Debian with free-as-in-freedom DMD

Gerald via Digitalmars-d digitalmars-d at puremagic.com
Mon Apr 10 07:21:43 PDT 2017


On Monday, 10 April 2017 at 11:40:12 UTC, Matthias Klumpp wrote:
> There are a two issues though that we will be facing in Debian 
> soon, and I would like to get some opinion and maybe 
> perspective on from the D community on them.

First I would like to say thank you for all the work you did in 
getting Tilix packaged for Debian, it is very much appreciated. 
While I'm not an expert in this topic I'll throw in my two cents 
anyway :)

So to the topic at end, I tend to agree with Vladimir in that I 
just don't see it as feasible to make every dependency a shared 
library. Personally I would suggest that only libphobos and 
libdruntime be managed as shared libraries by a distro. 
Otherwise, any other dependencies used in DUB or elsewhere would 
be statically compiled.

If in time a new D library ends up becoming a keystone foundation 
for many packages it could be considered for inclusion as a 
shared library. Otherwise, trying to manage every DUB dependency 
as a potential shared library is a huge amount of work and I 
don't feel most of them are mature or well maintained enough to 
support this approach.

If you just concentrate on compiler, libphobos and libdruntime, 
you can have separate packages for each compiler toolchain which 
was Arch does. It has a libphobos package for DMD and a 
liblphobos for LDC. This then enables developers to specify the 
tool chain they prefer without interference.

In addition to the question about D and C++. what do distros 
typically do for Rust and Cargo dependencies, or Java and Maven? 
Wouldn't that be a similar paradigm to D and DUB dependencies?


More information about the Digitalmars-d mailing list