Pendant longtemps, j'ai utilisé uniquement Windows. C'était il y a très longtemps, avant Windows 7. Quand je me suis définitivement au bureau d'une distribution GNU/Linux, ce qui était plaisant, c'était : les mises-à-jour. Centralisées. Rapides. Simples.
Je comprends le problème que Flatpak essaie de résoudre. Et pour moi, il en ajoute plus qu'il n'en résout. C'est plus compliqué, ça fait une source de plus. À la limite, je serais beaucoup plus partant pour un Nix ou Guix.
L'enrobage dans une boîte bac-à-sable pour des applications de bureau, c'est vraiment très difficile à faire pour que ça ne soit pas un cauchemar d'utilisation. Je n'ai pas envie de me mettre à échanger des fichiers entre deux logiciels comme entre deux ordinateurs d'un réseau local : ça devrait être trivial, et c'est toujours chiant.
L'enrobage dans une boîte bac-à-sable pour des applications de bureau, c'est vraiment très difficile à faire pour que ça ne soit pas un cauchemar d'utilisation. Je n'ai pas envie de me mettre à échanger des fichiers entre deux logiciels comme entre deux ordinateurs d'un réseau local : ça devrait être trivial, et c'est toujours chiant.
Le bac à sable n'est pas total.
Tout d'abord cela s'accompagne d'un système de permissions, un logiciel autorisé peut accéder au reste de tes fichiers si tu lui en donnes le droit. Mais c'est utile que les applications qui n'ont pas à avoir accès à ces données n'y accèdent pas.
Puis il y a un mécanisme de portail qui permet aussi de donner des autorisations à la volée. Par exemple quand tu choisis un fichiers avec le sélecteur de fichiers, tu as accès à tous les fichiers que tu veux. Le logiciel lui ne pourra lire que le fichier que tu as sélectionné pour le traitement, et après tout c'est le seul fichier qu'il a besoin de modifier. C'est utile par exemple pour Firefox où tu peux ne lui accorder que d'écrire des fichiers pour les télécharger. Ou pour LibreOffice pour ne lire ou écrire que els fichiers que tu veux éditer avec.
Bref c'est beaucoup plus souple tout en offrant une bonne sécurité par défaut.
Intéressant, mais il y a certains cas où une application à besoin d'accéder à un fichier sans que l'utilisateur s'attende à voir surgir le sélecteur de fichier.
Exemple : le plugin de keepass-xc dans firefox flatpak doit pouvoir accéder à la base de donnée installée localement… Comment fait-il concrètement ? Quels sont les types de "portails" mis en place ? Pourraient-ils surgir comme les demandes d'accès sur Android ?
Exemple : le plugin de keepass-xc dans firefox flatpak doit pouvoir accéder à la base de donnée installée localement… Comment fait-il concrètement ?
Ça dépend, si ce fichier est uniquement pour l'usage de Firefox, il peut être dans le bac à sable de Firefox comme sa configuration et il n'y a pas de problèmes.
Si ce fichier est partagé avec d'autres processus, tu accordes le droit permanent à Firefox d'aller lire ailleurs en connaissance de cause.
Le principe est similaire à ce qu'il y a sur Android et iOS (et où les processus peuvent accéder à des fichiers écrits par d'autres). Le but est que l’application lampe torche n'a pas à accéder à ta base de données contenant tes mots de passe. Si Firefox doit légitimement y accéder, autorise-le et voilà c'est réglé.
Quels sont les types de "portails" mis en place ? Pourraient-ils surgir comme les demandes d'accès sur Android ?
Les portails sont en cours, mais typiquement celui qui est en place c'est le sélectionneur de fichiers : l'utilisateur peut autoriser un processus à écrire ou lire un fichier si l'utilisateur a choisi un fichier dans ce but. C'est transparent avec la fonction Ouvrir ou Sauvegarder de la plupart des logiciels.
Un portail ce n'est en fait qu'une requête D-Bus où tu peux voir les services via le chemin org.freedesktop.portal.Desktop. Cela concerne l'accès au système de fichier pour lire ou écrire, l'accès à la caméra, au micro, au GPS et autres. Après la question de la satisfaction de la demande, c'est ton environnement de bureau qui peut proposer une implémentation : autorisation globale, notification à la volée avec accord explicite de l'utilisateur, etc. C'est varié et ça dépend du service.
Notons que cette partie là des Flatpak est en cours de réalisation, si certaines choses sont en place, cela peut très fortement évoluer.
OK, merci beaucoup pour les explications. Cela reste donc compliqué si je comprends bien… Espérons que les environnements de bureaux rendrons ça plus évident !
Pour ma part, je trouve flatpak assez pratique et prometteur. Cela devrait permettre à terme de pouvoir conseiller Debian à n'importe qui sans être obligé d'expliquer qu'il devra se contenter d'une vieille version de GIMP (par exemple).
Pour utiliser un système de ce genre au quotidien, ça fonctionne plutôt bien.
Ça permet de savoir facilement quelles sont les informations accessibles et par quels logiciels elles sont accessibles :
- enregistrement de l'écran
- fichiers et dossiers (par exemple mon éditeur de texte peut accéder de lui-même uniquement à ~/Documents et ~/Downloads)
- les frappes clavier
- le micro
- la webcam
- les photos
- les contacts
- la localisation
…
Ce n'est pas si différent d'aujourd'hui. flatpak fonctionne via un ensemble de dépôts activés sur ta machine (comme les systèmes de gestion de paquets traditionnels). Ce n'est pas si centralisé que ça donc ! Contrairement aux systèmes mobiles ou a snapd.
En ce moment on est en période de transition. On fonctionne encore largement avec les paquets traditionnels car tout n'est pas proposé en flatpak (ou alors il y a encore des soucis) mais on a désormais souvent le choix qui peut rester tant que certains sont motivés pour continuer a packager a l'ancienne.
Mais bon ce n'est pas plus compliqué d'installer un flatpak qu'un paquet deb/rpm. Si a terme on pouvait avoir un système unique pour l'installation d'applications desktops sur toutes les distributions ça serait bien. On gardera le reste pour tout ce qui est système.
Par défaut les applications ont souvent accès au $HOME donc ça ne change rien par rapport a maintenant. Mais tu seras en mesure de très facilement ajouter/enlever des permissions.
Posté par ted (site web personnel) .
Évalué à 10.
Dernière modification le 16 avril 2020 à 09:48.
Ce système est très pratique dans certains cas, mais si il se généralise cela m'embêterait. Je fais confiance aux développeurs Debian et c'est pourquoi j'apprécie le gestionnaire de dépendance centralisé apt. En utilisant Flatpak je dois faire confiance à celui qui administre le depôt et à celui qui y a envoyé le logiciel, ce dernier n'étant peut être même pas le développeur.
C'est le cas aussi avec apt vous me direz, mais il y a quand même un meilleur contrôle (n'importe qui ne peut pas pousser sur les dépôts de Debian). J'ai peur qu'on se tourne vers un système comme pip ou npm, qui sur le papier sont géniaux mais où il y a aucun contrôle et il y a donc des abus (présences de programmes malveillants, cybersquatting).
Avec les dépôts officiels:
- les mainteneurs des paquets sont sérieux et mettent à jour les paquets régulièrement (failles)
- les logiciels non maintenus sont retirés
- les mainteneurs ont montré patte blanche
- il y a des travaux pour la reproductibilité des builds (vérifier que le binaire correspond bien aux sources)
Ah et ça m'embête de ne pas pouvoir facilement voir dans la logithèque si un logiciel vient d'un dépôt Flatpak.
Sauf que tu oublies que ta distribution peut gérer un dépôt Flatpak par ailleurs. C'est d'ailleurs ce que fait Fedora. Oui sur le site ce sont des images Docker et podman, mais Silverblue l'utilise pour récupérer quelques Flatpak aussi…
Flatpak n'empêche rien à ce sujet, et les runtimes sont administrés par des gens qui contribuent aux distributions en temps normal. Bref, ce n'est pas si différent que d'autoriser des dépôts personnalisés en fait, cela permet beaucoup de choses. Cela ne retire rien.
Ah et ça m'embête de ne pas pouvoir facilement voir dans la logithèque si un logiciel vient d'un dépôt Flatpak.
GNOME Logiciels en tout cas te dit la provenance et le format de ton application. Que ce soit Flatpak ou le dépôt de ta distribution. Tu peux même choisir la source pour l'installation.
GNOME Logiciels en tout cas te dit la provenance et le format de ton application. Que ce soit Flatpak ou le dépôt de ta distribution. Tu peux même choisir la source pour l'installation.
Oui mais il faut cliquer sur l'application pour ouvrir sa page dans GNOME Logiciels c'est casse-pieds.
Si je fais une recherche par exemple j'ai deux Thunderbird : celui de la distro et celui de FlatHub sans savoir a priori lequel est lequel (bon dans ce cas tu piges que celui qui a sa description en anglais est le flatpak mais des fois les flatpak ont leur description traduite)
Je te rejoins sur la confiance (même si dans le cas de Flatpaks je place plutôt ma confiance auprès des développeurs de l'application), c'est pourquoi dans mon billet j'ai pris le temps de noter quels flatpaks étaient "officiels" au sens de "fourni par le développeur de l'appli".
Je suis plus réticent pour les autres (avec une exception pour un Avidemux parce que ça m'évite quand même d'ajouter un dépôt externe susceptible de semer la zizanie dans mon système).
Et là c'est très ennuyeux c'est que FlatHub ne dit pas si le Flatpak est "officiel" ou non, bref : qui est l'empaqueteur.
J'ai dû à chaque fois aller sur le site officiel de présentation de chaque appli, son traqueur de bogues et son dépôt de code pour en déduire si oui ou non les dévs fournissaient le Flatpak. Dingue.
Posté par Anonyme .
Évalué à 3.
Dernière modification le 16 avril 2020 à 16:30.
j'ai pris le temps de noter quels flatpaks étaient "officiels" au sens de "fourni par le développeur de l'appli"
Ça en fait quand même une grosse partie qui sont non-officiel et leur qualité dépend fortement de l’empaqueteur.
Par exemple, je maintiens le Flatpak de PyCharm-Professionel alors que je ne l’utilise pas. J’ai un robot qui me fait des PR automatiquement lorsque Jetbrains met à jour et je ne fais que de les merger.
J'abonde dans le sens d'antistress. Je n'ai personnellement que peu confiance dans les modifications des distributions, qui m'ont toujours causé des ennuis du temps où j'utilisais Ubuntu ; et c'était avant que je tombe sur Jamie Zawinski qui demande à Debian d'arrêter de distribuer xscreensaver, ou que je réalise que GNOME Games était plus ou moins inutilisable en version distro, et que les utilisateurs frustrés le reprochaient aux développeurs qui n'y sont pour rien. Pour reprendre les propos de Tobias Bernard (qui n'est pas super fan du système traditionnel), "les paquets des distros, jamais de la vie".
Mais en toute logique, il faudrait que Flathub s'en serve de leçon et mette en avant les Flatpak upstream. Après avoir fouillé sur GitHub, j'ai cru comprendre que l'opinion des devs avait évolué dans ce sens.
Ha super merci pour le lien vers le bug sur flathub/linux-store-frontend j'avais pas pensé à regarder si cet endroit existait !
Excellent que ce soit discuté.
Jamie Zawinski qui demande à Debian d'arrêter de distribuer xscreensaver
Le mec publie une version en septembre 2014, elle est empaqueté et présente dans Jessie lors de sa sortie en Avril 2015 (donc elle a passé le freeze, etc.), mais c’est Debian le problème ?
D’ailleurs, avec son alerte lancée à la date de compilation + 18 mois, je lui souhaite de jamais mettre plus d’un an à sortir une version de son logiciel.
# Cohérence du système
Posté par Glandos . Évalué à 9.
Pendant longtemps, j'ai utilisé uniquement Windows. C'était il y a très longtemps, avant Windows 7. Quand je me suis définitivement au bureau d'une distribution GNU/Linux, ce qui était plaisant, c'était : les mises-à-jour. Centralisées. Rapides. Simples.
Je comprends le problème que Flatpak essaie de résoudre. Et pour moi, il en ajoute plus qu'il n'en résout. C'est plus compliqué, ça fait une source de plus. À la limite, je serais beaucoup plus partant pour un Nix ou Guix.
L'enrobage dans une boîte bac-à-sable pour des applications de bureau, c'est vraiment très difficile à faire pour que ça ne soit pas un cauchemar d'utilisation. Je n'ai pas envie de me mettre à échanger des fichiers entre deux logiciels comme entre deux ordinateurs d'un réseau local : ça devrait être trivial, et c'est toujours chiant.
[^] # Re: Cohérence du système
Posté par devnewton 🍺 (site web personnel) . Évalué à 4.
D'après mes tests, Appimage fonctionne, Flatpak non: https://linuxfr.org/nodes/118997/comments/1795082
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re: Cohérence du système
Posté par Renault (site web personnel) . Évalué à 6.
Le bac à sable n'est pas total.
Tout d'abord cela s'accompagne d'un système de permissions, un logiciel autorisé peut accéder au reste de tes fichiers si tu lui en donnes le droit. Mais c'est utile que les applications qui n'ont pas à avoir accès à ces données n'y accèdent pas.
Puis il y a un mécanisme de portail qui permet aussi de donner des autorisations à la volée. Par exemple quand tu choisis un fichiers avec le sélecteur de fichiers, tu as accès à tous les fichiers que tu veux. Le logiciel lui ne pourra lire que le fichier que tu as sélectionné pour le traitement, et après tout c'est le seul fichier qu'il a besoin de modifier. C'est utile par exemple pour Firefox où tu peux ne lui accorder que d'écrire des fichiers pour les télécharger. Ou pour LibreOffice pour ne lire ou écrire que els fichiers que tu veux éditer avec.
Bref c'est beaucoup plus souple tout en offrant une bonne sécurité par défaut.
[^] # Re: Cohérence du système
Posté par bolikahult . Évalué à 2.
Intéressant, mais il y a certains cas où une application à besoin d'accéder à un fichier sans que l'utilisateur s'attende à voir surgir le sélecteur de fichier.
Exemple : le plugin de keepass-xc dans firefox flatpak doit pouvoir accéder à la base de donnée installée localement… Comment fait-il concrètement ? Quels sont les types de "portails" mis en place ? Pourraient-ils surgir comme les demandes d'accès sur Android ?
[^] # Re: Cohérence du système
Posté par Renault (site web personnel) . Évalué à 5.
Ça dépend, si ce fichier est uniquement pour l'usage de Firefox, il peut être dans le bac à sable de Firefox comme sa configuration et il n'y a pas de problèmes.
Si ce fichier est partagé avec d'autres processus, tu accordes le droit permanent à Firefox d'aller lire ailleurs en connaissance de cause.
Le principe est similaire à ce qu'il y a sur Android et iOS (et où les processus peuvent accéder à des fichiers écrits par d'autres). Le but est que l’application lampe torche n'a pas à accéder à ta base de données contenant tes mots de passe. Si Firefox doit légitimement y accéder, autorise-le et voilà c'est réglé.
Les portails sont en cours, mais typiquement celui qui est en place c'est le sélectionneur de fichiers : l'utilisateur peut autoriser un processus à écrire ou lire un fichier si l'utilisateur a choisi un fichier dans ce but. C'est transparent avec la fonction Ouvrir ou Sauvegarder de la plupart des logiciels.
Un portail ce n'est en fait qu'une requête D-Bus où tu peux voir les services via le chemin org.freedesktop.portal.Desktop. Cela concerne l'accès au système de fichier pour lire ou écrire, l'accès à la caméra, au micro, au GPS et autres. Après la question de la satisfaction de la demande, c'est ton environnement de bureau qui peut proposer une implémentation : autorisation globale, notification à la volée avec accord explicite de l'utilisateur, etc. C'est varié et ça dépend du service.
Notons que cette partie là des Flatpak est en cours de réalisation, si certaines choses sont en place, cela peut très fortement évoluer.
[^] # Re: Cohérence du système
Posté par bolikahult . Évalué à 2.
OK, merci beaucoup pour les explications. Cela reste donc compliqué si je comprends bien… Espérons que les environnements de bureaux rendrons ça plus évident !
Pour ma part, je trouve flatpak assez pratique et prometteur. Cela devrait permettre à terme de pouvoir conseiller Debian à n'importe qui sans être obligé d'expliquer qu'il devra se contenter d'une vieille version de GIMP (par exemple).
[^] # Re: Cohérence du système
Posté par scorpio810 (site web personnel) . Évalué à 1. Dernière modification le 19 avril 2020 à 14:29.
Merci, mais ça reste encore très compliqué surtout pour générer un dépôt.
Il a encore des manquements comme TK-> https://qelectrotech.org/forum/viewtopic.php?pid=11294#p11294
[^] # Re: Cohérence du système
Posté par flan (site web personnel) . Évalué à 2.
Pour utiliser un système de ce genre au quotidien, ça fonctionne plutôt bien.
Ça permet de savoir facilement quelles sont les informations accessibles et par quels logiciels elles sont accessibles :
- enregistrement de l'écran
- fichiers et dossiers (par exemple mon éditeur de texte peut accéder de lui-même uniquement à ~/Documents et ~/Downloads)
- les frappes clavier
- le micro
- la webcam
- les photos
- les contacts
- la localisation
…
[^] # Re: Cohérence du système
Posté par ff9097 . Évalué à 0.
Ce n'est pas si différent d'aujourd'hui. flatpak fonctionne via un ensemble de dépôts activés sur ta machine (comme les systèmes de gestion de paquets traditionnels). Ce n'est pas si centralisé que ça donc ! Contrairement aux systèmes mobiles ou a snapd.
En ce moment on est en période de transition. On fonctionne encore largement avec les paquets traditionnels car tout n'est pas proposé en flatpak (ou alors il y a encore des soucis) mais on a désormais souvent le choix qui peut rester tant que certains sont motivés pour continuer a packager a l'ancienne.
Mais bon ce n'est pas plus compliqué d'installer un flatpak qu'un paquet deb/rpm. Si a terme on pouvait avoir un système unique pour l'installation d'applications desktops sur toutes les distributions ça serait bien. On gardera le reste pour tout ce qui est système.
Par défaut les applications ont souvent accès au $HOME donc ça ne change rien par rapport a maintenant. Mais tu seras en mesure de très facilement ajouter/enlever des permissions.
# Confiance
Posté par ted (site web personnel) . Évalué à 10. Dernière modification le 16 avril 2020 à 09:48.
Ce système est très pratique dans certains cas, mais si il se généralise cela m'embêterait. Je fais confiance aux développeurs Debian et c'est pourquoi j'apprécie le gestionnaire de dépendance centralisé apt. En utilisant Flatpak je dois faire confiance à celui qui administre le depôt et à celui qui y a envoyé le logiciel, ce dernier n'étant peut être même pas le développeur.
C'est le cas aussi avec apt vous me direz, mais il y a quand même un meilleur contrôle (n'importe qui ne peut pas pousser sur les dépôts de Debian). J'ai peur qu'on se tourne vers un système comme pip ou npm, qui sur le papier sont géniaux mais où il y a aucun contrôle et il y a donc des abus (présences de programmes malveillants, cybersquatting).
Avec les dépôts officiels:
- les mainteneurs des paquets sont sérieux et mettent à jour les paquets régulièrement (failles)
- les logiciels non maintenus sont retirés
- les mainteneurs ont montré patte blanche
- il y a des travaux pour la reproductibilité des builds (vérifier que le binaire correspond bien aux sources)
Ah et ça m'embête de ne pas pouvoir facilement voir dans la logithèque si un logiciel vient d'un dépôt Flatpak.
Un LUG en Lorraine : https://enunclic-cappel.fr
[^] # Re: Confiance
Posté par Renault (site web personnel) . Évalué à 1.
Sauf que tu oublies que ta distribution peut gérer un dépôt Flatpak par ailleurs. C'est d'ailleurs ce que fait Fedora. Oui sur le site ce sont des images Docker et podman, mais Silverblue l'utilise pour récupérer quelques Flatpak aussi…
Flatpak n'empêche rien à ce sujet, et les runtimes sont administrés par des gens qui contribuent aux distributions en temps normal. Bref, ce n'est pas si différent que d'autoriser des dépôts personnalisés en fait, cela permet beaucoup de choses. Cela ne retire rien.
GNOME Logiciels en tout cas te dit la provenance et le format de ton application. Que ce soit Flatpak ou le dépôt de ta distribution. Tu peux même choisir la source pour l'installation.
[^] # Re: Confiance
Posté par antistress (site web personnel) . Évalué à 4.
Oui mais il faut cliquer sur l'application pour ouvrir sa page dans GNOME Logiciels c'est casse-pieds.
Si je fais une recherche par exemple j'ai deux Thunderbird : celui de la distro et celui de FlatHub sans savoir a priori lequel est lequel (bon dans ce cas tu piges que celui qui a sa description en anglais est le flatpak mais des fois les flatpak ont leur description traduite)
[^] # Re: Confiance
Posté par ff9097 . Évalué à 1.
Dans la recherche GNOME directement tu vois les deux, et la source est affiché si c'est du flatpak
[^] # Re: Confiance
Posté par Anonyme . Évalué à 2.
C’est peut-être seulement dans les versions récentes, mais maintenant, Logiciel affiche les applications de manière unifié :
(Il y a 3 paquets Debian parce que j’utilise Debian Sid et que j’ai les dépôts de Testing et Buster activé)
[^] # Re: Confiance
Posté par antistress (site web personnel) . Évalué à 7. Dernière modification le 16 avril 2020 à 13:15.
Je te rejoins sur la confiance (même si dans le cas de Flatpaks je place plutôt ma confiance auprès des développeurs de l'application), c'est pourquoi dans mon billet j'ai pris le temps de noter quels flatpaks étaient "officiels" au sens de "fourni par le développeur de l'appli".
Je suis plus réticent pour les autres (avec une exception pour un Avidemux parce que ça m'évite quand même d'ajouter un dépôt externe susceptible de semer la zizanie dans mon système).
Et là c'est très ennuyeux c'est que FlatHub ne dit pas si le Flatpak est "officiel" ou non, bref : qui est l'empaqueteur.
J'ai dû à chaque fois aller sur le site officiel de présentation de chaque appli, son traqueur de bogues et son dépôt de code pour en déduire si oui ou non les dévs fournissaient le Flatpak. Dingue.
[^] # Re: Confiance
Posté par Anonyme . Évalué à 3. Dernière modification le 16 avril 2020 à 16:30.
Ça en fait quand même une grosse partie qui sont non-officiel et leur qualité dépend fortement de l’empaqueteur.
Par exemple, je maintiens le Flatpak de PyCharm-Professionel alors que je ne l’utilise pas. J’ai un robot qui me fait des PR automatiquement lorsque Jetbrains met à jour et je ne fais que de les merger.
[^] # Re: Confiance
Posté par Laurent Pointecouteau (site web personnel, Mastodon) . Évalué à 3.
J'abonde dans le sens d'antistress. Je n'ai personnellement que peu confiance dans les modifications des distributions, qui m'ont toujours causé des ennuis du temps où j'utilisais Ubuntu ; et c'était avant que je tombe sur Jamie Zawinski qui demande à Debian d'arrêter de distribuer xscreensaver, ou que je réalise que GNOME Games était plus ou moins inutilisable en version distro, et que les utilisateurs frustrés le reprochaient aux développeurs qui n'y sont pour rien. Pour reprendre les propos de Tobias Bernard (qui n'est pas super fan du système traditionnel), "les paquets des distros, jamais de la vie".
Mais en toute logique, il faudrait que Flathub s'en serve de leçon et mette en avant les Flatpak upstream. Après avoir fouillé sur GitHub, j'ai cru comprendre que l'opinion des devs avait évolué dans ce sens.
[^] # Re: Confiance
Posté par antistress (site web personnel) . Évalué à 5. Dernière modification le 16 avril 2020 à 23:10.
Ha super merci pour le lien vers le bug sur flathub/linux-store-frontend j'avais pas pensé à regarder si cet endroit existait !
Excellent que ce soit discuté.
[^] # Re: Confiance
Posté par Anonyme . Évalué à 2.
Le mec publie une version en septembre 2014, elle est empaqueté et présente dans Jessie lors de sa sortie en Avril 2015 (donc elle a passé le freeze, etc.), mais c’est Debian le problème ?
D’ailleurs, avec son alerte lancée à la date de compilation + 18 mois, je lui souhaite de jamais mettre plus d’un an à sortir une version de son logiciel.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.