Installation depuis les sources avec Stow
Quand on installe des programmes depuis les sources, ça finit toujours en un gros bordel où on ne peut plus relier un fichier à un package. Et évidemment, comme on finit toujours par effacer les sources qui prennent de la place pour rien, on ne sait plus faire le make uninstall. Une solution possible est d'installer chaque programme dans un répertoire différent (ex: /opt/application), mais cette solution est peu commode car le PATH à s'allonge de plus en plus à chaque installation. Il faut donc ètre propre mais être incommodé par le PATH, ou avoir un système simple d'utilisation mais peu gérable. Stow permet de ne pas faire ce choix douloureux.
Stow fonctionne ainsi: on installe le programme dans un répertoire qui lui est propre (typiquement /usr/local/stow/programme), et puis on utilise stow pour créer des liens symboliques vers /usr/local (/usr/local/bin ...). Si on veut désinstaller le programme, il suffit alors d'utiliser stow pour retirer ces liens symboliques, puis d'effacer le répertoire d'installation.
En pratique, cela se passe ainsi:
./configure --prefix=/usr/local/stow/programme make make install cd /usr/local/stow stow programme
Puis, pour désinstaller:
cd /usr/local/stow stow -D programme rm -rf programme
Et voilà. Si on veut être sûr que rien ne s'installera hors du répertoire d'installation, on peut créer /usr/local/stow/programme, en rendre un utilisateur non privilégié propriétaire, faire le make install avec cet utilisateur puis changer le propriétaire des fichiers en root
tags: linux