Que penser des paquets snap?

Bonjour,
que peut-on penser des paquets snap ?
J’ai eu une très courte expérience sous Ubuntu (pc d’occase avec Ubuntu installé) qui m’a laissé perplexe : quand un logiciel existe dans les dépots deb et les dépots snap on peut se retrouver avec des versions plus ou moins incompatibles si on n’est pas très rigoureux dans la gestion des deux types de paquets.
Je suis revenu sous Debian stable.

Sachant qu’ils ne partagent pas leur librairies il est où le problème ? seul l’espace disque en prends pour son grade finalement :wink:

Que ce ne sont pas des flatpaks, sinon rien de plus que ce qu’il a déjà été dit par leurs détracteurs et leurs supporters.

Bonjour,

Ce que je vais dire n’est pas souvent mentionné, mais malgré tous leurs défauts, les snaps apportent potentiellement (j’ai bien dit « potentiellement ») quelques avantages :

  1. les Snaps apportent une amorce de cloisonnement applicatif qui manque tant à nos distributions préférées (sous réserve d’une mise en oeuvre stricte d’AppArmor, on obtient un niveau intéressant de sécurité) ;
  2. les Snaps permettent une mise à jour régulière pour bénéficier des dernières versions logiciels, indépendamment du socle système, ce qui peut être intéressant pour de nombreux utilisateurs.

Mais malheureusement, cela s’accompagne de défauts qui doivent être questionnés :

  1. les distributions n’ont pas la main sur le contenu du Snap poussé par le développeur… ce qui en fait un nid à malwares…
  2. les Snaps ne sont pas tous protégés de la même manière via AppArmor, ce qui amène certaines installations de Snaps à un cloisonnement… nul.
  3. on se perd vite dans le store Ubuntu de par les versions Snap ou APT qui s’affichent…

Bref, il y a du potentiel, mais pour le moment, c’est sans moi ! :sweat_smile:
Bonnes fêtes à toutes et tous en passant :wink:
Fred

EDIT : si ce n’est pas évident pour tous, il faut préciser que toutes les solutions de cloisonnement actuelles comparables sur nos distributions tournent également avec des droits root ou équivalent, donc en gros, c’est game over si l’attaquant trouve une faille.

C’est bien ce qui m’est arrivé : deux versions de VLC, l’une par snap l’autre en ligne de commande par apt… La première ne prenait pas en compte la caméra du PC, le seconde si. J’ai mis pas mal de temps à comprendre pourquoi VLC avait des comportements différents suivant le façon dont je le lançais.
Merci en tout cas pour ces éclaircissements.
Ce que je voulais entre autres savoir était la question des librairies (merci à Clochette).

1 J'aime

Comme je ne connais pas le problème, mes questions sont de vraies questions.

  • Quel est l’intérêt technique des snaps par rapport à ce qui a existé d’abord, c’est à dire la liaison statique des bibliothèques ?
    -En quoi le snap apporterait-il une meilleure protection ?

Bonnes fêtes à tous.

Par défaut sous linux les liaisons sont dynamiques, pas statiques. Cela explique le fait que quand les librairies partagées sont installées les logiciels sont souvent très légers, même pour des applications vidéo, par exemple.
Le défaut des librairies partagées est que l’ensemble des logiciels installés doivent être cohérents du point de vue des versions. C’est l’un des rôles des dépôts officiels de Debian d’assurer cette cohérence. Quand on rajoute sans précaution des dépôts externes au fichier /etc/apt/sources.list on peut se retrouver face à un problème de « FrankenDebian » par évocation de Frankenstein…
Pour les éditeurs de logiciels il est intéressant de créer des applications exécutables qui contiennent toutes leurs librairies (dans une plage de versions de Linux) pour ne pas être obligés de compiler autant de versions du logiciel que de versions d’environnements Linux.
C’est, par exemple,le cas des modules Appimage (https://appimage.org/).
je n’étais pas sûr que ce soit le cas de Snap.

1 J'aime

Ça je le sais. Mais avant d’avoir des bibliothèques liées dynamiquement, on en avait des statiques et il est toujours possible de demander une liaison statique dans les options du compilateur (-static). Dans ces conditions, qu’apportent les snap par rapport à une liaison statique bien traditionnelle ?

Non ça cloisonne l’installation, par le fonctionnement (au delà des standard du système proprement dit, ce qui n’est pas aussi important qu’on le crois), d’autant que la sécurisation des snap est très largement considérée comme faible. Aucune architecture sécurisé n’utilisera jamais en l’état des choses du snap (i.e.:! ubuntu n’est pas considéré comme un système qui puisse être fiablement sécurisé à cause des snap notamment).
et je confirme la suite ;):

Avoir des versions plus récente que les paquets des dépots.

Aucune. snap n’apporte absolument aucune protection, et c’est même le contraire d’ailleurs. Chez la totalité des clients de ma boite qui utilisent Linux, les Snap sont tous interdits d’où d’ailleurs souvent la non utilisation de Ubuntu…

Ce qui est souvent un héritage de développement à la windows, où c’est assez fréquent.

