Re: nvidia-glx backport

2004-02-19 Diskussionsfäden Frank Kster
Joachim Förster [EMAIL PROTECTED] schrieb:

 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

 Hallo Frank!

 Frank Küster schrieb:
 |Beim Installieren des entstandenen nvidia-glx Pakets bricht dselect dann

Das habe ich nicht geschrieben...

 | Ich hatte solches Verhalten auch schon. In Wirklichkeit ist es nicht
 | /usr/share/debconf/confmodules selber, das mit return code 1
 | endet. Sondern das config-Skript, das von confmodules im postinst-Skript
 ~ ^^^

 Welches config-Skript?

Pakete, deren Konfiguration mit debconf arbeitet, funktionieren so:

- Ganz zu Anfang, bevor das Paket entpackt wird, wird zuerst die
  Kontrollinformation ausgelesen, und dazu gehören das postinst- und das
  config-Skript. 

- Als nächstes wird das config-Skript ausgeführt. Dieses lädt
  confmodule, damit die debconf-Befehle bekannt sind. Danach werden
  diese debconf-Befehle verwendet, damit debconf die Fragen mit dem
  gewählten frontend (meistens dialog auf der Textkonsole) an den
  Benutzer stellt. Die Antworten werden in die debconf-Datenbank in
  /var/cache/debconf geschrieben.

- Nun wird ausgepackt und danach das postinst-Skript lädt seinerseits
  confmodule. Mit debconf-Befehlen liest es die vorher gegebenen
  Antworten aus der Datenbank und konfiguriert entsprechend.

Der Sinn des ganzen ist der, dass dadurch alle Konfigurationsfragen
aller Pakete am Anfang gestellt werden können. Würde man erst im
postinst-Skript fragen, kämen die Dialoge jedesmal, wenn gerade ein
entsprechendes Paket ausgepackt wurde.

Soweit die Theorie. Nun kann es vorkommen, dass das config-Skript aus
irgendwelchen Gründen nicht korrekt durchgelaufen ist oder ähnliches. In
diesem Fall hätte das postinst-Skript ein Problem. Daher ruft confmodule
dann, wenn es von postinst geladen wird, nochmal das config-Skript
auf. Normalerweise merkt man davon nichts, weil die Fragen bereits
beantwortet wurden und daher nicht noch einmal angezeigt werden.

Beim mir habe ich nun beobachtet, dass es vorkommt, dass im
config-Skript ein Befehl mit einem Fehlercode endet, aber dadurch beim
ersten Mal nicht der Installationsprozess beendet wird. Beim zweiten
Aufruf knallt es dann.

Offenbar werden die Skripte gesourcet, und während bei mir im
postinst-Skript ein explizites set -e stand, begann config mit
#!/bin/sh -e. Hier ist das -e wirkungslos, wenn gesourcet wird anstatt
ausgeführt. Und obwohl config schon beim ersten Mal einen Fehler
liefert, bricht es erst beim zweiten Mal ab.

Bei nvidia-glx ist das aber nicht der Fall, daher weiß ich nicht woran
es in diesem Fall liegt.

Du könntest versuchen, das Paket mit

DEBCONF_DEBUG=developer dpkg -i $paketname

zu installieren. Bei Bedarf ein set -x im Skript einfügen. Wenn das
Problem auch mit dpkg-reconfigure auftritt, geht es schneller einfach
das Skript in /var/lib/dpkg/info/nvidia-glx.config zu editieren.

Gruß, Frank
-- 
Frank Küster, Biozentrum der Univ. Basel
Abt. Biophysikalische Chemie


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: nvidia-glx backport

2004-02-19 Diskussionsfäden Joachim Frster
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Hallo Frank!

Vielen Danke für die Erläuterung :-)! Jetzt versteh ich langsam ...
werd' es heute Abend nochmal anschauen.
~ Joachim

PS: Sorry, wegen dem falschen Zitieren  war keine Absicht :-).

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFANLvTZY86bR8HqNwRAoRIAKCmFIOyS3c+csQeClAlSnE3TmLA1ACgo3sB
hDr1Yxqsb1o/R7xzoIheEzI=
=bYU+
-END PGP SIGNATURE-
--
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)


Re: nvidia-glx backport

2004-02-18 Diskussionsfäden Joachim Frster
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Hallo Frank!

