Plasma und Bumblebee

Hinweis: In dem Thema Plasma und Bumblebee gibt es 2 Antworten. Der letzte Beitrag () befindet sich ganz unten auf dieser Seite.
  • Hallo alle zusammen.


    Ich dachte ich nutze den Sonntag mal um Bumblebee auf meinem Lenovo T520 zu installieren. Aktuell nutze ich nur die Nvidia-Karte, und habe den Intel-Chip im BIOS deaktiviert. Das ist ein Grund für einen sehr hohen Energieverbrauch, so dass es openSuse im Batteriebetrieb unterwegs unbenutzbar macht.


    Ich habe mich bei der Installation an diese Anleitung gehalten:
    ultimate tutorial installing Bumblebee driver for SUSE


    Ich nutze bereits openSUSE Leap 42.4 RC 2(ich weiß, das ist noch kein Release, das Problem liegt aber eher an Plasma, so dass es auch bei Leap 42.1 auftreten würde) zusammen mit KDE Plasma 5.8.3 LTS. Daher habe ich für die Bumblebee-Pakete das Repo Index of /repositories/X11:/Bumblebee/openSUSE_Factory eingebunden. Ein Repo für 42.2 gibt es noch nicht.



    Nach dem Neustart habe ich im BIOS wieder beide Grafikkarten aktiviert und hatte erstmal einen schwarzen Bildschirm auf Terminal 7. Von Terminal 1 aus habe ich dann aber Plasma starten könnten, wobei zunächst der Fehler kam, dass OpenGL nicht geladen werden konnte. Xfce (mit dem Befehl startxfce4) ging einwandfrei, da es anscheinend kein OpenGL voraussetzt. Von dort aus konnte ich auch beispielsweise "optirun glxgears" ausführen, das hat geklappt. Ohne optirun ging es nicht:



    Code
    max@linux-gl9m:~> glxgears 
    X Error of failed request:  BadValue (integer parameter out of range for operation)
      Major opcode of failed request:  153 (GLX)
      Minor opcode of failed request:  3 (X_GLXCreateContext)
      Value in failed request:  0x0
      Serial number of failed request:  23
      Current serial number in output stream:  24


    Verstehe ich das richtig, dass zunächst alles auf der Intel-Karte ausgeführt werden soll, solange man es nicht mit optirun startet?


    Jedenfalls habe ich erstmal sddm deaktiviert (setzt anscheinend ebenfalls OpenGL voraus) und habe kdm als Displaymanager ausgewählt. Von hier aus kann ich auch Plasma starten, wobei wieder der Fehler kommt, das OpenGL fehlt. Es läd nur noch die Konsole, die noch offen war, aber beispielsweise nicht die Menüleiste.


    Ich habe jetzt mehrmals versucht beteiligte Pakete neu zu installieren, aber das hat zu keinem Erfolg geführt.


    Ein komischer Effekt tritt noch auf. Als Root kann ich "glxgears" starten (ergibt 60 FPS) und "optirun glxgears" (ergibt 1800 FPS).
    Warum geht das als normaler User nicht? Beide User sind in den Gruppen video und bumblebee.


    Hier noch ein Paar Daten, die vielleicht helfen den Fehler zu finden:


    Vermutlich brauche ich video-nv, vesa, nouveau und amdgpu nicht, aber die werden auch nicht verwendet.



    Komisch ist auch, dass kein nvidia Kernelmodul geladen ist, "lsmod | grep nv" spuckt nichts aus. Muss das so sein?



    Also im Endeffekt fehlt denke ich nur die OpenGL-Unterstützung für die Intel-Karte. Wie bekommt man sowas hin?


    Vielen Dank schonmal fürs bis hier her lesen.
    Beste Grüße
    Max

    Für den Inhalt des Beitrages 99813 haftet ausdrücklich der jeweilige Autor: max3000

  • Ich habe gerade mal einen neuen Nutzer angelegt. Bei dem funktioniert openGL auch ohne optirun, also von der Intel-Karte.Für meinen eigentlichen Nutzer geht es allerdings immer noch nicht. In irgendwelchen Einstellungen muss da ein Fehler sein, aber ich finde es nicht.

    Für den Inhalt des Beitrages 99830 haftet ausdrücklich der jeweilige Autor: max3000

  • Ich habe den Fehler gefunden.


    Ich habe mal geschaut, welche LIbraries die verschiedenen Nutzer so verwenden:

    Code
    ldd /usr/bin/X11/glxinfo

    Dabei habe ich gesehen, dass mein normaler Nutzer die libGL.so aus dem Ordner /usr/lib64/nvidia/ verwendet, die anderen Nutzer aber die libGL.so aus /usr/lib64. Ich denke in /usr/lib64/nvidia waren alte Libraries, die nicht aus dem Mesa-Paket kommen, sondern mit dem Nvidia-Installationsskript irgendwie installiert wurden sind sind. Zudem wurde in der ~/.bashrc meines Nutzers der Ordner /usr/lib64/nvidia in die Umgebungsvariable LD_LIBRARY_PATH aufgenommen. Das habe ich wieder entfernt und sicherheitshalber die alten OpenGL-Libs gelöscht. Nun funktioniert alles einwandfrei.


    Viele Grüße
    Max

    Für den Inhalt des Beitrages 99831 haftet ausdrücklich der jeweilige Autor: max3000