GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So erhalten Sie Flatpak-Apps und -Spiele, die mit OpenGL erstellt wurden, um mit proprietären Nvidia-Grafiktreibern zu funktionieren

Einige Anwendungen und Spiele, die mit OpenGL-Unterstützung erstellt und als Flatpak verpackt wurden, können nicht mit proprietären Nvidia-Treibern gestartet werden. In diesem Artikel wird erläutert, wie Sie solche Flatpak-Anwendungen oder -Spiele starten, ohne die Open-Source-Treiber (Nouveau) zu installieren.

Hier ist ein Beispiel. Ich verwende die proprietären Nvidia-Treiber auf meinem Ubuntu 18.04-Desktop (nvidia-driver-390 ) und wenn ich versuche, das neueste als Flatpak installierte Krita 4.1 zu starten (das mit OpenGL-Unterstützung erstellt wurde), erhalte ich die folgenden Fehler:

$ /usr/bin/flatpak run --branch=stable --arch=x86_64 --command=krita --file-forwarding org.kde.krita
Gtk-Message: Failed to load module "canberra-gtk-module"
Gtk-Message: Failed to load module "canberra-gtk-module"
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Could not initialize GLX

Winepak-Spiele (mit Wine als Flatpak-Pakete gebündelte Windows-Spiele) scheinen ebenfalls von dieser seit 2016 geöffneten Flatpak-Ausgabe betroffen zu sein.

Um zu beheben, dass Flatpak-Spiele und -Anwendungen nicht starten, wenn OpenGL mit proprietären Nvidia-Grafiktreibern verwendet wird, müssen Sie eine Laufzeitumgebung für Ihre derzeit installierten proprietären Nvidia-Treiber installieren. So wird's gemacht.

1. Fügen Sie das FlatHub-Repository hinzu, falls Sie dies noch nicht getan haben. Eine detaillierte Anleitung für Ihre Linux-Distribution finden Sie hier.

2. Jetzt müssen Sie die genaue Version der auf Ihrem System installierten proprietären Nvidia-Treiber herausfinden.

Dieser Schritt hängt von der Linux-Distribution ab, die Sie verwenden, und ich kann nicht alle Fälle abdecken. Die folgenden Anweisungen sind Ubuntu-orientiert (und Ubuntu-Varianten), aber hoffentlich können Sie selbst herausfinden, welche Nvidia-Treiberversion auf Ihrem System installiert ist.

Öffnen Sie dazu in Ubuntu Software & Updates , wechseln Sie zu Additional Drivers Tippen Sie auf und notieren Sie sich den Namen des Nvidia-Treiberpakets.

Als Beispiel ist dies nvidia-driver-390 In meinem Fall, wie Sie hier sehen können:

Das ist nicht alles. Wir haben nur die Hauptversion des Nvidia-Treibers herausgefunden, aber wir müssen auch die Nebenversion kennen. Um die genaue Nvidia-Treiberversion zu erhalten, die wir für den nächsten Schritt benötigen, führen Sie diesen Befehl aus (sollte in jeder Debian-basierten Linux-Distribution wie Ubuntu, Linux Mint usw. funktionieren):

apt-cache policy NVIDIA-PACKAGE-NAME

Wobei NVIDIA-PACKAGE-NAME der Name des Nvidia-Treiberpakets ist, das in Software & Updates aufgeführt ist . Zum Beispiel, um die genaue Version des nvidia-driver-390 herauszufinden Paket, führen Sie diesen Befehl aus:

$ apt-cache policy nvidia-driver-390
nvidia-driver-390:
  Installed: 390.48-0ubuntu3
  Candidate: 390.48-0ubuntu3
  Version table:
 *** 390.48-0ubuntu3 500
        500 https://ro.archive.ubuntu.com/ubuntu bionic/restricted amd64 Packages
        100 /var/lib/dpkg/status


Suchen Sie in der Ausgabe dieses Befehls nach Installed Abschnitt und notieren Sie die Versionsnummern (außer -0ubuntu3 und ähnliches). Jetzt kennen wir die genaue Version der installierten Nvidia-Treiber (390.48 in meinem Beispiel). Denken Sie daran, weil wir es für den nächsten Schritt brauchen.

3. Schließlich können Sie die Nvidia-Laufzeit für Ihre installierten proprietären Nvidia-Grafiktreiber von FlatHub installieren

Um alle verfügbaren Nvidia-Laufzeitpakete aufzulisten, die auf FlatHub verfügbar sind, können Sie diesen Befehl verwenden:

flatpak remote-ls flathub | grep nvidia

Hoffentlich ist die Laufzeit für Ihre installierten Nvidia-Treiber auf FlatHub verfügbar. Sie können nun mit der Installation der Laufzeitumgebung fortfahren, indem Sie diesen Befehl verwenden:

  • Für 64-Bit-Systeme:

flatpak install flathub org.freedesktop.Platform.GL.nvidia-MAJORVERSION-MINORVERSION

Ersetzen Sie MAJORVERSION durch die Hauptversion des Nvidia-Treibers, der auf Ihrem Computer installiert ist (390 in meinem obigen Beispiel) und
MINOR VERSION durch die Nebenversion (48 in meinem Beispiel aus Schritt 2).

Um beispielsweise die Laufzeitumgebung für die Nvidia-Grafiktreiberversion 390.48 zu installieren, müssen Sie diesen Befehl verwenden:

flatpak install flathub org.freedesktop.Platform.GL.nvidia-390-48

  • Installieren Sie für 32-Bit-Systeme (oder um 32-Bit-Anwendungen oder -Spiele auf 64-Bit ausführen zu können) die 32-Bit-Laufzeit mit:

flatpak install flathub org.freedesktop.Platform.GL32.nvidia-MAJORVERSION-MINORVERSION

Ersetzen Sie wieder MAJOR VERSION durch die Hauptversion des Nvidia-Treibers, der auf Ihrem Computer installiert ist (390 in meinem obigen Beispiel) und MINORVERSION durch die Nebenversion (48 in meinem Beispiel aus Schritt 2).

Um beispielsweise die 32-Bit-Laufzeit für die Nvidia-Grafiktreiberversion 390.48 zu installieren, müssen Sie diesen Befehl verwenden:

flatpak install flathub org.freedesktop.Platform.GL32.nvidia-390-48

Das ist alles, was Sie tun müssen, um Flatpak-gepackte Anwendungen oder Spiele zu erhalten, die mit OpenGL erstellt wurden.


Debian
  1. Flatpak unter Linux:Was es ist und wie man Apps damit installiert

  2. So arbeiten Sie mit Benutzern und Gruppen in Linux

  3. Kann die Nvidia-Grafikkarte unter Ubuntu 18.04 nicht zum Laufen gebracht werden?

  4. Wie man Sound (PulseAudio) mit WSL2 zum Laufen bringt

  5. Hier erfahren Sie, wie Sie den in das Touchpad einiger ASUS-Laptops eingebetteten Nummernblock unter Linux zum Laufen bringen

So arbeiten Sie mit Vordergrund- und Hintergrundprozessen unter Linux

Wie man mit Hardlinks und Softlinks unter Linux arbeitet

So arbeiten Sie mit File and Shell Provisioner in Vagrant

So installieren Sie Itch mit Debian 11

Wie bekomme ich die neueste (Beta- und Entwicklungs-)Version von Chromium?

So installieren und beginnen Sie mit Itch unter Ubuntu Linux