[Bio-packaging] Using a shared Guix store (was RE: testing out guix)

Cook, Malcolm MEC at stowers.org
Wed Jul 8 18:03:35 UTC 2015


> >> > Can anyone elaborate a little on what are the obstacles to having
> >> > `/gnu` mounted read-write network wide?
> >>
> >> Yes, the primary problem is that the daemon assumes that it is the
> >> only thing writing to the store and the localstatedir.  Any
> >> modification of profiles and the store goes through the daemon.
> >> > If so, might this be mitigated using a variant off of "Using the
> >> > Offload Facility"
> >> > (http://www.gnu.org/software/guix/manual/guix.html#Daemon-
> Offload-
> >> Setu
> >> > p) in which builds would still be offloaded (and thus subject to
> >> > coordination), with the elimination of the need for " Missing
> >> > prerequisites for the build are copied over SSH to the target
> >> > machine, which then proceeds with the build; upon success the
> >> > output(s) of the build are copied back to the initial machine"
> >> > since they would be done through the shared file system?
> >>
> >> Something like that has been suggested before: if the daemon were to
> >> accept authenticated connections from the outside rather than to just
> >> listen on a local socket we could have remote guix clients connecting
> >> to the central daemon.
> >
> > Hmm.  So, for now, I could just teach users to, i.e., `ssh
> ${USER}@${GUIX_HOST}   /path/to/guix package -r lua -i guile guile-cairo`
> and contrive for GUIX_HOST to be defined for them.
> >
> > Or, wrap it up even further, and contrive for everyone to have the
> following in their env:
> >
> > 	alias guixpkg='ssh ${USER}@${GUIX_HOST} /path/to/guix package'
> >
> > ??
> That’s a possibility.

Thanks for the confirmation.  I'm thinking of trying this for the "short term" - unless Ricardo's efforts bear fruit sooner.

> Another one, which I think Ricardo has been investigating lately, would be to
> have users manage their profiles via the Web user interface,
> guix-web: <https://git.dthompson.us/guix-web.git>.  (The video
> <http://audio-video.gnu.org/video/misc/2015-
> 01__GNU_Guix__The_Emacs_of_Distros.webm>
> has a demo starting at around 23mn.)

Hmm, it is not clear to me how this would play out in a multi-user environment.  Having a web server that could alter per-user profiles sounds like a recipe for more confusion, rather than a solution.

In any case, in my opinion, it would be a mistake to have depend on another tool (such as guix-web, or something similar) to implement functionality that could not be gained at using command-line  guix.  Don't you agree?

> >> Currently our users are okay with that, probably to a large part
> >> because they are not yet aware of all the features of Guix.  They are
> >> only used to management by sysadmins or manual compilation, so they
> >> are not inconvenienced.
> >>
> >> Ultimately, the correct fix is to allow remote guix clients to
> >> communicate with a central guix daemon.  The daemon does not even
> >> need to be aware of remote connections if guix clients can
> >> transparently connect via SSH and send RPCs to the socket.  This is not yet
> implemented.
> >
> > Sounds great.  On the roadmap?
> Definitely.  There are details to be sorted out (SSH vs. plain old socket), but
> we should discuss it and “get it done.”

Are there any signposts on this road-map emerging?  Is there any way I can help, such as review proposals for how the CLI would work, I'd be happy to chip in.  Not ready to start slinging guile though.  Maybe later (the old lisper in me revels at the thought).

> Thanks for your feedback,
> Ludo’.

Thanks for GUIX!


More information about the bio-packaging mailing list