Bioconductor packages
1
0
Entering edit mode
9 months ago
mrashad ▴ 80

Dears,

I am trying to download all packages of Bioconductor using BiocManager::available().

I know that BiocManager::available() download the CRAN and Bioconductor packages. Therefore I downloaded the CRAN ones using:

cran_packages <- as.data.frame(available.packages(contrib.url( "https://cran.r-project.org")))

then remove them from the ones that were downloaded using BiocManager::available() to retrieve the only ones related to Bioconductor. The problem is that not all Bioconductor packages are downloaded for example: BiocBasUtils and dualKS packages.

I don't know what should I do to retrieve all the Bioconductor packages without missing something.

Regards,

BiocManager Bioconductor • 1.1k views
ADD COMMENT
2
Entering edit mode

This is most definitely an XY problem. Why are you trying to download all packages from a repository, especially when they will be outdated in less than a quarter? What is your ultimate purpose in creating this gigantic library?

ADD REPLY
0
Entering edit mode

Agreed. There is no realistic scenario to download all 2000-something Bioconductor packages. Please say what the end goal is.

ADD REPLY
1
Entering edit mode

Disagree, there are some legit use cases, it could picture at least two concrete scenarios, see my answer. Also, this repo isn't really huge (188GB) which is almost nothing in storage. It will be one initial download and then minimal sync traffic after that.

ADD REPLY
0
Entering edit mode

You have to add all CRAN dependencies, plus some packages depend on active ExperimentHub connection, packages that build their own conda environment, packages that depend on reticulate and their python dependencies. It's more complex than simply downloading all Bioc packages as tarballs. You need to download and compile everything. That will take a long time and create a gigantic container.

ADD REPLY
1
Entering edit mode
9 months ago
Michael 55k

Possibly you are thinking about setting up a mirror of Bioconductor to take to a desolate island (without internet access, aka a high-security environment without internet access for dealing with human data, hospital IT, indeed the possible applications are many). See: https://www.bioconductor.org/about/mirrors/mirror-how-to/ That fulfills your requirement of downloading all packages albeit via rsync, not Biocmanager, but this solution is more efficient.

ADD COMMENT
0
Entering edit mode

Thanks a lot for your answer. I am trying to do similar to what you sent, but I couldn't find any solution to that. I will try your answer, thanks again.

ADD REPLY
0
Entering edit mode

It would help to know the use case. Also, as others have pointed out, you might have to take more dependencies and therefore more repositories (CRAN, Debian packages) to mirror.

ADD REPLY

Login before adding your answer.

Traffic: 2722 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6