Fbsplash: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
(→‎Fbsplash installieren: yaourt -> trizen)
(42 dazwischenliegende Versionen von 7 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{unvollständig}}  
{{unvollständig}}  
{{righttoc}}
[http://fbsplash.berlios.de Fbsplash] (vormals gensplash) ist eine Userspace-Implementierung eines Startbildschirms für Linux-Systeme. Mit der Linux-Framebuffer-Schicht ermöglicht sie eine grafische Umgebung während der Bootvorgangs. Fbsplash hat das Ziel einfach, leicht und schnell zu sein. Der Code ist auf minimale Boot-Zeit optimiert.


= Was ist fbsplash? =
== Framebuffer ==
[http://fbsplash.berlios.de Fbsplash] (vormals gensplash) ist eine Userspace-Implementierung eines Startbildschirms für Linux-Systeme. Mit der Linux-Framebuffer-Schicht ermöglicht es eine grafische Umgebung während der Bootvorgangs. Fbsplash hat das Ziel einfach, leicht und schnell zu sein. Der Code ist auf minimale Boot-Zeit optimiert.
Ab dem Linux-Kernel 2.2 ist der Framebuffer standardmäßig enthalten. Der Framebuffer ist eine Methode, unter Linux den Grafikspeicher der Grafikkarte anzusprechen.
Das Besondere an dieser Methode ist, dass dabei kein speziel an die Grafikkarte angepasster X11-Treiber verwendet wird, sondern dass er selbst den Speicher der Grafikkarte im System repräsentiert und dabei die Koordination über Dateioperationen mit ihr übernimmt. Dazu muss im Linux-Kernel der Framebuffer-Treiber aktiviert sein, so dass die Funktionalität über das Device /dev/fb0 (ist das erste Framebuffer Device, das zweite verwendet /dev/fb1 usw.) zur Verfügung steht. Das ist standardmäßig im Linux-Kernel von Arch Linux der Fall.


= Was ist der Framebuffer? =
== Uvesafb ==
Uvesafb ist ab Version 2.6.24 im Kernel eingepflegt und ersetzt damit den vesafb-tng (ein Erweiterungs-Patch von Michał Januszewski alias spock für den normalen VESA-Framebuffer-Treiber). Mehr Infos [http://dev.gentoo.org/~spock/projects/uvesafb/ dazu] auf spocks offizieller Webseite.


Der Framebuffer ist eine Methode, unter Linux den Grafikspeicher der Grafikkarte anzusprechen. Das Besondere an dieser Methode ist, dass dabei kein speziel an die Grafikkarte angepasster X11-Treiber verwendet wird, sondern es wird der Grafikspeicher direkt über Dateioperationen angesprochen. Dazu muss im Linux-Kernel der Framebuffer-Treiber aktiviert sein, so dass die Funktionalität über das Device /dev/fb0 zur Verfügung steht. Das ist standardmäßig im Linux-Kernel von Arch Linux der Fall.
=== Der virtualisierung Daemon ===
Im Gegensatz zu anderen Framebuffer-Treibern braucht uvesafb einen Userspace-Virtualisierungs-Daemon, genannt v86d. Dieser ist in der extra Repository verfügbar und kann einfach mit  [[pacman]] installiert werden:
 
  pacman -S v86d
 
Danach den v86d irgendwo nach udev und vor keymap in die /etc/mkinitcpio.conf eintragen:
 
  HOOKS=(base udev v86d ...)
 
Dann die initramfs mit mkinitcpio neu generieren:
mkinitcpio -p kernel26
''Wird ein anderer Kernel benutzt, zum Beispiel mit [http://wiki.archlinux.de/index.php?title=Fbsplash#Hintergund_f.C3.BCr_die_Konsole Fbcondecor], dann den Befehl entsprechend anpassen: mkinitcpio -p kernel26-fbcondecor
 
=== Die Kernel-Parameter ===
Zuerst alle eventuellen Framebuffer-Kernel-Boot-Parameter in der Grub/Lilo-Konfiguration, die sich auf den normalen VESA-Framebuffer-Treiber beziehen, entfernen.
 
(vga=792 ...)
 
Die Einstellungen werden stattdessen jetzt in der /etc/modprobe.d/uvesafb.conf (ist ein Teil des obengenannten V86d-Pakets) oder in der allgemeinen /etc/modprobe.d/modprobe.conf vorgenommen. Die uvesafb.conf vom V86d-Paket verrät auch, wo man weitere Infos zum uvesafb nachlesen kann.
 
# This file sets the parameters for uvesafb module.
# The following format should be used:
# options uvesafb mode=<xres>x<yres>[-<bpp>][@<refresh>] scroll=<ywrap|ypan|redraw> ...
#
# For more details see:
# http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/fb/uvesafb.txt
#
options uvesafb mode=1280x800-32 scroll=ywrap
 
Ab Kernel .6.27 und höher sieht die Zeile so aus:
 
options uvesafb mode_option=1280x800-32 scroll=ywrap


= Vesafb =
==== Uvesafb als festen Bestandteil des Kernels ====
Wenn du einen selbst kompilierten Kernel benutzt, in dem du Uvesafb als festen Bestandteil des Kernels statt als Modul eingebunden hast, kann das V86d-Paket auch später gestartet werden (bspw. mittels etc/rc.local) und du musst den Boot-Parameter in der Grub/Lilo-Konfiguration wie folgt anpassen:
video=uvesafb:<options>


= Uvesafb =
== Fbsplash ==
=== Fbsplash installieren ===
Installiere fbsplash mit [[yaourt]]:
trizen -S fbsplash


Uvesafb ist ab Version 2.6.24 im Kernel eingepflegt und ersetzt damit den "vesafb-tng"-Patch (eine erweiterte Version des VESA-Framebuffer-Treibers von Michał Januszewski alias spock). Mehr Infos dazu auf spocks offizieller Webseite zu [http://dev.gentoo.org/~spock/projects/uvesafb/ uvesafb].
Ergänze fbsplash unter DAEMONS in der rc.conf:
DAEMONS=(... fbsplash gpm gdm)


== Der virtualisierung Daemon ==
Um fbsplash beim Starten und Runterfahren des Computers zu kontrollieren, bedarf es das [http://aur.archlinux.org/packages.php?ID=26039 initscripts-extras-fbsplash]-Paket  vom [[AUR]].
trizen -S fbsplash-extras


Im Gegensatz zu anderen Framebuffer-Treibern braucht uvesafb einen Userspace-Virtualisierungs-Daemon, genannt v86d. Dieser ist in der extra Repository verfügbar und kann einfach mit  [[pacman]] installiert werden:
=== Themes ===
Das Fbsplash-Paket selbst bringt kein Aussehen für den Bootvorgang mit, so dass zumindest ein Theme installiert werden muss.


  pacman -S v86d
==== Fertiges Theme ====
Im [[AUR]] findest du einige fertige Themes für Arch Linux, die du mit [[yaourt]] installieren kannst.  [http://aur.archlinux.org/packages.php?O=0&K=fbsplash&do_Search=Go Suche in AUR nach Themes] <br>
Hier kommt als Beispiel das "[http://aur.archlinux.org/packages.php?ID=22867 fbsplash-theme-arch-minimal]" zum Einsatz.


Danach den v86d irgendwo nach udev und vor keymap in die /etc/mkinitcpio.conf eintragen:
yaourt -S fbsplash-theme-arch-minimal


  HOOKS="base udev v86d ..."
==== Theme selber erstellen ====
Eine gute Anleitung dazu findet du im Artikel zum [http://gentoo-wiki.stefreak.de/de.gentoo-wiki.com/Fbsplash.html#Eigene_Bilder_verwenden_.28ein_eigenes_Theme_erstellen.29 Fbsplash] des Gentoo-Wikis.


== Entfernen der Kernel-Parameter ==
=== Hintergrund für die Konsole ===
Mit dem Kernel-Patch [http://dev.gentoo.org/~spock/projects/fbcondecor/ Fbcondecor] hat auch die Konsole ein schönes Hintergrundbild, sofern dein gewähltes Splash eins mitbringt. Du findest ihn [http://aur.archlinux.org/packages.php?O=0&K=fbcondecor&do_Search=Go hier] im [[AUR]]


Denken Sie daran, alle Framebuffer-Kernel-Boot-Parameter in der Grub/Lilo-Konfiguration die sich auf die sich auf den normalen VESA-Framebuffer-Treiber beziehen zu entfernen (vga = ...).
=== Fbsplash einrichten ===
==== Bootloader konfigurieren ====
Ergänze den Bootloader in der "Kernel-Zeile" wie folgt:


quiet console=tty1 splash=silent,theme:arch-banner-icons,fadein,fadeout


==== Fbsplash konfigurieren ====
In der /etc/conf.d/splash kannst du diverse Einstellungen vornehmen. Hier musst du auch mindestens ein installiertes Theme angeben:
SPLASH_THEMES="arch-black arch-banner-icons arch-banner-noicons"


{| style="border:1px solid #8888aa; background-color:#f7f8ff;padding:5px;font-size:95%;"
{| style="border:1px solid #8888aa; background-color:#f7f8ff;padding:5px;font-size:95%;"
Zeile 34: Zeile 87:
Dieser Artikel (oder Teile davon) steht unter [[GNU Free Documentation License|GNU FDL]] (GNU Freie Dokumentationslizenz). Grundlage für den Inhalt ist der der Artikel [http://gentoo-wiki.stefreak.de/de.gentoo-wiki.com/Fbsplash.html fbsplash] im Gentoo-Wiki.
Dieser Artikel (oder Teile davon) steht unter [[GNU Free Documentation License|GNU FDL]] (GNU Freie Dokumentationslizenz). Grundlage für den Inhalt ist der der Artikel [http://gentoo-wiki.stefreak.de/de.gentoo-wiki.com/Fbsplash.html fbsplash] im Gentoo-Wiki.
|}
|}
[[en:Fbsplash]]
[[es:Fbsplash]]
[[fr:Fbsplash]]
[[it:Fbsplash]]
[[ru:Fbsplash]]
[[tr:Fbsplash]]
[[zh-CN:Fbsplash]]

Version vom 18. August 2019, 13:52 Uhr

Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!


Fbsplash (vormals gensplash) ist eine Userspace-Implementierung eines Startbildschirms für Linux-Systeme. Mit der Linux-Framebuffer-Schicht ermöglicht sie eine grafische Umgebung während der Bootvorgangs. Fbsplash hat das Ziel einfach, leicht und schnell zu sein. Der Code ist auf minimale Boot-Zeit optimiert.

Framebuffer

Ab dem Linux-Kernel 2.2 ist der Framebuffer standardmäßig enthalten. Der Framebuffer ist eine Methode, unter Linux den Grafikspeicher der Grafikkarte anzusprechen. Das Besondere an dieser Methode ist, dass dabei kein speziel an die Grafikkarte angepasster X11-Treiber verwendet wird, sondern dass er selbst den Speicher der Grafikkarte im System repräsentiert und dabei die Koordination über Dateioperationen mit ihr übernimmt. Dazu muss im Linux-Kernel der Framebuffer-Treiber aktiviert sein, so dass die Funktionalität über das Device /dev/fb0 (ist das erste Framebuffer Device, das zweite verwendet /dev/fb1 usw.) zur Verfügung steht. Das ist standardmäßig im Linux-Kernel von Arch Linux der Fall.

Uvesafb

Uvesafb ist ab Version 2.6.24 im Kernel eingepflegt und ersetzt damit den vesafb-tng (ein Erweiterungs-Patch von Michał Januszewski alias spock für den normalen VESA-Framebuffer-Treiber). Mehr Infos dazu auf spocks offizieller Webseite.

Der virtualisierung Daemon

Im Gegensatz zu anderen Framebuffer-Treibern braucht uvesafb einen Userspace-Virtualisierungs-Daemon, genannt v86d. Dieser ist in der extra Repository verfügbar und kann einfach mit pacman installiert werden:

 pacman -S v86d

Danach den v86d irgendwo nach udev und vor keymap in die /etc/mkinitcpio.conf eintragen:

 HOOKS=(base udev v86d ...)

Dann die initramfs mit mkinitcpio neu generieren:

mkinitcpio -p kernel26

Wird ein anderer Kernel benutzt, zum Beispiel mit Fbcondecor, dann den Befehl entsprechend anpassen: mkinitcpio -p kernel26-fbcondecor

Die Kernel-Parameter

Zuerst alle eventuellen Framebuffer-Kernel-Boot-Parameter in der Grub/Lilo-Konfiguration, die sich auf den normalen VESA-Framebuffer-Treiber beziehen, entfernen.

(vga=792 ...)

Die Einstellungen werden stattdessen jetzt in der /etc/modprobe.d/uvesafb.conf (ist ein Teil des obengenannten V86d-Pakets) oder in der allgemeinen /etc/modprobe.d/modprobe.conf vorgenommen. Die uvesafb.conf vom V86d-Paket verrät auch, wo man weitere Infos zum uvesafb nachlesen kann.

# This file sets the parameters for uvesafb module.
# The following format should be used:
# options uvesafb mode=<xres>x<yres>[-<bpp>][@<refresh>] scroll=<ywrap|ypan|redraw> ...
#
# For more details see:
# http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/fb/uvesafb.txt
#
options uvesafb mode=1280x800-32 scroll=ywrap

Ab Kernel .6.27 und höher sieht die Zeile so aus:

options uvesafb mode_option=1280x800-32 scroll=ywrap

Uvesafb als festen Bestandteil des Kernels

Wenn du einen selbst kompilierten Kernel benutzt, in dem du Uvesafb als festen Bestandteil des Kernels statt als Modul eingebunden hast, kann das V86d-Paket auch später gestartet werden (bspw. mittels etc/rc.local) und du musst den Boot-Parameter in der Grub/Lilo-Konfiguration wie folgt anpassen:

video=uvesafb:<options>

Fbsplash

Fbsplash installieren

Installiere fbsplash mit yaourt:

trizen -S fbsplash

Ergänze fbsplash unter DAEMONS in der rc.conf:

DAEMONS=(... fbsplash gpm gdm)

Um fbsplash beim Starten und Runterfahren des Computers zu kontrollieren, bedarf es das initscripts-extras-fbsplash-Paket vom AUR.

trizen -S fbsplash-extras

Themes

Das Fbsplash-Paket selbst bringt kein Aussehen für den Bootvorgang mit, so dass zumindest ein Theme installiert werden muss.

Fertiges Theme

Im AUR findest du einige fertige Themes für Arch Linux, die du mit yaourt installieren kannst. Suche in AUR nach Themes
Hier kommt als Beispiel das "fbsplash-theme-arch-minimal" zum Einsatz.

yaourt -S fbsplash-theme-arch-minimal

Theme selber erstellen

Eine gute Anleitung dazu findet du im Artikel zum Fbsplash des Gentoo-Wikis.

Hintergrund für die Konsole

Mit dem Kernel-Patch Fbcondecor hat auch die Konsole ein schönes Hintergrundbild, sofern dein gewähltes Splash eins mitbringt. Du findest ihn hier im AUR

Fbsplash einrichten

Bootloader konfigurieren

Ergänze den Bootloader in der "Kernel-Zeile" wie folgt:

quiet console=tty1 splash=silent,theme:arch-banner-icons,fadein,fadeout

Fbsplash konfigurieren

In der /etc/conf.d/splash kannst du diverse Einstellungen vornehmen. Hier musst du auch mindestens ein installiertes Theme angeben:

SPLASH_THEMES="arch-black arch-banner-icons arch-banner-noicons"

Dieser Artikel (oder Teile davon) steht unter GNU FDL (GNU Freie Dokumentationslizenz). Grundlage für den Inhalt ist der der Artikel fbsplash im Gentoo-Wiki.