guix-devel
[Top][All Lists]
Advanced

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

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


From: Ludovic Courtès
Subject: Re: Using a shared Guix store (was RE: [Bio-packaging] testing out guix)
Date: Sat, 18 Jul 2015 17:13:03 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

"Cook, Malcolm" <address@hidden> skribis:

> However
>
>       ./pre-inst-env guix package -i hello
>
> Gives me
>
>       guix package: error: build failed: the build users group `guix-builder' 
> has no members
>
> But, but, I do have a group `guix-builder`
>
> I think the problem may be that my guix-builder group was defined in NIS 
> whereas its members are not in NIS.

What does ‘getenv group guix-builder’ return?  It should show something
like:

  
guixbuild:x:30000:guixbuilder01,guixbuilder02,guixbuilder03,guixbuilder04,guixbuilder05,guixbuilder06,guixbuilder07,guixbuilder08,guixbuilder09,guixbuilder10

Each build account must have ‘guix-builder’ in its supplementary group list.

> The daemon is running as user `guix` on host  ${GUIXHOST}

The daemon really needs to run as root, if possible:

  http://www.gnu.org/software/guix/manual/html_node/Build-Environment-Setup.html

> However trying to --install is not successful
>
>       /gnu/bin/guix package --install hello
>       accepted connection from pid 26597, uid 1232
>       error: while creating directory `/gnu/var/guix/profiles/per-user/mec': 
> Permission denied
>       Please create the `/gnu/var/guix/profiles/per-user/mec' directory, with 
> you as the owner.
>       Try "info '(guix) Invoking guix package'" for more information.
>
> Which leads me to think the documentation is in error where it says "The 
> per-user directory is created when guix-daemon is started".  

Well, /var/guix/profiles/per-user is created by the daemon, but .../mec
is created by ‘guix package’.

> Creating it by hand (owned by guix, with write access to all) :
>
>       mkdir /gnu/var/guix/profiles/per-user ## the doc says this should 
> happen by the daemon but not!  FIXME! BUG?
>       chmod a+rwx /gnu/var/guix/profiles/per-user

Perfect.

The daemon really does create /gnu/var/guix/profiles/per-user, making it
world-writable (see nix/libstore/local-store.cc:254.)

However, you mentioned guix-daemon was *not* running as root, in which
case it does not attempt to create this directory.  That could be the
reason.

Thanks for your report,
Ludo’.



reply via email to

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