Difference between revisions of "De/Flatpak"
m (→Zugriff auf zusätzliche Resourcen: eindeutigere Formulierung) |
(Abstract: — auch parallel zu der ihrer Distribution —) |
||
Line 3: | Line 3: | ||
| [[Flatpak|English]] | | [[Flatpak|English]] | ||
|} | |} | ||
− | '''[{{URL:FP}} Flatpaks]''' sind Bündel, welche neben dem Programm auch alle erforderlichen Bibliotheken enthalten. Falls Ihre Linux-Distribution für erforderliche Bibliotheken zu alt ist, aber Flatpak-Unterstützung hat, können Sie damit dennoch eine ''aktuelle'' GnuCash-Version installieren. | + | '''[{{URL:FP}} Flatpaks]''' sind Bündel, welche neben dem Programm auch alle erforderlichen Bibliotheken enthalten. Falls Ihre Linux-Distribution für erforderliche Bibliotheken zu alt ist, aber Flatpak-Unterstützung hat, können Sie damit dennoch eine ''aktuelle'' GnuCash-Version — auch parallel zu der ihrer Distribution — installieren. |
Das Programm läuft dabei in einer teilweise abgeschotteten Umgebung—<q>Sandkasten</q>—, kann also beispielsweise nur auf das Heimat-Verzeichnis des aufrufenden Benutzers schreibend zugreifen und in der Regel weite Teile des Dateisystems, welche zur Programmausführung nicht notwenig sind, nicht einmal lesen. Damit es keine Konflikte mit einer <q>normalen Installation</q> gibt, befinden sich die Anwendungsdaten für Konfiguration etc. in | Das Programm läuft dabei in einer teilweise abgeschotteten Umgebung—<q>Sandkasten</q>—, kann also beispielsweise nur auf das Heimat-Verzeichnis des aufrufenden Benutzers schreibend zugreifen und in der Regel weite Teile des Dateisystems, welche zur Programmausführung nicht notwenig sind, nicht einmal lesen. Damit es keine Konflikte mit einer <q>normalen Installation</q> gibt, befinden sich die Anwendungsdaten für Konfiguration etc. in |
Latest revision as of 18:02, 22 June 2024
Languages | English |
---|
Flatpaks sind Bündel, welche neben dem Programm auch alle erforderlichen Bibliotheken enthalten. Falls Ihre Linux-Distribution für erforderliche Bibliotheken zu alt ist, aber Flatpak-Unterstützung hat, können Sie damit dennoch eine aktuelle GnuCash-Version — auch parallel zu der ihrer Distribution — installieren.
Das Programm läuft dabei in einer teilweise abgeschotteten Umgebung—Sandkasten
—, kann also beispielsweise nur auf das Heimat-Verzeichnis des aufrufenden Benutzers schreibend zugreifen und in der Regel weite Teile des Dateisystems, welche zur Programmausführung nicht notwenig sind, nicht einmal lesen. Damit es keine Konflikte mit einer normalen Installation
gibt, befinden sich die Anwendungsdaten für Konfiguration etc. in
- $HOME/.var/app/org.gnucash.GnuCash/ und
- $HOME/.local/share/flatpak/app/org.gnucash.GnuCash/
Contents
Bekannte Einschränkungen
- Wir haben darauf verzichtet, die Python Bindings zu bündeln,
- kein direkter Druck von Berichten, aber Ihr Druck in eine Datei und direkter Scheckdruck funktionieren.
- Wenn Sie Ihre Smart Card beim Online-Banking benutzen wollen, benötigen Sie mindestens Flatpak 1.3.2 auf Ihrem Computer. Die weiteren Schritte sind in #Zugriff auf zusätzliche Resourcen beschriebenen.
- Die englische Version dieser Seite hat noch einen Absatz zur Speicherung der GnuCash Präferenzen.
- Ein nur in Ubuntu-Derivaten beobachteter Fehler, der Guile veranlaßt, alle scm-Quellen neu zu übersetzen:
: ;;; note: source file /app/share/guile//2.2/ice-9/eval.scm ;;; newer than compiled /app/lib/guile/2.2/ccache/ice-9/eval.go :
- Workaround:
# --system install cd /var/lib/flatpak/app/org.gnucash.GnuCash # OR --user install cd $HOME/.local/share/flatpak/app/org.gnucash.GnuCash sudo find . -name '*.go' -exec touch '{}' ';'
- Aktuelle Liste auf
Installation
Viele Paketmanager wie Gnome Software oder KDE's Discover können so konfiguriert werden, daß sie zumindest Flatpaks von Flathub installieren und aktualisieren können, aber auf dieser Seite verwenden wir das mächtigere flatpak Befehlszeilen-Werkzeug. Das Beispiel zur Installation von Flatpak selbst wurde für Debian —ab Buster ist Flatpak regulär, für Stretch/Jessie in den „Backports“ enthalten— und Derivate wie Ubuntu geschrieben.
- Tip
- Für andere Distributionen ist also apt … durch das jeweilige Software-Installationswerkzeug zu ersetzten, z.B. für viele rpm-basierte Flatpak selbst hat aber auch Anleitungen für verschiedene Distributionen.
zypper install flatpak
Serverübersicht
- Die #Stabile_Version_von_Flathub.org entspricht offiziellen GnuCash-Versionen und eignet sich für Distributionen, die kein aktuelles GnuCash mitliefern, aber über ein genügend aktuelles FlatPak-Paket verfügen.
- #Testversion_von_Gnucash.org sind aktuelle Schnappshüsse, um Flicken (Patches) zu testen. An anderer Stelle können aber neue Löcher aufgetreten sein.
- Anmerkung zu den folgenden Beispielen
- sudo muß nicht angegeben werden. flatpak ist smart genug, bei Bedarf einen entsprechenden Dialog vom verwendeten Desktop anzufordern wie z.B. bei KDE
Offizielle Versionen auf Flathub.org
Auf Flathub steht neben der aktuellen stabilen —GnuCash 5.9— in der Testphase von einigen Monaten vor einer neuen Haupversion auch eine Vorschau als unstable (instabile) —GnuCash 5.9xx— bereit. Die genauen Daten werden im Release Schedule angekündigt.
- Beide Zweige können parallel installiert werden.
- Siehe auch
- Flathub
- Hinweis zu PSD2
- Die Version Gnucash 3.7 enthielt noch Aqbanking 5.8.2 und war damit für „PSD2“ ungeeignet, Online-Banking per FinTS/HBCI oder chipTAN ging damit seit September 2019 nicht mehr. Seitdem enthielt jede Version der 3.x-Serie noch weitere Verbessserungen dazu.
- Die aktuellen Versionen enthalten Aqbanking 6.5.4.
- Das Team bittet daher darum, davon abzusehen, Probleme zu melden, welche längst gelöst wurden!
- Stabile Version
# Install FlatPak (on debian based distributions, others have to replace 'apt-get install'):
sudo apt-get install flatpak
# Register FlatHub repository for a system app (available to all users):
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
# or only you:
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
# Install GnuCash ...
# for all users:
# sudo is only needed for a --system install, if the user is not in the 'sudo' group
# --system is the default if --user is not specified
sudo flatpak install --system flathub org.gnucash.GnuCash
# or only you:
flatpak install --user flathub org.gnucash.GnuCash
# Run GnuCash:
flatpak run org.gnucash.GnuCash
- Tip
- Am Ende jeden Quartals erscheint eine neue Gnucash-Version. Um danach darauf zu aktualisieren, aufrufen.
flatpak update
- Beta-Version ("unstable")
- In den letzten Monaten vor einer neuen Hauptversion erscheinen Vorschauen, genannt Beta-Version. In dieser Testphase erscheint mindestens am Ende jeden Monats eine neue Gnucash-Beta-Version.
# Register:
flatpak remote-add --user --if-not-exists flathub https://flathub.org/beta-repo/flathub-beta.flatpakrepo
# Install
flatpak install --user flathub-beta org.gnucash.GnuCash
# Run
flatpak run --branch=beta org.gnucash.GnuCash
Tägliche Testversionen —Nightlies
— auf gnucash.org
Gewöhnlich gibt es Schnappschüsse der aktuellen Programmentwicklung auf dem Build-Server.
- Die aktuellen Versionen enthalten Aqbanking 6.5.12beta.
- Warnung
- Vor Gebrauch von Testversionen unbedingt Daten sichern!
Zu finden sind die aktuellen Versionen hier (das sind nicht die eigentlichen Programmpakete, sondern Referenzdateien, die Flatpak' sagen, was heruntergeladen werden soll):
- Stable
- Testversion 5.9 mit aktuellen Fehlerbehebungen, aber ohne neue Programmeigenschaften (aus Stabilitätsgründen zu bevorzugen):
- https://code.gnucash.org/builds/flatpak/stable/?C=M;O=D
- Future
- Erst verfügbar, wenn das erste Feature aus Release Schedule#Goals for 6.0 implementiert ist!
- Testversion 5.900 mit verzögerten Fehlerbehebungen, aber neuen Programmeigenschaften: https://code.gnucash.org/builds/flatpak/future/?C=M;O=D
Die Dateinamen aus diesen Verzeichnissen können im Beispiel unten verkürzt eingesetzt werden: vorne „gnucash-“ und hinten „.flatpakref“ weglassen.
sudo apt install flatpak #Nur beim allerersten Mal: Flatpak installieren
# Auch einmalig: Repositorien registrieren:
sudo flatpak remote-add --if-not-exists gnucash https://code.gnucash.org/builds/flatpak/gnucash-nightlies.flatpakrepo
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
# Anzeige aller im Repositorium vorhandenen Programmpakete:
flatpak --arch=x86_64 remote-ls gnucash
# Ausgabe ist ähnlich:
# org.gnucash.GnuCash
# org.gnucash.GnuCash.Debug
# org.gnucash.GnuCash.Locale
sudo flatpak install gnucash org.gnucash.GnuCash/x86_64/maint-C3.7-254-g1af8e272c-D3.7-57-g022975e # <-- Version anpassen!
flatpak run org.gnucash.GnuCash # Beliebig oft: Programmstart
Konfiguration
Zugriff auf zusätzliche Resourcen
Jedes Flatpak ist zunächst ein abgeschotteter Sandkasten. Um Zugriff auf zusätzliche Resourcen zu erlangen, ist eine entsprechende Freigabe erforderlich.
- USB- oder Netzwerk-Laufwerk
-
- mit festem Mountpoint
-
# After configuring automatic mounting of the drive in the host system sudo flatpak override org.gnucash.GnuCash --filesystem=$PATH_TO_DRIVE
- mit wechselndem Mountpoint
-
sudo flatpak override org.gnucash.GnuCash --talk-name=org.gtk.vfs.* --filesystem=xdg-run/gvfs
- Das GnuCash Flatpak kann dann die Freigabe, sofern gemountet, unter Andere Orte sehen. [1]
- Kartenleser
Smartcard Reader
- Damit AqBanking auf eine Karte für FinTS zugreifen kann, muß
- Auf dem Wirtssystem —Ihrem Linux-PC— der Dienst pcscd laufen,
- der zugehörige Sockel freigeschaltet werden:
sudo flatpak override org.gnucash.GnuCash --socket=pcsc
- Statt dieser einmaligen Freigabe könnte man das Programm auch jedesmal mit starten, aber wer will das schon?
flatpak --socket=pcsc run org.gnucash.GnuCash
- Statt dieser einmaligen Freigabe könnte man das Programm auch jedesmal mit
Tips
Befehlszeilen-Werkzeuge aufrufen
Man kann mit --command ein Kommando angeben, dass flatpak run statt des eigentlichen Programms ausführen soll.
- Beispiel 1
- Shell (Befehlsinterpreter) starten, um mehrere Befehle einzu geben
flatpak run --command=sh org.gnucash.GnuCash
- öffnet eine Shell innerhalb der Flatpak-Umgebung von GnuCash, in der man dann auch aqbanking-cli oder gnc-fq-* Skripte aufrufen kann.
- Beispiel 2
- Einzelnes Programm ausführen, z.B. die Kursdatenbank aktualisieren Beachte die Reihenfolge der Argumente!
flatpak run --command=gnucash-cli org.gnucash.GnuCash --quotes get /path/to/file.gnucash
- Das ist hilfreich, wenn man Befehle zeitgesteuert durch einen modernen systemd timer oder klassisch als cron-Job starten will.
Online-Banking FinTS
Optische TANs
Zur Anzeige optischer TANs haben einige AqBanking-Werkzeuge den Parameter --opticaltan=<Pfad/zum/Anzeige-Programm>, z.B. /usr/bin/gwenview. Sollte Flatpak das in seinem Sandkasten nicht finden, kann man stattdessen /usr/bin/xdg-open angeben, welches dann alle passenden Programme zur Auswahl anbietet. Es ist Bestandteil des Pakets '[flatpak-]xdg-utils', welches man dann natürlich installiert haben sollte.
Schlüsselkarte, ChipTAN
siehe oben, #Zugriff auf zusätzliche Resourcen.
SQL Verbindung
Verwende 127.0.0.1 statt localhost. Bei Letzterem verwendet MySQL Unix-Sockel, welche normalerweise im Sandkasten unerlaubt sind. Man kann natürlich auch den Zugriff erlauben. Dafür muß man zunächst durch Beobachtung des Dateisystems herausfinden, wo die angelegt werden und dann den Zugrif für das org.gnucash.GnuCash Paket erlauben.
Der Aufruf von 127.0.0.1 zwingt dagegen MySQL, eine echte Netzwerk-Verbindung aufzubauen, die im GnuCash Flatpak nicht eingeschränkt ist.
Details: FlatHub GnuCash issue 17
Wartung
Flatpak-Komponenten aktualisieren
Von Zeit zu Zeit sollte man — auch wenn keine neue GnuCash-Version angekündigt wurde —[sudo] flatpak update
ID Zweig Op Remote Download
1. org.freedesktop.Platform.GL.default 19.08 u flathub < 85,1 MB
2. org.freedesktop.Platform.VAAPI.Intel 19.08 u flathub < 8,7 MB
3. org.gnome.Platform.Locale 3.34 u flathub < 322,2 MB (partial)
4. org.gnome.Platform 3.34 u flathub < 320,4 MB
5. org.gnome.Sdk.Locale 3.34 u flathub < 325,8 MB (partial)
6. org.gnome.Sdk 3.34 u flathub < 663,9 MB
Proceed with these changes to the user installation? [Y/n]:
Flatpak aufräumen
Gerade wenn man flatpaks aus verschiedenen Quellen, etwa Release
undn Nightlies
, installiert hat, empfiehlt es sich, nicht länger benötigte Versionen zu deinstallieren.
- Übersicht verschaffen
- Folgede Ausgabe ist sehr weit, eventuell Fenster vergrößern:
$ flatpak list Name Application ID Version Zweig Ursprung Installation default …eedesktop.Platform.GL.default 19.08 flathub user Mesa …eedesktop.Platform.GL.default 21.1.7 20.08 flathub system Mesa …eedesktop.Platform.GL.default 21.1.7 20.08 flathub user Mesa …eedesktop.Platform.GL.default 21.2.2 21.08 flathub user Intel …edesktop.Platform.VAAPI.Intel 19.08 flathub user Intel …edesktop.Platform.VAAPI.Intel 20.08 flathub system Intel …edesktop.Platform.VAAPI.Intel 20.08 flathub user Intel …edesktop.Platform.VAAPI.Intel 21.08 flathub user openh264 …freedesktop.Platform.openh264 2.1.0 2.0 flathub system openh264 …freedesktop.Platform.openh264 2.1.0 2.0 flathub user GNOME Application Platform vers… org.gnome.Platform 3.38 flathub user GNOME Application Platform vers… org.gnome.Platform 40 flathub system GNOME Application Platform vers… org.gnome.Platform 40 flathub user GNOME Application Platform vers… org.gnome.Platform 41 flathub user GNOME Software Development Kit … org.gnome.Sdk 3.38 flathub user GNOME Software Development Kit … org.gnome.Sdk 40 flathub user GNOME Software Development Kit … org.gnome.Sdk 41 flathub user GnuCash org.gnucash.GnuCash 4.8a+ (Flathub 4.8-1) stable flathub system GnuCash org.gnucash.GnuCash fbf8284+ maint-C4.8a-62-gfbf828476f-D4.8-3-g9d2b4e95 gnc-testing-repo user
- Nicht länger beötigte GnuCash-Flatpaks löschen
-
$ flatpak uninstall GnuCash Similar installed refs found for ‘GnuCash’: 1) app/org.gnucash.GnuCash/x86_64/stable (system) 2) app/org.gnucash.GnuCash/x86_64/maint-C4.11-8-geb48f0830e-D4.11-5-g9b8cf9ed (user) 3) app/org.gnucash.GnuCash/x86_64/maint-C4.11-152-g1b384df622-D4.11-38-g414840da (user) 4) app/org.gnucash.GnuCash/x86_64/maint-C4.10-49-g27e5515c43-D4.10.1-5-g937e8a81 (user) 5) All of the above Which do you want to use (0 to abort)? [0-5]: 4 KENNUNG Zweig Op 1. [-] org.gnucash.GnuCash maint-C4.10-49-g27e5515c43-D4.10.1-5-g937e8a81 r 2. [-] org.gnucash.GnuCash.Locale maint-C4.10-49-g27e5515c43-D4.10.1-5-g937e8a81 r Deinstallation abgeschlossen. $
- Nicht länger beötigte Runtimes etc. löschen
-
$ flatpak uninstall --unused These runtimes in installation 'user' are pinned and won't be removed; see flatpak-pin(1): runtime/org.gnome.Platform/x86_64/40 runtime/org.gnome.Platform/x86_64/41 runtime/org.gnome.Sdk/x86_64/40 runtime/org.gnome.Sdk/x86_64/41 KENNUNG Zweig Op 1. [-] org.freedesktop.Platform.GL.default 19.08 r 2. [-] org.freedesktop.Platform.VAAPI.Intel 19.08 r 3. [-] org.gnome.Platform 3.38 r 4. [-] org.gnome.Platform.Locale 3.38 r 5. [-] org.gnome.Sdk 3.38 r 6. [-] org.gnome.Sdk.Locale 3.38 r Uninstall complete.
Fehlersuche
- Falls es irgendwelche Probleme gibt, hilft es bisweilen, die Konsolen-Ausgabe zu beobachten:
flatpak run org.gnucash.GnuCash
- In der nächsten Stufe werden alle Log-Daten auf der Konsole statt in einer schwer erreichbaren Trace-Datei geschrieben.
flatpak run org.gnucash.GnuCash --logto stdout
- Siehe auch
- Feedback
- Zur Kommunikation mit Anderen ist es hilfreich, ein paar Infos zum aktuellen System zusammenzustellen:
- Programm Info
-
flatpak info org.gnucash.GnuCash/x86_64/stable
- ggf. geänderte Privilegien
-
flatpak override --show -vv gnucash.org.GnuCash
- Flatpak Paket-Übersicht
-
flatpak list
- Bei einem Absturz kommgt man an einen Stacktrace mit
$ flatpak-coredumpctl --help usage: Debug in gdb an application that crashed inside flatpak. It uses (and thus requires) coredumpctl to retrieve the coredump file. [-h] [-b BUILD_DIRECTORY] [--extra-flatpak-args EXTRA_FLATPAK_ARGS] [-m [COREDUMPCTL_MATCHES]] [--gdb-arguments GDB_ARGUMENTS] [app] positional arguments: app The flatpak application to use. eg. `org.gnome.Epiphany//3.28`. optional arguments: -h, --help show this help message and exit -b BUILD_DIRECTORY, --build-directory BUILD_DIRECTORY The build directory to use. It allows you to retrieve a coredump for applications being built --extra-flatpak-args EXTRA_FLATPAK_ARGS Extra argument to pass to flatpak -m [COREDUMPCTL_MATCHES], --coredumpctl-matches [COREDUMPCTL_MATCHES] Coredumpctl matches, see `man coredumpctl` for more information. --gdb-arguments GDB_ARGUMENTS Arguments to pass to gdb.
- Weitere Debugging-Optionen: Debugging.
Bekannte Problemlösungen
Nach Update startet Programm auf Englisch
$ flatpak config
languages: *unset* (default: en)
extra-languages: *unset*
flatpak config --set languages de
flatpak update