From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexander Vorobiev Subject: Re: Daemon update Date: Thu, 28 May 2015 12:56:47 -0500 Message-ID: References: <87siasirgo.fsf@gnu.org> <87a8wy5oet.fsf@gnu.org> <877fs0k9ox.fsf@gnu.org> <87d21mhww4.fsf@gnu.org> <87r3q1bv6p.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=001a11470c78200ded051728179a Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:57006) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yy23W-0004Gz-IB for guix-devel@gnu.org; Thu, 28 May 2015 13:57:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Yy23S-0001zY-O5 for guix-devel@gnu.org; Thu, 28 May 2015 13:57:22 -0400 In-Reply-To: <87r3q1bv6p.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= Cc: guix-devel@gnu.org --001a11470c78200ded051728179a Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable I have some good progress finally. I started from scratch and pulled the latest from git. I am now running guix-daemon as root with only one option --no-substitutes. The make guix-binary* ran for hours and built a lot of stuff (bash, gcc, perl, etc) but stumbled upon openldap which doesn't seem to be available at the url it wants to use: building path(s) `/shared/shape_tier3/common/local/guix/store/50l6s098sy4ig2irjm1g4c8y261nxz= fc-openldap-2.4.40.tgz' starting download of `/shared/shape_tier3/common/local/guix/store/50l6s098sy4ig2irjm1g4c8y261nxz= fc-openldap-2.4.40.tgz' from ` ftp://sunsite.cnlab-switch.ch/mirror/OpenLDAP/openldap-release/openldap-2.4= .40.tgz'. .. ERROR: In procedure getaddrinfo: Name or service not known failed to download "/shared/shape_tier3/common/local/guix/store/50l6s098sy4ig2irjm1g4c8y261nxz= fc-openldap-2.4.40.tgz" from " ftp://sunsite.cnlab-switch.ch/mirror/OpenLDAP/openldap-release/openldap-2.4= .40.tgz " I tried modifying gnu/packages/openldap.scm to use correct url ( ftp://mirror.switch.ch/mirror/OpenLDAP/openldap-release/...) but that didn't change anything since (I am guessing) the .drv files in store weren't rebuilt and still point to the old url. How do I fix that without rebuilding everything that it created so far? As a side note, would it be possible to modify the files you suggested (gnu packages package-management and gnu system instal) for the custom local state dir in such a way (through configure? scheme variable?) that it wouldn't be hard-coded? I am guessing any update to guix would cause my changes to be lost? Thanks, Alex On Wed, May 27, 2015 at 3:51 PM, Ludovic Court=C3=A8s wrote: > Alexander Vorobiev skribis: > > > I modified the files (to use my paths for the cache and store) and ran > > guix-daemon as root. Now it got much, much further! But still failed, i= t > > seems while building perl. Here is the end of the log file: > > > > In unknown file: > > ?: 5 [load-compiled/vm > > > "/home/alex/.cache/guile/ccache/2.0-LE-8-2.0/home/alex/src/guix/build-aux= /make-binary-tarball.scm.go"] > > In build-aux/make-binary-tarball.scm: > > 38: 4 [#] > > In guix/store.scm: > > 986: 3 [run-with-store # ...] > > In build-aux/make-binary-tarball.scm: > > 41: 2 [# > (state)> #] > > In guix/store.scm: > > 933: 1 [# #] > > 624: 0 [build-things # #] > > > > guix/store.scm:624:0: In procedure build-things: > > guix/store.scm:624:0: Throw to key `srfi-34' with args `(# > &nix-protocol-error [message: "| | | bind mounting `/dev/full' to > > > `/shared/shape_tier3/commo/local/guix/store/828rlmpkg4bi5i28lif2a1af7g4s6= 2yq-perl-5.16.1.drv.chroot/dev/full'" > > status: 1] 4b4cae0>)'. > > Makefile:4331: recipe for target 'guix-binary.x86_64-linux.tar.xz' fail= ed > > You seem to be running the daemon with --debug no? What surprises me is > that the above is not an error message but a debugging message. The > actual error seems to be elsewhere. > > > I also tried to use --disable-chroot but it also failed while building > > perl. The first error message seems to be during perl's configure run: > > If you can run the daemon as root, then do run it as root, but without > --disable-chroot; as the manual states, --disable-chroot is a last > resort, and it=E2=80=99s only needed if you cannot run the daemon as root= . > > In the case of Perl, I wouldn=E2=80=99t be surprised if its Configure scr= ipt > looks at stuff from the host distro in /usr/lib and so on, which can > lead to a failure down the path. > > Ludo=E2=80=99. > --001a11470c78200ded051728179a Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
I have some good progress finally. I started from scratch = and pulled the latest from git. I am now running guix-daemon as root with o= nly one option --no-substitutes. The make guix-binary* ran for hours and bu= ilt a lot of stuff (bash, gcc, perl, etc) but stumbled upon openldap which = doesn't seem to be available at the url it wants to use:

