linzhi2013 / MitoZ

MitoZ: A toolkit for assembly, annotation, and visualization of animal mitochondrial genomes
https://doi.org/10.1093/nar/gkz173
GNU General Public License v3.0
114 stars 39 forks source link

NCBI installation updates #2

Closed ghost closed 5 years ago

ghost commented 5 years ago

Dear MitoZ team, Thanks for updating and maintaining the repository. I have a question regarding installing NCBI database inside ete3 package command:

from ete3 import NCBITaxa ncbi = NCBITaxa() ncbi.update_taxonomy_database()

Many HPC actually refuse to give FTP right to the users.However the NCBI database are all already installed locally. I went through the source codes and it seems mitoz actually need FTP connection for creating populating database when first executed. I see we can change the database later on but i don't see how we can feed a local NCBI database to the function "ncbi = NCBITaxa()". I am wondering if you have any suggestions regarding solving the issue. Thanks in advance

linzhi2013 commented 5 years ago

Dear aremkho,

This is a very good question.

I noticed this problem during the development of MitoZ. MitoZ relies on the ETE3 pakcage, which must install the NCBI taxonomy database into ~/.etetoolkit/ directory:

.etetoolkit/
├── taxa.sqlite
└── taxa.sqlite.traverse.pkl

As you can see, the ETE3 package will transform the ftp://ftp.ncbi.nlm.nih.gov/pub/taxonomy/taxdump.tar.gz into two files: taxa.sqlite and taxa.sqlite.traverse.pkl under the ~/.etetoolkit/ directory. So the taxonomy database on your HPC will not work for ETE3 package.

My goal was to install the database into somewhere else, then I checked the ETE3's source code, and found that I cannot do it easily, because one has to modify much of the ETE3's source code.

Since I want to make it more easily to distribute MiotZ, for example, use conda to install all relevant dependencies automatically, so I gave up on this.

NB: I am currently updating MitoZ, but the version 2.2 is still testing: the algorithm is the same as verion 1.0, changes only invoked to make it more user-friendly. The testing will be done in one or two weeks, I hope.

Cheers, Guanliang Meng

ghost commented 5 years ago

Dear Guanliang, Thanks for your kind answer. The MitoZ is actually very well written and I don't have any issue running it locally. ete3 FTP issue is an issue that we need to address to ete3 team. Looking forward to test version2. Cheers Arsalan

linzhi2013 commented 5 years ago

Dear Arsalan,

Thank you very much!

Now I'm going to close the issue. Please open new issues if you have questions.

linzhi2013 commented 5 years ago

Closed since the limitation is from ETE3 package.