guix-devel
[Top][All Lists]
Advanced

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

Re: Static hosting of substitutes


From: Christopher Baines
Subject: Re: Static hosting of substitutes
Date: Sun, 18 Aug 2024 09:27:21 +0100
User-agent: mu4e 1.12.4; emacs 29.3

Ian Eure <ian@retrospec.tv> writes:

> I’d like to provide substitutes for packages in my personal channel.
> The ideal setup for this would be for a machine on my internal net to
> perform the builds, then upload the results to another system on the
> open internet.  That could be a machine running a web server pointed
> at a directory where the NARs get uploaded, or an S3-like object
> store, or something like that -- dirt simple, just shifting bytes off
> disk and out a socket.
>
> It seems that nothing like this exists, all the public substitute
> servers appear to use `guix publish'.  That’s not an option for me,
> since it requires significantly more disk and compute than I have on
> any public-facing system, and I can’t justify the cost of bigger
> machines.
>
> What would it take to make a system like this work?

I've run a few substitute servers like this, the required code is
actually quite simple and the build coordinator includes the necessary
bits in the form of some included hooks [1].

1: build-success-publish-hook and build-success-s3-publish-hook in
https://git.savannah.gnu.org/cgit/guix/build-coordinator.git/tree/guix-build-coordinator/hooks.scm

bordeaux.guix.gnu.org used to use the build-success-publish-hook to
populate a directory with the narinfo and nar files, and NGinx simply
served this directory, although now it uses the nar-herder to manage the
nars (it still doesn't use guix publish).

Maybe in the future the nar-herder could provide an easy utility for
people to serve and manage substitutes like this.

Attachment: signature.asc
Description: PGP signature


reply via email to

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