From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48957) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ddqGw-0007tG-9e for guix-patches@gnu.org; Sat, 05 Aug 2017 00:01:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ddqGs-0002nR-Cx for guix-patches@gnu.org; Sat, 05 Aug 2017 00:01:06 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:39651) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ddqGs-0002nH-9g for guix-patches@gnu.org; Sat, 05 Aug 2017 00:01:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ddqGr-0006J3-Qv for guix-patches@gnu.org; Sat, 05 Aug 2017 00:01:01 -0400 Subject: [bug#27438] [PATCH] Specify native search path for all ruby packages Resent-Message-ID: References: <0c3c92c6-05ca-bb36-2f24-69077033e91f@cbaines.net> <878tkliix9.fsf@gnu.org> <6a666d6f-f2c2-d786-8fda-422ab28867ca@cbaines.net> <20170716183705.18b5025e@cbaines.net> <20170722110630.19b5fce0@cbaines.net> From: Ben Woodcroft Message-ID: <794765de-67a1-040b-3877-a19bfe83183f@uq.edu.au> Date: Sat, 5 Aug 2017 13:59:56 +1000 MIME-Version: 1.0 In-Reply-To: <20170722110630.19b5fce0@cbaines.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Christopher Baines Cc: 27438@debbugs.gnu.org Hi Chris, sorry for the delay on this. On 22/07/17 20:06, Christopher Baines wrote: > On Thu, 20 Jul 2017 09:39:13 +1000 > Ben Woodcroft wrote: > >> Hi Chris, >> >> >> [..] >> >> What happens to the default gems that come bundled with ruby itself? >> I'm interpreting from your patch that these will not be available? > They seem to be: OK, excellent. >> In general, except for some special circumstances, we don't support >> old versions of software. To fix the issue that you are encountering >> properly with nokogiri probably requires new package definitions >> using "package-with-ruby-2.3" or similar to be made, I suppose. Ludo >> did some nice work making this easier (see >> https://lists.gnu.org/archive/html/guix-patches/2017-04/msg00126.html), >> but I worry in general about the resources required to support older >> Ruby versions. WDYT? > I'm not aware of any particular problems if you are working with the > package definitions in Guile, as it should be possible to make them use > the single ruby version that you want. > > With the guix environment command I posted: > > guix environment --pure --ad-hoc ruby-nokogiri ruby@2.1 -- ruby -e > "puts require 'nokogiri'" > > It would be ideal if there was some way of telling guix environment to > rewrite the package definitions of all packages to use ruby@2.1 in > place of whatever ruby they might be using. Is "package-mapping" sufficient? [..] >> Perhaps I'm slow, but what are the advantages of the "vendor_ruby" >> method over exporting multiple GEM_PATHs as Ludo and I suggested? >> Changing the directory seems like a heavier touch and so more likely >> to misbehave. WDYT? > I agree that it is heavier in some sense, but I like the simplicity of > getting rid of the version from the path. > > The best documentation I've found for this is the NEWS of the release > where it was added [1]. While Guix blurs the lines between the "package > system" and the "user", using this vendor directory might come in > useful. > > 1: http://svn.ruby-lang.org/repos/ruby/tags/v1_8_7/NEWS Ah, OK. I hadn't realised there was support for this baked into Ruby itself. Seems obvious in hindsight. If all Ruby dependencies build with this change, then the change seems reasonable to me, details aside. ben