A- J’utilise Scenari (dans un environnement Linux et Windows selon que c’est pour une asso ou pour le boulot) depuis plusieurs années avec beaucoup de plaisir (d’ailleurs bravo pour le concept et pour votre écoute quant aux demandes de développement et/ou de fonctionnalités). Ça c’est pour le compliment, j’en vient au truc qui « gratte » (le paragraphe B).
B- Dans un environnement Linux, je trouve que l’installation d’un modèle Scenari est plutôt facile avec le script (j’ai compris comment faire, donc cela ne me pose plus de souci, je lis quand même à chaque fois le readme pour être sûr de bien faire).
Le « mauvais » côté est le volet de la désinstallation. Là encore, je relis le readme et/ou je me réfère à la réponse donnée dans le forum. C’est clair, mais je trouve que ce que l’on appelle aujourd’hui « l’expérience utilisateur » prend un petit coup dans l’aile. Partant de ce constat, serait-il possible de développer une méthode plus accessible pour les moins avertis des utilisateurs (y compris moi, mais par pure fainéantise, ou plutôt pour être certain d’avoir une désinstallation propre pour le système) ?
2- Contexte additionnel
Je teste actuellement une distribution Fedora Kinoite qui a fonctionnement très particulier : sur le principe, le système doit rester le plus « pur » possible pour assurer une stabilité et une sécurité maximale. Pour cela, les applications doivent être utilisées à l’aide de leur version flatpak ou dans une toobox.
Dans le cadre restreint par cette distribution que je teste pour une évaluation de déploiement possible à usage professionnel, je me suis posé une question qui rassemble les 2 contextes évoqués ici : serait-il possible de proposer les modèles Scenari au format Flatpak ?
J’y verrai 2 avantages :
faciliter la procédure d’installation/désinstallation comme évoqué précédemment,
proposer l’opportunité d’être disponible pour toutes les distributions Linux qui auraient les mêmes préoccupations de sécurité que Fedora dans sa version Kinoite.
N.B : Je fais cette suggestion, bien entendu, sans rien connaître des enjeux techniques potentiels qui pourraient être un frein à ce type de paquetage (car je suis un utilisateur informatique plutôt avancé, mais je suis complètement ignorant de tout ce qui relève de la programmation).
Quel est l’avis des techniciens et éventuellement de @lalejand là-dessus ?
Les applications SCENARI sont basés sur Electron et nous utilisons Electron Builder pour le post-packaging des applications.
Le support Flatpak y est relativement nouveau et visiblement un peut limité. C’est à creuser…
Oups ! Je n’avais jamais fait attention, car jusqu’ici je faisais mes installations sur le système, comme cela se fait pour l’immense majorité des utilisateurs.
Je parlais du script d’installation qui existait avec la version 5, mais ce n’est plus le cas depuis la version 6. Ma mémoire m’a fait défaut sur cette évolution.
Par contre, il y a toujours le script de création du fichier desktop si l’on veut réaliser une bonne intégration au système. C’est sur les fichiers créés par ce script que l’utilisateur doit intervenir pour faire une « désinstallation » propre (le mot n’est pas techniquement juste bien sûr).
Peut-être pourriez-vous mettre à disposition un script inverse au premier pour supprimer du système les traces de la création du fichier desktop ?
J’ai fait quelques tests avec deux des versions immutable de Fedora.
Le packaging Appimage de SCENARI marche parfaitement dans Fedora Silverblue mais pas dans Fedora Kinoite pour des sombres raisons de FUSE que j’ai pas encore élucidés.
Je n’ai pas testé Fedora Onyx ou Sericea (il y a une limite au nombre de distributions qu’une personne peut tester…)
Je trouve cela très dommage que différentes versions immutable de Fedora ne permettent pas d’avoir la même expérience à un niveau aussi bas que le support et le paramétrage de FUSE alors que ces versions sont justement conçues pour être le plus stable et prévisible possible.
Ici on voit SCENARIchain-desktop en flatpak sur Fedora Kinoite
Pour le moment les applications Electron comme SCENARI peuvent seulement être packagés en ftatpak Single-file. Ceci veux dire qui est impossible de les intégrés à un repos Flatpak comme Flathub.
Il en suit que l’installation est manuel et les dépendances doivent également être installés manuellement. De plus ce mode d’installation ne permet pas une mise à jour automatisé ce qui limite encore plus l’utilité de tout l’environnement Flatpak à mettre en oeuvre jute pour installer une application en autarcie.
Conclusion :
Pour moi, même si c’est techniquement possible, le support de flatpak par Electron-builder est pas assez avancé pour être mise en oeuvre à ce jour pour les applications SCENARI.
J’ajouterai qu’une application SCENARI pèse entre 140 et 200mb et que actuellement nous proposons toutes les applications en 5 formats (exe, dmg, tgz, deb, appimage) dont trois pour Linux. Ajouter un 6ieme format dont l’usage est un peut complexe et qui implique des limitations (pas d’update auto) me semble pas être justifiable au niveau temps CPU et stockage serveur.
Encore merci pour ces différents tests. J’ai aussi avancé de mon côté. Je viens donc faire un retour d’expérience avec Scenariclient pour me connecter au serveur interne qui possède les modèles avec lesquels je travaille (Dokiel, majoritairement, OptimOffice et Opale).
En discutant avec un technicien informatique, nous avons choisi une solution assez facile à mettre en œuvre, compatible avec les « paquetages » disponibles de Scenari et sécurisant pour le système Fedora Kinoite. Elle consiste à déployer l’archive d’installation au sein du fichier utilisateur .local dans un dossier opt (nom arbitraire, mais qui a tout de même sa signification bien connue dans le monde Linux) qui sera dédié à ces situations inhabituelles (hors flatpak ou création de toolbox).
Voici comment j’ai procédé (méthode en ligne de commande pour ceux·celles qui seraient intéressées, version Scenariclient existante au 29/11/2023) :
Aller dans le dossier .local avec la commande $ cd /home/UTILISATEUR/.local
Faire la liste des fichiers présents dans le dossier avec la commande $ ls share state
Créer le dossier opt avec la commande $ mkdir opt
Vérifier que le dossier a bien été créé avec la commande $ ls opt share state
Aller dans le dossier opt $ cd opt
Télécharger le fichier (archive au format tar.gz) du client Scenari avec la commande /opt$ wget https://download.scenari.software/SCENARIclient@6.2.1/SCENARIclient6.2.1_fr-FR_202311202242_linux_x64.tar.gz
Vérifier que le fichier a bien été téléchargé avec la commande /opt$ ls
SCENARIclient6.2.1_fr-FR_202311202242_linux_x64.tar.gz
Extraire l’archive avec la commande /opt$ tar -xf SCENARIclient6.2.1_fr-FR_202311202242_linux_x64.tar.gz
Vérifier que l’extraction a bien été réalisée avec la commande /opt$ ls SCENARIclient6.2.1_fr-FR_202311202242_linux_x64 SCENARIclient6.2.1_fr-FR_202311202242_linux_x64.tar.gz
N.B : On voit qu’un dossier a été créé à côté de l’archive initiale
Supprimer l’archive téléchargée (on en a plus besoin) avec la commande /opt$ rm SCENARIclient6.2.1_fr-FR_202311202242_linux_x64.tar.gz
Vérifier que le fichier a bien été supprimé avec la commande /opt$ ls SCENARIclient6.2.1_fr-FR_202311202242_linux_x64
C’est terminé, il n’y a plus qu’à ajouter une nouvelle entrée dans le menu grâce à l’éditeur de menu.
Scenari est bien fonctionnel, je peux maintenant consulter mes ateliers stockés sur le serveur :).
J’espère que ces échanges auront été utiles à faire avancer la réflexion quand aux formats d’installation utiles en fonction des besoins ou des distributions.
Merci @sam pour le temps passé à explorer la capacité de déploiement de Scenari au format flatpak. Le jour où ce sera possible et facile dans de bonnes conditions techniques, ce sera une belle opportunité d’adaptation des modèles Scenari à l’ensemble des distributions GNU/Linux.
Merci pour cette procédure. Si on arrive à faire marcher un appimage sur Fedora Kinoite cela apporterait en plus la mise à jour automatique de l’application. A suivre.
D’après ce que je lis dans le wiki Ubuntu (§ 1.2), le format AppImage ne permet pas l’automatisation de la mise à jour du paquet, contrairement au Flatpak, à moins d’utiliser un lanceur qui peut faire ce travail pour l’utilisateur (comme AppImage Launcher).
Est-ce toujours vrai ou bien la situation a changée par rapport à la date de rédaction de cette documentation sur le wiki Ubuntu ?
Merci pour cette précision qui est rassurante @sam .
Pour compléter mes connaissances, existe-il une différence significative entre le format AppImage ou la Flatpak ou bien les deux formats peuvent être utilisés indifféremment (selon le choix de l’utilisateur ou la capacité du système à utiliser l’un ou l’autre) ?