Keine 3D-Beschleunigung als user mit NVIDIA 7300 Go

cabriofahrer

Well-Known Member
Auf meinem Laptop, einem Acer Aspire 5610 mit NVIDIA 7300 Go Chip hatte ich bisher mit i386 FreeBSD 10.3 keine Probleme bis gestern nach einem "pkg upgrade". Mittlerweile habe ich ein Upgrade des Basissystems auf 11.0 gemacht, doch ich bekomme immernoch keine Bescheleunigung als user, obwohl ich ein

# pw groupmod video -m werner

gemacht habe und mein user mit "id" als Mitglied von wheel, operator und video erscheint. Es muss ein Rechteproblem sein, da die Ausgabe von glxinfo korrekt funktioniert, wenn ich fluxbox von der Konsole aus als root starte mit

#xinit fluxbox

Wenn ich es als user mache, dann jedoch nicht.
Der korrektre Treiber ist nvidia-driver-304, ich habe mittels nvidia-xconfig eine frische xorg.conf erstellt, denn ohne geht es gar nicht.

Was fehlt denn noch?
 
... du hast 2 x Glück, der neueste Treiber 304.135 funktioniert (bei mir allerding unter 10.3) und er ist der erste der offiziell 11.0 unterstützt.
 
... du hast 2 x Glück, der neueste Treiber 304.135 funktioniert (bei mir allerding unter 10.3) und er ist der erste der offiziell 11.0 unterstützt.

Seitdem sind jetzt mehrere Wochen vergangen und Version 304.135 existiert immernoch nicht als Package, sondern nur als Port, das nervt langsam. Bisher habe ich mich damit begnügt, den Laptop als root zu betreiben, doch jetzt würde ich doch gerne den Nvidia-Treiber aus den Ports installieren. Dazu müsste ich jedoch erstmal die sources nachinstallieren, was ich mir eigentlich sparen wollte. Ich bin mir jetzt aber nicht sicher, welchen Befehl/Pfad ich genau nehmen muss, wenn meine Version 11.0-p9 ist?

# svn checkout https://svn.FreeBSD.org/base/release/11.0.0/ /usr/src

oder

# svn checkout https://svn.FreeBSD.org/base/release/11.0.1/ /usr/src

oder

# svn checkout https://svn.FreeBSD.org/base/releng/11.0.0/ /usr/src

oder

# svn checkout https://svn.FreeBSD.org/base/releng/11.0.1/ /usr/src
 
Ich denke du willst die Ports auschecken [1] und nicht die Quellen für FreeBSD (base) richtig? Der Treiber mit der Version 304.135 befindet sich nur im Branch Head. Daher kannst du folgendes verwenden:
Code:
svn checkout https://svn.FreeBSD.org/ports/head /usr/ports
Gruss

[1] https://www.freebsd.org/doc/handbook/svn.html
 
ohmann, ich habe es eben vor einigen Tagen erst gemacht (allerdings mit svnlite, weil ich das auch mal benutzen wollte) und war ebenso vom Angebot verwirrt und habe deshalb auch voll daneben gegriffen. Das merkte ich und konnte es korrigieren und dann war es offenbar so klar, dass ich mir keine Notiz mehr machte. Sieh vielleicht mal auf dem Server nochmal nach, es gibt da eine html-browsable Funktion und da ist irgendwas, das einen starken Hinweis auf die richtige Version liefert. ich glaube, es war release/11.0.1 bei mir. Vielleicht ein Veröffentlichungsdatum oder sowas.
Du kannst ja wieder löschen, wenn es nicht stimmt.
 
Seitdem sind jetzt mehrere Wochen vergangen und Version 304.135 existiert immernoch nicht als Package, sondern nur als Port, das nervt langsam.
Dann bist du auf den Quarterly-Ports. Dort gibt es nur alle 3 Monate neue Versionen, es sei denn das Update schließt Sicherheitslücken. Die Latest-Pakete haben ein 'nvidia-driver-304-304.135'. :)
 
Nein, @foxit, ich wollte /usr/src mit den Kernelsourcen besiedeln, damit der Port nvidia-driver-304 überhaupt gebaut werden kann. Der Pfad /base/release/11.0.1, wie es @pit234a wohl auch erfahren hat, war letztendlich erfolgreich, der Port wurde gebaut und ich habe jetzt 3D-Beschleunigung als User.

Dann bist du auf den Quarterly-Ports. Dort gibt es nur alle 3 Monate neue Versionen, es sei denn das Update schließt Sicherheitslücken. Die Latest-Pakete haben ein 'nvidia-driver-304-304.135'.

Ja so ein Mist, Mann. Hätte ich das früher gewußt, wäre mir der ganze Ärger von vornherein erspart geblieben... (OK, jetzt habe ich mal durchexerziert, wie man mit svn seine Sourcen anlegt.)

Abschließend möchte ich dann natürlich bitte gerne noch zwei Dinge wissen:

Bei einer Frischinstallation von FreeBSD und pkg wird doch der Pfad für die Packages nicht automatisch auf die Quarterly-Packages gelegt, oder?
Und wenn ja, wo/wie lege ich den Pfad auf die Latest-Packages? (Es kann sein, dass ich seinerzeit eine Frischinstallation von 9.x gemacht hatte, als pkg noch relativ neu war und man damals da noch etwas manuell konfigurieren musste, ich weiß es aber nicht mehr genau.)
 
Hallo,

Wegen Ändern von quarterly zu latest: Du kannst das in der /etc/pkg/FreeBSD.conf ändern.

Viele Grüße,
Holger
 
Nein, @foxit, ich wollte /usr/src mit den Kernelsourcen besiedeln, damit der Port nvidia-driver-304 überhaupt gebaut werden kann.
Achso ja die braucht man natürlich auch noch zum bauen richtig. Der Branch mit /base/release/11.0.1 ist aber nicht wirklich optimal. Hier hast du alle Änderungen welche nach FreeBSD-RELEASE-p1 gekommen sind nicht dabei. Besser wäre releng/11.0 [1]. In diesem Branch sind alle Änderungen enthalten.

Gruss

[1] https://svn.freebsd.org/base/releng/11.0/
 
quarterly oder latest war ja für mich auch die Entscheidung. Ich fahre mit quarterly gutund hatte mich darauf festgelegt. Ich will gar kein Top-aktuelles System haben. Wenn ich auf latest gehe, wird sich wohl etliches ändern und eine ganze reihe an Abhängigkeiten nicht mehr passen.
Ist natürlich eher eine Gewissensfrage, als von praktischer Bedeutung.
Nur den nvidia Treiber habe ich nun zusätzlich aus den Ports gebaut, um diesen Fehler zu beseitigen. Das geht schnell, von dem Ziehen der Sourcen abgesehen.
Ich hatte vorher schon mal diesen nvidia Treiber selbst gebaut, weil ich ihn als Fehlerhaft vermutet hatte und war da ähnlich verfahren, nur mit svn anstatt svnlite. Damals hatteich auch alle Sourcen wieder gelöscht, nachdem ich schließlich wieder auf das Paket gewechselt war und so will ich das auch diesmal halten. Der Eigenbau hat ja keine Vorteile (OK,ich habe ohne Linux gebaut, aber das ist nun nicht so dramatisch). Sobald die neuere Version in quarterly angekommen ist und ich das merke, werde ich wieder zum Paket wechseln und Ballast abwerfen.

Es ist aber durchaus lästig, auf Anhieb nicht zu wissen, was man da denn eigentlich laden möchte. Da könnte das Handbuch etwas präziser erklären an der Stelle.
 
Der Branch mit /base/release/11.0.1 ist aber nicht wirklich optimal. Hier hast du alle Änderungen welche nach FreeBSD-RELEASE-p1 gekommen sind nicht dabei. Besser wäre releng/11.0 [1]. In diesem Branch sind alle Änderungen enthalten.

Genau das hatte ich befürchtet, deswegen hatte ich oben gefragt. Das Bauen des Treibers war aber erfolgreich, der Zweck der Aktion damit erfüllt. Ich nehme an, dass ein künftiges "freebsd-update fetch install" die Sourcen dann wieder auf den richtigen Stand zusammen mit dem Basissystem bringt?

Es ist aber durchaus lästig, auf Anhieb nicht zu wissen, was man da denn eigentlich laden möchte. Da könnte das Handbuch etwas präziser erklären an der Stelle.

In der Tat.

Wegen Ändern von quarterly zu latest: Du kannst das in der /etc/pkg/FreeBSD.conf ändern.

Vielen Dank! Aber nach einem Blick in diese Datei und dem Beitrag von @pit234a nehme ich an, dass quarterly die von der Installation vorgegebene Standardeinstellung, und mit meinem System von daher alles in Ordnung ist?
 
Vielen Dank! Aber nach einem Blick in diese Datei und dem Beitrag von @pit234a nehme ich an, dass quarterly die von der Installation vorgegebene Standardeinstellung, und mit meinem System von daher alles in Ordnung ist?
Dann solte auch der Quarterly Branch bei den Ports verwendet werden, der heißt momentan 2017Q2. Die head Ports zu nutzen, und mit Binaries zu mischen, die aus quarterly sind, das würde ich nicht machen.
 
Dann solte auch der Quarterly Branch bei den Ports verwendet werden
soviel ich weiß, kann der nur über svn abgeholt werden. Es gibt sie ja noch nicht so lange. Jedenfalls mache ich das deshalb nicht, obwohl man deinem Einwand natürlich nur zustimmen kann.
Die Ports sind für mich nur noch ein Notsystem. Ich habe da weniger als eine Handvoll, die auch kaum Abhängigkeiten haben, die ich gelegentlich mal baue. So lange das keine größere Sachen sind, kann ich mit Unverträglichkeiten gut leben. Es funktioniert ja alles.

Auch bei diesem Problem mit den nvidia Treibern ist das ja nur eine vorübergehende Aktion und so lange der selbstgebaute Treiber funktioniert, mache ich mir um Versionen keine Gedanken.

Vielleicht sollte ich nebenbei noch was erzählen. Die Tage hatte ich auf meinem kleinen Asus i386 ein länger anstehendes Update gemacht, freebsd-update und pkg upgrade laufen lassen. Seltsamerweise funktionierten etliche Anwendungen später nicht mehr und zuerst ist mir das bei LibreOffice aufgefallen. Es war eine 5er Version installiert und wegen fehlender Libs wollte die nicht starten. Da macht man zunächst das einfachste: delete und wieder install, womit ich ein veraltetes LibreOffice 4.x erhielt und auch kein de-Sprachpaket erhältlich war.
Natürlich sieht man nicht dauernd in die Repos und deshalb kann ich nicht sagen, was sich da vielleicht getan hatte. Ich kann mir nicht erklären, wie ohne Änderungen der Pfade ein LibreOffice aus dem Latest Zweig bei mir installiert werden konnte, während ich doch auf Quarterly stand. Und auch nicht, wieso die meisten meiner Anwendungen wegen fehlender Libs nicht mehr starten wollten. Da muss etwas durcheinander geraten sein.
Als finalen Schritt stellte ich hier nun auf Latest um und ließ ein pkg upgrade -f laufen, was auch wirkte. Ich wählte deshalb Latest, weil mehr als die Hälfte meiner Pakete scheinbar neuer war, als auf Quarterly und ich so Downloadzeit sparen konnte.
Was ich damit sagen will: wenn ich oben erklärte, mich für Quarterly entschieden zu haben, dann ist das kein Credo und ich will damit schon gar nicht missionieren. Es ist nur für den normalen Betrieb für mich vollkommen in Ordnung und es passt auch zu mir, nicht immer die aktuellste SW zu nutzen. Mann muss nicht der neuesten Version hinterher hecheln.
 
Besser in /usr/local/etc/pkg/repos/FreeBSD.conf

Ah, wieder was gelernt.
Ich dachte, die soll nur angelegt werden, wenn man eigene Repos nutzt, aber offenbar ist es besser, dass bei jeglichen Änderungen eine solche Datei angelegt wird.

Danke.
 
Ich dachte, die soll nur angelegt werden
auch dazu kannst du ja /etc/pkg/FreeBSD.conf nehmen, oder missbrauchen, wie immer man das sehen will.

Grundsätzlich ergibt sich die Fragestellung aus hier(7) und wie man das jeweils auslegt. Die Entwickler von SW und die Maintainer legen ihrerseits etwas aus und ich als Anwender muss dem dann folgen und kann manchmal nicht anders, als meiner eigenen Überzeugung ab zu schwören. Sehr häufig bauen die Entwickler und Maintainer aber mehrere Möglichkeiten ein. Beredtes Beispiel ist die corg.conf und die vielen Möglichkeiten, wo man die finden könnte, wo also X beim Start nachsieht. Auch da gab es früher dann gelegentlich die Frage, ob die denn in eine /etc/X11 gehört, wo es doch eigentlich eine lokale Konfiguration ist und deshalb nach /usr/local/etc gehört.
Also, ich selbst bin da nicht so verbiestert und akzeptiere sowohl die Entscheidungen, die ich bei FreeBSD finde, als ich auch jene in einem GNU/Linux nicht als abstoßend empfinde. Es ist gut, wenn ich selbst weiß, wo ich suchen muss.
Allerdings gibt es in diesem Fall ja die /etc/pkg/FreeBSD.conf immer schon. Eine xorg.conf gibt es zum Beispiel nicht zu Anfang schon auf einem System.
Da ist es einfach einfacher, was das System mal installierte, auch so zu belassen. Das verwirrt dann spätere Update-Mechanismen nicht so sehr, wenn die an dieser Stelle mal was machen müssten.
Bei einer einzigen Datei ist auch das gut zu überschauen und zu bewerkstelligen.
Es geht da eher ums Prinzip, als um die Funktion.
 
Zurück
Oben