Auteur Sujet: Snap, Flatpak et AppImage les nouveaux format d’application sous Linux  (Lu 50178 fois)

0 Membres et 1 Invité sur ce sujet

renaud07

  • Abonné Orange adsl
  • *
  • Messages: 3 345
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #24 le: 29 septembre 2019 à 01:39:14 »
Et encore winSxS ne concerne que windows lui-même et pas les logiciels tiers...

Y'a aussi le système de comptage de l'explorateur qui le rend plus gros qu'il ne l'est en réalité (perso, je ne l'ai découvert que récemment) :

Le magasin de composants présente une grande taille de répertoire en raison de la manière dont le shell de l'Explorateur Windows prend les liens physiques en compte. Le shell Windows compte chaque référence à un lien physique comme une seule instance du fichier pour chaque répertoire dans lequel le fichier réside. Par exemple, si un fichier nommé advapi32.dll présente une taille de 700 Ko et est contenu dans le magasin de composants et dans le répertoire \Windows\system32, l'Explorateur Windows signale à tort que le fichier utilise 1 400 Ko d'espace disque dur.

S'ils réglaient ce soucis, on aurait enfin la vraie taille et par la même occasion on pourrait stocker plus de truc. Car là on a de l'espace gâché alors qu'il n'existe pas en réalité.


vivien

  • Administrateur
  • *
  • Messages: 47 085
    • Twitter LaFibre.info
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #25 le: 29 septembre 2019 à 16:34:42 »
Maintenant pour plus de sécurité, je comprends qu'il soit nécessaire d'évoluer vers un système qui confine les application.

Maintenant, je trouve dommage de ne pas savoir quand on installe un snap si on est en mode strict ou mode classique.

La documentation : Snap confinement

Snap propose trois niveaux de confinement instantané:

- Strict : Utilisé par la majorité des snaps. Les snaps strictement confinées s'exécutent de manière totalement isolée et ne peuvent par conséquent accéder à vos fichiers, réseau, processus ou à aucune autre ressource système sans demander un accès spécifique via une interface (voir ci-dessous).

- Classique : Permet d’accéder aux ressources de votre système de la même manière que les packages traditionnels. Pour vous protéger contre les abus, la publication d'un snap classique nécessite une approbation manuelle, et l'installation requiert l'argument de ligne de commande --classic.

- Devmode : Un mode spécial pour les créateurs de snap et les développeurs. Un devmode snap s'exécute comme un snap strictement confiné avec un accès complet aux ressources système et génère un résultat de débogage permettant d'identifier les interfaces non spécifiées. L'installation nécessite l'argument de ligne de commande --devmode. Les snaps Devmode ne peuvent pas être publiés sur le canal stable, n'apparaissent pas dans les résultats de la recherche et ne sont pas actualisés automatiquement.

Le confinement strict utilise les fonctionnalités de sécurité du noyau Linux, notamment AppArmor, seccomp et les namespaces, pour empêcher les applications et les services d'accéder au système plus vaste.


Et un comparatif sur une grosse application :

Snap => Taille installée de 441 Mo


Flatpak => Téléchargement d'un fichier de 1,1 Go / Taille installée de 682 Mo


butler_fr

  • Client Bbox adsl
  • Modérateur
  • *
  • Messages: 3 605
  • FTTH orange
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #26 le: 01 octobre 2019 à 00:16:45 »
vu les tailles que tu indique vivien, la on fait pire que windows!!!
Je veux bien que la bande passante et l'espace disque soient de moins en moins limités mais quand même...
Je ne suis vraiment pas sur que ce soit "la bonne voie"

renaud07

  • Abonné Orange adsl
  • *
  • Messages: 3 345
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #27 le: 02 octobre 2019 à 16:27:17 »
Je n'avais pas fait attention à la taille, c'est assez énorme en effet...

Pour moi ça va bien si on a besoin d'une version plus récente de quelques logiciels. S'il s'avère qu'Ubuntu ne se repose plus que sur les snap à l'avenir, il est clair que j'irais voir ailleurs.


vivien

  • Administrateur
  • *
  • Messages: 47 085
    • Twitter LaFibre.info
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #28 le: 17 octobre 2019 à 21:04:38 »
Ubuntu envisage en effet de remplacer le paquet classique de Chromium par une « boite vide » qui renverrait alors vers le snap correspondant. On n'aurait donc plus le choix.

Bref, je vois bien arriver un Ubuntu sans aucune application .deb pré-installées et les applications snap qui sont les seules versions disponibles. Les paquets .deb traditionnels restant pour assurer la compatibilité avec des application qui n'existent pas dans Snap.

C'est fait :

Nous avons récemment annoncé la transition du paquet deb Chromium vers Snap, dans Ubuntu 19.10. Une telle transition n'est pas anodine et a suscité de nombreuses discussions constructives. Nous résumons donc ici pourquoi nous procédons ainsi, comment et dans quel délai.

Pourquoi

Chromium est un navigateur Web très populaire, l’équivalent totalement ouvert de Google Chrome. Sous Ubuntu, Chromium n’est pas le navigateur par défaut et le paquet réside dans la section "univers" de l’archive. Univers contient des progiciels gérés par la communauté. Malgré cela, l’équipe Ubuntu Desktop s’engage à conditionner et à maintenir Chromium car un nombre important d’utilisateurs y ont recours.

La maintenance d’une version unique de Chromium représente un investissement de temps considérable pour l’équipe de bureau Ubuntu qui travaille avec l’équipe de sécurité d’Ubuntu pour mettre à jour chaque mise à jour. Les équipes prenant en charge de nombreuses versions stables d'Ubuntu, la charge de travail est complexe.

La comparaison de cette charge de travail avec d'autres distributions Linux en rolling release omet la nuance de prendre en charge plusieurs versions de support à long terme (LTS) et non-LTS.

Google publie une nouvelle version majeure de Chromium toutes les six semaines, avec généralement plusieurs versions mineures permettant de remédier aux vulnérabilités en matière de sécurité. Chaque nouvelle version stable doit être créée pour chaque version d'Ubuntu prise en charge - 16.04, 18.04, 19.04 et les prochaines versions 19.10 - et pour toutes les architectures prises en charge (amd64, i386, armhf, arm64).

En outre, il peut être difficile de s'assurer que Chromium construit (et encore moins s'exécute) sur des versions plus anciennes telles que 16.04, car le projet en amont utilise souvent de nouvelles fonctionnalités du compilateur qui ne sont pas disponibles sur les versions précédentes.

