App center : le futur de la gestion des paquets sous Ubuntu


Suite à l’UDS (Ubuntu Developement summit), le sommet des développeurs d’Ubuntu qui a eu lieu le mois dernier à Barcelone, il a été décidé de refondre totalement le système de gestion des paquets. Il existe en effet différents outils permettant d’installer de nouveaux paquets, de les mettre à jour, de les supprimer, etc… L’équipe d’Ubuntu souhaite donc pour Karmic et les version futures, améliorer ce système disparate en ne proposant qu’un outil centralisé, appellé simplement « AppCenter » pour le moment, dans le but de simplifier la gestion des paquets.

L’introduction de la page du wiki dédiée à AppCenter peut être traduite ainsi :

united-kingdomuk-flag There will be a single graphical interface for package management in Ubuntu, currently codenamed AppCenter. (The final name, like much of the design, will be partly dependent on user testing.) This will combine the human-readable approach of Add/Remove Applications, the power of Synaptic, and the ease of use of Update Manager. Having a single interface will make handling software easier, socially improve security, hopefully free space on the CD, and provide a prominent showcase for Ubuntu and partner software. The implementation will likely be based on Add/Remove Applications (gnome-app-install), but may use PackageKit for some components.

france-flag Il y aura une seule interface graphique pour gérer les paquets dans Ubuntu, appelée pour le moment AppCenter. (Le nom final, comme le design, dépendra en partie des tests utilisateurs.) Elle combinera l’approche très facile à comprendre de « Ajouter/Supprimer des applications » [ndt: le système de Gnome, en bas du menu Applications], la puissance de Synaptic, et la facilité d’utilisation du gestionnaire de mise à jour. Avoir une interface unique permettra d’avoir une meilleure prise en main, d’augmenter la sécurité globale, peut être même libérer de la place sur le CD  et fournir une importante vitrine pour Ubuntu et ses partenaires. L’implémentation sera probablement basée sur Ajouter/Supprimer des applications (gnome-app-install), mais utilisera peut être PackageKit pour quelques composants.

Les logiciels existants

Ajouter/Supprimer des applications

Ce logiciel (gnome-app-install) est inclus avec Gnome. Il est disponible dans Applications > Ajouter/Supprimer…. Il est très simple d’utilisation : dans une barre latérale à gauche sont repris les différentes catégories (intégration oblige) du menu application (Bureautique, Graphisme, Internet…). Il suffit de sélectionner la rubrique voulue et les logiciels disponible apparaissent. Il peuvent être classés par popularité (de 0 à 4 étoiles) et il suffit de cocher les logiciels que l’on souhaite installer. Une fois ceux ci sélectionnés, il faut cliquer sur Appliquer les changements et l’installation s’effectue. Lorsque l’on clique sur un nom, une courte description présente le logiciel et précise s’il est certifié pour  Gnome, Ubuntu, etc. D’après la page de présentation d’AppCenter, c’est cette interface (grandement améliorée) qui servira de base au projet.

add_remove

Synaptic

Synaptic est le couteau suisse de la gestion de paquet, malheureusement un peu au détriment de la simplicité. On le trouve dans le menu Système>Administration>Gestionnaire de paquets Synaptic. Ici, il est possible d’installer des logiciels, mais aussi toute sorte de bibliothèques, version de développement,  codes sources, etc… C’est donc beaucoup plus complet mais on ne sait pas toujours quoi installer. Il y a également une barre latérale très – et même beaucoup trop – chargée, qui permet de choisir des catégories. Un champ de recherche rapide permet de rechercher un paquet par son nom (ou un terme de sa description) de manière très rapide, car la liste se met à jour en même temps que l’on saisie la recherche. Lorsque l’on clique sur un nom de paquet, une description apparaît, et il est possible depuis peu d’afficher un screenshot de l’application. Un double clic permet de sélectionner un paquet pour l’installation, puis il faut cliquer sur Appliquer pour déclencher celle ci. Synaptic est très puissant et ces fonctionnalité ne s’arrêtent pas là. Il est possible en effet de supprimer un paquet (complètement, c’est à dire que le paquet est supprimé) ou partiellement (le paquet est désinstallé mais il n’y aura pas besoin de le re-télécharger pour une nouvelle installation). Le bouton propriété affiche des informations très intéressante, comme les dépendances (les autres paquets qui doivent être installé pour que le logiciel fonctionne), la version ou encore l’endroit ou ce dernier est installé. Bref synaptic permet d’accéder à tous les paquets disponibles, il est très complet et possède beaucoup de fonctionnalités.

