guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Guix & IPFS


From: Pjotr Prins
Subject: Re: Guix & IPFS
Date: Mon, 15 Oct 2018 10:13:50 +0200
User-agent: NeoMutt/20170113 (1.7.2)

On Mon, Oct 15, 2018 at 09:59:04AM +0200, Pierre Neidhardt wrote:
> Hi Guix!
> 
> I'm in the process of packaging IPFS.
> It has about 100 dependencies, most of which are currently missing in
> Guix, so that's gonna take me some hours :p
> Thankfully Go is rather straightforward to package so that should be
> alright.
> 
> That said, the case of IPFS of particular: it uses it's own dependency
> manager "gx" which retrieves the specific versions of its deps over the
> IFPS protocol.
> 
> The build recipe is as follows (from the project's Rules.mk):
> 
> --8<---------------cut here---------------start------------->8---
> install_unsupported:
>       @echo "note: this command has yet to be tested to build in the system 
> you are using"
>       @echo "installing gx"
>       go get -v -u github.com/whyrusleeping/gx
>       go get -v -u github.com/whyrusleeping/gx-go
>       @echo check gx and gx-go
>       gx -v && gx-go -v
>       @echo downloading dependencies
>       gx install --global
>       @echo "installing go-ipfs"
>       go install -v -tags nofuse ./cmd/ipfs
> --8<---------------cut here---------------end--------------->8---
> 
> This raises a few questions:
> 
> - IPFS is rather peculiar about its dependency versions.
> If I package all those dependencies in Guix, I should use the same
> versions.  But then we should make sure that no one is going to update
> those packages independently, which would break the strict versioning of
> IPFS.

I think a guix channel is the appropriate way to manage these versions
(channels are all about versions in my opinion) and I can provide a
binary substitute server. Still we can merge current versions in
mainline.

Pj.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]