En revanche, un paquet Snap ne doit être créée qu'une fois par architecture et sera exécutée sur tous les systèmes prenant en charge snapd. Cela couvre toutes les versions prises en charge d'Ubuntu, y compris 14.04 avec maintenance de sécurité étendue (ESM), ainsi que d'autres distributions telles que Debian, Fedora, Mint et Manjaro.

Bien que ce changement d’emballage pour Chromium puisse nous permettre de concentrer les ressources des développeurs ailleurs, l’emballage en un coup d’œil présente des avantages supplèmentaires. Les canaux dans le Snap Store permettent de publier facilement plusieurs versions de Chromium sous un seul nom. Les utilisateurs peuvent basculer entre les canaux pour tester différentes versions du navigateur. Snap Store met à jour les Snap automatiquement en arrière-plan, ce qui permet aux utilisateurs de s’assurer qu’ils exécutent des logiciels à jour sans avoir à gérer manuellement leurs mises à jour. Nous pouvons également publier rapidement des correctifs spécifiques via des branches du Snap Store, ce qui permet aux utilisateurs et aux développeurs de se remettre rapidement au courant des rapports de bogues. Enfin, la capture instantanée de chrome est strictement confinée, ce qui fournit des garanties de sécurité supplèmentaires aux utilisateurs.

En résumé: il existe plusieurs facteurs qui font de Chromium un bon candidat à la transition:

- Ce navigateur n’est pas le navigateur par défaut d’Ubuntu et a donc moins d’impact en raison de la taille réduite de sa base d’utilisateurs.
- Les snaps sont explicitement conçus pour supporter une fréquence élevée de mises à jour
- Le projet en amont a trois canaux de publication (stable, beta, dev) qui correspondent parfaitement aux canaux par défaut de snapd (stable, beta, edge). Cela permet aux utilisateurs de changer facilement de version de Chromium ou même d’avoir plusieurs versions installées en parallèle.
- L'application est strictement confinée, ce qui ajoute une couche de sécurité supplèmentaire au mécanisme de sand-boxing déjà robuste du navigateur.


Comment

La première Snap de Chromium a été  crée il y a deux ans et nous avons parcouru un long chemin depuis. La version snap compte actuellement plus de 200 000 utilisateurs d'Ubuntu et plus de 30 autres distributions Linux. La version actuelle présente quelques problèmes mineurs sur lesquels nous travaillons, mais nous avons pensé qu’elle était suffisamment solide et mûre pour une transition. Nous sommes convaincus qu'il est temps de commencer la transition des utilisateurs de la version de développement (19.10) d'Ubuntu. Nous sommes impatients de recueillir des commentaires sur ce qui fonctionne et ce qui ne nous attend pas avant la prochaine version du support à long terme d’Ubuntu, la 20.04.

Avec Ubuntu 19.10, le package deb du navigateur chromium (et les packages associés) ont été transformés en un package de transition qui ne contient que des scripts d'encapsulation et un fichier de bureau pour la compatibilité en amont. Lors de la mise à niveau ou de l'installation du paquet deb sous 19.10, la capture sera téléchargée à partir du Snap Store et installée.