synaptic

Sources de logiciels

Disponible dans Système>Administration>Sources de mise à jour ou dans Synaptic Configuration>Dépôts (au passage, on peut voir que la multiplication des logiciels ne simplifie pas l’uniformisation des termes utilisés, ici pour le même logiciel, 3 noms sont utilisés…). Pour expliquer très vite comment ça marche, il faut comprendre le principe des paquets. En gros, la distribution (ici Ubuntu) possède des serveurs (ou dépôts) sur lequel elle regroupe tous les logiciels (et leur dépendances) qu’elle souhaite diffuser, et le gestionnaire de paquet télécharge puis installe ces logiciels. L’intérêt réside dans la centralisation des données, tout se trouve au même endroit. Si vous souhaiter par contre installer un logiciel qui n’est pas dans les dépôts, pas de panique, il est possible d’ajouter de nouveaux dépôts (non certifiés par la distribution) afin d’accéder à de nouveaux logiciels. Une fois un nouveau dépôt installé, c’est transparent pour l’utilisateur, les nouveaux logiciels apparaissent dans synaptic au milieu des anciens et leur gestion est la même. Bref vous l’aurez compris, le logiciel Sources des mises à jour permet de gérer les dépôts et d’en ajouter de nouveaux ou les supprimer. Pour en savoir plus sur le fonctionnement (très important) de ce logiciel, je vous renvoie à la documentation.

sources

Gestionnaire de mises à jour

Installer plein de paquets, c’est bien, mais il faut pouvoir les mettre à jour facilement. Par mise à jour, j’entends les corrections de bugs ou de sécurité. Le gestionnaire de mise à jour est disponible dans Système>Administration>Gestionnaire de mises à jour. Son fonctionnement est simplisme : une liste de logiciels à mise à jour, des cases à cocher pour sélectionner les logiciels, et un bouton Installer les mises à jours. Une petite description des mises à jour est aussi présente. Le gestionnaire est disponible également par défaut sur le tableau de bord, par une icône indiquant qu’il y a des mises à jour à faire. Il permet également de lancer les mises à jour de version d’Ubuntu (tous les 6 mois).

update_manager

Gdebi

Gdebi permet d’installer un logiciel avec l’extension .deb, c’est à dire un paquet téléchargé depuis un site, comme GetDeb. Télécharger un .deb est souvent déconseillé, car le logiciel en question a de grande chance de se trouver déjà dans les paquets officiels. Par contre si ça n’est pas le cas, où qu’il nous faut absolument la dernière version du soft, le .deb est l’idéal pour installer un logiciel sous Ubuntu (par rapport à la récupération des sources et la compilation…). Mais le logiciel ainsi installé ne sera pas géré par les dépôts, donc pas de mises à jour automatique de celui ci! Revenons à Gdebi; il suffit de double cliquer sur le .deb pour que Gdebi s’ouvre, puis de valider pour que le paquet s’installe,  c’est donc très simple, mais ça fait encore un logiciel en plus pour gérér des paquets!gdebi

Computor Janitor

Arrivé récemment sur Ubuntu, Computer janitor est un logiciel qui permet de trouver les paquets qui sont devenus obsolètes (je ne sais pas trop comment il gère ça :p) et de proposer leur suppression, afin de faire de la place. Le fonctionnement : une liste de logiciel à supprimer, des cases à cocher pour les selectionner, un bouton Nettoyer… et c’est tout :p

