Dieses Repository erstellt und verteilt das inoffizielle Appimage von Bottles.
Ablehnen
Motivation
Bauweise
Bauen Sie Flaschen mit Conty
Warum Conty?
Warum in ein AppImage integrieren?
Herunterladen
Bisherige alternative Methoden
Fehlerbehebung
Credits
Installieren und aktualisieren Sie es ganz einfach
Das offizielle Bottles-Paket ist nur als Flatpak erhältlich.
Alle Build-Methoden basieren auf dem inoffiziellen AUR-Paket unter https://aur.archlinux.org/packages/bottles
Alle Beschwerden sind nur auf diese mentale Schließung zurückzuführen!
Als Paketierer kann ich mich nur an dem orientieren, was mir Upstream- oder inoffizielle Entwickler gegeben haben.
Entwickler und Paketierer sind zwei völlig gegensätzliche Kategorien:
Der Entwickler erstellt das Programm
Der Packager bündelt und verteilt es (als Deb, RPM, Flatpak, Snap, Appimage...) für die Plattform von Competence.
Der Entwickler hat sicherlich ein Interesse daran, dass seine Anwendung überall funktioniert. Ob also ein Paket auf einer Plattform funktioniert oder nicht, liegt in der Verantwortung des Paketierers, es kompatibel zu machen.
Das größte Hindernis im Bottles-Projekt sind einige Mitarbeiter, die, um Flatpak als einziges Verpackungsformat zu unterstützen, jeder Anfrage oder jedem Vorschlag zur Verwendung eines alternativen Verpackungsformats ein klares NEIN geben. Die Begegnung mit einigen dieser arroganten Menschen war für mich ein Ansporn, weiterhin das Gegenteil von dem zu tun, was sie sagten.
Ich danke dem Entwickler von Bottles, @mirkobrombin, der mir nach vielen Versuchen beim Erstellen des AppImage geholfen hat, indem er mir Tipps und Tricks gegeben hat. Grazie Mirko!
Ich habe viele Male versucht, Nicht-Flatpak-Benutzern die alternative Nutzung von Bottles zu ermöglichen, und das nicht ohne Schwierigkeiten.
Derzeit ist die einzige Methode, die mit Sicherheit funktioniert, Conty.
Derzeit enthält das von mir erstellte AppImage die folgende Struktur:
|---- AppRun |---- com.usebottles.bottles.desktop |---- com.usebottles.bottles.svg |---- conty.sh
Der AppRun ist das Kernskript des AppImage
Die .desktop-Datei von Bottles
Die Ikone der Flaschen
Der Arch Linux-Container mit dem Namen „conty.sh“ enthält Bottles, WINE und Grafiktreiber
Die Punkte 1, 2 und 3 sind die wesentlichen Elemente eines jeden AppImage.
Das Skript „conty.sh“ (4) ist das große Element dieses AppImage.
Dafür ist jede Datei meines Workflows gedacht:
create-arch-bootstrap.sh erstellt eine Arch Linux-Chroot, in der Bottles von AUR installiert wird. Dies ist das erste zu verwendende Skript („root“ erforderlich);
create-conty.sh ist das zweite Skript, das in diesem Prozess verwendet wird. Es konvertiert die von „create-arch-bootstrap.sh“ erstellte Arch Linux-Chroot in ein großes Skript namens „conty.sh“, das „conty-start.sh“ enthält ";
conty-start.sh ist das Skript, das für die Startinitialisierungsprozesse verantwortlich ist, damit Conty funktioniert. Es enthält eine Funktion, die die Version der benötigten Nvidia-Treiber erkennt. Wenn sie benötigt werden, lädt das Skript sie herunter und installiert sie in ~/.local/share/Conty. Außerdem ist es für die vollständige Integration von Conty in das Hostsystem unter Verwendung von „Bubblewrap“ verantwortlich.
utils_dwarfs.tar.gz enthält „dwarfs“, eine Reihe von Tools, die Squashfs ähneln, um Dateisysteme zu komprimieren, und wird benötigt, um „conty.sh“ so weit wie möglich zu komprimieren;
Bottles-conty-builder.sh ist ein Skript, das ich geschrieben habe, um „conty.sh“ in der Nähe von AppRun, der .desktop-Datei und dem Symbol zu platzieren und alles in ein AppImage zu konvertieren. Es soll in Github-Aktionen verwendet werden, kann aber lokal ausgeführt werden, um das AppImage mithilfe einer Testversion von „conty.sh“ aus meinem Conty-Fork zu erstellen.
Die Dateien 1, 2, 3 und 4 stammen von meinem Fork von https://github.com/Kron4ek/Conty
Die Dateien 1, 2 und 3 sind eine Modifikation der Originaldateien, um sie kleiner zu machen und nur das zu enthalten, was nötig ist, damit Bottles funktioniert.
Um mehr über „Conty“ zu erfahren, vollständigere Builds herunterzuladen oder mehr darüber zu erfahren, wie Sie Ihre eigenen erstellen, besuchen Sie das offizielle Repository des Projekts:
Conty ist ein tragbarer Arch-Linux-Container mit eigenen Ressourcen.
Es ist die einzige Lösung, die eine eigene Kopie der Nvidia-Treiber installiert, sofern diese nicht im Container selbst verfügbar sind (siehe Bild unten).
Die Treiber werden im Verzeichnis ~/.local/share/Conty installiert und können bis zu 700 MB Speicherplatz beanspruchen.
Wenn man bedenkt, dass Bottles beim ersten Start, dem Herunterladen der notwendigen Bibliotheken und dem Erstellen von Profilen für WINE etwa 1,4 GB Speicherplatz in ~/.local/share/bottles erreicht, würde ich sagen, dass die Größe mehr als akzeptabel ist.
Es ist ein bisschen so, als würde man eine Flatpak-Laufzeit installieren. Aber nur einer. Die restlichen Dateien werden in Conty selbst gespeichert.
Durch das Einschließen von Conty in ein AppImage kann es mithilfe meines Paketmanagers „AM“ isoliert werden (über eine Bubble-Wrap-Sandbox).
Bei diesem AppImage handelt es sich um ein AppImage der neuen Generation (Type3 AppImage), daher muss libfuse2
nicht auf Ihrem System installiert sein, um es verwenden zu können.
Sie können das AppImage unter https://github.com/ivan-hc/Bottles-appimage/releases/tag/continuous herunterladen
Da ich nur über wenige Ressourcen verfügte, war ich gezwungen, im Rahmen meiner Möglichkeiten mehr oder weniger effektiv durch Versuch und Irrtum vorzugehen.
Der Einsatz von Conty ist nur der jüngste in einer langen Reihe.
Alte Bauskripte sind in den Verzeichnissen dieses Repositorys verfügbar:
„Legacy“ enthält experimentelle Skripte, um das AppImage auf JuNest aufzubauen, aber es fehlt an Hardwarebeschleunigung, siehe ivan-hc/ArchImage#20
„Hybrid“ funktionierte dank einer Mischung meiner beiden Projekte AppImaGen und ArchImage, einer Mischung aus Arch Linux- und Debian-Paketen. Es funktionierte nur für neuere Distributionen und bis zu neueren Änderungen in einem obligatorischen Arch-Linux-Paket (Python), was nicht gut war, diese Methode beizubehalten. Es ist immer noch möglich, die einzige verfügbare Version dieser Methode unter https://github.com/ivan-hc/Bottles-appimage/releases/tag/51.11-2 herunterzuladen
Angesichts der „unruhigen“ Geschichte dieses Repositorys weiß ich nicht, ob Conty die ultimative Lösung für meinen Workflow ist. Es hängt alles von den Paketen ab, die mir von Upstream-Entwicklern oder Dritten zur Verfügung gestellt werden.
Beim ersten Start werden ggf. die Treiber für Ihre Grafikkarte über Conty heruntergeladen (siehe Screenshot oben). Dies kann mehrere Sekunden oder sogar Minuten dauern. Dieses Verhalten wird nur bemerkt, wenn Sie Bottles beim ersten Start vom Terminal aus starten, anstatt den Launcher zu verwenden.
bottles-cli
Nutzung hinzu Erstellen Sie einen Symlink „ bottles-cli
“ für dieses Appimage und fügen Sie ihn einem $PATH hinzu. Wenn Sie also ein Programm zum Desktop hinzufügen, können Sie es über das Menü mit dem entsprechenden Symbol starten. Diese Funktion ist bereits verfügbar, wenn Sie „Bottles“ mit „AM“ und „AppMan“ installieren.
@mirkobrombin für all die Geduld und Verfügbarkeit, die mir entgegengebracht wurde
Conty https://github.com/Kron4ek/Conty
„AM“/„AppMan“ ist eine Reihe von Skripten und Modulen zum Installieren, Aktualisieren und Verwalten von AppImage-Paketen und anderen tragbaren Formaten, auf die gleiche Weise, wie APT DEBs-Pakete, DNF die RPMs usw. verwaltet … mithilfe von a Große Datenbank mit Shell-Skripten, die vom Arch User Repository inspiriert sind und jeweils einer App oder einer Reihe von Anwendungen zugeordnet sind.
Die Engine von „AM“/„AppMan“ ist das „APP-MANAGER“-Skript, das es Ihnen je nach Installation oder Umbenennung ermöglicht, Apps systemweit (für einen einzelnen Systemadministrator) oder lokal (für jeden Benutzer) zu installieren ).
„AM“/„AppMan“ soll der Standard-Paketmanager für alle AppImage-Pakete sein und ihnen ein bleibendes Zuhause geben.
Die gesamte Liste der verwalteten Apps finden Sie unter portable-linux-apps.github.io/apps .
Installieren Sie „AM“ | Alle verfügbaren Apps anzeigen | Unterstützen Sie mich auf ko-fi.com | Unterstützen Sie mich auf PayPal.me |
---|