From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: [Non-root Guix]: Unable to build guix Date: Thu, 02 May 2019 23:46:28 +0200 Message-ID: <87a7g4wmvf.fsf@elephly.net> References: <87ftpwwq9l.fsf@elephly.net> 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]:38728) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hMJXL-0001rt-Gw for guix-devel@gnu.org; Thu, 02 May 2019 17:46:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hMJXK-0006zY-Bl for guix-devel@gnu.org; Thu, 02 May 2019 17:46:39 -0400 Received: from sender-of-o51.zoho.com ([135.84.80.216]:21264) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hMJXJ-0006yj-TG for guix-devel@gnu.org; Thu, 02 May 2019 17:46:38 -0400 In-reply-to: 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" To: rohit yadav Cc: guix-devel@gnu.org rohit yadav writes: >> Do you want to build everything from source on your system or do you >> prefer to use binaries from the Guix project=E2=80=99s build farms? Do = you have >> access to user namespaces / can you use =E2=80=9Cunshare=E2=80=9D for fi= le system >> shenanigans? >> > I need to build guix for non-root location because at several places its > hard to convince to use such system. However, I need several packages whi= ch > are not usually available or outdated. The guix projects allows me to do > so. To accomplish that I need truly non-root permission oriented method to > bootstrap and install whatever I deem necessary for my use case. I see. Unfortunately you will end up having to compile everything from source, C library, GCC,=E2=80=A6 =E2=80=94 all of it. When using a differe= nt store location it is impossible to use pre-built binaries, unfortunately. >> =E2=80=A6you would need to take care of providing the appropriate Guile >> environment all by yourself whereas =E2=80=9Cguix pull=E2=80=9D does all= of this for >> you. This error tells you that guile-gcrypt is not available in the >> environment in which the daemon runs. >> > > This is the place where I am struggling. I am not sure what more do I need > to do then described in pjotrp notes. I could not find anything specific = in > the guix documentation as well to accomplish this. There are two ways I can think of: the first is to use the slow proot-style Guix to run =E2=80=9Cguix environment guix=E2=80=9D; from withi= n that environment you will have all you need to build Guix. You can use that to compile Guix with a different store prefix and later use *that* Guix to run =E2=80=9Cguix environment guix=E2=80=9D. Eventually, you could drop= the proot-style Guix. I=E2=80=99m not sure it=E2=80=99s worth doing. It seems like a lot of work= and you will never be able to benefit from pre-built binaries :-/ The other way is to manually build =E2=80=9Cguile-gcrypt=E2=80=9D, using yo= ur system compiler toolchain. The sources are available here: https://notabug.org/cwebber/guile-gcrypt =E2=80=A6 I just thought of another way: how about running the Guix daemon in a virtual machine (you can download a ready-made VM image from the project website) and telling Guix to talk to the VM over the network? Running the installed software unfortunately would have to go through the VM, but this might be another option depending on your circumstances. -- Ricardo