From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas Enge Subject: Required packages Date: Mon, 4 Feb 2013 19:52:22 +0100 Message-ID: <201302041952.22425.andreas@enge.fr> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="Boundary-01=_mNAERk4J6bipup0" Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:58448) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2R9e-0002HW-Gr for bug-guix@gnu.org; Mon, 04 Feb 2013 13:52:38 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U2R9b-0001co-KL for bug-guix@gnu.org; Mon, 04 Feb 2013 13:52:34 -0500 Received: from moutng.kundenserver.de ([212.227.126.186]:54488) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2R9b-0001b0-92 for bug-guix@gnu.org; Mon, 04 Feb 2013 13:52:31 -0500 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: bug-guix@gnu.org --Boundary-01=_mNAERk4J6bipup0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit A question related to my previous posting, but also of independent justification: Should we maybe implement somthing similar to the "depends" field of Debian packages? For instance, programming with mpc also requires mpfr and gmp; in fact, the first few lines of mpc.h read #include "gmp.h" #include "mpfr.h" So it would make sense to automatically pull in gmp and mpfr when a user installs mpc. As dicussed with Ludovic, this could be handled by the "propagated-inputs" field of the package definition. But it also would make sense to not use such an automatism. For instance, thanks to libtool, the mpc shared library is perfectly usable without installing mpfr into the user profile, as libmpc.la contains a pointer to the mpfr package: dependency_libs=' /nix/store/l0999b93cw0by4hcv6z5ykzwz0gw358x- mpfr-3.1.1/lib/libmpfr.la /nix/store/ydxa85j3i21ac74dv0vbc6cxjjqpsfsv- gmp-5.1.0/lib/libgmp.la -lm' So a user who only wants to use a library and not develop with it may not be interested in getting all the dependent headers in the user profile. An obvious approach would be to split into library and devel packages, as does debian. But I do not think we should go this road, it is quite convenient to get all of mpc in only one package. What do you think? Andreas --Boundary-01=_mNAERk4J6bipup0 Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: 7bit

A question related to my previous posting, but also of independent justification: Should we maybe implement somthing similar to the "depends" field of Debian packages?

 

For instance, programming with mpc also requires mpfr and gmp; in fact, the first few lines of mpc.h read

#include "gmp.h"

#include "mpfr.h"

 

So it would make sense to automatically pull in gmp and mpfr when a user installs mpc. As dicussed with Ludovic, this could be handled by the "propagated-inputs" field of the package definition.

 

But it also would make sense to not use such an automatism. For instance, thanks to libtool, the mpc shared library is perfectly usable without installing mpfr into the user profile, as libmpc.la contains a pointer to the mpfr package:

dependency_libs=' /nix/store/l0999b93cw0by4hcv6z5ykzwz0gw358x-mpfr-3.1.1/lib/libmpfr.la /nix/store/ydxa85j3i21ac74dv0vbc6cxjjqpsfsv-gmp-5.1.0/lib/libgmp.la -lm'

So a user who only wants to use a library and not develop with it may not be interested in getting all the dependent headers in the user profile.

 

An obvious approach would be to split into library and devel packages, as does debian. But I do not think we should go this road, it is quite convenient to get all of mpc in only one package.

 

What do you think?

 

Andreas

 