Un soin particulier a été pris pour ne pas interrompre les flux de travail existants et pour rendre la transition aussi transparente que possible:
- Lors de la première exécution de la capture, un profil utilisateur Chromium existant dans $ HOME / .config / chromium sera importé (à condition que l'espace disque soit suffisant).
- Les exécutables chrome-browser et chromedriver de / usr / bin / sont des wrappers qui appellent les exécutables de snap respectifs.
- chromedriver a été corrigé afin que les scripts de sélénium existants continuent à fonctionner sans modifications
- Si l'utilisateur a défini Chromium comme navigateur par défaut, le wrapper du navigateur chromium se chargera de le mettre à jour dans le snap Chromium.
- De même, les entrées épinglées existantes dans les lanceurs de postes de travail seront mises à jour pour pointer vers la version instantanée (mises en œuvre pour GNOME Shell et Unity uniquement pour l'instant, les contributions sont bienvenue pour le faire dans d'autres environnements de postes de travail).
- Le apport hook a été mis à jour pour inclure des informations pertinentes sur le snap et ses dépendances.


Quand

Si vous passez a Ubuntu 19.10, vous pouvez essayer Chromium en un clin d’œil et tester la transition à partir du paquet deb dès maintenant. Toutefois, vous n’avez pas besoin d’attendre la sortie du 17 octobre pour commencer à utiliser le logiciel instantané et à partager vos commentaires. Exécutez simplement les commandes suivantes pour être opérationnel:

snap install chromium
snap run chromium

Une fois la version Ubuntu 19.10 publiée, nous envisagerons d’étendre la transition à d’autres versions stables, à partir de 19.04. Cela ne se produira que lorsque tous les problèmes connus importants auront été résolus.

Nous apprécions tous les commentaires que nous avons envoyés au cours des derniers mois lors de l’annonce de ce projet. Honnêtement, nous pensons que la fourniture d’applications snap offre des avantages considérables aux développeurs et aux utilisateurs. Nous savons qu'il peut y avoir des difficultés lorsque nous travaillons pour l'avenir et continuerons d'écouter nos utilisateurs à mesure que nous planifions ces migrations.


Source : Blog Ubuntu, traduit de l'Anglais rapidement par moi-même.

vivien

  • Administrateur
  • *
  • Messages: 47 085
    • Twitter LaFibre.info
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #29 le: 17 octobre 2019 à 22:27:00 »
En image pendant la mise à jour vers Ubuntu 19.10 :



Après installation :


renaud07

  • Abonné Orange adsl
  • *
  • Messages: 3 345
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #30 le: 18 octobre 2019 à 03:57:49 »
Ça a du sens pour Chromium, ok, mais j'espère qu'ils se cantonneront à ce cas spécifique...

M@yeulC

  • Abonné Bouygues Telecom 4G/5G
  • *
  • Messages: 42
  • Cambrousse Ardéchoise ou Lyon
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #31 le: 30 octobre 2019 à 00:33:25 »
S'il te plaît vivien, pourrais-tu plutôt vérifier la taille à l'installation en installant vraiment les logiciels, et en vérifiant l'espace disque/la bande passante utilisée?

Les nombres que tu indiques montrent que snap est beaucoup plus léger que flatpak. En vérité, c'est plutôt l'inverse (sauf au premier flatpak installé sur le système):
  • Les flatpak utilisent des runtimes partagées: si une application a besoin de la runtime KDE, il faudra télécharger tout cela! mais pas si on installe une deuxième application qui utilise la runtime KDE... En fait, c'est assez proche d'un gestionnaire de paquets traditionnel, mais avec beaucoup moins de granularité
  • Les flatpaks conservent les données dans OStree: il est techniquement impossible de prédire la taille exacte de téléchargement, pour les mêmes raisons que git: on ne télécharge que ce que l'on n'a pas, mais pour le savoir, il faut comparer les deux. Seule une estimation du pire cas est possible, c'est ce qui est affiché. En vérité, il est fort probable que cela prenne moins de place que les mises à jour de la distribution, pour un nombre comparable de paquets
Je dois avouer qu'il s'agit de ma solution favorite pour l'instant, et je l'utilise beaucoup pour isoler des applications un peu louches/propriétaires quand vraiment nécessaire (il faut noter que les droits des paquets flathub sont souvent un peu trop permissifs sur l'accès aux fichiers, mais c'est modifiable), ainsi que pour installer des applications sans installer trop de dépendances: calibre et python2, ou steam et tout le multilib... Je note aussi que le "bac à sable" n'est efficace qu'avec Wayland.

Je note cependant que Appimage et Snap disposent aussi de systèmes de mise à jour incrèmentales, même si elles sont utilisées beaucoup moins systématiquement. J'aime pas mal AppImage pour des applications portables à mettre su une clé USB.

Mais malgré ces avantages, je leur préfère une autre solution: le système déclaratif de Nix et Guix, qui sont plus des itérations sur le modèle de gestionnaire de paquet traditionnel, et quelques liens avec OStree. Cela permet d'avoir plusieurs versions concurrentes installées, avec leurs dépendances différentes, d'utiliser des environnements différents facilement, et de rétablir une configuration précédente très facilement (même depuis GRUB). Il est aussi possible de tester une configuration du système avant de l'appliquer (celle-ci peut être utilisée dans un seul des terminaux, par exemple). Il est même possible de décrire la configuration entière du système dans un seul fichier, afin de répliquer celle-ci à l'identique sur une autre machine (d'où le sobriquet de "gestionnaire de paquet déclaratif").
Je trouve que les distributions basées sur Nix et Guix gagnent de plus en plus de traction... Je vais personnellement passer de Yunohost à NixOS sur mon serveur, je pense (et bien sûr, utiliser les fonctionnalités de btrfs en prime: déduplication, COW, snapshots, btrfs-send pour les backups).

Enfin, le système a suffisamment fait couler beaucoup d'encre... Mais il faut espérer qu'une solution bien meilleure sortira de tout cela, et que la compétition sera fructueuse. Snap a déjà récupéré le système de portails créé pour flatpak, par exemple.

vivien

  • Administrateur
  • *
  • Messages: 47 085
    • Twitter LaFibre.info
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #32 le: 05 novembre 2019 à 22:01:25 »
Avec le format Appimage, l'application doit gérer elle même sa mise à jour, contrairement à Snap ou  Flatpak.

Résultat, cela ne fonctionne pas toujours : (ici Molotov.TV sous Ubuntu 19.10)



vivien

  • Administrateur
  • *
  • Messages: 47 085
    • Twitter LaFibre.info
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #33 le: 12 novembre 2019 à 22:00:46 »
La logithèque de Fedora ne prendre plus en charge les paquets Snap à partir de Fedora 31.

L’explication est à se tordre de rire avec une histoire avec Fiat, Peugeot, General Motors et BMW (je pense que c'est Canonical) avec son moteur diesel (je pense que c'est Snap).
=> https://blogs.gnome.org/hughsie/2019/07/12/gnome-software-in-fedora-will-no-longer-support-snapd/

Plus sérieusement, Canonical a décidé de ne pas installer gnome-software dans Ubuntu 20.04 LTS. gnome-software sera remplacé par "Snap Store by Canonical".

Le nouveau Snap Store ne prendra pas en charge les Flatpaks, le format concurrent développé par RedHat/Fedora.

Richard Hughes, un développeur Red Hat, explique que les développeurs de Canonical actuellement affectés à travailler sur gnome-software ont été réaffectés pour travailler sur le Snap Store, et il n'est pas sur que le code qui sera développé sera open source (sous réserve que j'ai bien compris sont mail du Heads up: No more snap plugin in gnome-software.

Il rajoute : "Sans le Snap Store le support de snap est plutôt inutile, car snapd est tellement lié a l'écosystème snapcraft, et parce que vous ne pouvez pas réellement exécuter votre propre instance du Snap Store, contrairement à Flatpak". Ce point semble bien vrai et il m’inquiète moi aussi : Avoir un unique magasin pour télécharger les snap, c'est faire la même chose que Google et le Google Play Store‎, Apple et l'App Store ou Microsoft et le Microsoft Store.

Bref, il semblerait que la guerre des nouveaux format d’application sous Linux soit déclarés. Aujourd'hui les distributions Linux acceptent aussi bien Snap, Flatpak que Appimage, mais si j'ai bien compris Canonical va supprimer le support de Flatpak et RedHat/Fedora le support de Snap.

gillejeu

  • Invité
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #34 le: 16 novembre 2019 à 22:25:36 »
Et après on se demande pourquoi Linux ne perce pas (et ne percera jamais)...

M@yeulC

  • Abonné Bouygues Telecom 4G/5G
  • *
  • Messages: 42
  • Cambrousse Ardéchoise ou Lyon
Snap, Flatpak et Appimage les nouveaux format d’application sous Linux
« Réponse #35 le: 26 novembre 2019 à 15:29:09 »
Voici un exemple de mise à jour que je viens d'effectuer via flatpak sur mon système. L'interface graphique aurait affiché 2.5 Gio de mises à jour. Il a été uniquement nécessaire de télécharger 68 Mio. OStree rend les mises à jour plus efficaces que les traditionnels gestionnaires de paquets (à peu près au même niveau que les mises à jour internes à Firefox, ou les Apk android, qui utilisent bsdiff).