From mboxrd@z Thu Jan 1 00:00:00 1970 From: znavko@disroot.org Subject: Re: G-Expressions manual. change user shell in guix config.scm Date: Sat, 04 May 2019 11:48:07 +0000 Message-ID: References: <158abd9a-61d2-1b85-5227-c645cd556c02@s.rendaw.me> <47df8d6d-9d34-5abe-a7f7-c4f5a1c6a7f2@s.rendaw.me> <020ade7dd57cfe2182b3aa360a8cf13d@disroot.org> <768fb29d220fa00af3cb133b0909b870@disroot.org> <9345e08df01afe19f1fd987470e986d1@disroot.org> <2371498b43210a3afd0652c767214af9@disroot.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([209.51.188.92]:46768) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hMt9I-00022b-4C for help-guix@gnu.org; Sat, 04 May 2019 07:48:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hMt9H-0007Vf-5d for help-guix@gnu.org; Sat, 04 May 2019 07:48:12 -0400 Received: from knopi.disroot.org ([178.21.23.139]:42596) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hMt9G-0007Sq-Vr for help-guix@gnu.org; Sat, 04 May 2019 07:48:11 -0400 In-Reply-To: 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: rendaw <7e9wc56emjakcm@s.rendaw.me>, help-guix@gnu.org This two equivalents work:=0A=0A(shell (file-append dash "/bin/dash")) --= this is advanced guix variant with new file-append function, this varian= t does not need (use-modules (guix gexp))=0A=0A(shell #~(string-append #$= dash "/bin/dash")) -- this is guile function string-append and gexp, ung= exp functions, this variant does not need (use-modules (guix gexp)) too.= =0A=0A=0A=0AMay 4, 2019 11:36 AM, "rendaw" <7e9wc56emjakcm@s.rendaw.me> w= rote:=0A=0A> On 5/4/19 8:29 PM, znavko@disroot.org wrote:=0A> =0A>> I jus= t want to change user shell. So i know how to do it. And you have cleared= a bit for me what is=0A>> formed object and what is file, and what is fi= le-append function.=0A>> =0A>> May 4, 2019 11:24 AM, "rendaw" <7e9wc56emj= akcm@s.rendaw.me> wrote:=0A>> =0A>>> On 5/4/19 8:19 PM, znavko@disroot.or= g wrote:=0A>> =0A>> (shell #~#$dash) -- compiles too, but again:=0A>> =0A= >> bob $ su - mom=0A>> Password:=0A>> /gnu/store/bqmib4vf9mr8dkqx4dqpcqrn= b93giwci-dash-0.5.10.2:=0A>> /gnu/store/bqmib4vf9mr8dkqx4dqpcqrnb93giwci-= dash-0.5.10.2: Is a directory=0A>> bob $=0A>>> Could you perhaps provide = some details on what you are expecting to=0A>>> happen here? This error i= s expected - shell needs a path to an=0A>>> executable, not a directory. = Both `#~#$dash` and `dash` become paths to=0A>>> directories.=0A> =0A> (f= ile-append obj "some string") is a convenient alternative to=0A> #~(strin= g-append #$obj "some string").=0A> =0A> In the latter "obj" becomes (for = example)=0A> "/gnu/store/bqmib4vf9mr8dkqx4dqpcqrnb93giwci-dash-0.5.10.2",= and=0A> "(string-append ...)" combines=0A> "/gnu/store/bqmib4vf9mr8dkqx4= dqpcqrnb93giwci-dash-0.5.10.2" and=0A> "/bin/dash" to produce=0A> "/gnu/s= tore/bqmib4vf9mr8dkqx4dqpcqrnb93giwci-dash-0.5.10.2/bin/dash"