=
building path(s) `/shared/shape_tier3/common/local/guix/store/50l= 6s098sy4ig2irjm1g4c8y261nxzfc-openldap-2.4.40.tgz'
starting d= ownload of `/shared/shape_tier3/common/local/guix/store/50l6s098sy4ig2irjm1= g4c8y261nxzfc-openldap-2.4.40.tgz' from `ftp:= //sunsite.cnlab-switch.ch/mirror/OpenLDAP/openldap-release/openldap-2.4.40.= tgz'...
ERROR: In procedure getaddrinfo: Name or service = not known
failed to download "/shared/shape_tier3/common/loc= al/guix/store/50l6s098sy4ig2irjm1g4c8y261nxzfc-openldap-2.4.40.tgz" fr= om "ftp://sunsite.cnlab-switch.ch/mirror/OpenLDAP/= openldap-release/openldap-2.4.40.tgz"

I tried modifying gnu/packages/openldap.scm to use correct url (ftp://mirro= r.switch.ch/mirror/OpenLDAP/openldap-release/...) but that didn't c= hange anything since (I am guessing) the .drv files in store weren't re= built and still point to the old url. How do I fix that without rebuilding = everything that it created so far?

As a side note,= would it be possible to modify the files you suggested (gnu packages packa= ge-management and gnu system instal) for the custom local state dir in such= a way (through configure? scheme variable?) that it wouldn't be hard-c= oded? I am guessing any update to guix would cause my changes to be lost?

Thanks,
Alex

On Wed, May 27, 2015 at 3:51 PM, L= udovic Court=C3=A8s <ludo@gnu.org> wrote:
Alexander Vorobiev <alexander.vorobiev@gmail.com> skribis:

> I modified the files (to use my paths for the cache and store) and ran=
> guix-daemon as root. Now it got much, much further! But still failed, = it
> seems while building perl. Here is the end of the log file:
>
> In unknown file:
>=C2=A0 =C2=A0 ?: 5 [load-compiled/vm
> "/home/alex/.cache/guile/ccache/2.0-LE-8-2.0/home/alex/src/guix/b= uild-aux/make-binary-tarball.scm.go"]
> In build-aux/make-binary-tarball.scm:
>=C2=A0 =C2=A038: 4 [#<procedure 21c0840 ()>]
> In guix/store.scm:
>=C2=A0 986: 3 [run-with-store # ...]
> In build-aux/make-binary-tarball.scm:
>=C2=A0 =C2=A041: 2 [#<procedure 3961960 at build-aux/make-binary-tar= ball.scm:40:7
> (state)> #]
> In guix/store.scm:
>=C2=A0 933: 1 [#<procedure 4ed3f30 at guix/store.scm:932:28 (store)&= gt; #]
>=C2=A0 624: 0 [build-things # #]
>
> guix/store.scm:624:0: In procedure build-things:
> guix/store.scm:624:0: Throw to key `srfi-34' with args `(#<cond= ition
> &nix-protocol-error [message: "|=C2=A0 =C2=A0|=C2=A0 =C2=A0|= =C2=A0 =C2=A0bind mounting `/dev/full' to
> `/shared/shape_tier3/commo/local/guix/store/828rlmpkg4bi5i28lif2a1af7g= 4s62yq-perl-5.16.1.drv.chroot/dev/full'"
> status: 1] 4b4cae0>)'.
> Makefile:4331: recipe for target 'guix-binary.x86_64-linux.tar.xz&= #39; failed

You seem to be running the daemon with --debug no?=C2=A0 What surpri= ses me is
that the above is not an error message but a debugging message.=C2=A0 The actual error seems to be elsewhere.

> I also tried to use --disable-chroot but it also failed while building=
> perl. The first error message seems to be during perl's configure = run:

If you can run the daemon as root, then do run it as root, but witho= ut
--disable-chroot; as the manual states, --disable-chroot is a last
resort, and it=E2=80=99s only needed if you cannot run the daemon as root.<= br>
In the case of Perl, I wouldn=E2=80=99t be surprised if its Configure scrip= t
looks at stuff from the host distro in /usr/lib and so on, which can
lead to a failure down the path.

Ludo=E2=80=99.

--001a11470c78200ded051728179a--