Outils pour utilisateurs

Outils du site


issue218:mon_opinion

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
issue218:mon_opinion [2025/06/30 07:25] d52frissue218:mon_opinion [2025/06/30 16:40] (Version actuelle) d52fr
Ligne 6: Ligne 6:
  
 If you search for the reason that AppImages do not run on Ubuntu 24.04, you will find that people point to libfuse as the culprit. Apparently libfuse2 was replaced with libfuse3, and I was living under a rock. While it may be the case in Ubuntu Gnome, it certainly was not in Xubuntu derivatives. If one tries to install libfuse2, apt tells you that it has been superseded by libfuse2t64 and that it was already the latest version. I made doubly sure with: sudo apt install libfuse2t64. This did not solve my issue, but gave me insights into why so many of my AppImages failed during testing (Markdown editors).** If you search for the reason that AppImages do not run on Ubuntu 24.04, you will find that people point to libfuse as the culprit. Apparently libfuse2 was replaced with libfuse3, and I was living under a rock. While it may be the case in Ubuntu Gnome, it certainly was not in Xubuntu derivatives. If one tries to install libfuse2, apt tells you that it has been superseded by libfuse2t64 and that it was already the latest version. I made doubly sure with: sudo apt install libfuse2t64. This did not solve my issue, but gave me insights into why so many of my AppImages failed during testing (Markdown editors).**
 +
 +Pour dessiner les dessins comiques du FCM, j'utilise Gravit Designer, l'application de dessin gratuite. J'utilise les versions 3.33 ou 3.49, car elles pèsent environ 64 Mo et font ce que je veux. J'ai aussi la version 2020 1.2.1, qui pèse trois fois plus (198 Mo), et honnêtement, je ne vois pas de différence, si ce n'est que la plus grosse essaie de contacter gravit.io en permanence et, si vous l'autorisez, elle télécharge des trucs sur votre ordinateur, se transforme en « nagware » et vous oblige à vous connecter. Pas sous ma surveillance ! Avec la mise à jour d'Ubuntu (version 22.04), Gravit Designer a cessé de fonctionner. Aucun message d'erreur, rien ! Ça fait donc un bail que je n'ai pas créé de BD pour le magazine. En fouillant dans la base de connaissances, j'ai trouvé des gens qui disaient que c'était la mise en bac à sable. La « correction » était soit-disant dans l'assouplissement d'apparmor, comme suit :
 +
 +sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
 +
 +Révélation : ça n'a pas fonctionné !
 +
 +Si vous cherchez la raison pour laquelle les AppImages ne fonctionnent pas sous Ubuntu 24.04, vous constaterez que libfuse est souvent pointé du doigt. Apparemment, libfuse2 a été remplacée par libfuse3, et j'étais dans une grotte. Si c'est peut-être le cas sous Ubuntu Gnome, ce n'était certainement pas le cas dans les versions dérivées de Xubuntu. Si l'on tente d'installer libfuse2, apt indique qu'elle a été remplacée par libfuse2t64 et qu'il s'agit déjà de la dernière version. J'ai vérifié deux fois avec : sudo apt install libfuse2t64. Cela n'a pas résolu mon problème, mais m'a permis de comprendre pourquoi tant de mes AppImages ont échoué lors des tests (éditeurs Markdown).
 +
  
 **After dredging through some documentation, I found that the ”sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0” command does nothing permanent, so I ran it. (This will reset as soon as you reboot, so I was not worried). This time around, there was an error. It was apparently missing “libgconf-2.so.4”. As it is supposed to be self-contained, why is it not contained? I tried to look for the file, but it seemed that it was deprecated. However, this error only appeared on the smaller/older version, which was curious in itself. Finding the file was not so easy. According to the Debian website, it was contained in “libgconf-2-4_3.2.6-7_amd64.deb”. I downloaded the file from a Debian repository, to take it apart. (Remember, I only needed the .so-file). I created a folder to unpack the .deb-file, copied the .deb-file to the unpack folder, and used Engrampa to unpack it. I then rummaged through the folders and found paydirt in “/UNPACK/usr/lib/x86_64-linux-gnu/”. Not a 100% match, but an updated version, “libgconf-2.so.4.1.5”. Since only my gifted laptop runs Gnome Ubuntu, the others run Linux Mint and Linux Lite, they don’t have gconf installed as they use XFCE. What to do? **After dredging through some documentation, I found that the ”sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0” command does nothing permanent, so I ran it. (This will reset as soon as you reboot, so I was not worried). This time around, there was an error. It was apparently missing “libgconf-2.so.4”. As it is supposed to be self-contained, why is it not contained? I tried to look for the file, but it seemed that it was deprecated. However, this error only appeared on the smaller/older version, which was curious in itself. Finding the file was not so easy. According to the Debian website, it was contained in “libgconf-2-4_3.2.6-7_amd64.deb”. I downloaded the file from a Debian repository, to take it apart. (Remember, I only needed the .so-file). I created a folder to unpack the .deb-file, copied the .deb-file to the unpack folder, and used Engrampa to unpack it. I then rummaged through the folders and found paydirt in “/UNPACK/usr/lib/x86_64-linux-gnu/”. Not a 100% match, but an updated version, “libgconf-2.so.4.1.5”. Since only my gifted laptop runs Gnome Ubuntu, the others run Linux Mint and Linux Lite, they don’t have gconf installed as they use XFCE. What to do?
  
 My first thought was to stick it in the Gravit designer folders, but this did nothing. You see, this AppImage creates folders in places like .config in your home folder and I tried those first. I was not about to put it in any of my system folders, no matter what. When I say “it”, I mean “libgconf-2.so.4.1.5”, just to clarify, as someone mentioned that I’m too liberal with the word “it”.** My first thought was to stick it in the Gravit designer folders, but this did nothing. You see, this AppImage creates folders in places like .config in your home folder and I tried those first. I was not about to put it in any of my system folders, no matter what. When I say “it”, I mean “libgconf-2.so.4.1.5”, just to clarify, as someone mentioned that I’m too liberal with the word “it”.**
 +
 +Après avoir parcouru la documentation, j'ai découvert que la commande « sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0 » n'avait aucun effet permanent, je l'ai donc exécutée. (Elle se réinitialise dès le redémarrage, donc je n'étais pas inquiet.) Cette fois, une erreur s'est produite. Apparemment, il manquait « libgconf-2.so.4 ». Comme une Appimage est censée être autonome, pourquoi ne l'est-elle pas ? J'ai essayé de rechercher le fichier, mais il semblait obsolète. Cependant, cette erreur n'apparaissait que sur la version plus petite/ancienne, ce qui était curieux en soi. Trouver le fichier n'a pas été si simple. D'après le site Web de Debian, il se trouvait dans « libgconf-2-4_3.2.6-7_amd64.deb ». J'ai téléchargé le fichier depuis un dépôt Debian pour le décomposer. (Rappel : je n'avais besoin que du fichier .so). J'ai créé un dossier pour décompresser le fichier .deb, je l'ai copié dans le dossier de décompression et j'ai utilisé Engrampa pour le décompresser. J'ai ensuite fouillé dans les dossiers et trouvé une gemme dans « /UNPACK/usr/lib/x86_64-linux-gnu/ ». Ce n'était pas une correspondance à 100 %, mais une version mise à jour, « libgconf-2.so.4.1.5 ». Seul l'ordinateur portable qu'on m'a offert fonctionne sous Gnome Ubuntu ; les autres sont sous Linux Mint et Linux Lite et gconf n'y est pas installé car ils utilisent XFCE. Que faire ?
 +
 +J'ai d'abord pensé à le placer dans les dossiers de Gravit Designer, mais rien n'y a fait. Voyez-vous, cette AppImage crée des dossiers dans des emplacements comme .config dans votre dossier personnel, et j'ai d'abord essayé ceux-là. Je n'avais aucune intention de le placer dans mes dossiers système, quoi qu'il arrive. Quand je dis « le », je veux dire « libgconf-2.so.4.1.5 », juste pour clarifier, comme quelqu’un l’a mentionné, je suis trop libéral avec le mot « le ».
 +
  
 **At this point you may be asking me, why don’t you just use Inkscape? Well, I have a very fast workflow in Gravit designer, that takes me up to six times as long in Inkscape. (I use a very small portion of the Inkscape landscape, so it is the difference between riding a bike and flying a plane. I have no idea what all the buttons are for, and where the ones I need are hiding.) Maybe I need to get used to it, but I feel like a Photoshop user, moving to GIMP. Though the two programs do exactly the same thing, it is about how intuitive it is for new users to get to grips with... and Inkscape is a sensory overload. Though Gravit designer is constrained, I have learned to work, nay, thrive, within those constraints. I suppose I will have to move some day, but that day is not today, plus, I like taking things apart and tinkering with them. Always have, always will. **At this point you may be asking me, why don’t you just use Inkscape? Well, I have a very fast workflow in Gravit designer, that takes me up to six times as long in Inkscape. (I use a very small portion of the Inkscape landscape, so it is the difference between riding a bike and flying a plane. I have no idea what all the buttons are for, and where the ones I need are hiding.) Maybe I need to get used to it, but I feel like a Photoshop user, moving to GIMP. Though the two programs do exactly the same thing, it is about how intuitive it is for new users to get to grips with... and Inkscape is a sensory overload. Though Gravit designer is constrained, I have learned to work, nay, thrive, within those constraints. I suppose I will have to move some day, but that day is not today, plus, I like taking things apart and tinkering with them. Always have, always will.
  
 Since an AppImage is simply a collection of files all zipped up, it stands to reason that it can be unzipped. Since the application is a Chrome sandbox with Electron, it also stands to reason that I can update the AppImage to the latest Chrome / Electron and enjoy the benefits. (I’m not entirely sure what they are, so don’t quote me.) I’ll be using this opportunity to learn all about Electron and Chrome sandboxing and also packaging up an Appimage, but I’m getting ahead of myself. I need to make it work first. If I look in the larger version of Gravit designer, I do find libgconf-2.so.4 in the “/usr/lib/” folder, but this file is absent in the smaller version. Oh right, you may be wondering how I know this. Well, I unpacked the AppImage as well. :) ** Since an AppImage is simply a collection of files all zipped up, it stands to reason that it can be unzipped. Since the application is a Chrome sandbox with Electron, it also stands to reason that I can update the AppImage to the latest Chrome / Electron and enjoy the benefits. (I’m not entirely sure what they are, so don’t quote me.) I’ll be using this opportunity to learn all about Electron and Chrome sandboxing and also packaging up an Appimage, but I’m getting ahead of myself. I need to make it work first. If I look in the larger version of Gravit designer, I do find libgconf-2.so.4 in the “/usr/lib/” folder, but this file is absent in the smaller version. Oh right, you may be wondering how I know this. Well, I unpacked the AppImage as well. :) **
 +
 +À ce stade, vous pourriez me demander pourquoi je n'utilise pas Inkscape ? Eh bien, Gravit Designer me permet un flux de travail très rapide, ce qui me prend jusqu'à six fois plus de temps avec Inkscape. (J'utilise une toute petite partie du paysage d'Inkscape, c'est donc la différence entre faire du vélo et piloter un avion. Je n'ai aucune idée de l'utilité de tous les boutons, ni de l'emplacement de ceux dont j'ai besoin.) Il me faut peut-être m'y habituer, mais je me sens comme un utilisateur de Photoshop qui passe à GIMP. Bien que les deux logiciels fassent exactement la même chose, l'important est son intuitivité pour les nouveaux utilisateurs… et Inkscape est une véritable mine d'informations. Bien que Gravit Designer soit limité, j'ai appris à travailler, voire à m'épanouir, avec ces contraintes. Je suppose que je devrai déménager un jour, mais ce n'est pas pour aujourd'hui. De plus, j'aime démonter et bricoler. Je l'ai toujours fait et je le ferai toujours.
 +
 +Puisqu'une AppImage est simplement un ensemble de fichiers compressés, il est logique qu'elle puisse être décompressée. Puisque l'application est un bac à sable de Chrome avec Electron, il est également logique que je puisse mettre à jour l'AppImage vers la dernière version de Chrome/Electron et en profiter. (Je ne suis pas tout à fait sûr de ce que c'est, alors ne me citez pas.) J'en profiterai pour tout apprendre sur la mise en bac à sable d'Electron et de Chrome, ainsi que pour empaqueter une AppImage, mais je m'avance un peu. Il faut d'abord que ça fonctionne. Si je consulte la version complète de Gravit Designer, je trouve bien libgconf-2.so.4 dans le dossier « /usr/lib/ », mais ce fichier est absent de la version plus petite. Ah oui, vous vous demandez peut-être comment je le sais. Eh bien, j'ai aussi décompressé l'AppImage. :)
 +
  
 **To unpack an AppImage, you only need to run it with “- -appimage-extract”. (That’s two dashes, no space). In my case it was: ./GravitDesigner.AppImage --appimage-extract -and it unpacked the contents to a squashfs-root folder. I proceeded to dump the updated .so-file into the “/usr/lib/” folder. (Why? Because that is where the libgconf-2.so.4 file was in the larger AppImage.) But that did nothing for me. While deleting the squashfs-root folder and unpacking again and switching between the larger and smaller specimen, etcetera, I just dumped the “libgconf-2.so.4.1.5” file in the squashfs-root folder, so I could move it later as I needed to copy another file. I was about to copy the “/usr/lib/” folder to the other version, when I clicked on the executable file, to record the error, for a before and after, useful when comparing errors. (There is a bash script in the AppImage too, to integrate it into Linux and launch it, but I wanted to see what just the executable did.) To my surprise it launched! I wish I could say that I planned it or figured it out, but it was sheer luck and not giving up. I tried it on the other version too. When I say “it”, I mean just copying the “libgconf-2.so.4.1.5” file to the squashfs-root folder and running the gravit-designer executable file. This seems to work for all the versions that I have. Hah! Not so obsolete now, eh??? Now our beloved magazine can get comics again, even though the humour is only funny in my head. By-the-way, if any of you want to follow along, you can still find a copy of Gravit designer AppImage on the Pling store. If it is also removed from there, ping me on Telegram and I will give you a copy to play with. Learning whilst playing is the best way. The reason I use the older versions and the AppImage version is that it does not come with the annoying login screen, you can simply fire it up and use it. Just remember to turn off your networking when using this application to avoid wasting your bandwidth and turning a perfectly working program into garbage. If you block it in your firewall, remember that it needs internal connections, but any requests out of the system should be blocked. If you block the internal requests, the application will not launch. ** **To unpack an AppImage, you only need to run it with “- -appimage-extract”. (That’s two dashes, no space). In my case it was: ./GravitDesigner.AppImage --appimage-extract -and it unpacked the contents to a squashfs-root folder. I proceeded to dump the updated .so-file into the “/usr/lib/” folder. (Why? Because that is where the libgconf-2.so.4 file was in the larger AppImage.) But that did nothing for me. While deleting the squashfs-root folder and unpacking again and switching between the larger and smaller specimen, etcetera, I just dumped the “libgconf-2.so.4.1.5” file in the squashfs-root folder, so I could move it later as I needed to copy another file. I was about to copy the “/usr/lib/” folder to the other version, when I clicked on the executable file, to record the error, for a before and after, useful when comparing errors. (There is a bash script in the AppImage too, to integrate it into Linux and launch it, but I wanted to see what just the executable did.) To my surprise it launched! I wish I could say that I planned it or figured it out, but it was sheer luck and not giving up. I tried it on the other version too. When I say “it”, I mean just copying the “libgconf-2.so.4.1.5” file to the squashfs-root folder and running the gravit-designer executable file. This seems to work for all the versions that I have. Hah! Not so obsolete now, eh??? Now our beloved magazine can get comics again, even though the humour is only funny in my head. By-the-way, if any of you want to follow along, you can still find a copy of Gravit designer AppImage on the Pling store. If it is also removed from there, ping me on Telegram and I will give you a copy to play with. Learning whilst playing is the best way. The reason I use the older versions and the AppImage version is that it does not come with the annoying login screen, you can simply fire it up and use it. Just remember to turn off your networking when using this application to avoid wasting your bandwidth and turning a perfectly working program into garbage. If you block it in your firewall, remember that it needs internal connections, but any requests out of the system should be blocked. If you block the internal requests, the application will not launch. **
 +
 +Pour décompresser une AppImage, il suffit de l'exécuter avec « --appimage-extract ». (avec deux tirets, sans espace). Dans mon cas, c'était : ./GravitDesigner.AppImage --appimage-extract et le contenu a été décompressé dans un dossier squashfs-root. J'ai ensuite transféré le fichier .so mis à jour dans le dossier « /usr/lib/ ». (Pourquoi ? Parce que c'est là que se trouvait le fichier libgconf-2.so.4 dans l'AppImage plus volumineuse.) Mais cela n'a rien changé. En supprimant le dossier squashfs-root, en décompressant à nouveau et en alternant entre les spécimens plus grands et plus petits, etc., j'ai simplement transféré le fichier « libgconf-2.so.4.1.5 » dans le dossier squashfs-root, afin de pouvoir le déplacer ultérieurement si je devais copier un autre fichier. J'allais copier le dossier « /usr/lib/ » vers l'autre version lorsque j'ai cliqué sur le fichier exécutable pour enregistrer l'erreur, un avant/après, utile pour comparer les erreurs. (Il y a aussi un script bash dans l'AppImage pour l'intégrer à Linux et le lancer, mais je voulais voir ce que l'exécutable faisait.) À ma grande surprise, il s'est lancé ! J'aimerais pouvoir dire que je l'avais prévu ou deviné, mais c'était un pur coup de chance et je n'ai pas abandonné. J'ai aussi essayé sur l'autre version. Quand je dis « ça », je veux dire simplement copier le fichier « libgconf-2.so.4.1.5 » dans le dossier squashfs-root et lancer l'exécutable gravit-designer. Cela semble fonctionner pour toutes les versions que j'ai. Ah ! Pas si obsolète maintenant, hein ? Maintenant, notre magazine adoré peut à nouveau avoir des dessins comiques, même si l'humour n'est drôle que dans ma tête. Au fait, si vous souhaitez suivre, vous trouverez toujours une copie de Gravit Designer en AppImage sur la boutique Pling. Si elle est également supprimée, contactez-moi sur Telegram et je vous en fournirai une copie pour jouer. Apprendre en jouant est la meilleure façon de faire. J'utilise les anciennes versions et la version AppImage car il n'y a pas d'écran de connexion fastidieux ; il suffit de la lancer et de l'utiliser. Pensez simplement à désactiver votre réseau lorsque vous utilisez cette application afin d'éviter de gaspiller votre bande passante et de rendre inutisable un programme parfaitement fonctionnel. Si vous la bloquez dans votre pare-feu, n'oubliez pas qu'elle nécessite des connexions internes, mais que toutes les requêtes sortant du système doivent être bloquées. Si vous bloquez les requêtes internes, l'application ne se lancera pas.
 +
  
 **While I was inside the unpacked AppImage file, I used the opportunity to delete all the unnecessary files, like extra languages, the pesky update.yml and whatnot, reducing the file size even more. The question now is, how do I repack it up back into an AppImage file and how do I go about updating Electron? **While I was inside the unpacked AppImage file, I used the opportunity to delete all the unnecessary files, like extra languages, the pesky update.yml and whatnot, reducing the file size even more. The question now is, how do I repack it up back into an AppImage file and how do I go about updating Electron?
  
 If you would like to know more, I’ll tell you about it in the next issue. If you don’t let me know too, I will drop it like a hot potato as I do not like writing for myself. I hope I managed to help someone with a similar AppImage problem.** If you would like to know more, I’ll tell you about it in the next issue. If you don’t let me know too, I will drop it like a hot potato as I do not like writing for myself. I hope I managed to help someone with a similar AppImage problem.**
 +
 +Pendant que j'étais dans le fichier AppImage décompressé, j'en ai profité pour supprimer tous les fichiers inutiles, comme les langues supplémentaires, le fichu update.yml, etc., réduisant ainsi encore la taille du fichier. La question est maintenant : comment le recompresser dans un fichier AppImage et comment mettre à jour Electron ?
 +
 +Si vous souhaitez en savoir plus, je vous en parlerai dans le prochain numéro. Mais si vous ne me le faites pas savoir, je laisserai tomber, car je n'aime pas écrire pour moi-même. J'espère avoir aidé quelqu'un qui a un problème similaire avec AppImage.
  
issue218/mon_opinion.txt · Dernière modification : 2025/06/30 16:40 de d52fr