--Boundary-01=_mNAERk4J6bipup0-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Required packages Date: Mon, 04 Feb 2013 23:08:17 +0100 Message-ID: <87lib3pwa6.fsf@gnu.org> References: <201302041952.22425.andreas@enge.fr> 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]:49445) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2UD7-0002Pr-9l for bug-guix@gnu.org; Mon, 04 Feb 2013 17:08:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U2UD5-0000dM-Q7 for bug-guix@gnu.org; Mon, 04 Feb 2013 17:08:21 -0500 Received: from mail3-relais-sop.national.inria.fr ([192.134.164.104]:35909) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2UD5-0000dF-Jo for bug-guix@gnu.org; Mon, 04 Feb 2013 17:08:19 -0500 In-Reply-To: <201302041952.22425.andreas@enge.fr> (Andreas Enge's message of "Mon, 4 Feb 2013 19:52:22 +0100") 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: Andreas Enge Cc: bug-guix@gnu.org Andreas Enge skribis: > A question related to my previous posting, but also of independent=20 > justification: Should we maybe implement somthing similar to the "depends= "=20 > field of Debian packages? What=E2=80=99s this? > For instance, programming with mpc also requires mpfr and gmp; in fact, t= he=20 > first few lines of mpc.h read > #include "gmp.h" > #include "mpfr.h" > > So it would make sense to automatically pull in gmp and mpfr when a user= =20 > installs mpc. As dicussed with Ludovic, this could be handled by the=20 > "propagated-inputs" field of the package definition. s/could/should/ :-) =E2=80=9CPropagated inputs=E2=80=9D was intended precisely for this use cas= e. I don=E2=80=99t know why I didn=E2=80=99t use it but it=E2=80=99s a mistake since it requir= es packages using MPC to know about MPC=E2=80=99s dependencies, and to hard-code them. > But it also would make sense to not use such an automatism. For instance,= =20 > thanks to libtool, the mpc shared library is perfectly usable without=20 > installing mpfr into the user profile, as libmpc.la contains a pointer to= =20 > the mpfr package: > dependency_libs=3D' /nix/store/l0999b93cw0by4hcv6z5ykzwz0gw358x- > mpfr-3.1.1/lib/libmpfr.la /nix/store/ydxa85j3i21ac74dv0vbc6cxjjqpsfsv- > gmp-5.1.0/lib/libgmp.la -lm' > So a user who only wants to use a library and not develop with it may not= =20 > be interested in getting all the dependent headers in the user profile. Yes, but mpfr.h and gmp.h still need to be in the user=E2=80=99s CPATH, whi= ch contains ~/.guix-profile/include. So putting them in the user=E2=80=99s pr= ofile seems unavoidable. I think you=E2=80=99re concerned about cluttering the user=E2=80=99s profil= e, right? One thing that could be done to mitigate =E2=80=9Ccluttering=E2=80=9D is to= distinguish between packages that were pulled as dependencies of what the user installed, from packages the user explicitly installed (like apt does.) WDYT? > An obvious approach would be to split into library and devel packages, as= =20 > does debian. But I do not think we should go this road, it is quite=20 > convenient to get all of mpc in only one package. Yeah, I think it depends on the package. The main criterion for determining whether to split in several outputs would be the size of the closure of applications that use them. Example: glibc is 37 MiB in total, plus 5 MiB for linux-libre-headers, but lib/ is only 20 MiB. So any application that uses glibc adds all that to its closure. GLib has 20 MiB of doc=E2=80=93good to avoid pulling that if all you want i= s to run PulseAudio. ;-) Libtool=E2=80=99s =E2=80=9Cbin=E2=80=9D output refers to the shell, which n= oticeably increases the size of its closure. Good to avoid that if all you want is libltdl.so (like Guile does.) But there are many more counterexamples, typically libraries of a few hundred KiBs in total for which splitting is an inconvenience that doesn=E2=80=99t provide any significant benefit. Thoughts? Ludo=E2=80=99. From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas Enge Subject: Re: Required packages Date: Mon, 4 Feb 2013 23:28:11 +0100 Message-ID: <201302042328.11563.andreas@enge.fr> References: <201302041952.22425.andreas@enge.fr> <87lib3pwa6.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="Boundary-01=_7XDERRgfpWTwt+n" Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:52993) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2UWW-0005UB-Af for bug-guix@gnu.org; Mon, 04 Feb 2013 17:28:27 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U2UWT-0005q2-7z for bug-guix@gnu.org; Mon, 04 Feb 2013 17:28:24 -0500 In-Reply-To: <87lib3pwa6.fsf@gnu.org> 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: Ludovic =?utf-8?q?Court=C3=A8s?= Cc: bug-guix@gnu.org --Boundary-01=_7XDERRgfpWTwt+n Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Am Montag, 4. Februar 2013 schrieb Ludovic Court=C3=A8s: > Andreas Enge skribis: > > A question related to my previous posting, but also of independent > > justification: Should we maybe implement somthing similar to the > > "depends" field of Debian packages? > What=E2=80=99s this? When A "depends on" B in debian jargon, then installing A automatically=20 also installs B. In our case, a user issuing "guix-package -i mpc" would=20 end up with gmp, mpfr and mpc in the profile. > > But it also would make sense to not use such an automatism. For > > instance, thanks to libtool, the mpc shared library is perfectly > > usable without installing mpfr into the user profile, as libmpc.la > > contains a pointer to > > the mpfr package: > > dependency_libs=3D' /nix/store/l0999b93cw0by4hcv6z5ykzwz0gw358x- > > mpfr-3.1.1/lib/libmpfr.la /nix/store/ydxa85j3i21ac74dv0vbc6cxjjqpsfsv- > > gmp-5.1.0/lib/libgmp.la -lm' > > So a user who only wants to use a library and not develop with it may > > not be interested in getting all the dependent headers in the user > > profile. >=20 > Yes, but mpfr.h and gmp.h still need to be in the user=E2=80=99s CPATH, w= hich > contains ~/.guix-profile/include. So putting them in the user=E2=80=99s = profile > seems unavoidable. Probably so; come to think of it, the cases where one wants to link against= =20 a dynamic library, but not write source code using the headers, should be=20 really rare (linking a compiled program against a newer version of the=20 library would be a possible case, which is somewhat contrary to the guix=20 philosophy). > I think you=E2=80=99re concerned about cluttering the user=E2=80=99s prof= ile, right? Not really. I just wonder what we should do, and what a user would expect.= =20 =46or instance, in debian, gcc depends on binutils and the glibc. So when y= ou=20 install gcc, you also get the other two packages. Is this what we want or=20 not? > One thing that could be done to mitigate =E2=80=9Ccluttering=E2=80=9D is = to distinguish > between packages that were pulled as dependencies of what the user > installed, from packages the user explicitly installed (like apt does.) This would be the next question, only relevant if packages are indeed=20 pulled in automatically. Then should they be uninstalled with the package=20 that pulled them in? That is a bit complicated: If A and B need C and the=20 user installs A and B (and thus also obtains C), C can only be uninstalled= =20 when A _and_ B are gone. Andreas --Boundary-01=_7XDERRgfpWTwt+n Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable

Am Montag, = 4. Februar 2013 schrieb Ludovic Court=C3=A8s:

> Andrea= s Enge <andreas@enge.fr> skribis:

> > A= question related to my previous posting, but also of independent

> > j= ustification: Should we maybe implement somthing similar to the

> > &= quot;depends" field of Debian packages?

> What= =E2=80=99s this?

&nb= sp;

When A &quo= t;depends on" B in debian jargon, then installing A automatically also= installs B. In our case, a user issuing "guix-package -i mpc" wo= uld end up with gmp, mpfr and mpc in the profile.

&nb= sp;

> > B= ut it also would make sense to not use such an automatism. For

> > i= nstance, thanks to libtool, the mpc shared library is perfectly

> > u= sable without installing mpfr into the user profile, as libmpc.la

> > c= ontains a pointer to

> > t= he mpfr package:

> > = dependency_libs=3D' /nix/store/l0999b93cw0by4hcv6z5ykzwz0gw358x-

> > m= pfr-3.1.1/lib/libmpfr.la /nix/store/ydxa85j3i21ac74dv0vbc6cxjjqpsfsv-

> > g= mp-5.1.0/lib/libgmp.la -lm'

> > S= o a user who only wants to use a library and not develop with it may

> > n= ot be interested in getting all the dependent headers in the user

> > p= rofile.

>

> Yes, b= ut mpfr.h and gmp.h still need to be in the user=E2=80=99s CPATH, which

> contai= ns ~/.guix-profile/include. So putting them in the user=E2=80=99s profile<= /p>

> seems = unavoidable.

&nb= sp;

Probably so= ; come to think of it, the cases where one wants to link against a dynamic = library, but not write source code using the headers, should be really rare= (linking a compiled program against a newer version of the library would b= e a possible case, which is somewhat contrary to the guix philosophy).

&nb= sp;

> I thin= k you=E2=80=99re concerned about cluttering the user=E2=80=99s profile, rig= ht?

&nb= sp;

Not really.= I just wonder what we should do, and what a user would expect. For instanc= e, in debian, gcc depends on binutils and the glibc. So when you install gc= c, you also get the other two packages. Is this what we want or not?

&nb= sp;

> One th= ing that could be done to mitigate =E2=80=9Ccluttering=E2=80=9D is to disti= nguish

> betwee= n packages that were pulled as dependencies of what the user

> instal= led, from packages the user explicitly installed (like apt does.)

&nb= sp;

This would = be the next question, only relevant if packages are indeed pulled in automa= tically. Then should they be uninstalled with the package that pulled them = in? That is a bit complicated: If A and B need C and the user installs A an= d B (and thus also obtains C), C can only be uninstalled when A _and_ B are= gone.

&nb= sp;

Andreas

&nb= sp;

--Boundary-01=_7XDERRgfpWTwt+n-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Required packages Date: Tue, 05 Feb 2013 17:50:12 +0100 Message-ID: <87ehgur9h7.fsf@gnu.org> References: <201302041952.22425.andreas@enge.fr> <87lib3pwa6.fsf@gnu.org> <201302042328.11563.andreas@enge.fr> 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]:51124) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2ljT-0002yJ-M7 for bug-guix@gnu.org; Tue, 05 Feb 2013 11:51:01 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U2lio-0008Ur-9T for bug-guix@gnu.org; Tue, 05 Feb 2013 11:50:55 -0500 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:24579) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2lio-0008SP-3W for bug-guix@gnu.org; Tue, 05 Feb 2013 11:50:14 -0500 In-Reply-To: <201302042328.11563.andreas@enge.fr> (Andreas Enge's message of "Mon, 4 Feb 2013 23:28:11 +0100") 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: Andreas Enge Cc: bug-guix@gnu.org Andreas Enge skribis: > Am Montag, 4. Februar 2013 schrieb Ludovic Court=C3=A8s: >> Andreas Enge skribis: >> > A question related to my previous posting, but also of independent >> > justification: Should we maybe implement somthing similar to the >> > "depends" field of Debian packages? >> What=E2=80=99s this? > > When A "depends on" B in debian jargon, then installing A automatically=20 > also installs B. In our case, a user issuing "guix-package -i mpc" would= =20 > end up with gmp, mpfr and mpc in the profile. OK. That=E2=80=99s =E2=80=9Cuser-environment-propagated-inputs=E2=80=9D. = We could achieve that by just changing guix-profile to install propagated inputs. That=E2=80=99s probably the right thing to do anyway. [...] >> Yes, but mpfr.h and gmp.h still need to be in the user=E2=80=99s CPATH, = which >> contains ~/.guix-profile/include. So putting them in the user=E2=80=99s= profile >> seems unavoidable. > > Probably so; come to think of it, the cases where one wants to link again= st=20 > a dynamic library, but not write source code using the headers, should be= =20 > really rare (linking a compiled program against a newer version of the=20 > library would be a possible case, which is somewhat contrary to the guix= =20 > philosophy). Yes. >> I think you=E2=80=99re concerned about cluttering the user=E2=80=99s pro= file, right? > > Not really. I just wonder what we should do, and what a user would expect= .=20 > For instance, in debian, gcc depends on binutils and the glibc. So when y= ou=20 > install gcc, you also get the other two packages. Is this what we want or= =20 > not? In the general case, I think so, yes. Installing MPC should definitely install MPFR and GMP. Similarly for Guile 2.0, whose public headers refer to libgc=E2=80=99s. For GCC, the situation is more complicated, because GCC has a loose tie to Binutils and libc. For instance, it happily takes whichever =E2=80=98ld= =E2=80=99 program is in $PATH. It=E2=80=99s more closely tied to libc, though, becau= se we explicitly patch its spec strings to refer to it; so at least libc should be a propagated input of GCC. WDYT? Thanks, Ludo=E2=80=99. From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas Enge Subject: Re: Required packages Date: Wed, 6 Feb 2013 00:09:23 +0100 Message-ID: <201302060009.23376.andreas@enge.fr> References: <201302041952.22425.andreas@enge.fr> <201302042328.11563.andreas@enge.fr> <87ehgur9h7.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="Boundary-01=_jEZERlS8Fq6rZrK" Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:36136) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2rdt-0000NI-4n for bug-guix@gnu.org; Tue, 05 Feb 2013 18:09:36 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U2rdq-0001TX-LF for bug-guix@gnu.org; Tue, 05 Feb 2013 18:09:33 -0500 In-Reply-To: <87ehgur9h7.fsf@gnu.org> 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: Ludovic =?utf-8?q?Court=C3=A8s?= Cc: bug-guix@gnu.org --Boundary-01=_jEZERlS8Fq6rZrK Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Am Dienstag, 5. Februar 2013 schrieb Ludovic Court=C3=A8s: > For GCC, the situation is more complicated, because GCC has a loose tie > to Binutils and libc. For instance, it happily takes whichever =E2=80=98= ld=E2=80=99 > program is in $PATH. It=E2=80=99s more closely tied to libc, though, bec= ause we > explicitly patch its spec strings to refer to it; so at least libc > should be a propagated input of GCC. Sounds good to me. Andreas --Boundary-01=_jEZERlS8Fq6rZrK Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable

Am Dienstag= , 5. Februar 2013 schrieb Ludovic Court=C3=A8s:

> For GC= C, the situation is more complicated, because GCC has a loose tie

> to Bin= utils and libc. For instance, it happily takes whichever =E2=80=98ld=E2=80= =99

> progra= m is in $PATH. It=E2=80=99s more closely tied to libc, though, because we<= /p>

> explic= itly patch its spec strings to refer to it; so at least libc

> should= be a propagated input of GCC.

&nb= sp;

Sounds good= to me.

&nb= sp;

Andreas

&nb= sp;

--Boundary-01=_jEZERlS8Fq6rZrK-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Required packages Date: Wed, 06 Feb 2013 23:09:02 +0100 Message-ID: <87bobxccxt.fsf@gnu.org> References: <201302041952.22425.andreas@enge.fr> <87lib3pwa6.fsf@gnu.org> <201302042328.11563.andreas@enge.fr> <87ehgur9h7.fsf@gnu.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]:43401) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3DAw-0005t8-9R for bug-guix@gnu.org; Wed, 06 Feb 2013 17:09:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U3DAv-0000aS-6Y for bug-guix@gnu.org; Wed, 06 Feb 2013 17:09:06 -0500 Received: from mail3-relais-sop.national.inria.fr ([192.134.164.104]:14467) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3DAv-0000aL-0A for bug-guix@gnu.org; Wed, 06 Feb 2013 17:09:05 -0500 In-Reply-To: <87ehgur9h7.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Tue, 05 Feb 2013 17:50:12 +0100") 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: Andreas Enge Cc: bug-guix@gnu.org Hi! ludo@gnu.org (Ludovic Court=C3=A8s) skribis: > Andreas Enge skribis: > >> Am Montag, 4. Februar 2013 schrieb Ludovic Court=C3=A8s: >>> Andreas Enge skribis: >>> > A question related to my previous posting, but also of independent >>> > justification: Should we maybe implement somthing similar to the >>> > "depends" field of Debian packages? >>> What=E2=80=99s this? >> >> When A "depends on" B in debian jargon, then installing A automatically= =20 >> also installs B. In our case, a user issuing "guix-package -i mpc" would= =20 >> end up with gmp, mpfr and mpc in the profile. > > OK. That=E2=80=99s =E2=80=9Cuser-environment-propagated-inputs=E2=80=9D.= We could achieve that > by just changing guix-profile to install propagated inputs. That=E2=80= =99s > probably the right thing to do anyway. Commit 4dede02 implements that. So now, when one installs MPC, MPFR and GMP automatically end up in the profile as well. When removing MPC, all three vanish. Of course, if you had installed MPC and MPFR (say), and then remove MPC, MPFR and GMP remain in the profile. (IOW, it does the right thing.) This required a slight change in the format of profile manifests, so that the list of propagated inputs of each installed package is also memorized. Please test and report any issues! Thanks, Ludo=E2=80=99. From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas Enge Subject: Re: Required packages Date: Thu, 7 Feb 2013 13:16:24 +0100 Message-ID: <201302071316.24589.andreas@enge.fr> References: <201302041952.22425.andreas@enge.fr> <87ehgur9h7.fsf@gnu.org> <87bobxccxt.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="Boundary-01=_Ys5ERpPJFXya0we" Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:38483) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3QP9-0003aA-H2 for bug-guix@gnu.org; Thu, 07 Feb 2013 07:16:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U3QP6-0001nn-LN for bug-guix@gnu.org; Thu, 07 Feb 2013 07:16:39 -0500 In-Reply-To: <87bobxccxt.fsf@gnu.org> 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: Ludovic =?utf-8?q?Court=C3=A8s?= Cc: bug-guix@gnu.org --Boundary-01=_Ys5ERpPJFXya0we Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Am Mittwoch, 6. Februar 2013 schrieb Ludovic Court=C3=A8s: \> > OK. That=E2=80=99s =E2=80=9Cuser-environment-propagated-inputs=E2=80= =9D. We could achieve > > that by just changing guix-profile to install propagated inputs.=20 > > That=E2=80=99s probably the right thing to do anyway. >=20 > Commit 4dede02 implements that. Good initiative! In my attempt to install guix from guix, I came upon the problem that the=20 libgcrypt headers require the libgpg-error headers. This is a propagated=20 input, so should in the future be installed automatically. However, the next problem is: In file included from /home/privat/.guix-profile/include/sys/socket.h:39:0, from /home/privat/.guix-profile/include/gcrypt.h:42, from conftest.c:65: /home/privat/.guix-profile/include/bits/socket.h:342:24: fatal error:=20 asm/socket.h: No such file or directory The file is in linux-libre-headers; so I suppose this should also be a=20 propagated input of libgcrypt? If you agree, I will modify the package=20 accordingly. Andreas --Boundary-01=_Ys5ERpPJFXya0we Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable

