From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Grue Hunter: Can't create directories in the store Date: Thu, 16 May 2013 18:33:37 +0200 Message-ID: <87ppwqdgv2.fsf@gnu.org> References: <878v3hgxql.fsf@karetnikov.org> <8761ykl9xl.fsf@gnu.org> <87fvxn3b51.fsf@karetnikov.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([208.118.235.92]:44704) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ud2ly-0007cP-7T for bug-guix@gnu.org; Thu, 16 May 2013 14:19:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ud2lw-0003OA-9U for bug-guix@gnu.org; Thu, 16 May 2013 14:19:26 -0400 Received: from [2a01:e0b:1:123:ca0a:a9ff:fe03:271e] (port=42446 helo=xanadu.aquilenet.fr) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ud2lw-0003MY-4E for bug-guix@gnu.org; Thu, 16 May 2013 14:19:24 -0400 In-Reply-To: <87fvxn3b51.fsf@karetnikov.org> (Nikita Karetnikov's message of "Thu, 16 May 2013 06:35:06 +0400") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org To: Nikita Karetnikov Cc: bug-guix@gnu.org Nikita Karetnikov skribis: >> (let* ((gh (assoc-ref %build-inputs "source")) > > What is the associated value here? I assume it should be 'gh.pl'. Yes. Actually, =E2=80=9Csource=E2=80=9D is the name of the input that corr= esponds to the =E2=80=98source=E2=80=99 field of the package. So, if your package does (package (source (origin (... (uri ".../gh.pl")))) ...) then in the builder, (assoc-ref %build-inputs "source") will be /nix/store/...-gh.pl. > I guess I'm missing something because you said that "Guile and the (guix > build utils) provide us with everything we need." I meant they provide procedures equivalent in functionality to Coreutils, Findutils, and sed. > Also, why is it necessary to specify (guix build utils) in #:modules and > import it via 'use-modules' in #:builder too? According to the manual, > all arguments are passed to the build system. (guix build utils) is not a standard Guile module, so if your build script wants to use it, it needs to be made available in the chroot where that build script is run. That=E2=80=99s what the #:module argument = does. Then =E2=80=98use-modules=E2=80=99 does the actual import. HTH, Ludo=E2=80=99.