From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Kost Subject: Re: Problems with downloading from https Date: Mon, 27 Oct 2014 16:27:54 +0300 Message-ID: <8761f5zlph.fsf@gmail.com> References: <877fzogiq5.fsf@gmail.com> <20141025200250.675.55930@vulcan.local.tld> <87y4s348k1.fsf@gmail.com> <87fveboseq.fsf@gnu.org> <87k33m4ob9.fsf@gmail.com> <87vbn6h7f4.fsf@gnu.org> <87oasxj2z1.fsf@netris.org> <87ioj566pv.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 ([2001:4830:134:3::10]:58114) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XikL8-0008FS-Sp for guix-devel@gnu.org; Mon, 27 Oct 2014 09:28:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XikL0-0005to-S1 for guix-devel@gnu.org; Mon, 27 Oct 2014 09:28:06 -0400 In-Reply-To: <87ioj566pv.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 27 Oct 2014 13:24:28 +0100") 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-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel@gnu.org Ludovic Court=C3=A8s (2014-10-27 15:24 +0300) wrote: > Mark H Weaver skribis: > >> ludo@gnu.org (Ludovic Court=C3=A8s) writes: >> >>> Alex Kost skribis: >>> >>>> Ludovic Court=C3=A8s (2014-10-26 16:46 +0300) wrote: >>>> >>>>> Alex Kost skribis: >>>>> >>>>>> Yes, I installed gnutls, but it didn't work because I didn't set the >>>>>> right guile paths: =E2=80=9Cguix package --search-paths=E2=80=9D rec= ommends >>>>>> "/usr/local/var/guix/profiles/per-user//guix-profile/share/gui= le/site/2.0" >>>>>> but "gnutls.scm" is actually placed in >>>>>> "/usr/local/var/guix/profiles/per-user//guix-profile/share/gui= le/site" >>>>>> so =E2=80=98(use-modules (gnutls))=E2=80=99 failed for me. >>>>> >>>>> Oh, that=E2=80=99s a bug of the GnuTLS package: we should pass the ri= ght >>>>> configure flag so that modules go to site/2.0. Could you do that? >> >> Alex committed this change, and it broke all https downloads in Guix, >> leading to hydra build failures. For example, see: >> >> http://hydra.gnu.org/build/132928/nixlog/1/raw >> >> The reason is that guix/download.scm contains this code: >> >> ;; Add GnuTLS to the inputs and to the load path. >> #~(eval-when (load expand eval) >> (set! %load-path >> (cons (string-append #$(gnutls-package) >> "/share/guile/site") >> %load-path))) >> #~#t) > > Oops, my bad. I think this code should be changed to use site/2.0, > which is the standard search path specification. > >> For now, I think we should revert this commit and discuss it further >> before proceeding. > > I would just fix the above code to append (effective-version). WDYT? > >>>> Yes, but I'm a little concerned. Should it really be so? What about >>>> guile-1.8; isn't it supposed to use gnutls module as well? >>> >>> 1.8 has long been deprecated, so let=E2=80=99s not worry about it. >> >> I think Alex was right to be concerned. We'll have the same problem >> when Guile 2.2 comes around, and then again for 2.4. I'm reluctant to >> hardcode "2.0" into the code above. Think about what it implies for >> GnuTLS in the future. Will they be expected to install their modules >> into site/2.0, site/2.2, site/2.4, etc? Do we really want to advocate >> this practice to projects that install Guile modules? > > No, you=E2=80=99re right, of course. However, I tend to distinguish betw= een the > immediate issue that calls for a fix, and the design issue that has to > be addressed, but is less pressing. > > Currently, there are a couple of packages that hard-code site/2.0. They > should be changed to use: > > (string-append "--with-site-dir=3D.../site/" (effective-version)) > > That doesn=E2=80=99t help with 1.8, though, because 1.8 uses /site. Perh= aps a > fix would be to change 1.8 in Guix so that it uses a versioned site > directory like future versions do? Another option would be to ignore 1.8. > > WDYT? > > There may be similar problems with Python, Ruby, etc., although these > haven=E2=80=99t come up yet, I think. These can hopefully be addressed by > having their respective build system pass #:effective-version to the > build code. Thoughts? Why not just allow gnutls and other packages to install guile modules in a site dir (without version) and to augment GUILE_LOAD_PATH with it as I suggested at ? --=20 Alex