From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: [PATCH] gnu: r: Update to 3.3.1. Date: Tue, 02 Aug 2016 07:53:06 +0200 Message-ID: <8737mn67jx.fsf@elephly.net> References: <874m77gpll.fsf@gnu.org> <8660rmgbgh.fsf@gmail.com> <20160731040956.GA22271@thebird.nl> <87popup2e9.fsf@gnu.org> <8660rllmur.fsf@gmail.com> <20160801060032.GB26920@thebird.nl> <86eg68cstn.fsf@gmail.com> <874m745kci.fsf@elephly.net> <20160802035044.GA30436@thebird.nl> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:35096) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUSdk-0006Of-4Z for guix-devel@gnu.org; Tue, 02 Aug 2016 01:53:21 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bUSdg-0001go-1O for guix-devel@gnu.org; Tue, 02 Aug 2016 01:53:19 -0400 Received: from sender163-mail.zoho.com ([74.201.84.163]:24989) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUSdf-0001gX-O4 for guix-devel@gnu.org; Tue, 02 Aug 2016 01:53:15 -0400 In-reply-to: <20160802035044.GA30436@thebird.nl> 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: Pjotr Prins Cc: guix-devel@gnu.org, myglc2 Pjotr Prins writes: > On Mon, Aug 01, 2016 at 10:02:05PM +0200, Ricardo Wurmus wrote: >> We have importers that generate Guix package expressions from CRAN or >> Bioconductor. Taken one step further we might have a transparent >> wrapper to quickly install any version of a package even if it is not >> yet part of Guix. >> >> This might work like this: >> >> * user issues “guix package --install --via cran gdtools@0.0.3” >> >> * Guix runs the CRAN importe to recursively generate package expressions >> for “gdtools” at the given version. The package does not have to >> exist in Guix yet. The generated package expressions are cached >> somewhere (e.g. ~/.cache/guix/…genomation…). >> >> * Guix loads the newly imported package expressions from >> ~/.cache/guix/…genomation… and tries to build them. >> >> * Optionally, users can take the imported expressions, clean them up and >> send them as patches to us :) >> >> This obviously depends on the quality of the importers, but I think it >> wouldn’t take much effort to make this a reality. The main problem with >> offering magic like this is that it must be reliable or else it would >> just be frustrating users. >> >> At least for CRAN I think this is feasible. (Bioconductor is a >> different beast as versions would need to be given as Bioconductor SVN >> revisions, which breaks the package boundaries.) > > Another thing to keep in mind is that CRAN has the nasty habit of > moving older source packages to archive directories. Some packages are > removed altogether. We can/should make use of Guix' own source cache. We already get around the first of these two problems by specifying a list of source URLs via “cran-uri”: the first is the plain URL of the latest tarball, the second is a URL from the archive. This allows us to continue to build CRAN packages even when their source tarballs are moved to the archive. For Bioconductor this doesn’t work (as they have no archives at all) and we’ll have to switch to building from SVN eventually. ~~ Ricardo