From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1OSC39-0004tL-JO for garchives@archives.gentoo.org; Fri, 25 Jun 2010 16:46:43 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 09B31E06E8; Fri, 25 Jun 2010 16:46:10 +0000 (UTC) Received: from smtp.webfaction.com (mail6.webfaction.com [74.55.86.74]) by pigeon.gentoo.org (Postfix) with ESMTP id AEC27E06E8 for ; Fri, 25 Jun 2010 16:46:10 +0000 (UTC) Received: from mail-ww0-f53.google.com (mail-ww0-f53.google.com [74.125.82.53]) by smtp.webfaction.com (Postfix) with ESMTP id E20D6324A5E for ; Fri, 25 Jun 2010 11:46:09 -0500 (CDT) Received: by wwb17 with SMTP id 17so1118643wwb.40 for ; Fri, 25 Jun 2010 09:46:08 -0700 (PDT) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-science@lists.gentoo.org Reply-to: gentoo-science@lists.gentoo.org MIME-Version: 1.0 Received: by 10.227.69.84 with SMTP id y20mr796364wbi.226.1277484368275; Fri, 25 Jun 2010 09:46:08 -0700 (PDT) Received: by 10.216.184.130 with HTTP; Fri, 25 Jun 2010 09:46:08 -0700 (PDT) Date: Fri, 25 Jun 2010 18:46:08 +0200 Message-ID: Subject: [gentoo-science] G-CRAN: time for cake, packages are building From: Auke Booij To: gentoo-science@lists.gentoo.org Content-Type: text/plain; charset=ISO-8859-1 X-Archives-Salt: ac72195f-51d0-422b-a90a-b320f870f8a7 X-Archives-Hash: ece092a14893b4c5077df5e313b1dde8 Just pushed to my git repository: a fallible commit containing an ebuild which builds some CRAN-style packages (hopefully). As some of you might incidentally know, I'm working on getting Gentoo to build CRAN package as a Google Summer of Code project. That means I'm supposed to do something impressive, but I'm leaving that part to you guys. What I /am/ doing is writing some clever code which hopefully will build most CRAN-style packages from within package managers. That would mean automatic dependency resolving (most importantly, this must also work for external (non-CRAN) dependencies), proper installation of documentation, and hopefully a whole lot more clean package handling (perhaps there are dependencies between Bioconductor and CRAN? what about cross-platform building? i am doing my own research regarding this but would love to hear what problems you're expecting and what you'd like to see fixed). Alright, back to e7265e5bfce8a7e39a6cbbb14814bec5e1c3ffc9. No, there is no ebuild for G-CRAN itself, there is no integration with layman, no intelligent documentation installer, no friendly interface, no quick database for fast package searches and/or caching, but at least the darned thing actually builds and installs some CRAN-style packages. If you're desperate to give this Grendel a spin, feel free to clone the git repository and do the following: -modify cran.ebuild to reflect the right location of g-cran.py - there are two instances where you'll need to update it (eventually g-cran.py and friends should just be installed to the right directory, of course) -create or open up a local overlay (let's say you created /usr/local/portage) -execute: # g-cran.py /usr/local/portage sync http://cran.r-project.org (note: this doesn't create a tree yet, and this is actually something I hope to be doing with the cooperation of two other GSoC projects) # mkdir /usr/local/portage/profiles/ # echo "dev-R" >> /usr/local/portage/profiles/categories # mkdir -p /usr/local/portage/dev-R/waved/ # ln -s /somewhere/git-repos/g-cran/cran.ebuild /usr/local/portage/dev-R/waved/waved-1.ebuild (note: the version currently doesn't matter, since CRAN only offers one version of each package anyway) # emerge waved I have to admit I haven't tried portage yet (I'm personally a paludis fanboy), and I think it might complain about checksums and stuff (please tell me if it does), but if you're using paludis too you should be able to install, in this case, waved. You can list all packages by issuing: # g-cran.py /usr/local/portage list-packages Please note that the code very simplistic and will fail on a lot of packages. The dependencies *will* be all wrong, but at least this should give you something to play with. Stay tuned! tulcod.