From mboxrd@z Thu Jan 1 00:00:00 1970 From: rohit yadav Subject: Re: [Non-root Guix]: Unable to build guix Date: Thu, 2 May 2019 17:17:56 -0500 Message-ID: References: <87ftpwwq9l.fsf@elephly.net> <87a7g4wmvf.fsf@elephly.net> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000b3dfb40587ef032f" Return-path: Received: from eggs.gnu.org ([209.51.188.92]:44146) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hMK2N-0002hX-Lz for guix-devel@gnu.org; Thu, 02 May 2019 18:18:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hMK2L-0007o7-Q2 for guix-devel@gnu.org; Thu, 02 May 2019 18:18:43 -0400 Received: from mail-oi1-x230.google.com ([2607:f8b0:4864:20::230]:33551) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hMK2I-0007kz-11 for guix-devel@gnu.org; Thu, 02 May 2019 18:18:39 -0400 Received: by mail-oi1-x230.google.com with SMTP id l1so3036790oib.0 for ; Thu, 02 May 2019 15:18:35 -0700 (PDT) Received: from mail-ot1-f52.google.com (mail-ot1-f52.google.com. [209.85.210.52]) by smtp.gmail.com with ESMTPSA id u22sm111161otk.49.2019.05.02.15.18.32 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 02 May 2019 15:18:32 -0700 (PDT) Received: by mail-ot1-f52.google.com with SMTP id a5so30456otb.11 for ; Thu, 02 May 2019 15:18:32 -0700 (PDT) In-Reply-To: <87a7g4wmvf.fsf@elephly.net> 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: Ricardo Wurmus Cc: guix-devel@gnu.org --000000000000b3dfb40587ef032f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, May 2, 2019 at 4:50 PM Ricardo Wurmus wrote: > > 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? D= o you have > >> access to user namespaces / can you use =E2=80=9Cunshare=E2=80=9D for = file system > >> shenanigans? > >> > > I need to build guix for non-root location because at several places it= s > > hard to convince to use such system. However, I need several packages > which > > are not usually available or outdated. The guix projects allows me to d= o > > 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 diffe= rent store > location it is impossible to use pre-built binaries, unfortunately. > Yes, I am fine with this. Its actually not so bad. Most of the time its only the beginning that little time (few days) needs to be invested but returns are totally worth it. Also, this way I am able to find out the broken packages as well which usually do not get reflected till a binary exists in the store. > > >> =E2=80=A6you would need to take care of providing the appropriate Guil= e > >> environment all by yourself whereas =E2=80=9Cguix pull=E2=80=9D does a= ll 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 specifi= c > 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 wit= hin 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 dr= op the > proot-style Guix. > > I=E2=80=99m not sure it=E2=80=99s worth doing. It seems like a lot of wo= rk 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 = your 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. > > I am not sure about this option. At the end of the day I need packages compiled for a specific kernel version to a non-root location. So having a VM with guix installed would not be so useful. I am just stuck at the older glibc. I will manage with whatever I have using Nix 17.03 release which seems to still work but for my home machine I will continue to explore guix. Thanks again for quick response. I now understand where I stand what are the actual problems. We can close this thread now. > -- > Ricardo > --Rohit --Rohit --000000000000b3dfb40587ef032f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

On Thu, May 2, 2019 at 4:50 PM Ricardo Wu= rmus <rekado@elephly.net> w= rote:

rohit yadav <= rohityadav@utexas.edu> writes:

>> Do you want to build everything from source on your system or do y= ou
>> prefer to use binaries from the Guix project=E2=80=99s build farms= ?=C2=A0 Do you have
>> access to user namespaces / can you use =E2=80=9Cunshare=E2=80=9D = for file system
>> shenanigans?
>>
> I need to build guix for non-root location because at several places i= ts
> hard to convince to use such system. However, I need several packages = which
> are not usually available or outdated. The guix projects allows me to = do
> so. To accomplish that I need truly non-root permission oriented metho= d to
> bootstrap and install whatever I deem necessary for my use case.

I see.=C2=A0 Unfortunately you will end up having to compile everything fro= m
source, C library, GCC,=E2=80=A6 =E2=80=94 all of it.=C2=A0 When using a di= fferent store
location it is impossible to use pre-built binaries, unfortunately.
Yes, I am fine with this= . Its actually not so bad. Most of the time its only the beginning that lit= tle time (few days) needs to be invested but returns are totally worth it. = Also, this way I am able to find out the broken packages as well which usua= lly do not get reflected till a binary exists in the store. =C2=A0

>> =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 do= es all of this for
>> you.=C2=A0 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 specif= ic 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.=C2=A0 You can use tha= t
to compile Guix with a different store prefix and later use *that* Guix
to run =E2=80=9Cguix environment guix=E2=80=9D.=C2=A0 Eventually, you could= drop the
proot-style Guix.

I=E2=80=99m not sure it=E2=80=99s worth doing.=C2=A0 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.=C2=A0 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?=C2=A0 Running=
the installed software unfortunately would have to go through the VM,
but this might be another option depending on your circumstances.

I am not sure ab= out this option. At the end of the day I need packages compiled for a speci= fic kernel version to a non-root location. So having a VM with guix install= ed would not be so useful. I am just stuck at the older glibc. I will manag= e with whatever I have using Nix 17.03 release which seems to still work bu= t for my home machine I will continue to explore guix.=C2=A0

Thanks again for quick response. I now understand= where I stand what are the actual problems. We can close this thread now.<= /span>
--
Ricardo

--Rohit
--Rohit=C2= =A0
--000000000000b3dfb40587ef032f--