Réifier le futur

13 mai 2008

Gestion de paquets, côté utilisateur normal

Classé dans : Non classé — Olivier Schwander @

Les systèmes de gestion de paquets traditionnels — apt, rpm, emerge ou autres — ne peuvent être utilisés que par root. Pourtant, il est courant de ne pas être root sur une machine et d’avoir besoin d’installer des logiciels. Quels sont alors les solutions envisageables?

- avoir un root gentil qui accepte d’installer tous les paquets dont on a besoin, et ce, avec une latence suffisamment faible pour que ce soit confortable. Pas sûr non plus qu’il accepte d’installer xjump sur votre lieu de travail.

- pirater le compte root : en général, vous n’aurez plus aucune chance que root soit gentil après ça.

- donner le sudo qui va bien à tous les utilisateurs : seul des jusqu’ubuntistes fanatiques l’envisageront sérieusement.

- tout faire à coup de ./configure –prefix=/home/toto/local. C’est la solution la plus simple mais elle rend pratiquement impossible la désintallation propre ou des mises à jour automatisées.

- utiliser xstow qui installera chaque logiciel dans un sous répertoire de la forme prefix/stow/bla et gérera les liens symboliques comme il faut pour que ce soit utilisable. Pratique pour désinstaller, mais aucune chance d’avoir des mises à jours automatisées avec ça : il faudra encore surveiller les sites webs et télécharger puis installer à la main les nouvelles versions.

- utiliser le mode rootless de Gobolinux. Gobolinux est une distribution linux qui reviste FHS pour faire quelque chose qui ressemble plus à MacOSX. Elle propose en particulier un mode baptisé rootless qui peut s’installer sans être root, comme surcouche à une distribution existante. Tous les paquets sont installés dans un chemin du genre /home/toto/.gobolinux et sont gérés avec les outils de gestion de paquets normaux de gobolinux. Un script fourni se charge de mettre à jours les variables d’environnement qui finissent en PATH.

L’installation d’un paquet se fait avec un simple Compile bla, les mises à jours peuvent se faire d’une seule commande, comme dans un gobolinux normal. De plus, le format des paquets (en fait, de simple fichiers textes appelés recettes) est très simple à comprendre et il est aisé de faire ses propres ajouts. Par contre, le système de gestion des dépendances vous obligera souvent à recompiler tout (en commençant par gcc et la libc) avant d’installer un paquet. Une solution peu élégante consiste à éditer à la main les recettes pour supprimer les dépendances qui sont déjà présentes sur le système.

- utiliser Nix. Ce projet se décrit lui-même comme étant un gestionnaire de paquets purement fonctionnel au sens où toute modification du système est le résultat (de façon déterministe) de l’évaluation d’une expression. Il propose de garantir de façon forte que la description des dépendances est complète (si ça compile, c’est que les dépendances sont suffisantes). On peut l’installer dans son home et bénéfécier des outils fournis pour installer, désinstaller, mettre à jour. L’inconvénient majeur est que le système de traitement des dépendances oblige vraiment à tout recompiler, et là, pas question de bidouiller la liste des dépendances.

Gobolinux me semble pour le moment le système le plus adapté pour une gestion de paquets par un utilisateur simple. Cependant, si on a du temps libre devant soi (beaucoup) et de l’espace disque à profusion, on peut recompiler un système complet avec Nix.

3 commentaires »

  1. Pff, t’as oublié la meilleure solution : télécharger des binaires de qemu liés statiquement :)
    Facile à installer, à désinstaller… contrôle absolu par l’utilisateur.
    Tu dois même pouvoir rediriger le port usb sur lequel est branché ta wiimote pour pouvoir jouer à wiixjump dans ton sous-système :)

    Commentaire par Fab — 16 mai 2008 @

  2. Pff aussi, ma wiimote est connectée en bluetooth, Môssieur :)

    Tiens, wiixjump, c’est un joli nom, je crois que je vais le garder :)

    Commentaire par Olivier Schwander — 16 mai 2008 @

  3. […] temps après cet article, Gestion de paquets, côté utilisateur normal, voici une première version publique de Lack, un gestionnaire de paquets qui implémente les […]

    Pingback par Réifier le futur » Lack — 6 novembre 2008 @

Flux RSS des commentaires de cet article. URL de Trackback

Laisser un commentaire

Propulsé par WordPress