janitor

Et encore

Et n’oublions pas pour installer un logiciel, d’autres techniques comme la ligne de commande, la récupération directe des sources, l’utilisation du protocole apturl, etc

AppCenter

Intérêts

Tous ces logiciels ça fait beaucoup pour gérer les paquets et dépôts (et encore, il en existe beaucoup d’autres alternatifs, je n’ai présenté que ceux installés par défaut dans Ubuntu). On voit donc tout de suite l’intérêt des développeurs à ne créer qu’un seul logiciel : beaucoup moins de travail de maintenance, beaucoup plus simple pour l’utilisateur s’il n’a qu’une seule interface centralisée, un développement plus rapide, etc. De plus, le but est de faciliter l’ajout de dépôts « externes », d’inciter à utiliser des liens apturl plutôt que la ligne de commande ou des .deb…

Timeline

La page du wiki à propos d’AppCenter est déjà bien avancée, il y a eu un sacré boulot de ce côté là. La roadmap est pensée pour les 4 prochaines versions d’Ubuntu (avril 2011), je vous propose ci dessous un résumé (en gros une traduction commentée) de celle ci :

Pour Octobre 2009 (karmic koala) :

  • Un nouveau logiciel (nom à definir) permettant de rechercher, installer et supprimer des logiciels, ceux ci étant classés par catégories/sous-catégories et popularité. La recherche de logiciel devra être tolérante aux erreurs et rapide.
  • Une interface claire, intuitive, facile à utiliser. Les logiciels seront présenter en détail. J’imagine un système de captures d’écran un peu mieux fait que celui de synaptic. L’interface sera reprise également lors de l’utilisation d’aptURL (clic sur un lien d’une page Web pour installation)
  • Possibilité de créer des files d’attentes d’installation et de continuer à rechercher d’autres logiciels pendant qu’une installation est en cours. Ceci n’est pas possible actuellement, c’est donc une amélioration pas mal du tout car à l’heure actuelle on est un peu bloqué si on a beaucoup de choses à installer…
  • Une démonstration interactive (sans doute une capture d’écran, voir une vidéo, soyons fou!) de comment lancer le logiciel une fois installé.
  • Amélioration de la sécurité, avec l’utilisation de policyKit pour gérer les authentification (en lieu et place de gksudo).
  • Incitation à l’utilisation du protocole apt:
  • Amélioration de la gestion des mises à jour des paquets (via le même logiciel donc)
  • Mise en place d’une gestion des paquets dans Launchpad, permettant à tous d’ajouter des descriptions, screenshots et mots clés aux paquets, puis aux mainteneurs d’ajouter ces informations aux paquet s’ils le souhaitent. Cela devrait permettre une  recherche plus pertinente au niveau d’AppCenter.

Pour Avril 2010

  • AppCenter devient l’outil officiel de gestion des paquets, remplaçant Synaptic, le gestionnaire de sources, Gdebi et  le gestionnaire de mises à jour. De gros changements en perspective!
  • Ouverture d’AppCenter lors de l’utilisation de lien apt.
  • Version réduite d’AppCenter pour les mises à jour logiciel.
  • Mise en place dans Launchpad d’un système de notes et commentaires afin de pouvoir dans un futur proche classer les logiciels par popularité.

Pour Octobre 2010

  • Mise en place directement dans AppCenter du système de notes/commentaires pour les logiciels installés (avec possibilité de signaler les commentaires inappropriés)
  • Faciliter l’ajout de PPA (Personal Package Archive) et créer un mécanisme pour déterminer le niveau de confiance des logiciels proposés par ces PPA.
  • Possibilité d’acheter des logiciels via AppCenter. (un AppStore?)

