dub and debian packaging

Bastiaan Veelo via Digitalmars-d digitalmars-d at puremagic.com
Tue Jan 26 03:06:40 PST 2016


On Monday, 25 January 2016 at 23:46:09 UTC, Paul O'Neil wrote:
> On 01/25/2016 12:08 PM, ikod wrote:
>> Hello
>> 
>> I'd like to hear any opinions and best practices on 
>> coexistence of dub and debian .deb packaging and deployment.
>> 
>> Here is my problem: I wrote some small library that use Pegged 
>> to parse and process user requests. This library can be  used 
>> in shebang-scripts on servers or can be statically linked to 
>> applications. The first case require library code and 
>> dependencies (Pegged in this case) be deployed on servers to 
>> some well-known system-wide place like /usr/include/d/ so that 
>> any developer can simply use line like '#!/usr/bin/rdmd 
>> --shebang -I/usr/include/d` in his script.
>> 
>> And here is a problem: we (like many other) distribute our 
>> software over our debian-based machines using standard debian 
>> packaging system. There is no problem for me to wrap my 
>> library into .deb. The question about Pegged or any other 
>> dub-based D library - how do you think, what is better way to 
>> tie together dub and deb-packaged software?
>> 
>> Should I use some postinstall scripts to fetch-build-deploy 
>> Pegged to /usr/include/d/ using dub, or should I wrap Pegged 
>> in separate .deb and include it dependencies in my library or 
>> any other package relying on Pegged? For me the latter way is 
>> better/ but what is your opinion?
>> 
>> 
>
> I think there's a longer discussion one one of the dub issues 
> that explains why this doesn't exist yet.  The blocker is that 
> the D ABI is not compatible across compilers (dmd vs. ldc vs. 
> gdc) or compiler versions (2.068 vs. 2.069).  Until there's a 
> reasonable resolution to that problem, I don't think there will 
> be OS packages of libraries.

Note that the OP is essentially talking about source distribution 
for use in rdmd scripts. So ABI is not an issue. This source 
could be installed as a Debian package, but since dub exists, the 
question is whether to use dub or not. If not, there'll be two 
parallel ways to install source. In any case, files should be 
written to system directories and it should be possible to 
uninstall.

The question originates from here: 
https://github.com/PhilippeSigaud/Pegged/issues/171


More information about the Digitalmars-d mailing list