Monday, November 28, 2011

http://lausanne.isb-sib.ch/~sengstag/bioc_mirror.html

Setting up a local BioConductor mirror

Conventions:

BIOCDISK = The path to a big disk that will contain the BioConductor files
YOURSERVER = The name of the machine that will serve the files

Setting up the mirror

The present instructions are for BioConductor 1.9 which is to
be used in conjunction with R 2.4.

Note: Given that the BioConductor directory structure changed
by version 1.8, these instructions should not be expected to work
with earlier versions.

Preparing the distribution directory

Setup the copy of the official repository:

 rsync -rtlv bioconductor.org::1.9 BIOCDISK/bioconductor/packages/1.9

The rsync command should be on a crontab to maintain the mirror in sync.

Download original installation scripts:

 cd BIOCDISK/bioconductor/
wget http://www.bioconductor.org/getBioC.R
wget http://www.bioconductor.org/biocLite.R

Download core install script for R version corresponding to BioC version:

 mkdir -p BIOCDISK/bioconductor/installScripts/2.4
cd BIOCDISK/bioconductor/installScripts/2.4
wget http://bioconductor.org/installScripts/2.4/biocinstall.R

Adapt the hardcoded paths in scripts to point to the new server:

 cd BIOCDISK/bioconductor/
foreach f (getBioC.R biocLite.R installScripts/2.4/biocinstall.R)
cp $f $f.save
sed -e 's/http:\/\/[w.]*bioconductor.org/http:\/\/YOURSERVER\/bioconductor/g' $f.save > $f
end

Configuring web server (debian machine)

Create the file /etc/apache2/conf.d/bioconductor.conf:

 Alias /bioconductor BIOCDISK/bioconductor
<Directory "BIOCDISK/bioconductor">
EnableSendfile Off # In case there is no sendfile() support (happens with NFS)
Options +Indexes
Order deny,allow
Allow from all
</Directory>

Then reload http configuration with:

 /etc/init.d/apache2 reload

Use a browser to check that the mirror is visible: http://YOURSERVER/bioconductor

Using the mirror

The BioConductor mirror is used in the same way as the original BioConductor
repository, the only difference being that wherever "http://www.bioconductor.org/"
or "http://bioconductor.org/" occurs in the documentation, these strings must be
replaced by "http://YOURSERVER/bioconductor/".

Base install, light:

 source("http://YOURSERVER/bioconductor/biocLite.R")
biocLite()

Base install, heavier:

 source("http://YOURSERVER/bioconductor/getBioC.R")
getBioC()

Installation of extra packages:

 source("http://YOURSERVER/bioconductor/biocLite.R")
biocLite(c("pkg1", "pkg2"))

Individual files on the mirror can be accessed from http://YOURSERVER/bioconductor

Version 1.0, Thierry Sengstag, October 26, 2006

No comments:

Post a Comment