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

Cook, Malcolm MEC at stowers.org
Sat Jul 18 09:26:59 UTC 2015


> I hope to chime in further with a big WOOHOO once I have this configuration
> working....

Not quite WOOHOO yet.  Getting close....  Here is where I am:

I have built guix-0.8.2 on centOS7 passing all checks

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.

I don't know the method that guix is using to detect group membership, but my configuration seems to not respect it.

I am going to try putting guix-builder1-10 in NIS also and see if that helps, but, while I wait for my sysadmin to help me, I thought I'd ask all y'all.


My setup now is like this:


/gnu is network shared mount rw everywhere 
	owned by NIS user guix 
	group owned by NIS group guix-builder

I configured the build with --prefix=/gnu

All tests pass.

The daemon is running as user `guix` on host  ${GUIXHOST}  (I welcome a better suggestion for this host.  Maybe just GUIX is better?  Or GUIXMASTER?)

Build works:

	> guix build hello
	...
	The following files will be downloaded:
	   /gnu/store/ydj867rdlz3p6lnnmbqn7jhvdf3i0dvi-hello-2.10
	   /gnu/store/hy2hi0zj5hrqkmkhpdxf04c9bcnlnsf9-glibc-2.21
	...
 	603 operations

And confirmed:

	/gnu/store/ydj867rdlz3p6lnnmbqn7jhvdf3i0dvi-hello-2.10/bin/hello
	Hello, world

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".  

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

gets me further, and  I did find the rest of the sentence to be correct: " and the user sub-directory is created by guix package."

But --installing only gets a little further:
	/gnu/bin/guix package --install hello
	accepted connection from pid 31645, uid 1232
	The following package will be installed:
   	hello	2.10	/gnu/store/ydj867rdlz3p6lnnmbqn7jhvdf3i0dvi-hello-2.10

	The following derivations will be built:
	   /gnu/store/6cs8g6kq96zdwl25929l5s5y6gxk7hxs-profile.drv
	   /gnu/store/b1f6jwficry84qgigvkldkfyhlc2xhg2-ca-certificate-bundle.drv
	   /gnu/store/n2ks4dzmrcg9ghhrp6c6wsp57nib5rqf-info-dir.drv
	The following files will be downloaded:
 	  /gnu/store/kbf46vds6f7lp723xn62kgdaxmwc1jvi-module-import-compiled
 	  /gnu/store/41wzbfhmb6j5yha508y30kwycivhpx9b-module-import
	   /gnu/store/ki6mvjqbf3nc8lfavwqfsrxqzi7qhf50-module-import
	   /gnu/store/jhbkpizpakgk5xzzpyrh15vaprqcarb8-module-import-compiled
	guix package: error: build failed: the build users group `guix-builder' has no members
	

Huh? Why 
	a) is it going to download and build derivations AGAIN !?!?  
	b) does it tell me "the build users group `guix-builder' has no members"

So, I am stymied, and welcome your kind assistance and observations.

I feel a YAHOO WAHOO coming on,

Malcolm





More information about the bio-packaging mailing list