Nouvelle gestion de package pour openSuse 10.3

mercredi 29 août 2007 01h10

La distribution openSuse 10.3, dont on peut déjà essayer la bêta 2, apportera un tout nouveau système pour la gestion des packages.

Depuis la version 10.1 d'openSuse, le gestionnaire de packages était basé sur ZMD, démon qui attend les commandes et les exécute en invoquant un applet approprié. Ce gestionnaire était extrêmement décrié par les utilisateurs à cause de sa lenteur, ZMD et ses applets sont écrits en langage C# et sont exécutés par Mono, ce qui n'arrangeait rien à la vitesse d'exécution.

Dans la version 10.3 de la distribution, ZMD est complètement abandonné au profit de la bibliothèque Libzypp (qui existait déjà mais a été grandement modifiée). Par rapport aux versions précédentes de Suse, l'accent a été mis sur les performances dans ce nouveau gestionnaire de packages. La bibliothèque est écrite en C++ et est sérieusement profilée afin d'obtenir de bonnes performances. Le tout devrait permettre à la distribution openSuse d'avoir un gestionnaire de packages plus réactif et plus agréable à utiliser.


Un point important pour les performances de Libzypp est un nouveau cache binaire des informations de la base de données RPM. Lors du premier accès, le cache est généré, ce qui peut prendre un certain temps. Lors des accès ultérieurs au gestionnaire de packages, le cache binaire est utilisé, ce qui accélère énormément toutes les utilisations.

La gestion des dépôts a aussi changé et est devenue très simple. Pour ajouter un dépôt, il suffit d'ajouter un "fichier dépot" dans le dossier /etc/zypp/repos.d. Les fichiers dépôts sont des fichiers à la syntaxe simple précisant où trouver les packages

En plus de l'utilisation de Libzypp, deux nouveaux outils font leur apparition: zypper et openSuze updater.

Zypper est un outil en ligne de commande de gestion des packages, on peut le comparer à apt-get sur bien des points. Pour installer un package avec zypper, il suffit de taper zypper install nom_du_package

L'autre nouvel outil est openSuse updater, qui est un applet notifiant l'utilisateur lorsque des mises à jour sont disponibles. Cet outil est similaire au applets de mise à jour présents sur Fedora ou Ubuntu.