Winepak et Flatpak - Une meilleure portabilité des applications Linux et Windows (Wine)

Publié initialement à : https://korben.info/winepak-et-flatpak-une-meilleure-portabilite-des-applications-linux-et-windows-wine.html

Flatpak anciennement connu sous le nom de xdg-app est une technologie qui permet de distribuer une une application Linux, sans avoir à se soucier des problèmes de compatibilités entre distribution ou des soucis de bibliothèques. En effet, les applications Flatpak fonctionnent sous la forme de sandbox dans lesquelles les lib sont intégrées, ce qui permet d'avoir une application qui se lance directement, et cela peu importe l'état de votre distribution Linux.

L'inconvénient évidemment, c'est que les app sont un peu plus grosses (du fait de la redondance des libs) mais mis à part ça c'est quand même super pratique y compris quand on veut faire cohabiter plusieurs versions d'une même application. Et en matière de sécurité, comme on est en mode bac à sable, les applications doivent demander l'autorisation à l'utilisateur pour pouvoir accèder aux fichiers du système ou aux périphériques.

Si vous êtes sous Ubuntu >= 17.04, vous pouvez installer Flatpak directement en faisant un :

sudo apt-get install flatpak

Si vous avez besoin d'ajouter le dépôt :

sudo add-apt-repository ppa:alexlarsson/flatpak
sudo apt update

Pensez aussi à installer le plugin Flatpak pour intégaer le support à Gnome.

sudo apt install gnome-software-plugin-flatpak

Pensez à relancer Gnome ou à rebooter votre ordinateur pour que le plugin fonctionne. Ensuite pour installer une application Flatpak, 2 choix s'offrent à vous.

Premièrement, vous pouvez l'installer en ligne de commande :

flatpak install nom_du_flatpak

Et pour ajouter un dépôt Flatpak spécifique, vous pouvez faire un :

flatpak remote-add une_adresse_url

Et si vous n'êtes pas inspiré, vous pouvez aussi récupérer directement des applications au format Flatpak sur le site Flathub.

Grâce au plugin Gnome vous n'aurez qu'à double cliquer sur le .flatpakref. Notez aussi que vous pouvez ajouter le dépôt de Flathub comme ceci pour installer les flat du site en ligne de commandes :

flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Ensuite vous pouvez lancer votre application simplement en cliquant dessus ou via un terminal en tapant subtilement cette commande :

flatpak run nom_de_l_appli

Et pour désinstaller un flatpak :

flatpak uninstall nom_du_flatpak

Je vais vous donner un exemple car la syntaxe n'est pas forcement super intuitive. Imaginons que je veuille rechercher le nom du paquet VLC, le nom du Remote associé (ici c'est flathub), l'installer puis le lancer sur mon système.

flatpak search VLC
flatpak install flathub org.videolan.VLC
flatpak run org.videolan.VLC

Voilà en gros pour le petit topo sur le fonctionnement de Flatpak. Et si vous voulez packager vos propres apps au format Flatpak, je vous invite à lire cette docu.

Toutefois, je profite de cet article pour mettre en avant un second projet utilisant Flatpak et qui s'appelle Winepak.

En gros, c'est pareil que Flatpak sauf que ça sert à distribuer des applications Windows qui seront lancé avec Wine. Et pour ceux qui pratiquent Wine, ça risque d'être un soulagement de ne plus avoir à se battre avec des libs tordues ou des dll à importées pour pouvoir lancer telle ou telle application Windows sous Linux.

Avec Winepak, on télécharge, on lance et paf, ça fonctionne. Génial !

Pour installer Winepak, il suffit d'ajouter son dépôt à Flatpak comme ceci :

flatpak remote-add --if-not-exists winepak https://dl.winepak.org/repo/winepak.flatpakrepo

Puis de rechercher le nom (com.xxxx.xxx) l'application Windows de vos rêve Attention, vos rêves doivent être raisonnable car pour le moment, il n'y a pas grand chose dans leur dépôt des apps Windows. Quelques jeux, IE 8 et Notepad++.

Donc pour installer Notepad++ fourni avec un Wine et sa bonne config sous Linux avec Flatpak et le lancer , il suffit de faire :

flatpak search notepad
flatpak install winepak org.notepad_plus_plus.Notepad-plus-plus
flatpak run org.notepad_plus_plus.Notepad-plus-plus

Sympa non ?

Reste plus qu'à attendre que les développeurs s'emparent de Flatpak et Winepak pour pouvoir utiliser toutes ces merveilleuses apps sous Linux sans aucune prise de tête. Moi j'attends le Winepak de Age of Empires de pied ferme.

1 « J'aime »

À quand une interface de signalement des erreurs un peu plus discrète que d’écrire des messages sur le forum ?


Super intéressant Winepak.

Euh vous emballez pas trop les mecs…
Juste pour info, wine ça sert à faire tourner des logiciels conçus pour l’OS de M$, donc généralement (fortement) non libres (si on peut définir des degrés de liberté)… Ce qui se traduit par l’existence de licences qui interdisent beaucoup de choses, dont souvent la redistribution.
Donc il y a aucune chance de voir des trucs comme M$ Office ou des Jeux “récents”, bref des softs “intéressants”, sortir en Winepack…
Et pourtant ce sont ces logiciels qui requièrent le plus de configs sioux de dll, dont qui en auraient le plus besoin…
Parce que les logiciels libres, on a les sources, donc si y’a un problème, on le corrige et on n’a pas besoin de config sioux, donc de Winepack… D’ailleurs la plupart des LL/FOSS sont de base bien codés, donc multi-OS… Donc ne requièrent pas Winepack…

Pour ce qui est des solutions comme Flatpack, Electron, Docker, etc… OK, c’est pratique (et plus sécurisé - encore que ça reste à vérifier, car plus on rajoute de couches…), mais d’un point de vue économies (d’argent, de ressources, d’énergie, etc) et de propreté de développement, c’est vraiment très limite…

Flatpak pose des questions de sécurité car les bibliothèques ne sont plus mises à jour par ceux qui gèrent la distribution mais par ceux qui distribuent les flatpak. Donc à chaque grosse faille, à moins de mettre tout à jour soit même on se retrouver avec pleins de trous de sécurité (même si sandbox, toussa…).

En plus, on ne contrôle plus vraiment si on a bien la bibliothèque qui est sensée être utilisée car jusqu’à présent les devs indiquaient simplement les dépendances, avec les flatpak ils peuvent faire ce qu’ils veulent. Ça va rendre le tout beaucoup moins homogène comme sur Windows.

On gagne énormément en simplicité et en flexibilité mais on perd en sécurité et en confiance dans son système.

Winepak ne redistribue aucun binaire mais les télécharge automatiquement, voir par exemple Internet Explorer 8.

Oh putain, Winepak va p-e permettre de faciliter l’installation de toutes les dépendances pour faire tourner Adobe Lightroom facilement !
Parce qu’il existe un script méga intéressant qui le fait, sauf que 1 fois sur 2 l’installeur plante et tout, alors qu’il faudrait juste Winepak pour tout préinstaller et fournir ! Super !

1 « J'aime »

Flatpak est de base dans la dernière version de linux mint. Je ne sais pas pour les autres distributions.