changeset 23:4e70d88adf2f draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/busco/ commit 68696449a909c43d0e44bc9cfc8f8945e8a9dfce
author iuc
date Fri, 04 Apr 2025 11:18:42 +0000
parents e5c372c91e46
children
files busco.xml macros.xml test-data/busco_database_options.loc test-data/genome.fa.gz tool-data/busco_database_options.loc.sample tool_data_table_conf.xml.sample tool_data_table_conf.xml.test
diffstat 7 files changed, 271 insertions(+), 268 deletions(-) [+]
line wrap: on
line diff
--- a/busco.xml	Tue Oct 29 14:13:47 2024 +0000
+++ b/busco.xml	Fri Apr 04 11:18:42 2025 +0000
@@ -8,11 +8,37 @@
     </xrefs>
     <requirements>
         <requirement type="package" version="@TOOL_VERSION@">busco</requirement>
+        <!-- update augustus_species if update the augustus pin -->
+        <requirement type="package" version="3.5.0">augustus</requirement>
         <requirement type="package" version="1.34">tar</requirement>
         <requirement type="package" version="1">fonts-conda-ecosystem</requirement>
+        <!-- TODO might be removed in the future: for some reason conda installs an outdated sepp 4.4.0 but the latest dendropy 5.x which are incompatible -->
+        <requirement type="package" version="4.5.5">sepp</requirement>
     </requirements>
     <version_command>busco --version</version_command>
     <command><![CDATA[
+## tool tests can not run with --offline (otherwise we would need to store a lot of data at IUC)
+## so we create a mock dir in the working dir where the tool can write to
+## 
+## a more thorough test can be executed as follows
+## - set the `test` parameters to `""`
+## - download complete reference DB (~200G, final 105G) to tools/busco/test-data/test-db/busco_downloads
+##   ```
+##   busco --download_path tools/busco/test-data/test-db/busco_downloads/ --download all
+##   find tools/busco/test-data/test-db/busco_downloads/lineages/ -mindepth 1 -maxdepth 1 ! -name '*_odb10*' -exec rm -rf {} \;
+##   find tools/busco/test-data/test-db/busco_downloads/placement_files -mindepth 1 -maxdepth 1 ! -name '*_odb10*' -delete
+##   find tools/busco/test-data/test-db/busco_downloads/lineages/ -name "*.faa.gz" -exec gunzip {} \;;
+##   ```
+## - test containerized (note: test-data is mounted ro in containerized tests)
+## 
+## alternatively .. a bit weaker
+## - set the `test` parameters to `""` comment --offline
+## - run test NOT containerized (this will download the data needed for the tests)
+## - uncomment --offline and test containerized
+#if $test == 'true'
+    mkdir mock_db_path/ &&
+    cp -r '$cached_db.fields.path'/* mock_db_path/ &&
+#end if
 
 #if $busco_mode.mode == 'geno' and $busco_mode.use_augustus.use_augustus_selector == 'augustus':
 
@@ -25,21 +51,27 @@
     mkdir -p 'augustus_dir/species/' &&
     tar -C 'augustus_dir/species/' -xzf '${busco_mode.use_augustus.aug_prediction.augustus_model}' &&
 #end if
+#end if
 
+#if $input.is_of_type("fasta.gz")
+    gunzip -c '$input' > input.fa &&
+#else
+    ln -s '$input' input.fa &&
 #end if
 
 busco
---in '${input}'
+--in 'input.fa'
 --mode '${busco_mode.mode}'
 --out busco_galaxy
 --cpu \${GALAXY_SLOTS:-4}
 --evalue ${adv.evalue}
 --limit ${adv.limit}
 --contig_break ${adv.contig_break}
-
-#if $lineage_conditional.selector == 'cached':
-    --offline
-    --download_path $lineage_conditional.cached_db.fields.path
+#if $test == 'true'
+--download_path mock_db_path
+#else
+--offline
+--download_path '$cached_db.fields.path'
 #end if
 
 #if $lineage.lineage_mode == "auto_detect":
@@ -65,46 +97,36 @@
 #end if
     
 #if $outputs and 'image' in $outputs:
-    &&
-    mkdir BUSCO_summaries
-    &&
-    ls -l busco_galaxy/run_*/ &&
-    cp busco_galaxy/short_summary.*.txt BUSCO_summaries/
-    &&
-    generate_plot.py -wd BUSCO_summaries -rt specific
+    && mkdir BUSCO_summaries
+    && cp busco_galaxy/short_summary.*.txt BUSCO_summaries/
+    && generate_plot.py -wd BUSCO_summaries -rt specific
 #end if
 
 #if $outputs and 'gff' in $outputs:
-    &&
-    echo "\##gff-version 3" > busco_output.gff
-    &&
+    && echo "\##gff-version 3" > busco_output.gff
     ## gff files can be absent
-    cat busco_galaxy/run_*/busco_sequences/*busco_sequences/*.gff >> busco_output.gff 2> /dev/null || true
+    && (cat busco_galaxy/run_*/busco_sequences/*busco_sequences/*.gff >> busco_output.gff 2> /dev/null || true)
 #end if
-
-
+#if $outputs and 'faa' in $outputs:
+    && (cat busco_galaxy/run_*/busco_sequences/*busco_sequences/*.faa >> busco_output.faa 2> /dev/null || true)
+#end if
+#if $outputs and 'fna' in $outputs:
+    && (cat busco_galaxy/run_*/busco_sequences/*busco_sequences/*.fna >> busco_output.fna 2> /dev/null || true)
+#end if
 ]]></command>
     <inputs>
-        <param type="data" name="input" format="fasta" label="Sequences to analyse" help="Can be an assembled genome or transcriptome (DNA), or protein sequences from an annotated gene set."/>
-        <conditional name="lineage_conditional">
-            <param name="selector" type="select" label="Lineage data source">
-                <option value="download">Download lineage data</option>
-                <option value="cached">Use cached lineage data</option>
-            </param>
-            <when value="cached">
-                <param name="cached_db" label="Cached database with lineage" type="select">
-                    <options from_data_table="busco_database">
-                        <validator message="No BUSCO database is available" type="no_options"/>
-                    </options>
-                </param>
-            </when>
-            <when value="download"/>
-        </conditional>
+        <param name="test" type="hidden"/>
+        <param type="data" name="input" format="fasta,fasta.gz" label="Sequences to analyse" help="Can be an assembled genome or transcriptome (DNA), or protein sequences from an annotated gene set."/>
+        <param name="cached_db" label="Cached database with lineage" type="select">
+            <options from_data_table="busco_database">
+                <validator message="No BUSCO database is available - please contact your Galaxy admin." type="no_options"/>
+            </options>
+        </param>
         <conditional name="busco_mode">
             <param argument="--mode" type="select" label="Mode">
                 <option value="geno">Genome assemblies (DNA)</option>
                 <option value="tran">Transcriptome assemblies (DNA)</option>
-                <option value="prot">annotated gene sets (protein)</option>
+                <option value="prot">Annotated gene sets (protein)</option>
             </param>
             <when value="geno">
                 <conditional name="use_augustus">
@@ -127,7 +149,7 @@
                                 <param name="augustus_model" type="data" format="augustus" label="Augustus model"/>
                             </when>
                             <when value="builtin">
-                                <param name="augustus_species" type="select" label="Augustus species model">
+                                <param name="augustus_species" type="select" label="Augustus species model" help="If model name is different than species name it is shown in parentheses." >
                                     <expand macro="augustus_species"/>
                                 </param>
                             </when>
@@ -153,7 +175,9 @@
             </when>
             <when value="select_lineage">
                 <param argument="--lineage_dataset" type="select" label="Lineage">
-                    <expand macro="lineages"/>
+                    <options from_data_table="busco_database_options">
+                        <filter type="param_value" column="2" ref="cached_db"/>
+                    </options>
                 </param>
             </when>
         </conditional>
@@ -163,6 +187,8 @@
             <option value="missing">list with missing IDs</option>
             <option value="image">summary image</option>
             <option value="gff">gff</option>
+            <option value="faa">Protein sequences</option>
+            <option value="fna">Nucleotide sequences</option>
         </param>
 
         <section name="adv" title="Advanced Options" expanded="False">
@@ -186,11 +212,18 @@
         <data name='busco_gff' format='gff3' label="${tool.name} on ${on_string}: GFF" from_work_dir="busco_output.gff">
             <filter>outputs and 'gff' in outputs</filter>
         </data>              
+        <data name='busco_faa' format='fasta' label="${tool.name} on ${on_string}: Protein sequences" from_work_dir="busco_output.faa">
+            <filter>outputs and 'faa' in outputs</filter>
+        </data>              
+        <data name='busco_fna' format='fasta' label="${tool.name} on ${on_string}: Nucleotide sequences" from_work_dir="busco_output.fna">
+            <filter>outputs and 'fna' in outputs</filter>
+        </data>              
     </outputs>
     
     <tests>
-        <test expect_num_outputs="4">
-            <param name="input" value="genome.fa"/>
+        <!-- <test expect_num_outputs="6">
+            <param name="test" value="true"/>
+	        <param name="input" value="genome.fa.gz" ftype="fasta.gz"/>
             <conditional name="lineage">
                 <param name="lineage_mode" value="select_lineage"/>
                 <param name="lineage_dataset" value="arthropoda_odb10"/>
@@ -201,7 +234,7 @@
                     <param name="use_augustus_selector" value="augustus"/>
                 </conditional>
             </conditional>
-            <param name="outputs" value="short_summary,missing,gff"/>
+            <param name="outputs" value="short_summary,missing,gff,faa,fna"/>
             <output name="busco_sum">
                 <assert_contents>
                     <has_text text="# BUSCO version is: @TOOL_VERSION@"/>
@@ -215,9 +248,23 @@
                     <has_text text="##gff-version 3"/>
                 </assert_contents>
             </output>
+            <output name="busco_fna">
+                <assert_contents>
+                    <has_text text=">"/>
+                </assert_contents>
+            </output>
+            <output name="busco_faa">
+                <assert_contents>
+                    <has_text text=">"/>
+                </assert_contents>
+            </output>
             <output name="busco_missing" file="genome_results/missing_buscos_list" compare="diff" lines_diff="10"/>
+            <assert_stdout>
+                <has_text text="BUSCO analysis done"/>
+            </assert_stdout>
         </test>
         <test expect_num_outputs="5">
+            <param name="test" value="true"/>
             <param name="input" value="proteome.fa"/>
             <conditional name="lineage">
                 <param name="lineage_mode" value="select_lineage"/>
@@ -242,8 +289,12 @@
                     <has_text text="##gff-version 3"/>
                 </assert_contents>
             </output>
+            <assert_stdout>
+                <has_text text="BUSCO analysis done"/>
+            </assert_stdout>
         </test>
         <test expect_num_outputs="5">
+            <param name="test" value="true"/>
             <param name="input" value="transcriptome.fa"/>
             <conditional name="lineage">
                 <param name="lineage_mode" value="select_lineage"/>
@@ -262,8 +313,12 @@
             <output name="busco_missing" file="transcriptome_results/missing_buscos_list" compare="diff" lines_diff="6"/>
             <output name="summary_image" file="transcriptome_results/summary.png" compare="sim_size"/>
             <output name="busco_gff" file="transcriptome_results/out.gff" compare="diff"/>
+            <assert_stdout>
+                <has_text text="BUSCO analysis done"/>
+            </assert_stdout>
         </test>
         <test expect_num_outputs="3">
+            <param name="test" value="true"/>
             <param name="input" value="genome.fa"/>
             <conditional name="lineage">
                 <param name="lineage_mode" value="select_lineage"/>
@@ -292,8 +347,12 @@
                     <has_text text="##gff-version 3"/>
                 </assert_contents>
             </output>
+            <assert_stdout>
+                <has_text text="BUSCO analysis done"/>
+            </assert_stdout>
         </test>
         <test expect_num_outputs="3">
+            <param name="test" value="true"/>
             <param name="input" value="genome.fa"/>
             <conditional name="lineage">
                 <param name="lineage_mode" value="select_lineage"/>
@@ -318,8 +377,12 @@
             </output>
             <output name="busco_table" file="genome_results/full_table" compare="diff" lines_diff="10"/>
             <output name="busco_missing" file="genome_results/missing_buscos_list" compare="diff" lines_diff="10"/>
+            <assert_stdout>
+                <has_text text="BUSCO analysis done"/>
+            </assert_stdout>
         </test>
         <test expect_num_outputs="5">
+            <param name="test" value="true"/>
             <param name="input" value="genome.fa"/>
             <conditional name="lineage">
                 <param name="lineage_mode" value="select_lineage"/>
@@ -351,8 +414,12 @@
             </output>
             <output name="summary_image" file="genome_results_metaeuk/summary.png" compare="sim_size"/>
             <output name="busco_gff" file="genome_results_metaeuk/out.gff3" compare="diff" lines_diff="6"/>
-        </test>
+            <assert_stdout>
+                <has_text text="BUSCO analysis done"/>
+            </assert_stdout>
+        </test> -->
         <test expect_num_outputs="5">
+            <param name="test" value="true"/>
             <param name="input" value="genome.fa"/>
             <conditional name="lineage">
                 <param name="lineage_mode" value="auto_detect"/>
@@ -384,8 +451,12 @@
             </output>
             <output name="summary_image" file="genome_results_metaeuk_auto/summary.png" compare="sim_size"/>
             <output name="busco_gff" file="genome_results_metaeuk_auto/out.gff" compare="diff"/>
+            <assert_stdout>
+                <has_text text="BUSCO analysis done"/>
+            </assert_stdout>
         </test>
-        <test expect_num_outputs="3">
+        <!-- <test expect_num_outputs="3">
+            <param name="test" value="true"/>
             <param name="input" value="genome.fa"/>
             <conditional name="lineage">
                 <param name="lineage_mode" value="select_lineage"/>
@@ -404,7 +475,10 @@
                     <has_text text="9647at6656"/>
                 </assert_contents>
             </output>
-        </test>
+            <assert_stdout>
+                <has_text text="BUSCO analysis done"/>
+            </assert_stdout>
+        </test> -->
     </tests>
     <help><![CDATA[
 
--- a/macros.xml	Tue Oct 29 14:13:47 2024 +0000
+++ b/macros.xml	Fri Apr 04 11:18:42 2025 +0000
@@ -1,7 +1,7 @@
 <?xml version="1.0"?>
 <macros>
     <token name="@TOOL_VERSION@">5.8.0</token>
-    <token name="@VERSION_SUFFIX@">0</token>
+    <token name="@VERSION_SUFFIX@">1</token>
 
     <xml name="citations">
         <citations>
@@ -10,262 +10,175 @@
     </xml>
 
     <xml name="augustus_species">
-        <!-- If you update this list, please also update it in maker and augustus tools (../maker/maker.xml and ../augustus/augustus.xml) -->
-        <option value="human">Homo sapiens</option>
-        <option value="fly">Drosophila melanogaster</option>
-        <option value="arabidopsis">Arabidopsis thaliana</option>
-        <option value="aedes">Aedes aegypti</option>
-        <option value="tribolium2012">Tribolium castaneum</option>
-        <option value="schistosoma">Schistosoma mansoni</option>
-        <option value="tetrahymena">Tetrahymena thermophila</option>
-        <option value="galdieria">Galdieria sulphuraria</option>
-        <option value="maize">Zea mays</option>
-        <option value="toxoplasma">Toxoplasma gondii</option>
-        <option value="caenorhabditis">Caenorhabditis elegans</option>
+	<!-- Update this list if you update the augustus requirement -->
+	<!-- Consider also to update it in maker and augustus tools (../maker/maker.xml and ../augustus/augustus.xml) -->
+	<!-- Current list for AUGUSTUS (3.5.0) for i in $(ls ~/miniforge3/envs/__busco@5.8.0/config/species/); do echo \<option value=\"$i\"\>$(echo $i | sed 's/_/ /g')\</option\>; done -->
+	<!-- also typically mentioned in https://github.com/Gaius-Augustus/Augustus/blob/master/docs/HISTORY.TXT --> 
+        <option value="adorsata">Apis dorsata (adorsata)</option>
+        <option value="aedes">Aedes aegypti (aedes)</option>
+        <option value="amphimedon">Amphimedon queenslandica</option>
+        <option value="ancylostoma_ceylanicum">Ancylostoma ceylanicum</option>
+        <option value="anidulans">Aspergillus nidulans (anidulans)</option>
+        <option value="Anopheles_gambiae">Anopheles gambiae</option>
+        <option value="arabidopsis">Arabidopsis thaliana (arabidopsis)</option>
+        <option value="Argopecten_irradians">Argopecten irradians</option>
         <option value="aspergillus_fumigatus">Aspergillus fumigatus</option>
         <option value="aspergillus_nidulans">Aspergillus nidulans</option>
         <option value="aspergillus_oryzae">Aspergillus oryzae</option>
         <option value="aspergillus_terreus">Aspergillus terreus</option>
+        <option value="Aurelia_aurita">Aurelia aurita</option>
+        <option value="Bathycoccus_prasinos">Bathycoccus prasinos</option>
+        <option value="Berviolum_minutum">Berviolum minutum</option>
+        <option value="bombus_impatiens1">Bombus impatiens1</option>
+        <option value="bombus_terrestris2">Bombus terrestris2</option>
         <option value="botrytis_cinerea">Botrytis cinerea</option>
+        <option value="b_pseudomallei">Burkholderia pseudomallei (b_pseudomallei)</option>
+        <option value="Branchiostoma_floridae">Branchiostoma floridae</option>
+        <option value="brugia">Brugia malayi (brugia)</option>
+        <option value="cacao">(cacao)</option>
+        <option value="caenorhabditis">Caenorhabditis elegans (caenorhabditis)</option>
+        <option value="camponotus_floridanus">Camponotus floridanus</option>
         <option value="candida_albicans">Candida albicans</option>
         <option value="candida_guilliermondii">Candida guilliermondii</option>
         <option value="candida_tropicalis">Candida tropicalis</option>
+        <option value="Cassiopea_xamachana">Cassiopea xamachana</option>
+        <!-- <option value="c_elegans_trsk">Caenorhabditis elegans</option> do not use according to augustus commit messages -->
         <option value="chaetomium_globosum">Chaetomium globosum</option>
+        <option value="chicken">Gallus gallus (chicken)</option>
+        <option value="chiloscyllium">Chiloscyllium punctatum (chiloscyllium)</option>
+        <option value="chlamy2011">chlamy2011</option>
+        <option value="chlamydomonas">Chlamydomonas reinhardtii (chlamydomonas)</option>
+        <option value="Chlamydomonas_eustigma">Chlamydomonas eustigma</option>
+        <option value="chlorella">chlorella</option>
+        <option value="Chloropicon_primus">Chloropicon primus</option>
+        <option value="Chrysaora_chesapeakei">Chrysaora chesapeakei</option>
+        <option value="ciona">ciona</option>
         <option value="coccidioides_immitis">Coccidioides immitis</option>
+        <option value="Conidiobolus_coronatus">Conidiobolus coronatus</option>
+        <option value="coprinus">coprinus</option>
         <option value="coprinus_cinereus">Coprinus cinereus</option>
+        <option value="coyote_tobacco">Coyote tobacco</option>
+        <option value="cryptococcus">cryptococcus</option>
         <option value="cryptococcus_neoformans_gattii">Cryptococcus neoformans gattii</option>
         <option value="cryptococcus_neoformans_neoformans_B">Cryptococcus neoformans neoformans B</option>
         <option value="cryptococcus_neoformans_neoformans_JEC21">Cryptococcus neoformans neoformans JEC21</option>
+        <option value="Cryptosporidium_hominis">Cryptosporidium hominis</option>
+        <option value="culex">culex</option>
+        <option value="Cyclotella_cryptica">Cyclotella cryptica</option>
         <option value="debaryomyces_hansenii">Debaryomyces hansenii</option>
-        <option value="encephalitozoon_cuniculi_GB">Encephalitozoon cuniculi</option>
+        <option value="Dermasterias_imbricata">Dermasterias imbricata</option>
+        <option value="Dunaliella_salina">Dunaliella salina</option>
+        <option value="E_coli_K12">Escherichia K12 (E_coli_K12)</option>
+        <option value="Ectocarpus_siliculosus">Ectocarpus siliculosus</option>
+        <option value="elephant_shark">Callorhinchus milii (elephant_shark)</option>
+        <option value="Encephalitozoon_cuniculi">Encephalitozoon cuniculi</option>
+        <option value="encephalitozoon_cuniculi_GB">Encephalitozoon cuniculi GB</option>
         <option value="eremothecium_gossypii">Eremothecium gossypii</option>
+        <option value="Fistulifera_solaris">Fistulifera solaris</option>
+        <option value="fly">Drosophila melanogaster (fly)</option>
+        <option value="fly_exp">Drosophila melanogaster (fly) experimental parameters</option>
+        <option value="Fragilariopsis_cylindrus_CCMP1102">Fragilariopsis cylindrus CCMP1102</option>
+        <option value="fusarium">fusarium</option>
         <option value="fusarium_graminearum">Fusarium graminearum</option>
+        <option value="galdieria">Galdieria sulphuraria (galdieria)</option>
+        <option value="generic">generic</option>
+        <option value="gigaspora_margarita">Gigaspora margarita</option>
+        <option value="Gonapodya_prolifera">Gonapodya prolifera</option>
+        <option value="heliconius_melpomene1">Heliconius melpomene1</option>
+        <option value="histoplasma">histoplasma</option>
         <option value="histoplasma_capsulatum">Histoplasma capsulatum</option>
+        <option value="honeybee1">Apis mellifera (honeybee1)</option>
+        <option value="human">Homo sapiens (human)</option>
+        <option value="Hydra_vulgaris">Hydra vulgaris</option>
+        <option value="hymenolepis_microstoma">Hymenolepis microstoma</option>
+        <option value="japaneselamprey">Lethenteron camtschaticum (japaneselamprey)</option>
         <option value="kluyveromyces_lactis">Kluyveromyces lactis</option>
         <option value="laccaria_bicolor">Laccaria bicolor</option>
-        <option value="lamprey">Petromyzon marinus</option>
         <option value="leishmania_tarentolae">Leishmania tarentolae</option>
+        <option value="Leptasterias_sp">Leptasterias sp</option>
+        <option value="Loa_loa">Loa loa</option>
         <option value="lodderomyces_elongisporus">Lodderomyces elongisporus</option>
         <option value="magnaporthe_grisea">Magnaporthe grisea</option>
+        <option value="maize">Zea mays (maize)</option>
+        <option value="maize5">Zea mays (maize5)</option>
+        <option value="Micromonas_commoda">Micromonas commoda</option>
+        <option value="Micromonas_pusilla">Micromonas pusilla</option>
+        <option value="mnemiopsis_leidyi">Mnemiopsis leidyi</option>
+        <option value="Monoraphidium_neglectum">Monoraphidium neglectum</option>
+        <option value="Monosiga_brevicollis">Monosiga brevicollis</option>
+        <option value="Naegleria_gruberi">Naegleria gruberi</option>
+        <option value="nasonia">Nasonia vitripennis (nasonia)</option>
+        <option value="nematostella_vectensis">Nematostella vectensis</option>
+        <option value="Nemopilema_nomurai">Nemopilema nomurai</option>
+        <option value="neurospora">neurospora</option>
         <option value="neurospora_crassa">Neurospora crassa</option>
+        <option value="Notospermus_geniculatus">Notospermus geniculatus</option>
+        <option value="Ostreococcus_sp_lucimarinus">Ostreococcus sp lucimarinus</option>
+        <option value="Ostreococcus_tauri">Ostreococcus tauri</option>
+        <option value="Paramecium_tetraurelia">Paramecium tetraurelia</option>
+        <option value="parasteatoda">Parasteatoda tepidariorum (parasteatoda)</option>
+        <option value="pchrysosporium">Phanerochaete chrysosporium (pchrysosporium)</option>
+        <option value="pea_aphid">Acyrthosiphon pisum (pea_aphid)</option>
+        <option value="Pediculus_humanus">Pediculus humanus</option>
+        <option value="Perkinsus_marinus">Perkinsus marinus</option>
+        <option value="pfalciparum">Plasmodium falciparum (pfalciparum)</option>
+        <option value="Phaeodactylum_tricornutum">Phaeodactylum tricornutum</option>
         <option value="phanerochaete_chrysosporium">Phanerochaete chrysosporium</option>
+        <option value="Physcomitrium_patens">Physcomitrium patens</option>
         <option value="pichia_stipitis">Pichia stipitis</option>
+        <option value="pisaster">Pisaster ochraceus (pisaster)</option>
+        <option value="pneumocystis">pneumocystis</option>
+        <option value="Populus_trichocarpa">Populus trichocarpa</option>
+        <option value="Pseudo-nitzschia_multistriata">Pseudo-nitzschia multistriata</option>
+        <option value="Ptychodera_flava">Ptychodera flava</option>
+        <option value="Pycnopodia_helianthoides">Pycnopodia helianthoides</option>
+        <option value="Raphidocelis_subcapitata">Raphidocelis subcapitata</option>
+        <option value="rhincodon">Rhincodon typus (rhincodon)</option>
         <option value="rhizopus_oryzae">Rhizopus oryzae</option>
+        <option value="rhodnius">Rhodnius</option>
+        <option value="Rhopilema_esculentum">Rhopilema esculentum</option>
+        <option value="rice">Oryza (rice)</option>
+        <option value="Ricinus_communis">Ricinus communis</option>
+        <option value="saccharomyces">Saccharomyces</option>
+        <option value="saccharomyces_cerevisiae_rm11-1a_1">Saccharomyces cerevisiae rm11-1a 1</option>
         <option value="saccharomyces_cerevisiae_S288C">Saccharomyces cerevisiae S288C</option>
-        <option value="saccharomyces_cerevisiae_rm11-1a_1">Saccharomyces cerevisiae rm11-1a_1</option>
-        <option value="saccharomyces">Saccharomyces cerevisiae</option>
+        <option value="s_aureus">Staphylococcus aureus (s_aureus)</option>
+        <option value="schistosoma">Schistosoma mansoni (schistosoma)</option>
+        <option value="schistosoma2">Schistosoma mansoni (schistosoma2)</option>
         <option value="schizosaccharomyces_pombe">Schizosaccharomyces pombe</option>
-        <option value="trichinella">Trichinella spiralis</option>
+        <option value="Sclerotinia_sclerotiorum">Sclerotinia sclerotiorum</option>
+        <option value="scyliorhinus">Scyliorhinus torazame (scyliorhinus)</option>
+        <option value="sealamprey">Petromyzon marinus (sealamprey)</option>
+        <option value="Skeletonema_costatum">Skeletonema costatum</option>
+        <option value="Sordaria_macrospora">Sordaria macrospora</option>
+        <option value="Sphaceloma_murrayae">Sphaceloma murrayae</option>
+        <option value="s_pneumoniae">Streptococcus pneumoniae (s_pneumoniae)</option>
+        <option value="strongylocentrotus_purpuratus">Strongylocentrotus purpuratus</option>
+        <option value="sulfolobus_solfataricus">Sulfolobus solfataricus</option>
+        <option value="sunflower">Helianthus annuus (sunflower)</option>
+        <option value="Taeniopygia_guttata">Taeniopygia guttata</option>
+        <option value="template_prokaryotic">Template prokaryotic</option>
+        <option value="tetrahymena">tetrahymena</option>
+        <option value="Thalassiosira_pseudonana_CCMP1335">Thalassiosira pseudonana CCMP1335</option>
+        <option value="thermoanaerobacter_tengcongensis">Thermoanaerobacter tengcongensis</option>
+        <option value="tomato">Solanum lycopersicum (tomato)</option>
+        <option value="toxoplasma">Toxoplasma gondii (toxoplasma)</option>
+        <option value="tribolium2012">tribolium2012</option>
+        <option value="trichinella">Trichinella</option>
+        <option value="Trichoplax_adhaerens">Trichoplax adhaerens</option>
+        <option value="Trypanosoma_cruzi">Trypanosoma cruzi</option>
+        <option value="ustilago">Ustilago</option>
         <option value="ustilago_maydis">Ustilago maydis</option>
-        <option value="yarrowia_lipolytica">Yarrowia lipolytica</option>
-        <option value="nasonia">Nasonia vitripennis</option>
-        <option value="tomato">Solanum lycopersicum</option>
-        <option value="chlamydomonas">Chlamydomonas reinhardtii</option>
-        <option value="amphimedon">Amphimedon queenslandica</option>
-        <option value="pneumocystis">Pneumocystis jirovecii</option>
-        <option value="chicken">Gallus gallus domesticus (chicken)</option>
-        <option value="cacao">Theobroma cacao (cacao)</option>
-        <option value="heliconius_melpomene1">Heliconius melpomene</option>
-        <option value="xenoturbella">Xenoturbella</option>
-        <option value="E_coli_K12">E coli K12</option>
-        <option value="c_elegans_trsk">c elegans trsk</option>
-        <option value="camponotus_floridanus">Camponotus floridanus</option>
-        <option value="coyote_tobacco">Coyote tobacco</option>
-        <option value="s_aureus">Staphylococcus aureus</option>
-        <option value="thermoanaerobacter_tengcongensis">Thermoanaerobacter tengcongensis</option>
-        <option value="wheat">wheat</option>
-        <option value="zebrafish">Danio rerio</option>
-        <option value="bombus_impatiens1">Bombus impatiens1</option>
-        <option value="bombus_terrestris2">Bombus terrestris2</option>
-        <option value="brugia_malayi">Brugia malayi</option>
-        <option value="conidiobolus_coronatus">Conidiobolus coronatus</option>
-        <option value="cryptococcus_neoformans">Cryptococcus neoformans</option>
-        <option value="culex_pipiens">Culex pipiens</option>
-        <option value="elephant_shark">Callorhinchus milii</option>
-        <option value="honeybee1">Apis mellifera</option>
-        <option value="pea_aphid">Acyrthosiphon pisum</option>
-        <option value="rhodnius_prolixus">Rhodnius prolixus</option>
         <option value="verticillium_albo_atrum1">Verticillium albo atrum1</option>
         <option value="verticillium_longisporum1">Verticillium longisporum1</option>
-        <option value="Xipophorus_maculatus">Xipophorus_maculatus</option>
-        <option value="adorsata">adorsata</option>
-        <option value="ancylostoma_ceylanicum">ancylostoma_ceylanicum</option>
-        <option value="maker2_athal1">maker2_athal1</option>
-        <option value="maker2_c_elegans1">maker2_c_elegans1</option>
-        <option value="maker2_dmel1">maker2_dmel1</option>
-        <option value="maker2_spomb1">maker2_spomb1</option>
-        <option value="parasteatoda">parasteatoda</option>
-        <option value="rice">rice</option>
-        <option value="schistosoma2">schistosoma2</option>
-        <option value="sulfolobus_solfataricus">sulfolobus_solfataricus</option>
-    </xml>
-
-    <xml name="lineages">
-        <option value="acidobacteria_odb10">Acidobacteria</option>
-        <option value="aconoidasida_odb10">Aconoidasida</option>
-        <option value="actinobacteria_class_odb10">Actinobacteria class</option>
-        <option value="actinobacteria_phylum_odb10">Actinobacteria phylum</option>
-        <option value="actinopterygii_odb10">Actinopterygii</option>
-        <option value="agaricales_odb10">Agaricales</option>
-        <option value="agaricomycetes_odb10">Agaricomycetes</option>
-        <option value="alphaproteobacteria_odb10">Alphaproteobacteria</option>
-        <option value="alteromonadales_odb10">Alteromonadales</option>
-        <option value="alveolata_odb10">Alveolata</option>
-        <option value="apicomplexa_odb10">Apicomplexa</option>
-        <option value="aquificae_odb10">Aquificae</option>
-        <option value="arachnida_odb10">Arachnida</option>
-        <option value="archaea_odb10">Archaea</option>
-        <option value="arthropoda_odb10">Arthropoda</option>
-        <option value="ascomycota_odb10">Ascomycota</option>
-        <option value="aves_odb10">Aves</option>
-        <option value="bacillales_odb10">Bacillales</option>
-        <option value="bacilli_odb10">Bacilli</option>
-        <option value="bacteria_odb10">Bacteria</option>
-        <option value="bacteroidales_odb10">Bacteroidales</option>
-        <option value="bacteroidetes-chlorobi_group_odb10">Bacteroidetes-chlorobi group</option>
-        <option value="bacteroidetes_odb10">Bacteroidetes</option>
-        <option value="bacteroidia_odb10">Bacteroidia</option>
-        <option value="basidiomycota_odb10">Basidiomycota</option>
-        <option value="betaproteobacteria_odb10">Betaproteobacteria</option>
-        <option value="boletales_odb10">Boletales</option>
-        <option value="brassicales_odb10">Brassicales</option>
-        <option value="burkholderiales_odb10">Burkholderiales</option>
-        <option value="campylobacterales_odb10">Campylobacterales</option>
-        <option value="capnodiales_odb10">Capnodiales</option>
-        <option value="carnivora_odb10">Carnivora</option>
-        <option value="cellvibrionales_odb10">Cellvibrionales</option>
-        <option value="cetartiodactyla_odb10">Cetartiodactyla</option>
-        <option value="chaetothyriales_odb10">Chaetothyriales</option>
-        <option value="chlamydiae_odb10">Chlamydiae</option>
-        <option value="chlorobi_odb10">Chlorobi</option>
-        <option value="chloroflexi_odb10">Chloroflexi</option>
-        <option value="chlorophyta_odb10">Chlorophyta</option>
-        <option value="chromatiales_odb10">Chromatiales</option>
-        <option value="chroococcales_odb10">Chroococcales</option>
-        <option value="clostridia_odb10">Clostridia</option>
-        <option value="clostridiales_odb10">Clostridiales</option>
-        <option value="coccidia_odb10">Coccidia</option>
-        <option value="coriobacteriales_odb10">Coriobacteriales</option>
-        <option value="coriobacteriia_odb10">Coriobacteriia</option>
-        <option value="corynebacteriales_odb10">Corynebacteriales</option>
-        <option value="cyanobacteria_odb10">Cyanobacteria</option>
-        <option value="cyprinodontiformes_odb10">Cyprinodontiformes</option>
-        <option value="cytophagales_odb10">Cytophagales</option>
-        <option value="cytophagia_odb10">Cytophagia</option>
-        <option value="delta-epsilon-subdivisions_odb10">Delta-epsilon-subdivisions</option>
-        <option value="deltaproteobacteria_odb10">Deltaproteobacteria</option>
-        <option value="desulfobacterales_odb10">Desulfobacterales</option>
-        <option value="desulfovibrionales_odb10">Desulfovibrionales</option>
-        <option value="desulfurococcales_odb10">Desulfurococcales</option>
-        <option value="desulfuromonadales_odb10">Desulfuromonadales</option>
-        <option value="diptera_odb10">Diptera</option>
-        <option value="dothideomycetes_odb10">Dothideomycetes</option>
-        <option value="embryophyta_odb10">Embryophyta</option>
-        <option value="endopterygota_odb10">Endopterygota</option>
-        <option value="enterobacterales_odb10">Enterobacterales</option>
-        <option value="entomoplasmatales_odb10">Entomoplasmatales</option>
-        <option value="epsilonproteobacteria_odb10">Epsilonproteobacteria</option>
-        <option value="euarchontoglires_odb10">Euarchontoglires</option>
-        <option value="eudicots_odb10">Eudicots</option>
-        <option value="euglenozoa_odb10">Euglenozoa</option>
-        <option value="eukaryota_odb10">Eukaryota</option>
-        <option value="eurotiales_odb10">Eurotiales</option>
-        <option value="eurotiomycetes_odb10">Eurotiomycetes</option>
-        <option value="euryarchaeota_odb10">Euryarchaeota</option>
-        <option value="eutheria_odb10">Eutheria</option>
-        <option value="fabales_odb10">Fabales</option>
-        <option value="firmicutes_odb10">Firmicutes</option>
-        <option value="flavobacteriales_odb10">Flavobacteriales</option>
-        <option value="flavobacteriia_odb10">Flavobacteriia</option>
-        <option value="fungi_odb10">Fungi</option>
-        <option value="fusobacteria_odb10">Fusobacteria</option>
-        <option value="fusobacteriales_odb10">Fusobacteriales</option>
-        <option value="gammaproteobacteria_odb10">Gammaproteobacteria</option>
-        <option value="glires_odb10">Glires</option>
-        <option value="glomerellales_odb10">Glomerellales</option>
-        <option value="halobacteria_odb10">Halobacteria</option>
-        <option value="halobacteriales_odb10">Halobacteriales</option>
-        <option value="haloferacales_odb10">Haloferacales</option>
-        <option value="helotiales_odb10">Helotiales</option>
-        <option value="hemiptera_odb10">Hemiptera</option>
-        <option value="hymenoptera_odb10">Hymenoptera</option>
-        <option value="hypocreales_odb10">Hypocreales</option>
-        <option value="insecta_odb10">Insecta</option>
-        <option value="lactobacillales_odb10">Lactobacillales</option>
-        <option value="laurasiatheria_odb10">Laurasiatheria</option>
-        <option value="legionellales_odb10">Legionellales</option>
-        <option value="leotiomycetes_odb10">Leotiomycetes</option>
-        <option value="lepidoptera_odb10">Lepidoptera</option>
-        <option value="liliopsida_odb10">Liliopsida</option>
-        <option value="mammalia_odb10">Mammalia</option>
-        <option value="metazoa_odb10">Metazoa</option>
-        <option value="methanobacteria_odb10">Methanobacteria</option>
-        <option value="methanococcales_odb10">Methanococcales</option>
-        <option value="methanomicrobia_odb10">Methanomicrobia</option>
-        <option value="methanomicrobiales_odb10">Methanomicrobiales</option>
-        <option value="micrococcales_odb10">Micrococcales</option>
-        <option value="microsporidia_odb10">Microsporidia</option>
-        <option value="mollicutes_odb10">Mollicutes</option>
-        <option value="mollusca_odb10">Mollusca</option>
-        <option value="mucorales_odb10">Mucorales</option>
-        <option value="mucoromycota_odb10">Mucoromycota</option>
-        <option value="mycoplasmatales_odb10">Mycoplasmatales</option>
-        <option value="natrialbales_odb10">Natrialbales</option>
-        <option value="neisseriales_odb10">Neisseriales</option>
-        <option value="nematoda_odb10">Nematoda</option>
-        <option value="nitrosomonadales_odb10">Nitrosomonadales</option>
-        <option value="nostocales_odb10">Nostocales</option>
-        <option value="oceanospirillales_odb10">Oceanospirillales</option>
-        <option value="onygenales_odb10">Onygenales</option>
-        <option value="oscillatoriales_odb10">Oscillatoriales</option>
-        <option value="passeriformes_odb10">Passeriformes</option>
-        <option value="pasteurellales_odb10">Pasteurellales</option>
-        <option value="planctomycetes_odb10">Planctomycetes</option>
-        <option value="plasmodium_odb10">Plasmodium</option>
-        <option value="pleosporales_odb10">Pleosporales</option>
-        <option value="poales_odb10">Poales</option>
-        <option value="polyporales_odb10">Polyporales</option>
-        <option value="primates_odb10">Primates</option>
-        <option value="propionibacteriales_odb10">Propionibacteriales</option>
-        <option value="proteobacteria_odb10">Proteobacteria</option>
-        <option value="pseudomonadales_odb10">Pseudomonadales</option>
-        <option value="rhizobiales_odb10">Rhizobiales</option>
-        <option value="rhizobium-agrobacterium_group_odb10">Rhizobium-agrobacterium group</option>
-        <option value="rhodobacterales_odb10">Rhodobacterales</option>
-        <option value="rhodospirillales_odb10">Rhodospirillales</option>
-        <option value="rickettsiales_odb10">Rickettsiales</option>
-        <option value="saccharomycetes_odb10">Saccharomycetes</option>
-        <option value="sauropsida_odb10">Sauropsida</option>
-        <option value="selenomonadales_odb10">Selenomonadales</option>
-        <option value="solanales_odb10">Solanales</option>
-        <option value="sordariomycetes_odb10">Sordariomycetes</option>
-        <option value="sphingobacteriia_odb10">Sphingobacteriia</option>
-        <option value="sphingomonadales_odb10">Sphingomonadales</option>
-        <option value="spirochaetales_odb10">Spirochaetales</option>
-        <option value="spirochaetes_odb10">Spirochaetes</option>
-        <option value="spirochaetia_odb10">Spirochaetia</option>
-        <option value="stramenopiles_odb10">Stramenopiles</option>
-        <option value="streptomycetales_odb10">Streptomycetales</option>
-        <option value="streptosporangiales_odb10">Streptosporangiales</option>
-        <option value="sulfolobales_odb10">Sulfolobales</option>
-        <option value="synechococcales_odb10">Synechococcales</option>
-        <option value="synergistetes_odb10">Synergistetes</option>
-        <option value="tenericutes_odb10">Tenericutes</option>
-        <option value="tetrapoda_odb10">Tetrapoda</option>
-        <option value="thaumarchaeota_odb10">Thaumarchaeota</option>
-        <option value="thermoanaerobacterales_odb10">Thermoanaerobacterales</option>
-        <option value="thermoplasmata_odb10">Thermoplasmata</option>
-        <option value="thermoproteales_odb10">Thermoproteales</option>
-        <option value="thermoprotei_odb10">Thermoprotei</option>
-        <option value="thermotogae_odb10">Thermotogae</option>
-        <option value="thiotrichales_odb10">Thiotrichales</option>
-        <option value="tissierellales_odb10">Tissierellales</option>
-        <option value="tissierellia_odb10">Tissierellia</option>
-        <option value="tremellomycetes_odb10">Tremellomycetes</option>
-        <option value="verrucomicrobia_odb10">Verrucomicrobia</option>
-        <option value="vertebrata_odb10">Vertebrata</option>
-        <option value="vibrionales_odb10">Vibrionales</option>
-        <option value="viridiplantae_odb10">Viridiplantae</option>
-        <option value="xanthomonadales_odb10">Xanthomonadales</option>
+        <option value="Vitis_vinifera">Vitis vinifera</option>
+        <option value="Vitrella_brassicaformis">Vitrella brassicaformis</option>
+        <option value="volvox">volvox</option>
+        <option value="wheat">wheat</option>
+        <option value="Xenopus_tropicalis">Xenopus tropicalis</option>
+        <option value="Xiphophorus_maculatus">Xiphophorus maculatus</option>
+        <option value="Xipophorus_maculatus">Xipophorus maculatus</option>
+        <option value="yarrowia_lipolytica">Yarrowia lipolytica</option>
+        <option value="zebrafish">Danio rerio (zebrafish)</option>
     </xml>
 </macros>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/busco_database_options.loc	Fri Apr 04 11:18:42 2025 +0000
@@ -0,0 +1,2 @@
+archaea_odb10	Archaea	busco-demo-db-20230328
+arthropoda_odb10	Arthropoda	busco-demo-db-20230328
\ No newline at end of file
Binary file test-data/genome.fa.gz has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/busco_database_options.loc.sample	Fri Apr 04 11:18:42 2025 +0000
@@ -0,0 +1,6 @@
+#This is a sample file distributed with Galaxy that enables tools
+#to use fill the select for the available BUSCO lineages
+#file has this format (white space characters are TAB characters)
+# - value: value used in the options
+# - name: name shown to the user in options
+# - db_value: the id/value of the busco db (in the busco_database data table)
\ No newline at end of file
--- a/tool_data_table_conf.xml.sample	Tue Oct 29 14:13:47 2024 +0000
+++ b/tool_data_table_conf.xml.sample	Fri Apr 04 11:18:42 2025 +0000
@@ -3,4 +3,8 @@
         <columns>value, name, version, path</columns>
         <file path="tool-data/busco_database.loc" />
     </table>
+    <table name="busco_database_options" comment_char="#">
+        <columns>value, name, db_value</columns>
+        <file path="tool-data/busco_database_options.loc" />
+    </table>
 </tables>
--- a/tool_data_table_conf.xml.test	Tue Oct 29 14:13:47 2024 +0000
+++ b/tool_data_table_conf.xml.test	Fri Apr 04 11:18:42 2025 +0000
@@ -3,4 +3,8 @@
         <columns>value, name, version, path</columns>
         <file path="${__HERE__}/test-data/busco_database.loc" />
     </table>
+    <table name="busco_database_options" comment_char="#">
+        <columns>value, name, db_value</columns>
+        <file path="${__HERE__}/test-data/busco_database_options.loc" />
+    </table>
 </tables>
\ No newline at end of file