web-dev-qa-db-fra.com

Service CLI de package dans AppImage ou Flatpak?

Je voudrais emballer un service - par exemple Nginx. J'ai vu Snaps pourrait le faire qui est génial.

Flatpak a-t-il des projets pour un runtime CLI disponible en tant que service?

Appimage a-t-il quelque chose de similaire?

Merci!

2
Michael Cole

"AppImage a-t-il quelque chose de similaire?"

Oui, la conversion des outils CLI en AppImages entièrement fonctionnant n’est pas un problème.


CLI AppImages du projet AppImage lui-même

Les développeurs AppImage proposent plusieurs de leurs utilitaires CLI permettant de créer, mettre à jour et exécuter AppImages en tant qu'AppImages toutes prêtes à l'emploi:


imité

appimaged. Il s'agit d'un démon d'assistance (facultatif) qui crée automatiquement des entrées de menu pour chaque nouvelle AppImage que vous stockez dans l'un des répertoires surveillés:


appimageupdatetool

appimageupdatetool. Il s'agit d'un outil permettant de rechercher et d'appliquer des mises à jour delta binaires automatiques à toute AppImage préparée pour ce mécanisme. (Pour que le mécanisme de mise à jour soit activé, le créateur d'AppImage doit avoir utilisé le 'type 2' Format AppImage!) Vous pouvez vérifier s'il est activé en exécutant './my.AppImage --appimage-updateinfo' . Pour mettre à jour une AppImage, exécutez simplement:

appimageupdatetool -d my.AppImage   # describe where update comes from...
appimageupdatetool my.AppImage      # actually apply the update...

linuxdeployqt

linuxdeployqt. Malgré son nom, cela ne peut pas ONLY être utilisé pour les applications Qt, mais aussi pour autres. Cet outil rend les applications Linux autonomes en les copiant dans les bibliothèques et les plug-ins utilisés par l'application. Il génère également éventuellement une AppImage.


zsync2 et zsyncmake2

zsync2 et zsyncmake2. Ces deux éléments constituent des outils essentiels pour soutenir le mécanisme delta binaire pour 'type 2' AppImages:

  • zsync2 fait le gros du téléchargement des deltas et corrige une copie de l'ancienne (ancienne) AppImage dans une nouvelle. À la fin du processus, vous avez téléchargé un pourcentage du volume de l'ancienne AppImage, mais vous disposez des deux AppImages de taille complète (anciennes et nouvelles) disponibles localement. Ensuite, testez simplement le nouveau et conservez-le (à côté de l'ancien ou comme seul) si vous l'aimez.

  • zsyncmake2 est l'outil qui crée un *. zsync fichier à partir de ANY fichier (pas seulement une AppImage). Donc pour 'my.binaryfile.exe' , cela créera 'mon.binaryfile.exe.zsync' . Ce fichier (beaucoup plus petit) *. Zsync contient les métadonnées sur le fichier principal, ce qui aidera à identifier les plages d'octets modifiées par rapport à la version précédente. Si les deux fichiers sont désormais hébergés côte à côte, l'utilitaire CLI 'zsync2' == peut déterminer la ou les plages d'octets du (nouveau) binaire à demander. à télécharger afin de mettre à jour le binaire local (ancien).

  • Téléchargez AppImage à partir de: https://github.com/AppImage/zsync2/releases


CLI AppImages d'autres parties

J'ai moi-même construit quelques AppImages pour mon usage personnel (dont certaines restent privées pour le moment), car elles me sont très pratiques: je les héberge sur un répertoire partagé d'un Raspbery Pi dans mon réseau local sans fil, mais je les exécute Les systèmes Linux sur lesquels le répertoire partagé est automatiquement monté à chaque démarrage. Cela fonctionne également très bien lorsque vous testez les images ISO du Live CD.


ImageMagick v7.0.x

ImageMagick v70.x. Je construis de nouvelles versions (non officielles, bien sûr!) Presque quotidiennement pour ImageMagick7. Espérons que cela sera bientôt adopté par les développeurs ImageMagick eux-mêmes ...


QPDF

QPDF. J'ai également construit des pré-versions de QPDF 8.0a. Espérons que le développeur QPDF publiera bientôt ses propres versions AppImage (vous devrez cochez ici .)

Ceci est également un exemple d'inclusion de votre propre script 'AppRun' personnalisé dans une AppImage. Pour voir toutes les fonctionnalités de celui-ci, exécutez AppImage avec l'indicateur '--usage' .

  • Téléchargez AppImage pour le moment à partir de: https://github.com/KurtPfeifle/qpdf-appimage-testing/releases <== Ici, il y aura toujours expérimental AppImages disponibles à l'avenir. Celles-ci couvriront les développements actuels du code, basés sur les derniers commits de Git, et non sur les versions officielles.

Mise à jour: Jay Berkenbilt, l'auteur de QPDF a publié la première version officielle de QPDF-8.0.0, qui inclut une AppImage comme seule version binaire pour Linux. Obtenez-le ici: github.com/qpdf/qpdf/releases . Je vous recommande de renommer l'AppImage en qpdf.ai après le téléchargement (ou de créer un lien symbolique portant ce nom). Cela facilite beaucoup la manipulation du nom AppImage (difficile à manier pour un outil de la CLI!) Et vous permet de continuer à utiliser (l'ancienne) qpdf fournie par la distribution (distro) exactement comme auparavant. Pas de conflit!


Exemple de logiciel IPP

Exemple de logiciel IPP. Une AppImage avec non seulement une , mais quatre utilitaires CLI différents sont les Logiciel exemple IPP fournis par le ISTO Groupe de travail de l'imprimante (PWG) qui présente les concepts du Protocole d'impression Internet (IPP) et du nouveau IPP Partout standard à venir. J'ai créé ASCIIcast avec un court tutoriel d’introduction à ce logiciel en utilisant mon AppImage, que vous pouvez regarder ici:

asciicast


Microsoft PowerShell pour Linux

Microsoft PowerShell pour Linux. Microsoft distribue son nouveau PowerShell pour Linux sous la forme d’une AppImage. Un ASCIIcast sur cette exécution sur Debian est ici:

asciicast

2
Kurt Pfeifle