Frank Küster schrieb:
|Beim Installieren des entstandenen nvidia-glx Pakets bricht dselect dann
|ab, mit der Meldung das postinst script hätte exit 1 zurückgegeben. Ich
|habe nun rausgefunden, dass es an /usr/share/debconf/confmodules liegen
|muss, welches ins postinst script eingebunden ist (habe dazu mal das
|postinst script mit ein paar echo Ausgaben versehen).
|
|BTW: Im postinst script wird/soll abgefragt werden (via db_get), ob man
|die TLS variante der nvidia Biblitheken haben will oder nicht und
|entsprechende symlinks erzeugt.
|
|BTW2: Wenn ich das Einbinden von confmodules weglassen + db_get Aufruf
|und dann pauschal nein zu TLS sage funkt alles - natürlich ;-).
|
|Was mache ich falsch? Warum funkt debconf hier net richtig?
Ich habe mir es jetzt nochmal angeschaut und bin aber immer noch net
schlauer. Ich versteh' dich übrigens net ganz:
| Ich hatte solches Verhalten auch schon. In Wirklichkeit ist es nicht
| /usr/share/debconf/confmodules selber, das mit return code 1
| endet. Sondern das config-Skript, das von confmodules im postinst-Skript
~ ^^^
Welches config-Skript?

| nochmal aufgerufen wird, falls es beim normalen Aufruf von config nicht
| normal durchlief.
Nochmal aufgerufen wird? Irgendwie versteh' ich nur Bahnhof, sorry :-(
... Könntest du mir das nochmal erklären, bitte?
Oder hat net vielleicht noch jemand anderes auch eine Idee?

Danke für die Antwort :-)
~ Joachim
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFAM56QZY86bR8HqNwRAsHMAKCAKuJ4rIM6ImcgrwDYNZI7b936QQCfV3Bn
ZRIsDoZS27KlSrYyZUk9C58=
=bS2q
-END PGP SIGNATURE-
--
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)


nvidia-glx backport

2004-02-16 Diskussionsfäden Joachim Frster
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Hallo!

Habe mir gestern einen (kleinen) backport von den sid
nvidia-graphics-drivers-1.0.5336 gebaut (für woody). Also mit apt-get
source runtergeladen, mit dpkg-source entpackt, ein Changlog-Eintrag
hinzugefügt und dpkg-buildpackage gemacht. Alles soweit so so gut.
Beim Installieren des entstandenen nvidia-glx Pakets bricht dselect dann
ab, mit der Meldung das postinst script hätte exit 1 zurückgegeben. Ich
habe nun rausgefunden, dass es an /usr/share/debconf/confmodules liegen
muss, welches ins postinst script eingebunden ist (habe dazu mal das
postinst script mit ein paar echo Ausgaben versehen).
BTW: Im postinst script wird/soll abgefragt werden (via db_get), ob man
die TLS variante der nvidia Biblitheken haben will oder nicht und
entsprechende symlinks erzeugt.
BTW2: Wenn ich das Einbinden von confmodules weglassen + db_get Aufruf
und dann pauschal nein zu TLS sage funkt alles - natürlich ;-).
Was mache ich falsch? Warum funkt debconf hier net richtig?

~ Joachim
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFAML9AZY86bR8HqNwRAtbbAJ97m9EGBNJ6MUP90M098COkom1L+ACgtzB0
+EorWlnVvIFxOq9jk1Wg5Dk=
=pf5i
-END PGP SIGNATURE-
--
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)


Re: nvidia-glx backport

2004-02-16 Diskussionsfäden Frank Kster
Joachim Förster [EMAIL PROTECTED] schrieb:

 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

 Hallo!

 Habe mir gestern einen (kleinen) backport von den sid
 nvidia-graphics-drivers-1.0.5336 gebaut (für woody). Also mit apt-get
 source runtergeladen, mit dpkg-source entpackt, ein Changlog-Eintrag
 hinzugefügt und dpkg-buildpackage gemacht. Alles soweit so so gut.

 Beim Installieren des entstandenen nvidia-glx Pakets bricht dselect dann
 ab, mit der Meldung das postinst script hätte exit 1 zurückgegeben. Ich
 habe nun rausgefunden, dass es an /usr/share/debconf/confmodules liegen
 muss, welches ins postinst script eingebunden ist (habe dazu mal das
 postinst script mit ein paar echo Ausgaben versehen).

 BTW: Im postinst script wird/soll abgefragt werden (via db_get), ob man
 die TLS variante der nvidia Biblitheken haben will oder nicht und
 entsprechende symlinks erzeugt.

 BTW2: Wenn ich das Einbinden von confmodules weglassen + db_get Aufruf
 und dann pauschal nein zu TLS sage funkt alles - natürlich ;-).

 Was mache ich falsch? Warum funkt debconf hier net richtig?

Ich hatte solches Verhalten auch schon. In Wirklichkeit ist es nicht
/usr/share/debconf/confmodules selber, das mit return code 1
endet. Sondern das config-Skript, das von confmodules im postinst-Skript
nochmal aufgerufen wird, falls es beim normalen Aufruf von config nicht
normal durchlief. Warum die Installation nicht gleich dort abbricht weiß
ich allerdings auch nicht.

Gruß, Frank
-- 
Frank Küster, Biozentrum der Univ. Basel
Abt. Biophysikalische Chemie


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)