URL: https://linuxfr.org/users/jiehong/journaux/la-multiplicite-des-gestionnaires-de-paquets Title: La multiplicité des gestionnaires de paquets Authors: Jiehong Date: 2017年01月30日T22:17:44+01:00 License: CC By-SA Tags: distribution, gestion_de_paquets, développement, lwn et flatpak Score: 33 Sous Linux, s'il y a bien une chose fantastique, c'est bien les paquets ! Heureusement, ces dernières années, les gestionnaires de paquets se multiplient partout. Mais ce n'est pas toujours super. J'aimerais vous parler ici de ce que lwn.net écrit bien mieux que moi ([en accès payant](https://lwn.net/Articles/712318/)). ## Du côté des distributions Nos chères distributions nous apportent le confort inouï de pouvoir gérer presque tous nos logiciels, et de synchroniser entre elles les dépendances. Un coup d'`apt-get update && apt-get upgrade` et tout le système se met à jour (si basé sur Débian). Même chose avec `dnf` sous Fedora, ou `pacman` sous Archlinux. Maintenir un paquet demande certes du temps et de la sueur pour bien s'assurer que le code compile avec les dépendances présentes, ou encore que les correctifs de sécurité soient prêt à l'heure. Les distributions de téléphones ont bien leur _stores_, même si le système n'est, en fait, pas géré de la même manière finalement. ## Du côté des développeurs Si vous avez eu l'occasion de développer avec un langage autre que le C/C++ par exemple, vous vous êtes sûrement rendu compte que chaque langage propose son propre gestionnaire : - `pip` pour Python ; - `maven` pour Java ; - `cargo` pour Rust ; - `stack` pour Haskell ; - `npm` pour Javascript ; - etc. C'est super, n'est-ce pas ? ## À la croisée des deux Mais voilà, vous vous retrouvez à vouloir installer un logiciel écrit en Javascript, dont les dépendances ne sont pas présentes dans les dépôts de votre distribution, alors _npm_ est là pour vous. Le soucis, c'est qu'il vous faut maintenant maintenir votre distribution et vos logiciels dans _npm_ maintenant. Ah, mais vous avez aussi cette application qui a une partie Javascript, et un bout en Rust. Là, `cargo` ou `npm` ne peuvent pas gérer les dépendances de l'autre langage, alors il faut passer par la distribution, qui là est superbe si elle contient le paquet correspondant. ## Containers Et si les applications étaient _déjà_ empaquetée d'une manière standardisée, ça serait plus simple, non ? Pensez à Flatpak, ou Docker. Mais là, qui va s'assurer que tout vos containers utilisent bien la dernière version _patchée_ d'une bibliothèque critique ? ## Le future Le présent semble donc être à l'exploration des possibilités pour résoudre un souci identique à plusieurs niveau (système ou développeur), mais avec des contraintes différentes. Pensez-vous que certaines solutions soient en train d'émerger ? Par exemple, les distributions vont-elles proposer des systèmes de bases sur lesquels les applications utilisateurs seraient gérées autrement ?

AltStyle によって変換されたページ (->オリジナル) /