Am Mittwoch= , 6. Februar 2013 schrieb Ludovic Court=C3=A8s:

\> > = OK. That=E2=80=99s =E2=80=9Cuser-environment-propagated-inputs=E2=80=9D. = We could achieve

> > t= hat by just changing guix-profile to install propagated inputs.

> > T= hat=E2=80=99s probably the right thing to do anyway.

>

> Commit= 4dede02 implements that.

&nb= sp;

Good initia= tive!

&nb= sp;

In my attem= pt to install guix from guix, I came upon the problem that the libgcrypt he= aders require the libgpg-error headers. This is a propagated input, so shou= ld in the future be installed automatically.

&nb= sp;

However, th= e next problem is:

In file inc= luded from /home/privat/.guix-profile/include/sys/socket.h:39:0,

= from /home/privat/.guix-profile/include/gcrypt.h:42,

= from conftest.c:65:

/home/priva= t/.guix-profile/include/bits/socket.h:342:24: fatal error: asm/socket.h: No= such file or directory

&nb= sp;

The file is= in linux-libre-headers; so I suppose this should also be a propagated inpu= t of libgcrypt? If you agree, I will modify the package accordingly.

&nb= sp;

Andreas

&nb= sp;

--Boundary-01=_Ys5ERpPJFXya0we-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas Enge Subject: Re: Required packages Date: Thu, 7 Feb 2013 13:27:31 +0100 Message-ID: <201302071327.31563.andreas@enge.fr> References: <201302041952.22425.andreas@enge.fr> <87bobxccxt.fsf@gnu.org> <201302071316.24589.andreas@enge.fr> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="Boundary-01=_z25ER84SHSr4Lmd" Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:41252) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3QZm-0008Q4-Eb for bug-guix@gnu.org; Thu, 07 Feb 2013 07:27:41 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U3QZj-0004Jf-G8 for bug-guix@gnu.org; Thu, 07 Feb 2013 07:27:38 -0500 In-Reply-To: <201302071316.24589.andreas@enge.fr> 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: bug-guix@gnu.org --Boundary-01=_z25ER84SHSr4Lmd Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Concerning more checking in configure.ac: The files included from nix require sqlite, it would be good to add a check for that. Now I get the following error: Backtrace: In ice-9/boot-9.scm: 157: 5 [catch #t # ...] In unknown file: ?: 4 [apply-smob/1 #] In ice-9/boot-9.scm: 63: 3 [call-with-prompt prompt0 ...] In ice-9/eval.scm: 421: 2 [eval # #] In /home/privat/.guix-profile/bin/guild: 54: 1 [main ("/home/privat/.guix-profile/bin/guild" "compile" "-L" ...)] In unknown file: ?: 0 [setlocale 6 ""] ERROR: In procedure setlocale: ERROR: In procedure setlocale: Invalid argument make[2]: *** [guix/base32.go] Fehler 1 The lines in guild around the error are: (if (defined? 'setlocale) (setlocale LC_ALL "")) If I replace this by (if (defined? 'setlocale) (setlocale LC_ALL "C")) compilation succeeds. A bug in guile/guild? Andreas --Boundary-01=_z25ER84SHSr4Lmd Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: 7bit

Concerning more checking in configure.ac:

The files included from nix require sqlite, it would be good to add a check for that.

 

Now I get the following error:

Backtrace:

In ice-9/boot-9.scm:

157: 5 [catch #t #<catch-closure ca1780> ...]

In unknown file:

?: 4 [apply-smob/1 #<catch-closure ca1780>]

In ice-9/boot-9.scm:

63: 3 [call-with-prompt prompt0 ...]

In ice-9/eval.scm:

421: 2 [eval # #]

In /home/privat/.guix-profile/bin/guild:

54: 1 [main ("/home/privat/.guix-profile/bin/guild" "compile" "-L" ...)]

In unknown file:

?: 0 [setlocale 6 ""]

 

ERROR: In procedure setlocale:

ERROR: In procedure setlocale: Invalid argument

make[2]: *** [guix/base32.go] Fehler 1

 

The lines in guild around the error are:

(if (defined? 'setlocale)

(setlocale LC_ALL ""))

If I replace this by

(if (defined? 'setlocale)

(setlocale LC_ALL "C"))

compilation succeeds. A bug in guile/guild?

 

Andreas

 

--Boundary-01=_z25ER84SHSr4Lmd-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas Enge Subject: Re: Required packages Date: Thu, 7 Feb 2013 13:34:04 +0100 Message-ID: <201302071334.04621.andreas@enge.fr> References: <201302041952.22425.andreas@enge.fr> <87ehgur9h7.fsf@gnu.org> <87bobxccxt.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="Boundary-01=_885ERyAmHadzfvO" Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:43133) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3Qg9-0002Gn-Pr for bug-guix@gnu.org; Thu, 07 Feb 2013 07:34:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U3Qg6-0005pt-TA for bug-guix@gnu.org; Thu, 07 Feb 2013 07:34:13 -0500 In-Reply-To: <87bobxccxt.fsf@gnu.org> 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: Ludovic =?utf-8?q?Court=C3=A8s?= Cc: bug-guix@gnu.org --Boundary-01=_885ERyAmHadzfvO Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Am Mittwoch, 6. Februar 2013 schrieb Ludovic Court=C3=A8s: > > OK. That=E2=80=99s =E2=80=9Cuser-environment-propagated-inputs=E2=80= =9D. We could achieve > > that by just changing guix-profile to install propagated inputs.=20 > > That=E2=80=99s probably the right thing to do anyway. > Commit 4dede02 implements that. It apparently works. The propagated input packages are hidden when issuing guix-package --list-installed , which seems a good idea so that the user is not confused by losing several= =20 packages at a time when just uninstalling one. (Well, there is always source for confusion: When I install mpc and compile= =20 code needing gmp, everything will work; then I uninstall mpc, and things=20 stop working, although the code does not require mpc.) Andreas --Boundary-01=_885ERyAmHadzfvO Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable

Am Mittwoch= , 6. Februar 2013 schrieb Ludovic Court=C3=A8s:

> > O= K. That=E2=80=99s =E2=80=9Cuser-environment-propagated-inputs=E2=80=9D. W= e could achieve

> > t= hat by just changing guix-profile to install propagated inputs.

> > T= hat=E2=80=99s probably the right thing to do anyway.

> Commit= 4dede02 implements that.

&nb= sp;

It apparent= ly works. The propagated input packages are hidden when issuing

guix-pac= kage --list-installed ,

which seems= a good idea so that the user is not confused by losing several packages at= a time when just uninstalling one.

&nb= sp;

(Well, ther= e is always source for confusion: When I install mpc and compile code needi= ng gmp, everything will work; then I uninstall mpc, and things stop working= , although the code does not require mpc.)

&nb= sp;

Andreas

&nb= sp;

--Boundary-01=_885ERyAmHadzfvO-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Required packages Date: Thu, 07 Feb 2013 17:06:49 +0100 Message-ID: <87wqukds6e.fsf@gnu.org> References: <201302041952.22425.andreas@enge.fr> <87ehgur9h7.fsf@gnu.org> <87bobxccxt.fsf@gnu.org> <201302071316.24589.andreas@enge.fr> 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]:45438) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3U03-0005ry-Fn for bug-guix@gnu.org; Thu, 07 Feb 2013 11:07:00 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U3U02-0007zY-0a for bug-guix@gnu.org; Thu, 07 Feb 2013 11:06:59 -0500 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:33603) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3U01-0007yl-QG for bug-guix@gnu.org; Thu, 07 Feb 2013 11:06:57 -0500 In-Reply-To: <201302071316.24589.andreas@enge.fr> (Andreas Enge's message of "Thu, 7 Feb 2013 13:16:24 +0100") 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: Andreas Enge Cc: bug-guix@gnu.org Andreas Enge skribis: > In my attempt to install guix from guix, I came upon the problem that the= =20 > libgcrypt headers require the libgpg-error headers. This is a propagated= =20 > input, so should in the future be installed automatically. The future is actually yesterday. :-) > However, the next problem is: > In file included from /home/privat/.guix-profile/include/sys/socket.h:39:= 0, > from /home/privat/.guix-profile/include/gcrypt.h:42, > from conftest.c:65: > /home/privat/.guix-profile/include/bits/socket.h:342:24: fatal error:=20 > asm/socket.h: No such file or directory > > The file is in linux-libre-headers; so I suppose this should also be a=20 > propagated input of libgcrypt? If you agree, I will modify the package=20 > accordingly. It=E2=80=99s a bit trickier. linux-libre-headers is propagated by glibc, s= o if you install glibc, you get both. However, glibc is an /implicit/ input of everything that uses =E2=80=98gnu-build-system=E2=80=99, such as libgcrypt. So it doesn=E2=80= =99t get installed when you install libgcrypt. I=E2=80=99m not sure whether glibc should be automatically installed as if = it were a propagated input. If the answer were =E2=80=9Cyes=E2=80=9D, I=E2=80= =99m not sure how to achieve it elegantly, because implicit inputs are hidden, by definition. Thoughts? Ludo=E2=80=99. From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Required packages Date: Thu, 07 Feb 2013 17:08:29 +0100 Message-ID: <87obfwds3m.fsf@gnu.org> References: <201302041952.22425.andreas@enge.fr> <87bobxccxt.fsf@gnu.org> <201302071316.24589.andreas@enge.fr> <201302071327.31563.andreas@enge.fr> 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]:45993) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3U1o-0006tL-12 for bug-guix@gnu.org; Thu, 07 Feb 2013 11:09:13 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U3U1X-0008Lr-58 for bug-guix@gnu.org; Thu, 07 Feb 2013 11:08:47 -0500 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:1629) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3U1W-0008Lm-UD for bug-guix@gnu.org; Thu, 07 Feb 2013 11:08:31 -0500 In-Reply-To: <201302071327.31563.andreas@enge.fr> (Andreas Enge's message of "Thu, 7 Feb 2013 13:27:31 +0100") 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: Andreas Enge Cc: bug-guix@gnu.org Andreas Enge skribis: > Now I get the following error: > Backtrace: > In ice-9/boot-9.scm: > 157: 5 [catch #t # ...] > In unknown file: > ?: 4 [apply-smob/1 #] > In ice-9/boot-9.scm: > 63: 3 [call-with-prompt prompt0 ...] > In ice-9/eval.scm: > 421: 2 [eval # #] > In /home/privat/.guix-profile/bin/guild: > 54: 1 [main ("/home/privat/.guix-profile/bin/guild" "compile" "-L" ...)] > In unknown file: > ?: 0 [setlocale 6 ""] > > ERROR: In procedure setlocale: > ERROR: In procedure setlocale: Invalid argument > make[2]: *** [guix/base32.go] Fehler 1 > > The lines in guild around the error are: > (if (defined? 'setlocale) > (setlocale LC_ALL "")) > If I replace this by > (if (defined? 'setlocale) > (setlocale LC_ALL "C")) > compilation succeeds. A bug in guile/guild? Yes. Fixed at . The core problem is that our glibc doesn=E2=80=99t install locale data (nor timezone data). Something to be fixed in the next core-updates. Ludo=E2=80=99. From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Required packages Date: Thu, 07 Feb 2013 17:09:30 +0100 Message-ID: <87ip64ds1x.fsf@gnu.org> References: <201302041952.22425.andreas@enge.fr> <87ehgur9h7.fsf@gnu.org> <87bobxccxt.fsf@gnu.org> <201302071334.04621.andreas@enge.fr> 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]:54555) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3UYt-0005nW-6U for bug-guix@gnu.org; Thu, 07 Feb 2013 11:43:00 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U3UYr-0008U3-GG for bug-guix@gnu.org; Thu, 07 Feb 2013 11:42:58 -0500 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:19894) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3U2V-00006F-DH for bug-guix@gnu.org; Thu, 07 Feb 2013 11:09:31 -0500 In-Reply-To: <201302071334.04621.andreas@enge.fr> (Andreas Enge's message of "Thu, 7 Feb 2013 13:34:04 +0100") 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: Andreas Enge Cc: bug-guix@gnu.org Andreas Enge skribis: > Am Mittwoch, 6. Februar 2013 schrieb Ludovic Court=C3=A8s: >> > OK. That=E2=80=99s =E2=80=9Cuser-environment-propagated-inputs=E2=80= =9D. We could achieve >> > that by just changing guix-profile to install propagated inputs.=20 >> > That=E2=80=99s probably the right thing to do anyway. >> Commit 4dede02 implements that. > > It apparently works. The propagated input packages are hidden when issuing > guix-package --list-installed , > which seems a good idea so that the user is not confused by losing severa= l=20 > packages at a time when just uninstalling one. Yes. > (Well, there is always source for confusion: When I install mpc and compi= le=20 > code needing gmp, everything will work; then I uninstall mpc, and things= =20 > stop working, although the code does not require mpc.) Right, but that=E2=80=99s life. ;-) I=E2=80=99ll update the manual to document this behavior. Thanks for testing! Ludo=E2=80=99. From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas Enge Subject: Re: Required packages Date: Thu, 7 Feb 2013 17:19:26 +0100 Message-ID: <201302071719.27034.andreas@enge.fr> References: <201302041952.22425.andreas@enge.fr> <201302071316.24589.andreas@enge.fr> <87wqukds6e.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="Boundary-01=_PQ9ERqUBgo5AsI1" Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:54856) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3UZa-000628-Kv for bug-guix@gnu.org; Thu, 07 Feb 2013 11:43:46 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U3UCJ-0002Cg-Oj for bug-guix@gnu.org; Thu, 07 Feb 2013 11:19:47 -0500 In-Reply-To: <87wqukds6e.fsf@gnu.org> 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: Ludovic =?utf-8?q?Court=C3=A8s?= Cc: bug-guix@gnu.org --Boundary-01=_PQ9ERqUBgo5AsI1 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Am Donnerstag, 7. Februar 2013 schrieb Ludovic Court=C3=A8s: > Andreas Enge skribis: > > In my attempt to install guix from guix, I came upon the problem that > > the libgcrypt headers require the libgpg-error headers. This is a > > propagated input, so should in the future be installed automatically. > The future is actually yesterday. :-) Well, I first needed to compile yesterday's version, so my future was=20 indeed in the future (although now it is in the past, a fate every future=20 has to suffer). ;-) > It=E2=80=99s a bit trickier. linux-libre-headers is propagated by glibc,= so if > you install glibc, you get both. >=20 > However, glibc is an /implicit/ input of everything that uses > =E2=80=98gnu-build-system=E2=80=99, such as libgcrypt. So it doesn=E2=80= =99t get installed when > you install libgcrypt. >=20 > I=E2=80=99m not sure whether glibc should be automatically installed as i= f it > were a propagated input. If the answer were =E2=80=9Cyes=E2=80=9D, I=E2= =80=99m not sure how to > achieve it elegantly, because implicit inputs are hidden, by definition. Is this not too dangerous? It would mean that as soon as you install=20 anything, you get the glibc. And in a system that has guix and a native=20 glibc, things might stop working from there on... Since I installed the guix glibc before you implemented the automatic=20 installation of propagated inputs, I hit a problem that should have=20 disappeared in the meantime. So I would suggest to do nothing. Andreas --Boundary-01=_PQ9ERqUBgo5AsI1 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable

Am Donnerst= ag, 7. Februar 2013 schrieb Ludovic Court=C3=A8s:

> Andrea= s Enge <andreas@enge.fr> skribis:

> > I= n my attempt to install guix from guix, I came upon the problem that

> > t= he libgcrypt headers require the libgpg-error headers. This is a

> > p= ropagated input, so should in the future be installed automatically.

> The fu= ture is actually yesterday. :-)

&nb= sp;

Well, I fir= st needed to compile yesterday's version, so my future was indeed in the fu= ture (although now it is in the past, a fate every future has to suffer). ;= =2D)

&nb= sp;

> It=E2= =80=99s a bit trickier. linux-libre-headers is propagated by glibc, so if<= /p>

> you in= stall glibc, you get both.

>

> Howeve= r, glibc is an /implicit/ input of everything that uses

> =E2=80= =98gnu-build-system=E2=80=99, such as libgcrypt. So it doesn=E2=80=99t get= installed when

> you in= stall libgcrypt.

>

> I=E2= =80=99m not sure whether glibc should be automatically installed as if it

> were a= propagated input. If the answer were =E2=80=9Cyes=E2=80=9D, I=E2=80=99m n= ot sure how to

> achiev= e it elegantly, because implicit inputs are hidden, by definition.

&nb= sp;

Is this not= too dangerous? It would mean that as soon as you install anything, you get= the glibc. And in a system that has guix and a native glibc, things might = stop working from there on...

&nb= sp;

Since I ins= talled the guix glibc before you implemented the automatic installation of = propagated inputs, I hit a problem that should have disappeared in the mean= time. So I would suggest to do nothing.

&nb= sp;

Andreas

&nb= sp;

--Boundary-01=_PQ9ERqUBgo5AsI1-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Required packages Date: Thu, 07 Feb 2013 22:39:36 +0100 Message-ID: <87pq0bn6qv.fsf@gnu.org> References: <201302041952.22425.andreas@enge.fr> <201302071316.24589.andreas@enge.fr> <87wqukds6e.fsf@gnu.org> <201302071719.27034.andreas@enge.fr> 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]:40296) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3ZC0-00057K-Lt for bug-guix@gnu.org; Thu, 07 Feb 2013 16:39:41 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U3ZBz-0008Bu-As for bug-guix@gnu.org; Thu, 07 Feb 2013 16:39:40 -0500 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:53227) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U3ZBz-0008Bo-4D for bug-guix@gnu.org; Thu, 07 Feb 2013 16:39:39 -0500 In-Reply-To: <201302071719.27034.andreas@enge.fr> (Andreas Enge's message of "Thu, 7 Feb 2013 17:19:26 +0100") 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: Andreas Enge Cc: bug-guix@gnu.org Andreas Enge skribis: > Am Donnerstag, 7. Februar 2013 schrieb Ludovic Court=C3=A8s: >> Andreas Enge skribis: >> > In my attempt to install guix from guix, I came upon the problem that >> > the libgcrypt headers require the libgpg-error headers. This is a >> > propagated input, so should in the future be installed automatically. >> The future is actually yesterday. :-) > > Well, I first needed to compile yesterday's version, so my future was=20 > indeed in the future (although now it is in the past, a fate every future= =20 > has to suffer). ;-) I see. Hopefully you don=E2=80=99t have to roll back to the future. :-) >> It=E2=80=99s a bit trickier. linux-libre-headers is propagated by glibc= , so if >> you install glibc, you get both. >>=20 >> However, glibc is an /implicit/ input of everything that uses >> =E2=80=98gnu-build-system=E2=80=99, such as libgcrypt. So it doesn=E2= =80=99t get installed when >> you install libgcrypt. >>=20 >> I=E2=80=99m not sure whether glibc should be automatically installed as = if it >> were a propagated input. If the answer were =E2=80=9Cyes=E2=80=9D, I=E2= =80=99m not sure how to >> achieve it elegantly, because implicit inputs are hidden, by definition. > > Is this not too dangerous? It would mean that as soon as you install=20 > anything, you get the glibc. And in a system that has guix and a native=20 > glibc, things might stop working from there on... > > Since I installed the guix glibc before you implemented the automatic=20 > installation of propagated inputs, I hit a problem that should have=20 > disappeared in the meantime. So I would suggest to do nothing. Yeah, I prefer it this way. Thanks for the feedback, Ludo=E2=80=99.