Pai ailleurs il n’"y a aucun contrôle réellement décent des snap, donc la possibilité d’une faille importante est largement supérieure à n’importe quel paquet des dépots que ce soit en main, contrib ou non-free car il cumule tous les risques; comme en métrologie, la succession de risques ne s’additionne pas mais se multiplie (à cause du fait que mathématiquement cela implique des logarithme, et une addition de logarithme est un logarithme de multiplication (log(a) + log(b) = log(a*b) ), si ma mémoire de mes cours de mathématique post bac ne me font pas défaut :wink:
.

Je ne suis pas d’accord sur ce point (du moins sur la manière dont tu l’expliques).
Snap associé à une configuration AppArmor stricte pour chaque Snap installé, c’est un bon début de cloisonnement. C’est le cas sur Ubuntu.
Sur Debian, installer Snap est une autre affaire puisqu’aucun confinement AppArmor n’est configuré.
Bref, Snap sur Ubuntu, je pense que ce n’est pas si mauvais techniquement qu’on le dit (je ne reviens sur les points négatifs déjà cités et qui sont pour moi déjà rédhibitoire !). Mais sur un autre système, c’est à fuire :wink:

Concernant les autres (Flatpak & cie), ce n’est pas mieux pour le moment.

1 J'aime

Ce n’est pas tout à fait exact (je chipotte là !) : comme je le disais plus haut, SNAP+AppArmo, c’est pas mal techniquement en terme de sécurité. Mais la distribution perd la main sur le contenu du Snap, ce qui est pratique pour avoir la dernière version d’une application, mais rédhibitoire pour la sécurité.
Autrement dit, il faudrait une validation - contrôle des Snap en amont par la distribution pour avoir la main (c’est le cas des Snap de Canonical, par exemple).

Que c’est une bonne raison d’abandonner Ubuntu.

Je n’ai pas le niveau pour juger les avantages et inconvénients de Snap par rapport à Flatpak (mais j’ai cru comprendre que les deux sont quand même un peu mieux qu’AppImage).

Et si les deux sont contraires à la philosophie d’une distribution Linux, il est exact qu’ils permettent d’avoir des logiciels à jour.

Mais qu’Ubuntu pousse un snap quand on fait un apt install kekchose est absolument inacceptable.

1 J'aime

Ce n’est pas aussi grossier ! Les logiciels peuvent être installés via des icônes d’une logithèque du bureau Gnome-shell ou via l’appel explicite à apt en ligne de commande. Je suppose (je ne peux plus vérifier) que ce sont ces deux chemins qui conduisent à des dépôts différents, sans que ce soit clairement signalé. Toujours est il que c’est très désagréable d’avoir deux choses différentes qui portent le même nom.

Si, c’est aussi grossier…

Mélanger les deux (snaps et logiciels dans les dépôts) au sein de la logithèque était problématique mais à la rigueur ça peut se comprendre dans une logique de simplification de l’expérience utilisateur (qui est l’objectif principal d’Ubuntu).

Mais quand tu fais apt install chromium par exemple, au lieu d’aller chercher Chromium dans les paquets il installe l’installateur du snap chromium.
Ça a été la goutte d’eau qui a fait déborder le vase pour moi, je ne recommande plus jamais Ubuntu depuis (je recommande Mint à la place pour des débutants, sauf s’ils veulent Debian bien sûr).

1 J'aime

Ce que j’installe sur mon post de travail (portable du boulot) avec APT est installé en dur sans passer par les snaps, par contre ce que je peux installer depuis la logithèque est installé en snap.

La seule chose qui n’est pas gérer ainsi dès l’installation de cette manière est Gnome-shell et les composant de Gnome-core.

Chromium est un cas à part, il n’existe plus dans les dépôts de Ubuntu depuis la version 19.04 il me semble, vous pouvez tester avec d’autres choses existant dans les dépôts.

1 J'aime

Pour les débutant qui veulent Debian il y a la version Linux Mint LMDE (Debian Edition) basée sur le noyau Debian au lieu d’Ubuntu. C’est un choix excellent que je recommande.

Je ne recommande pas : debian a tous les avantages

1 J'aime

Je persiste et signe, je recommande fortement Linux Mint DE pour les débutants.
ça leur permet de se familiariser avec un noyau debian tout avec l’ergonomie et la facilité de maintenance d’un système mint ou ubuntu
Pour les barbus expérimentés je recommande Debian, mais souvent c’est déjà leur distrib…
entre nous dindoun… psst ! enfin j’me comprend ! :rofl:

En faisant attention aux mises à jour majeure qui ont historiquement des problèmes sur Mint

Ayaynt installé des dizaines de mint pour des débutants - en suivant tes raisons qui étaient les miennes - je me suis aperçu qu’au final ils ne font rien dessus : j’ai toujours été obligé d’installer des maj automatiques ou de le faire à distance.

Même sur debian, parfois je leur ai appris le 123 de synpatic :

mais personne ne fait les maj assez souvent par rapport aux bugs et trous de sécurité

De plus la présence de ubuntu, et la difficulté à savoir si tu dois installer le deb ou un snap quand tu cherches un programme décribilisent le mint pour les débutants qu icherchent quand même à être séparé des entreprises qui choisissent à ta place.

Quant à l’ergonomie, si tu mets une cinnamon , aucune différence.

LE SEUL TRUC BIEN sur mint est l’ergonomie et l’apparence de la xfce, celle de debian étant vraiment pourrie

C’est vrai que la XFCE a un look bien vieillot :slight_smile: