Symlink von prefered nach additional für Treiberintegration verursacht Fehlermeldung in show_drivers.py

Antworten
achim71
Beiträge: 38
Registriert: 04 Jul 2008, 13:27

Symlink von prefered nach additional für Treiberintegration verursacht Fehlermeldung in show_drivers.py

Beitrag von achim71 »

Hallo,

Habe einen kleinen Fehler in show_drivers.py gefunden.
Zur Integration der HD-Audio Treiber habe ich die Treiber nach prefered/realtek/hd/279 kopiert. Das zugehörige INF File liegt dort im Unterordner Vista.
Da mit einigen Boards die Erkennung via Hardware Inventarisierung nicht funktioniert habe ich eine Symlink des Vista Unterordners nach additional/hdaudio erzeugt und hdaudio in die produkt_properties addition_drivers übernommen.
Für die Installation funktioniert das der Ordner wird kopiert und der Treiber installiert.
Rufe ich aber show_drivers.py auf wird der relative symlink ../prefered/realtek/hd/279/Vista falsch aufgelöst zu additional/prefered/realtek/hd/279/Vista, show_drivers.py bricht wegen nicht gefundenem pfad ab.
Verwende ich eine absoluen Pfad für den Symlink funktioniert zwar show_drivers.py, das Setup findet und kopiert den Ordner bei der Installation so aber nicht. Ich verwende win7-4.0.6.1-3.

Update:
Denke der Fehler steckt in Zeile 162, es muss heißen
target = os.path.abspath( os.path.join(manually, os.readlink( os.path.join(manually, manuallySelectedDriver) ) ) )
statt
target = os.path.abspath( os.path.join(manually, manuallySelectedDriver, os.readlink( os.path.join(manually, manuallySelectedDriver) ) ) )

Achim
Benutzeravatar
n.wenselowski
Ex-uib-Team
Beiträge: 3194
Registriert: 04 Apr 2013, 12:15

Re: Symlink von prefered nach additional für Treiberintegration verursacht Fehlermeldung in show_drivers.py

Beitrag von n.wenselowski »

Hallo Achim,

vielen Danke für den Bugreport!
Ich denke das ist mit 4.0.6.2 gefixt.


Viele Grüße

Niko

Code: Alles auswählen

import OPSI
Benutzeravatar
ueluekmen
uib-Team
Beiträge: 1940
Registriert: 28 Mai 2008, 10:53

Re: Symlink von prefered nach additional für Treiberintegration verursacht Fehlermeldung in show_drivers.py

Beitrag von ueluekmen »

Hi,

die Stelle war schon richtig, aber es muss eigentlich:

Code: Alles auswählen

target = os.path.abspath(os.path.join(os.path.dirname(manuallySelectedDriver),(os.readlink(manuallySelectedDriver))))
sein, da kann man schon einen Knoten in der Birne bekommen.

Die neuen Pakete (4.0.6.2-1) liegen schon unter:

http://download.uib.de/opsi4.0/experimental

Feedback ist wie immer erwünscht.


Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.

Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.

uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de


achim71
Beiträge: 38
Registriert: 04 Jul 2008, 13:27

Re: Symlink von prefered nach additional für Treiberintegration verursacht Fehlermeldung in show_drivers.py

Beitrag von achim71 »

Hmm jetzt bekomme ich eine Fehlermeldung

Code: Alles auswählen

[Errno 2] No such file or directory: 'hdaudio'
manuallySelectedDriver ist ja nur der Teil aus additionaldrivers also kein absoluter Pfad.

Das hier funktioniert, ist aber nicht so schön weil zweimal der selbe join drin steckt.

Code: Alles auswählen

target = os.path.abspath(os.path.join(os.path.dirname(os.path.join(manually,manuallySelectedDriver)),(os.readlink(os.path.join(manually,manuallySelectedDriver)))))
Benutzeravatar
n.wenselowski
Ex-uib-Team
Beiträge: 3194
Registriert: 04 Apr 2013, 12:15

Re: Symlink von prefered nach additional für Treiberintegration verursacht Fehlermeldung in show_drivers.py

Beitrag von n.wenselowski »

achim71 hat geschrieben:Das hier funktioniert, ist aber nicht so schön weil zweimal der selbe join drin steckt.

Code: Alles auswählen

target = os.path.abspath(os.path.join(os.path.dirname(os.path.join(manually,manuallySelectedDriver)),(os.readlink(os.path.join(manually,manuallySelectedDriver)))))
Gerüchteweise soll es in Python sogar die Möglichkeit geben das Ergebnisse in Variablen zu speichern :lol:

Code: Alles auswählen

import OPSI
Benutzeravatar
ueluekmen
uib-Team
Beiträge: 1940
Registriert: 28 Mai 2008, 10:53

Re: Symlink von prefered nach additional für Treiberintegration verursacht Fehlermeldung in show_drivers.py

Beitrag von ueluekmen »

Hi,

allgemein gesehen hast du eventuell Recht. Aber diese Querverlinkungen sind nicht ungefährlich und gehen momentan gegen das Design. Das ist einfach so nicht vorgesehen. Im Bootimage sollte das alles kein Problem darstellen.

Deshalb mein Vorschlag, da du es für dich gepatched hast, kannst du es auch weiter gepatched laufen lassen. Das war auch der Grund, warum ich die aktuelle Zeile geposted habe. Das was du eigentlich vorhast liegt auch als Ticket bei uns intern schon zur Prüfung. Da geht es darum, auch die additional-Pfade mit create_driver_links zu verlinken. Das würde einen allgemeinen Umbau anschubsen. Da wir noch nicht endgültig entschieden haben, wie die Reise hier weitergeht, bleibt erst mal nur ab zu warten.

Nochmal der Hinweis, wenn man schon verlinkt, und zwar so wie es eigentlich nicht vorgesehen ist, immer RELATIV verlinken und nie mit absoluten Pfaden. Das ein show_drivers.py damit nicht umgehen kann, kann man noch verschmerzen, aber wenn die eigentliche Installation bei der Treiberintegration bricht, dann ist das nur ärgerlich.


Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.

Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.

uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de


achim71
Beiträge: 38
Registriert: 04 Jul 2008, 13:27

Re: Symlink von prefered nach additional für Treiberintegration verursacht Fehlermeldung in show_drivers.py

Beitrag von achim71 »

Denke wenn relative Links im bootimage funktionieren sollten sie das in show_drivers.py auch tun, das ist sonst verwirrend unbd man muss erstmal eine Testinstallation machen um zu sehen ob es denn im bootimage überhaupt funktioniert. Für mich jetzt kein großes Thema ich füge die additional_driver property einach nach dem show_drivers.py Test an. Die Methode symlinks aus additional nach byAudit funktioniert auch. Ich harre dann mal der Dinge die da kommen werden.
Benutzeravatar
SisterOfMercy
Beiträge: 1556
Registriert: 22 Jun 2012, 19:18

Re: Symlink von prefered nach additional für Treiberintegration verursacht Fehlermeldung in show_drivers.py

Beitrag von SisterOfMercy »

Hey, if you're doing some work on driver integration, don't forget this one: viewtopic.php?f=8&t=7217
Bitte schreiben Sie Deutsch, when I'm responding in the German-speaking part of the forum!
Antworten