Pour Avril 2011

  • Améliorer les critères de filtres et classements (par type de licences, coût, durée de maintenance…)
  • Voir les logiciels installés par des amis (AppCenter, le Facebook des paquets?)
  • Fonction très interessante : télécharger un logiciel une fois, puis possibilité de l’installer sur de multiples ordinateurs!
  • Historique des installations/mises à jours/suppressions de paquets.
  • Incorporation d’APTonCD.
  • Mise en place d’une interface spécifique pour l’installation de certains type de paquets (polices, fond d’écrans…) avec on l’imagine un système de prévisualisation.
Les fonctionnalités

Celles ci ne sont pas encore finalisées, mais voici une liste de ce qu’elles seront sûrement :

  • La recherche de paquet pourra se faire par de multiples critères (noms, (sous-)catégories, but du logiciel, support des erreurs de frappes, type, nom du vendeur, nouveautés, popularité, etc…)
  • Recherche de PPA (avec niveau de confiance)
  • Informations détaillées sur les paquets (fonction, popularité, commentaires utilisateurs, screenshots ou courte vidéo, numéro de version, s’il est ou non installé, comment le lancer s’il est installé, dépendances nécessaires s’il n’est pas installé, langues disponibles, prix, type de license, qui le maintient et pour combien de temps, qui fait le support technique et pour combien de temps, …). On voit ici qu’il y a beaucoup plus d’information de prévues que dans synaptic et surtout des infos plus utiles et mieux organisées.
  • L’installation pourra être asynchrone (on pourra continuer à utiliser AppCenter pendant qu’il téléchargera (voir installera) un logiciel), possibilité de mettre en pause un téléchargement (super pratique quand on a pas une grosse connexion!).
  • Historique et compte rendu de ce qui est installé (classé par catégories, licence, vendeur,…)
  • Gestion des mises à jour, avec  surtout une grosse amélioration au niveau de l’information sur ce qui va être installé et pourquoi (correction de bug, de sécurité…), ainsi qu’une explication détaillée des nouveautés et de l’intérêt d’un passage à une nouvelle version d’Ubuntu. En effet à l’heure actuelle, on a juste un bouton qui apparaît dans le gestionnaire de mise à jour, pour un néophyte ce n’est pas clair, il ne sait par forcément qu’il s’engage à une installation qui peut durer plusieurs heures et qui va transformer son système. Les dev veulent donc tout faire pour que les mises à jour de version soient compréhensible par tout un chacun.
  • Achat de logiciels, amélioration de la sécurité (PolyciKit)
  • Pour finir, un petit dessin disponible sur le wiki de ce que pourrait être l’interface d’AppCenter, même si personellement ça ne me parle pas beaucoup ;)

appcenter

Conclusion

AppCenter est je trouve une super innovation que nous prépare Ubuntu pour les versions à venir. En résumé, il n’y aura plus qu’un seul logiciel pour gérer les paquets, dépôts et updates, tout ça avec une interface plus claire, plus facile à utiliser, avec beaucoup plus d’informations sur les paquets et une recherche améliorée, des nouvelles fonctions pour gérer les PPA, une file d’attente, un historique, voir la mise en place d’un « AppStore ». De plus, la sécurité sera améliorée et une grande campagne sera mise en route pour inciter à l’utilisation de ce logiciel unique. Commentaires des utilisateurs et popularité des logiciels seront également de la partie. En un mot, vivement la suite, je tacherais de vous tenir au courant des nouveautés touchant à AppCenter. En attendant, n’hésitez pas à laisser un commentaire sur ce que vous inspire ce nouveau projet pour Ubuntu.

  1. #1 by jmini on 24 décembre 2009 - 12 h 49 min

    Il me semble que dans cette liste exhaustive, il manque la boite de dialogue : « Installation de greffon multimédia ». Ansi que celle qui permet d’installer les drivers propriétaires (par exemple le gestionaire NVIDIA)

    Est ce que ces dialogues vont aussi être intégré dans Ubuntu Software Store (anciennement AppCenter)?

Vous devez être connecté pour poster un commentaire.