For software that I have been installing and trying to use, I often see dependencies that require a certain version of software that is not the most current version. How reasonable is it to install multiple versions of software so that I have the most recent version, in addition to an older version that other software requires? The software I would like to have multiple versions of include Python, Cytoscape, and Biom Format. All of these software sources still have the past versions I am interested in available from their websites. When I was reading forum posts related to installing Biom Format for QIIME and PICRUSt, I saw some mention of using virtual sessions within a single computer to install multiple versions of Biom Format. I have been able to install most of the software I have needed on my Ubuntu computer, but would it be possible and reasonable for me to install multiple versions of Cytoscape or Biom Format on my computer?
3 answers
For most software, you can have multiple versions. As others pointed, you can use a package manager like {home,linux}brew or conda, which will allow multiple versions of the same software. Most bioinformatics packages are distributed as source, then usually you just have to read the instructions and tweak a bit. For example, most packages will install with ./configure && make && make install, you just have to (generally) run ./configure --prefix=path/to/specific/version. Python packages are easily managed with virtualenv. To manage these multiple versions, for the most part you have to set up PATH and sometimes LD_LIBRARY_PATH variables - modules is a fancy way of doing this and hiding the complications from regular users.
Cytoscape, on the other hand, I do not know, as it creates a .cytoscape folder, and different versions may be incompatible (versions 2 and 3 are).
Log in to answer this question.
I've been using conda to manage QIIME versions. Since most/all of what you seem to want are Python, that might be a useful approach.