Dub, Cargo, Go, Gradle, Maven

John Gabriele jgabriele at fastmail.fm
Thu Feb 15 15:52:41 UTC 2018


On Thursday, 15 February 2018 at 07:21:24 UTC, Pjotr Prins wrote:
> On Thursday, 15 February 2018 at 04:11:51 UTC, Graham St Jack 
> wrote:
>> Maybe a compromise position would be for a package management 
>> system to define an interface through which it can do things 
>> like:
>>
>> * Discover what the external dependencies are,
>>
>> * Provide those external dependencies, and
>>
>> * Invoke a full build.
>>
>> Then, any number of build systems (and deployment systems?) 
>> could be adapted to work with the package management system.
>
> That is exactly what GNU Guix offers. With support for isolated 
> builds, continuous integration testing, and containers thrown 
> in, if you want that. People misunderstand Guix somewhat 
> because it presents itself as a 'package manager' and even 
> distribution in its own right. But actually it is a dependency 
> manager that can run on top of any system.

It's a bit confusing since the first thing [the Guix 
webpage](https://www.gnu.org/software/guix/) talks about 
"GuixSD", rather than the Guix tool in its own right.

Wow, I didn't realize how established Guix is. It's [packages 
page](https://www.gnu.org/software/guix/packages/) boasts 6868 
available packages!

The [Guix manual](https://www.gnu.org/software/guix/manual/) 
appears to be comprehensive.

Are any other languages using Guix for their 3rd-party online 
package repo? If not, why?

> I am writing a BLOG on how to use Guix for Python development 
> using its package managers and even dependency injection (say a 
> choice of BLAS libraries or LLVM in the case of D). When that 
> is done I could do a D writeup if there is enough interest.
>
> I am sure some people roll their eyes when I mention GNU Guix.

Not at all. Seems like an amazing tool!



More information about the Digitalmars-d mailing list