From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: string-append plus package Date: Mon, 19 Dec 2016 14:31:15 +0100 Message-ID: <87oa0859lo.fsf@gnu.org> References: <20161208195647.GA23449@jasmine> <87h9608d3l.fsf@gnu.org> <42bb5a6c-6a7c-c348-d9d0-da83805cdffe@crazy-compilers.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:36129) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cIy2D-0008MJ-P6 for help-guix@gnu.org; Mon, 19 Dec 2016 08:31:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cIy2A-0002a0-LA for help-guix@gnu.org; Mon, 19 Dec 2016 08:31:21 -0500 In-Reply-To: <42bb5a6c-6a7c-c348-d9d0-da83805cdffe@crazy-compilers.com> (Hartmut Goebel's message of "Mon, 19 Dec 2016 12:05:04 +0100") List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Hartmut Goebel Cc: help-guix@gnu.org Hartmut Goebel skribis: > Am 19.12.2016 um 10:47 schrieb Ludovic Court=C3=A8s: >> The result of =E2=80=98file-append=E2=80=99 is not a string, but =E2=80= =98string-append=E2=80=99 expects >> two strings, hence the error. >> >> =E2=80=98file-append=E2=80=99 returns a =E2=80=9Cstring-valued gexp=E2= =80=9D. This is to say that, in a >> staging context, it will produce a string. For example: >> >> (scheme-file "foo" #~(foo bar #$(file-append nginx "/foo/bar"))) >> >> leads to a file =E2=80=9Cfoo=E2=80=9D containing: >> >> (foo bar "/gnu/store/=E2=80=A6-nginx-1.2.3/foo/bar") > > Thanks for the explanation (which to be frank would take me some time to > understand). > > Please reread you answer from the point of view of an administrator or > somebody else who is not a Scheme programmer. Somebody who just wants to > get some system up an running. He would answer like this: > > Parton? What? "string-valued gexp", "staging context"? I do not > care. I simply want to get the path to a file within a package. > > Whatever you write above may be correct and may be understandable for > every Scheme programmer. But this is discouraging for everybody who does > not want to become a Scheme expert for administering his/her systems. > > I already wasted about an hour just to try to get this path! This is crap! I agree! The first two lines were all you wanted to know; the rest was for you as someone who contributes to Scheme=E2=80=94I would not give that explanation to someone who=E2=80=99s just trying to get nginx up and runnin= g. As for the specifics of why =E2=80=98nginx-configuration=E2=80=99 makes thi= s use case complicated, I think we discussed it on guix-devel before, and there was probably an action item, but =E2=80=9Csomeone=E2=80=9D just needs to make i= t happen or at least to keep track of it. HTH! :-) Ludo=E2=80=99.