Installer Iramuteq sous Debian Jessie (Debian 8)

15 décembre 2015

Profitant de mon changement de PC (j'ai quitté une machine qui m'avait fidèlement accompagnée pendant une petite dizaine d'années pour un NUC d'Intel, une machine récente et rapide) pour changer de distribution, je suis passée à Debian Jessie (j'étais sous Ubuntu avant...il était temps).

Comme j'utilisais Iramuteq sur l'ancien PC (et que j'en aurai certainement besoin pour poursuivre ma thèse), je me suis mis en tête de tête de réinstaller ce fabuleux programme d'analyse textuelle sous Debian.

Et du coup, tant qu'à faire, je vais vous expliquer comment ça se passe. L'installation ne nécessite pas un niveau technique d'ingénieur au CNRS, mais la documentation est un peu aride, l'installation aussi. Je me suis dit qu'un pas à pas serait utile à d'autres pour comprendre ce qu'ils font.

Première étape : aller chercher le paquet et faire connaissance

Iramuteq n'existe pas dans Debian, donc on ne peut pas se contenter de taper apt install iramuteq. Il faut se rendre sur iramuteq.org, télécharger la dernière version disponible en .deb, et l'installer manuellement.

Une fois en possession du paquet, j'ai utilisé l'utilitaire en ligne de commande idoine pour dépaqueter, dpkg.
Un dpkg -i iramuteq_0.7-alpha2_all.deb tapé dans un terminal renvoie au départ une logorrhée d'erreurs :

iramuteq dépend de r-base (>= 3.0.0) ; cependant :
  Le paquet r-base n'est pas installé.
 iramuteq dépend de python-wxgtk2.8 (>= 2.8) ; cependant :
  Le paquet python-wxgtk2.8 n'est pas installé.
 iramuteq dépend de python-xlrd (>= 0.6) ; cependant :
  Le paquet python-xlrd n'est pas installé.
 iramuteq dépend de python-ooolib ; cependant :
  Le paquet python-ooolib n'est pas installé.
 iramuteq dépend de r-cran-rgl (>= 0.79) ; cependant :
  Le paquet r-cran-rgl n'est pas installé.

En fait, c'est parce que Iramuteq dépend d'un quintal d'autres programmes. dpkg me prévient poliment que ça ne marchera pas sans ces programmes. Il faut d'abord les installer.

Deuxième étape donc, installer les dépendances

Iramuteq dépend de R (c'est le programme sur lesquels se basent tous les calculs faits par Iramuteq, en gros). C'est pour cela qu'il vous demande d'installer r-base et r-cran-rgl.
apt install r-base
Installer r-base fait un peu peur, vous vous retrouvez avec plein de paquets (c'est un bundle des paquets essentiels pour faire tourner R, donc apt vous indique qu'en fait vous allez installer les 72 paquets différents contenus dans le bundle), mais c'est pour la science c'est pas grave.


J'allais oublier r-cran-rgl :
apt install r-cran-rgl
Lui, il est tout seul, ouf.

Ensuite, il faudra trois bibliothèques Python, pour que Iramuteq fonctionne, puisqu'il est codé en Python.
On installe les deux premières :
apt install python-xlrd python-ooolib

A ce stade, dpkg est vachement content, il veut bien installer Iramuteq. Sauf pour une chose : python-wxgtk2.8 n'est pas installé. C'est parce que dans Debian stable, la version 2,8 n'existe plus ; on a la version 3.0, disponible. On va pas se priver.
S'il n'a pas été déjà installé par ailleurs, il faut demander à apt :
apt install python-wxgtk3.0

Et hop. Toutes les dépendances sont installées.

Là vous pouvez lancer :
dpkg -i iramuteq_0.7-alpha2_all.deb dans votre terminal, fièrement, en snobant le message d'erreur sur python-wxgtk2.8 (puisque vous avez le 3.0). Si c'est le seul message d'erreur qui s'affiche, c'est tout bon.

Si vous laissez ça en l'état, apt va vous couiner dessus que cette dépendance-là n'est pas satisfaite et ne voudra plus rien installer, parce que dpkg lui a dit qu'iramuteq a renvoyé cette erreur-là en s'installant, et qu'il a bien regardé, c'est pas réglé. C'est assez gênant.
Pour outrepasser le problème, il faut faire une manipulation que je vous conseille pas de faire dans un autre contexte si vous ne savez pas ce que vous faites : on va dire à dpkg que si, cette dépendance est résolue. En modifiant une dépendance, on peut empêcher un programme de fonctionner correctement, ou de se mettre à jour correctement : il faut être très prudent avec ce type de manipulations. Ici, on sait que ça fonctionne avec un paquet plus récent, donc on a peu de chances de casser quelque chose.

Il faut modifier, avec les droits root, le fichier /var/lib/dpkg/status : vim /var/lib/dpkg/status.
A la ligne où on trouve Iramuteq, on peut lire :

Package: iramuteq
Status: install ok installed
Priority: extra
Section: science
Installed-Size: 32308
Maintainer: Pierre Ratinaud 
Architecture: all
Version: 0.7-alpha2
Depends: python (>= 2.7), r-base (>= 3.0.0), python-wxgtk2.8 (>= 2.8), python-xlrd (>= 0.6), python-ooolib, r-cran-rgl (>= 0.79)
Description: Interface de R pour les analyses multidimensionnelles
Homepage: http://www.iramuteq.org
On ne va changer qu'une chose, la mention de python-wxgtk2.8 en python-wxgtk3.0 (le paquet qu'on a installé) :
Depends: python (>= 2.7), r-base (>= 3.0.0), python-wxgtk3.0 (>= 2.8), python-xlrd (>= 0.6), python-ooolib, r-cran-rgl (>= 0.79)
Et hop.

Bon, on va lancer Iramuteq pour voir si ça marche \o/

Troisième étape : mais je n'ai pas fini !

Héhé. Vous veniez de vous rapatrier absolument toutes les bibliothèques nécessaires pour faire tourner R MAIS IL MANQUE ENCORE DES TRUCS. Des paquets R en l'occurrence. Iramuteq vous couine dessus au premier démarrage et vous les énumère dans une popup : ca, rgl, ape, proxy, gee, igraph, wordcloud, irlba, textometry.
Vous trouvez qu'il a du toupet, cet Iramuteq, après tout ce que vous avez installé, mais vous obtempérez (c'est pour la science !)

Vous pouvez choisir de laisser Iramuteq les installer seul, ou les installer manuellement. J'étais passée par R en console (carrément!) sous Ubuntu, mais là, prise d'un accès de flemme, j'ai laissé Iramuteq se débrouiller pour cette fois.
Il vous laisse tranquille après quelques minutes d'installation des paquets R dont il a besoin, et vous laisse le champ libre ensuite. Parfait !

Tout ceci prend assez peu de temps, au final. Il faut juste faire les choses dans l'ordre : j'ai tâtonné pour trouver les dépendances et les installer une à une. Avec celles-ci déjà énumérées et les commandes à lancer toutes prêtes, vous devriez aller sensiblement plus vite.

Les avis sur ce billet

15/12/2015 - Erwan

Pour installer un .deb en allant chercher ses dépendances il y a gdebi Dans le paquet gdebi tu as la version gnome, dans gdebi-core la version cli, et dans gdebi-kde la version kde

16/12/2015 - quota_atypique

Oh, bon à savoir, merci <3

03/02/2016 - FG

Splendide ! Une belle épine du pied en moins. BTW, solution qui fonctionne aussi sur Stretch. Bonne journée, Florent

19/09/2016 - BD

sudo dpkg -i --force-depends-version *.deb marche tout aussi bien ! Merci pour m'avoir mis sur la piste !

19/09/2016 - BD

ha non au temps pour moi : ça fonctionne mais derrière, le conflit reste...

Je veux donner mon avis !