SusiP

SusiP

Nickname: SusiP

Archlinux PKGBUILDS für Nouveau.

Installation

Zum betreiben des nouveau-Treibers sind einige tiefe Eingriffe in das System notwendig. Sie sollten wissen wie das Paketmanagement funktioniert, wie man Kernelmodule lädt, wie eine Xorg.conf Datei aufgebaut ist und wie man sie konfiguriert. Ich weise deshalb hiermit darauf hin, dass ich keine Haftung für irgendwelche entstanden Schäden übernehmen werde.

Ich werde mich in meiner Beschreibung auf die Installation unter der Verwendung der Archlinux Distribution beziehen. Hierfür habe ich die benötigten PKGBUILDS erstellt und stelle Sie hier zum Download bereit.

Entpacken sie alles nach /var/abs/local/nouveau. Die PKGBUILDS sind so ausgelegt, dass das git-Repository lokal in dem src Verzeichnis bleibt und beim Aufruf von build auf HEAD aktualisiert wird. Zur Zeit tragen alle Pakete noch die pkgver=20070202. Geplant ist eine Umbenennung nach -git. Makepackage sollte so konfiguriert sein, dass es neue Pakete in /home/packages speichert (/etc/makepkg.conf). Die hier enthaltenen Skripte suchen in diesem Verzeichnis die nouveau-Pakete.

Das Bauen der Pakete übernimmt für Sie das Skript build-nouveau. Es übersetzt die Pakete in der richtigen Reihenfolge und installiert die Abhängigkeiten für Sie. Ausnahme bildet das Paket nouveau-mesa. Dieses wird von dem Skript nicht installiert, weil es mit den Paketen mesa und nvidia in konflikt steht. Die Installation erfolgt erst durch das Skript switch2nouveau. Bevor Sie gleich das Buildskript starten, sollten Sie zunächst die PKGBUILDS an Ihre vorhandene Kernelversion anpassen.

Starten Sie jetzt mit build-nouveau den Übersetzungsvorgang und installieren ggf. Sie die fehlenden Abhängigkeiten nach und starten Sie das Skript solange erneut bis alle Pakete fertig gebaut sind.

Seit Xorg-1.2 ist ein Patchen des Xorg-Servers unter Archlinux nicht mehr notwendig. Dieses war notwendig, weil das original Paket die Xorg eigene libdrm einkompiliert hatte. Was dazu führte, dass sie beim Starten von Xorg eine Fehlermeldung ausgegeben wurde.

Benutzung

Mit switch2nouveau werden alle Aktionen ausgeführt die zum Starten des Xorg-Servers mit den nouveau-Treibern nötig sind ausgeführt.

Zum Starten benutzen sie das enthaltene Skript start-nouveau. Wechseln sie vorher als root nach init 3. Es startet den X-Server mit der Konfiguration aus /etc/X11/nouveau.conf neu. Achtung ~/.initrc bestimmt WM. Leider stürzt KDE-3.5.6 kurz nach dem Starten ab. Der Windowmanager twm läuft mit nouveau-Treibern gut. Installieren sie ggf. xterm.

Um wieder den Originalzustand herzustellen führen sie das Skript switch2nvidia aus.

Fehlersuche

Überprüfen Sie die Logdatei vom Xorg-Server mit cat /var/log/Xorg.0.log

Verwenden Sie einen Kernel mit Framebuffer? Zur Zeit funktioniert das Zusammenspiel zwischen Framebuffer und nouveau-Treiber noch nicht richtig. Deshalb ist es wichtig, damit die Grafikkarte immer in einem definierten Zustand ist, dass die Framebufferunterstützung deaktiviert ist. Laut IRC-log ist wohl eine enge Zusammenarbeit mit den Kernelentwicklern geplant, um diesen Umstand zu beheben.

Testen

Die Ausgabe von glxinfo enthält Direct Rendering yes und verwendet den nouveau-Treiber. ldd /usr/bin/glxgears.

Tipps

Mit Hilfe von Umgebungsvariablen läßt sich das Verhalten des Systems steuern. In Bezug auf OpenGL trifft das auf LIBGL_DRIVERS_PATH zu. Was kann man nun mit dieser Variable einstellen? Wenn Sie zum Beispiel einen neuen Branch oder eine andere Version von Mesa in einem Verzeichnis übersetzt haben und diese nur mal testen wollen, dann können Sie dies tun indem Sie mit

export LIBGL_DRIVERS_PATH=Pfad/zum/lib-Verzeichnis

die Umgebungsvariable setzen. Jetzt wird die Mesalib aus diesem Pfad geladen.

"Fehlermeldung drmModuleData no data object" -> neuen Xorg-server kompilieren, der die systemeigene libdrm verwendet (vor Xorg-1.2).

Erweiterte Debuggingausgaben von OpenGL. Mit der Umbegungsvariable LIBGL_DEBUG können Sie das Verhalten der Meldungen von OpenGL beeinflussen.

export LIBGL_DEBUG=verbose

gibt mehr Informationen aus.

Hardware

NV28

TODO


CategoryHomepage