====== Installation de BLAST 2.13.0+/2.15.0+ ======
===== Librairies additionnelles =====
Aucune librairie supplémentaire n'est nécessaire si nous installons les applications exécutables directement.
===== Procédure =====
Pendant longtemps, il existait deux versions concurrentes de NCBI BLAST: BLAST et BLAST+, une ré-écriture complète de BLAST en C++.
Auparavant, le version BLAST était sélectionnée car elle était plus compacte. Cependant, l'équipe du NCBI a décidé d'arrêter tout développement sur cette version.
Comme notre politique est "la version la plus récente", nous en sommes à utiliser la version BLAST+.
Un autre choix devait être fait: source ou binaire? Encore un fois, la décision prise l'a été en regard de notre besoin de minimiser notre empreinte sur le
disque: nous avons choisi l'installation à partir des applications exécutables.
**Note:** La version compilée pour ARM64 de nabi-blast-2.15.0+ ne semble pas fonctionner...; il faut donc utiliser la version antérieure ARM64 2.13.0+ qui est toujours disponible et fonctionnelle. On verra pour le futur...
Voici la procédure suivi pour l'installation de BLAST à partir de l'archive contenant l'application exécutable:
* On télécharge l'archive appropriée sous ''/opt/bio/source'' et on la décompresse. Cependant, prenez soin d'utiliser la bonne archive: depuis 03/2022, il existe deux versions selon le processeur.
# Si vous êtes avec une plateforme x86_64 comme Intel ou AMD
% cd /opt/bio/sources
% sudo curl -L -O https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.15.0/ncbi-blast-2.15.0+-x64-linux.tar.gz
% sudo tar -zxvf ncbi-blast-2.15.0+-x64-linux.tar.gz
% sudo rm -rf ncbi-blast-2.15.0+-x64-linux.tar.gz
# Si vous êtes avec une plateforme ARM comme le RPi
% cd /opt/bio/sources
% sudo curl -L -O https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.13.0/ncbi-blast-2.13.0+-x64-arm-linux.tar.gz
% sudo tar -zxvf ncbi-blast-2.13.0+-x64-linux.tar.gz
% sudo rm -rf ncbi-blast-2.13.0+-x64-linux.tar.gz
* Le dossier ''/opt/bio/sources/ncbi-blast-2.15.0+'' ou ''/opt/bio/sources/ncbi-blast-2.13.0+'' devrait appartenir à ''root''. Les permissions de ce dossier devraient être ''755''.
% sudo chown -R root:root ./ncbi-blast-2.13.0+ % sudo chmod -R 755 ./ncbi-blast-2.13.0+
* Il faut modifier la variable ''$PATH'' en modifiant le fichier ''/etc/profile.d/impilo.sh''. À la **toute fin du fichier**, il vous faut ajouter les lignes suivantes avec l'éditeur de votre choix en ''sudo'':
# Par ex pour un processeur ARM64
#
# BLAST specific environment variables
#
export PATH=$PATH:/opt/bio/sources/ncbi-blast-2.13.0+/bin
export BLASTDB=/opt/bio/data/blast_db
* La dernière dernière ligne est la localisation des bases de données de séquences utilisables par BLAST pour des recherches locales.
===== Annexe: création des bases de données utilisables par BLAST =====
BLAST utilise des bases de données spécialement formattées, crées à partir de fichiers texte en format ''FASTA''. Il n'y a pas d'endroit particulier spécifié pour les mettres (C'est à ça que sert la ligne ''BLASTDB='' du fichier ''/etc/profile.d/impilo.sh'') mais pour faire les choses en ordre et proprement, Impilo mais tous ces fichiers de données dans ''/opt/bio/data'', dans notre cas, ''/opt/bio/data/blast_db''. Parce qu'on veut garder Impilo le plus mince possible, deux bases de données sont crées à partir des séquences de nucléotides et d'acides aminés du génome de la bactérie E. coli K-12 à des fins de démonstration:
* [[ftp://ftp.ensemblgenomes.org/pub/bacteria/release-43/fasta/bacteria_90_collection/escherichia_coli_k_12/pep/Escherichia_coli_k_12.ASM80076v1.pep.all.fa.gz|E. coli, K-12 strain, all proteins]]
* [[ftp://ftp.ensemblgenomes.org/pub/bacteria/release-43/fasta/bacteria_90_collection/escherichia_coli_k_12/dna/Escherichia_coli_k_12.ASM80076v1.dna.chromosome.Chromosome.fa.gz|E. coli, K-12 strain, whole genome]]
Voici la recette utilisée pour les créer à l'échelle d'un serveur. La même recette s'applique à toute autre DB qui vous serait personnelle.
* Premièrement, On navigue pour parvenir à ''/opt/bio/data/blast_db'' et on télécharge les fichiers de séquences:
% sudo wget [[ftp://ftp.ensemblgenomes.org/pub/bacteria/release-43/fasta/bacteria_90_collection/escherichia_coli_k_12/dna/Escherichia_coli_k_12.ASM80076v1.dna.chromosome.Chromosome.fa.gz|ftp://ftp.ensemblgenomes.org/pub/bacteria/release-43/fasta/bacteria_90_collection/escherichia_coli_k_12/dna/Escherichia_coli_k_12.ASM80076v1.dna.chromosome.Chromosome.fa.gz]] % sudo wget [[ftp://ftp.ensemblgenomes.org/pub/bacteria/release-43/fasta/bacteria_90_collection/escherichia_coli_k_12/pep/Escherichia_coli_k_12.ASM80076v1.pep.all.fa.gz|ftp://ftp.ensemblgenomes.org/pub/bacteria/release-43/fasta/bacteria_90_collection/escherichia_coli_k_12/pep/Escherichia_coli_k_12.ASM80076v1.pep.all.fa.gz]] % sudo gunzip Escherichia_coli_k_12.ASM80076v1.dna.chromosome.Chromosome.fa.gz % sudo gunzip Escherichia_coli_k_12.ASM80076v1.pep.all.fa.gz
* Le programme ''makeblastdb'' créera la base de données. Le type de base de données (nucléotide ou ac. aminé) se fait via l'option ''-dbtype'' avec ''prot'' (acide aminé) ou ''nucl'' (nucléotide) comme paramètre:
% sudo /opt/bio/sources/ncbi-blast-2.13.0+/bin/makeblastdb -in -dbtype -out -title % sudo /opt/bio/sources/ncbi-blast-2.13.0+/bin/makeblastdb \ -in Escherichia_coli_k_12.ASM80076v1.dna.chromosome.Chromosome.fa \ -dbtype nucl \ -out ecoli_k12_nuc_demo -title E_coli_K12_all_nucleotides
* Il est nécessaire d'entrer le ''PATH'' au complet car l'usager ''root'' ne voit pas le fichier ''/etc/profile.d/impilo.sh''.
* Vous pouvez tester votre nouvelle DB avec ''blastn'' ou ''blastp'':
% blastp -db -query