From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pjotr Prins Subject: Re: Dealing with environment settings on a non-Guix distribution Date: Fri, 10 Feb 2017 10:07:03 +0000 Message-ID: <20170210100703.GA30694@mail.thebird.nl> References: <20170210090122.GA30408@mail.thebird.nl> <87vasixu80.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 ([2001:4830:134:3::10]:38073) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cc89n-0002xQ-Bc for guix-devel@gnu.org; Fri, 10 Feb 2017 05:10:24 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cc89i-00037X-JG for guix-devel@gnu.org; Fri, 10 Feb 2017 05:10:23 -0500 Content-Disposition: inline In-Reply-To: <87vasixu80.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 On Fri, Feb 10, 2017 at 10:37:03AM +0100, Ricardo Wurmus wrote: > Yes, this is something that need simplification. The most common > settings required are >=20 > * GUIX_LOCPATH > depends on =E2=80=9Cglibc-locales=E2=80=9D or =E2=80=9Cglibc-utf8= -locales=E2=80=9D > * GIT_SSL_CAINFO, SSL_CERT_FILE, SSL_CERT_DIR > depend on =E2=80=9Cnss-certs=E2=80=9D or a system-wide cert store Indeed. > On foreign distros it would be nice to handle these things > semi-automatically. Installing =E2=80=9Cglibc-locales=E2=80=9D does no= t automatically > set GUIX_LOCPATH; nor do GIT_SSL_CAINFO, SSL_CERT_FILE, and SSL_CERT_DI= R > get set when installing =E2=80=9Cnss-certs=E2=80=9D. These are the onl= y things I can > think of right now that need to be set manually at the MDC. Pretty muc= h > everything else is handled by =E2=80=9Csource $GUIX_PROFILE/etc/profile= =E2=80=9D (which > we do in a global shell initialisation file). >=20 > I never had to make R switch from curl to wget or to tell it about > additional library paths. Could you elaborate on why this is needed in > your case? Is there a problem we should fix in our R package? It was an older version of Guix (R 3.3.0), so maybe it works now. It did not come with proper support that handled CRAN and git so we 'bootstrapped' with wget. I wrote it up: https://github.com/pjotrp/guix-notes/blob/1d6548383445bebf64aab6f406f41= df6f514afc3/R.org#dealing-with-certificates-and-shared-libraries >=20 > > For Ruby I created a script in > > > > https://github.com/pjotrp/guix-notes/blob/master/scripts/ruby-guix-= env > > > > (actually it is out of date, I also deal with certificates). > > > > I think we can have more of these 'environment' managing scripts. Can > > we somehow get them into Guix? Maybe create a separate package for > > each of them - say ruby-guix-env and r-guix-env? It would help > > bootstrap people using Guix for R, ruby and other languages. >=20 > If we go down this road of offering environment files I=E2=80=99d rathe= r have > something generic. Ideally, our packages would *just work* after > setting common environment variables, such as those mentioned above. Yes. But it would be separate from GuixSD. What would be a good place to run, say, R from. Pj.