• [^] # Re: Flatseal

    Posté par (site web personnel) . En réponse au journal "dérives sécuritaires" : inconvénients des flatpacks, snap ou environnements sandbox.. Évalué à 10.

    Vous me faites rire avec "Flatpak c'est de la me**e, appimage ça marche très bien".

    Chez kiwix, on fait les deux.

    Pour flatpak, on a un fichier de config(https://github.com/flathub/org.kiwix.desktop/blob/master/org.kiwix.desktop.json) et c'est terminé (et encore, on génère ce fichier à partir de notre outils de build, donc c'est mis à jours tout seul)

    Pour AppImage, ça se fait effectivement "facilement". Il faut tout (mais pas trop) copier dans un dossier et lancer un "linuxqtdeploy" (mais deux fois, parce qu'il faut patcher le RPATH de QTWebEngineProcess entre les deux). Le script est là: https://github.com/kiwix/kiwix-build/blob/main/scripts/create_kiwix-desktop_appImage.sh

    Mais une fois que tu as ton appimage, c'est pas fini :

    • https://github.com/kiwix/kiwix-desktop/issues/871 : la connexion ssl ne s’établit pas sur certaine distrib à cause de différence de version de openssl. Pas possible d'embarquer la lib openssl parce que les chemins vers les certificats sont hard codé dans le binaire et ils changent d'une distrib à l'autre.

    • https://github.com/probonopd/linuxdeployqt/issues/554 : Pas d'affichage de la webview à cause de ... on sait pas. Il y a un workaround qui désactive le rendu gpu, mais c'est un workaround.

    • Ou encore celui là : https://github.com/kiwix/kiwix-desktop/issues/393, si tu embarques la libstdc++ dans ton appimage, mesa n'arrive pas à charger les drivers opengl. Si tu n'embarques pas la libstdc++, il faut que tu utilises une vieille distrib avec une vieille version de qt (ou recompiler tout qt), mais qui potentiellement n'a pas les plugins pour les dernières variantes des drivers gl....

    Et tu peux aller voir les issues, elles sont liées à pas mal d'autres d'autres projets qui ont les mêmes problèmes encore et encore. Alors oui, pour trois truc simple, appimage ça marche bien. Mais dès que c'est un peu complexe, que tu veux des dépendances à jours et que ça tourne sur toutes les distribs (y compris les vieilles), appimage c'est compliqué. Et chaque projet dois refaire le processus de trouver ce qu'il faut faire.

    Alors c'est peut-être pas appimage le problème, c'est peut-être le packaging de qt dans appimage, ou l’outil linuxdeployqt ou encore un autre truc. Mais en attendant, ça se termine souvent en : "Utilisez flatpak, ou les paquets de votre distrib, si ils existent".

    PS, je veux bien que vous me fixiez les deux premières issues.

    Matthieu Gautier|irc:starmad