PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : OpenSUSE 12.3: Hintergrundbild tty



roadracer
25.03.13, 11:18
Jo,
nachdem ich (wie wahrscheinlich das halbe Forum) mein SuSE geupdated habe, ist das Hintergrundbild auf allen ttys weg. Weiß jemand wie ich das wieder hinbekomme? So blank schwarz ist doch ein bisschen langweilig...

VG

nopes
25.03.13, 11:52
Du willst sowas wie fbterm (https://code.google.com/p/fbterm/).

roadracer
25.03.13, 12:03
Das habe ich mir auch schon angesehen, aber sonst kam dieses Hintergrundbild schon beim Boot. Ich verwende keinen Splash und die ganzen Bootmessages sind auf schwarzem Hintergrund nicht so schön.

nopes
25.03.13, 12:30
Dann pack noch splashy (http://pkgs.org/opensuse-12.3/opensuse-oss-x86_64/splashy-0.3.13-39.1.1.x86_64.rpm.html) dazu.

roadracer
25.03.13, 15:16
tut mir leid, wenn ich mich jetzt hier etwas diletantisch anstelle, aber ich habe absolut keinen Plan wie Bootsplashes unter Linux funktionieren. Und ich möchte eigentlich nur, dass mein Bootsscreen (und später auch die ttys) wieder so aussehen:

http://168hours.files.wordpress.com/2008/08/suse93-console.jpg

nopes
25.03.13, 16:49
Also fangen wir vorne an, also beim booten (erst wenn das läuft um die tty Hintergründe kümmern):
Hast bzw. kannst du splashy (http://pkgs.org/opensuse-12.3/opensuse-oss-i586/splashy-0.3.13-39.1.1.i586.rpm.html) installieren?
Hast bzw. kannst du die Themes (http://pkgs.org/opensuse-12.3/opensuse-oss-i586/splashy-themes-0.3.13-39.1.1.i586.rpm.html) (und für deinen Wunsch, das Branding (http://pkgs.org/opensuse-12.3/opensuse-oss-i586/splashy-branding-openSUSE-0.3.13-39.1.1.i586.rpm.html)) installieren?
Hast bzw. kannst du splashy-mkinitrd (http://pkgs.org/opensuse-12.3/opensuse-oss-i586/splashy-mkinitrd-0.3.13-39.1.1.i586.rpm.html) installieren?

Alles installierbar und installiert?

Dann, wenn dein System gebootet hat und du in einem nicht "X tty" folgenden Befehl ausführst,
splashy previewWas passiert? (s.a. man 1 splashy (http://www.linuxcertif.com/man/1/splashy/)).


Ansonsten, wo genau liegt dein Problem beim Einrichten von splashy?

roadracer
25.03.13, 17:25
Na das war doch schon mal ne Ansage. Also: bis auf splashy-themes war alles installiert. Das Paket habe ich natürlich nachinstalliert, dann mit
sudo splashy_config --set openSUSE
mkinitrd
reboot
das richtige Theme eingestellt, eine neue initrd erstellt und rebooted. Wenn ich jetzt

splashy preview ausführe kommt nur
Splashy ERROR: Couldn't splashy_start_splashy(). Error -7

nopes
25.03.13, 18:47
das klingt nicht gut, s.a. https://bugzilla.novell.com/show_bug.cgi?id=664793

Logs? (Sowas wie /var/log/splashy.log vorhanden?)

Ansonsten, deutet Commet 20 im Bug daraufhin, das was an den Sourcen geändert werden muss. Wobei ich hier schon nicht mehr nach einer Lösung suchen würde, entweder das Log (falls vorhanden) zeigt mir was schief geht, oder die Software wäre raus. Mein nächster Schritt wäre eine Suche nach "opensuse splashy alternatives", da eine wählen und wieder von vorn (vielleicht wär ich sogar schon soweit auf das Boot Splashy zu pfeifen:()

Oder mich packt der Ehrgeiz, ich besorge mit die splashy-sourcen und kompiliere selber, ggf. mit dem Fix aus dem Bug-Report. Die Frage die du dir beantworten musst, lohnt sich der Aufwand und Frust, wenn es dann läuft ist dies natürlich leicht zu beantworten :)

[EDIT]Ein kleiner Tipp, wenn du es sehen willst, reicht die Option test bzw. preview, da kommt es nur auf die aktuelle Konfiguration an.
Und eine Frage, ein Framebuffer Treiber ist geladen?

pibi
25.03.13, 21:45
Und dann gibt es noch User wie mich, die froh sind, dass das ganze boot-Prozedere ohne irgendwelche grafischen Gimmicks angezeigt wird;-)
Wie ich das geschafft habe: keine Ahnung. Einfach alle Pakete, in denen irgendwie "suse-branding" oder aehnlich vorkommt --> deinstallieren.

Gruss Pit.

roadracer
25.03.13, 21:58
Also, nach einem kleinen Studium der Sources habe ich nun herausgefunden, dass der Fehler "-7" verursacht wird, wenn Splashy den Framebuffer nicht öffnen kann.

if (CreateWindow() != DFB_OK)
return -7;Den Bug den Nopes gefunden hat hängt aber mit dem Fehler "-10" zusammen (den hatte ich übrigens auch früher mal mit der Hibernate-Geschichte :D)
Von daher glaube ich, dass irgendwas mit meinem FB nicht stimmt, aber auch davon habe ich wieder absolut keine Ahnung. fbset sagt

mode "1680x1050-77"
# D: 176.429 MHz, H: 82.908 kHz, V: 77.196 Hz
geometry 1680 1050 1680 1050 32
timings 5668 208 32 16 4 208 4
rgba 8/16,8/8,8/0,8/24
endmodeEDIT: VLC scheint meine Vermutungen zu bestätigen. Lasse ich es als Root laufen und versuche die Video-Ausgabe auf Framebuffer zu setzten kommt kein Bild. Mit OpenGL funktioniert es jedoch.

EDIT2: /etc/init.d/fbset scheint nichts zu machen, wenn in /etc/sysconfig/console FB_MODULES und FB_PARAM nicht gestzt sind, und das sind sie bei mir auch nicht. Was habt ihr denn dort so stehen?

nopes
25.03.13, 23:22
tja, ist der erste Task wohl Framebuffer zum laufen bringen, vermutlich ist der Rest dann auch plötzlich ganz einfach ;)

roadracer
26.03.13, 00:23
Und jetzt kommen wir wieder zum alten Problem: Ich habe absolut keine Ahnung von FB. Kann nur wiederholen was fbset ausgespuckt hat und folgende interessante Stellen von Dmesg:

[ 0.704338] vesafb: mode is 1600x1080x32, linelength=4096, pages=1
[ 0.704343] vesafb: protected mode interface info at c000:b1a0
[ 0.704348] vesafb: pmi: set display start = c00cb203, set palette = c00cb25e
[ 0.704352] vesafb: pmi: ports = 3b4 3b5 3ba 3c0 3c1 3c4 3c5 3c6 3c7 3c8 3c9 3cc 3ce 3cf 3d0 3d1 3d2 3d3 3d4 3d5 3da
[ 0.704370] vesafb: scrolling: redraw
[ 0.704374] vesafb: Truecolor: size=8:8:8:8, shift=24:16:8:0
[ 0.704641] vesafb: framebuffer at 0xf9000000, mapped to 0xf7a80000, using 6144k, total 14336k
[ 0.730739] fb0: VESA VGA frame buffer device
...
[ 31.898544] NVRM: GPU at 0000:01:00: GPU-8dc4ecd8-f8e7-fcd4-93b2-d69b9cabfe92
[ 31.898551] NVRM: Your system is not currently configured to drive a VGA console
[ 31.898554] NVRM: on the primary VGA device. The NVIDIA Linux graphics driver
[ 31.898556] NVRM: requires the use of a text-mode VGA console. Use of other console
[ 31.898558] NVRM: drivers including, but not limited to, vesafb, may result in
[ 31.898559] NVRM: corruption and stability problems, and is not supported.

Rain_maker
26.03.13, 11:22
Kleiner Einwurf, ansonsten will ich mich hier heraushalten.

@roadracer

Es steht nirgends explizit, deshalb auch der Einwurf, aber fährst Du die 12.3 mit dem Distributionskernel?



uname -a
Linux SkinnyMini 3.7.10-1.1-desktop #1 SMP PREEMPT Thu Feb 28 15:06:29 UTC 2013 (82d3f21) i686 athlon i386 GNU/Linux

Hintergrund:

Hier (und auf meiner zweiten Maschine) läuft eigentlich noch eine 12.1, die noch eine Weile so bleiben muss (Gründe sind jetzt zweitrangig), aber mal einen neueren Kernel ausprobieren ist ja kein Hexenwerk, deshalb ist auch unter anderem der Kernel der 12.3 installiert.

Das ist aber nur die halbe Wahrheit, denn eigentlich nutze ich die Kernel von hier zum Ausprobieren:

http://download.opensuse.org/repositories/Kernel:/stable/standard/

Das wäre dann aber zur Zeit ein 3.8.4 und genau mit den dortigen Kerneln habe ich seit 3.8.1 genau das -für mich nicht wirklich wichtige- Problem, daß auf meinen beiden Maschinen kein Bootsplash mehr funktioniert.

Also sofern Du auch einen Kernel aus dem obigen Repo nutzt, dann wundert mich es gar nicht, daß Dein Bootsplash weg ist.

Mit dem 3.7.10 aus 12.3 ist hier allerdings alles OK in Bezug auf Bootsplash.

Greetz,

RM

* Ja es ist genau seit 3.8.1, der 3.8.0 aus obigem Repo hatte dieses Problem noch nicht. Da aber der Bootsplash eh AFAIK immer vom Distributor eingepatcht wird, sagt das eigentlich nur, daß da irgendwo etwas schief gelaufen sein muss.

roadracer
26.03.13, 20:45
Also ich hab vorhin ein paar Kernel die früher einwandfrei funktionierten noch mal ausprobiert (u.a. auch 3.1 aus OpenSUSE 12.1), aber das hat auch nix gebracht. Ausgehen von dem dmesg-Meldungen würde ich auch eher auf ein Problem im Userland schließen...

Rain_maker
26.03.13, 21:04
Wie gesagt, ich wollte mich nur in soweit einmischen, daß da nicht umsonst alles Mögliche im Userland versucht wird während das Problem im Kernelpaket liegt (was bei den derzeitigen Kerneln aus dem weiter vorne verlinkten Reposehr wahrscheinlich der Fall ist).

Greetz,

RM

roadracer
27.03.13, 11:10
Also nach weiteren Nachforschungen mittels dfbinfo bin ich jetzt darauf gestoßen, dass der DirectFB Fehler
DirectFB/core/vt: Unable to disallocate VT!
--> Device or resource busy lautet.

EDIT: Es muss an DirectFB liegen. fbi, ein Famebuffer-Programm um Bilder anzuzeigen, funktioniert einwandfrei, hat aber auch seine eigene fb-API und braucht KEIN DirectFB.

nopes
27.03.13, 13:36
Hi,

also eine Suche nach der Meldung führt mich hierhin (http://directfb.org/index.php/mailinglists/directfb-users/2004/02-2004/msg00073.html), da wird behauptet, wenn man gpm stoppt läuft es. Dann ist mir aufgefallen, das der Output von "fbset" unvollständig ist, da hast du nur die Modes gepostet, es sollte aber noch was zum Gerät kommen. Beispiel von meiner Himbeere:
fbset -i

mode "1824x984"
geometry 1824 984 1824 984 16
timings 0 0 0 0 0 0 0
rgba 5/11,6/5,5/0,0/16
endmode

Frame buffer device information:
Name : BCM2708 FB
Address : 0x5c006000
Size : 3589632
Type : PACKED PIXELS
Visual : TRUECOLOR
XPanStep : 0
YPanStep : 0
YWrapStep : 0
LineLength : 3648
Accelerator : No
Bzgl. directfb (http://directfb.org/downloads/Core/DirectFB-1.6/), probiere doch diese selber zu erstellen, in der README (http://directfb.org/downloads/Core/DirectFB-1.6/README) ist mir folgende Stelle besonders aufgefallen
With the default build of the DirectFB library, only one DirectFB
application may be running. However you have the option to use the
multi application core of DirectFB which allows multiple DirectFB
applications to run at the same time within a session.

DirectFB applications communicate through a layer we call "Fusion".
This layer was previously implemented completely in user space using
semaphores and message queues. But since 0.9.15 the Fusion Kernel
Device is required which implements critical parts of Fusion and thus
lead to better performance and decent stability. To install this kernel
module (only available for Linux yet), find the linux-fusion
module in our CVS or GIT repository or on the DirectFB website.
For DirectFB 1.4.x releases you should use linux-fusion 8.1.1 or newer.

Compile DirectFB with multi-application core enabled:

./configure --enable-multiWobei ich da schon fürchte, dass es Richtung Fusion geht.