Mal ein anderes (Boot-)Thema: fade-in

Hier können sich Zauberer, Magier, Hexen und alle Anderen entspannen und über das Leben, das Universum und den ganzen Rest reden.

Es wird um die Einhaltung der Regeln gebeten

Mal ein anderes (Boot-)Thema: fade-in

Beitragvon magru » Dez 15th, '12, 14:26

Nach langer Zeit von Mandriva-Abstinenz bin ich nun bei Mageia (Gnome-Klassik) angelangt. Exif-Fotodaten werden korrekt in Nautilus u. Bildbetrachter angezeigt; der kann sogar Foto-Farbprofile! Alles funktioniert schnell u. zuverlässig (Atom, Ion mit nouveau-drv, LG IPS235).

Ein anderes Boot-Thema, was zur Jahreszeit passt; die Übergänge sind weich, der Verlauf nicht stockend.

Das Thema 'Mandriva-Default' beinhaltet ein Skript (mga.script), was bei mir zeitweise ein 'shutdown'-Aufhäng-Problem machte; s. Zeile mit progressbar9.sprite.SetOpacity(1). progressbar9 ??? Syntax?

Die Kommandos für die Themen-Einstellungen müssen als 'root' im Terminal ausgeführt werden.

Bereits installierte Plymouth-Boot-Themen anzeigen: plymouth-set-default-theme --list

Mögliche Ausgaben sind: details, Mandriva-Default, script, text.

Das eingestellte Standard-Thema anzeigen: plymouth-set-default-theme

'plymouth-theme-fade-in' (per MCC) installieren.

Das gewünschte Thema (hier 'fade-in') als neuen Standard definieren: plymouth-set-default-theme fade-in --rebuild-initrd

Schöne Grüße, Manfred
magru
 
Beiträge: 7
Registriert: Nov 3rd, '12, 19:30

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon alf » Dez 15th, '12, 20:48

Wenn das Plymouth-Theme via MCC installiert wird ist das Setzen des Default-Themes und der rebuild der initrd nicht notwendig, das geschieht automatisch bei der Installation.
Im übrigen glaub ich auch nicht, das -R-switch mit systemd noch funktioniert, der setzt nämlich auf SysV-Init. Beim händischn installieren eine Plymouth-themes wäre dann eher ein
Code: Alles auswählen
dracut -f
nötig.
Das Gehirn ist nicht wie Seife, es wird nicht weniger wenn es benutzt wird. -- Lisa Fitz
Benutzeravatar
alf
 
Beiträge: 2442
Registriert: Jun 1st, '11, 13:39
Wohnort: Paderborn

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon magru » Dez 16th, '12, 07:27

OK, ich hab per MCC mehrere Boot-Themen installiert, da ist das zuletzt installierte automatisch default. Nach Ausführen von 'plymouth-set-default-theme fade-in' als neue Eingabe ein 'dracut -f' (Systemmeld. ident. --rebuild-initrd). Falls man im Thema was geändert hat, wieder 'dracut -f' .
update: Mir ist es trotz Code-Optimierung nicht gelungen, Lade- / Übergangseffekte (Mageia-Default-Thema) auf ein gewünschtes Maß zu reduzieren. Die background.png (487,7 kB) zu laden u. zu skalieren (großer Monitor), benötigt schon etwas Zeit. Alternativ halt ein nur farblich gestalteter Hintergrund mit etwas Animation davor (fade-in, solar).
magru
 
Beiträge: 7
Registriert: Nov 3rd, '12, 19:30

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon alf » Dez 17th, '12, 21:53

magru hat geschrieben:ein 'dracut -f' (Systemmeld. ident. --rebuild-initrd).

sieht so aus als könne man doch(wieder) den -R switch nutzen, /sbin/mkinitrd wird auf /etc/alternatives/mkinitrd verlinkt, was wiederum auf /usr/bin/mkinitrd-dracut verlinkt, welches dann den Aufruf in dracut-Aufrufe umsetzt.

magru hat geschrieben:Die background.png (487,7 kB) zu laden u. zu skalieren (großer Monitor), benötigt schon etwas Zeit

Das Script scheint ein wenig suboptimal gestaltet.
Statt
Code: Alles auswählen
background.image = background.original_image.Scale(Window.GetMaxWidth() , Window.GetMaxHeight());

könntest du mal
Code: Alles auswählen
background.image = background.original_image.Scale(Window.GetWidth() , Window.GetHeight());

versuchen.

magru hat geschrieben:s. Zeile mit progressbar9.sprite.SetOpacity(1). progressbar9 ??? Syntax?

Ein Sprite für progressbar9 ist nicht definiert, also würde ich den Code dafür entfernen.
Statt
Code: Alles auswählen
if (Plymouth.GetMode() == "shutdown") {
  progressbar9.sprite.SetOpacity(1);
} else {
  progressbar1.sprite.SetOpacity(0);
  progressbar2.sprite.SetOpacity(0);
  progressbar3.sprite.SetOpacity(0);
  progressbar4.sprite.SetOpacity(0);
  progressbar5.sprite.SetOpacity(0);
}

evtl.
Code: Alles auswählen
if not (Plymouth.GetMode() == "shutdown") {
#  progressbar9.sprite.SetOpacity(1);
#} else {
  progressbar1.sprite.SetOpacity(0);
  progressbar2.sprite.SetOpacity(0);
  progressbar3.sprite.SetOpacity(0);
  progressbar4.sprite.SetOpacity(0);
  progressbar5.sprite.SetOpacity(0);
}


Achtung: alles nicht getestet, da ich im Augenblick kein Plymouth verwende
Das Gehirn ist nicht wie Seife, es wird nicht weniger wenn es benutzt wird. -- Lisa Fitz
Benutzeravatar
alf
 
Beiträge: 2442
Registriert: Jun 1st, '11, 13:39
Wohnort: Paderborn

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon magru » Dez 18th, '12, 04:35

Erstmal vielen Dank für die Antwort; so macht das Spaß. Plymouth nicht zu benutzen finde ich für mich ok, nur muss ich auch an Leute ganz ohne Systemkenntnisse denken, denen ich Linux 'aufgeschwatzt' habe; da würde ständig bei mir das Telefon klingeln bei soviel rätselhaften Textmeldungen ('Was ist das nun schon wieder!') und Unsicherheit / -zufriedenheit aufkommen (klar, Textmeldungen bekommt man auch ohne Plymouth unterdrückt). Und ordentliches Design wie ein toller Startbildschirm für den 1. Eindruck ist schon sehr wichtig für eine gewisse Akzeptanz beim Nutzer ('Oh, das sieht aber gut aus.').

'Das Script scheint ein wenig suboptimal gestaltet': Gibt leider immer noch keine Plymouth-Dokumentation, nur ein Beispiel-Script, das auch nicht optimal ist. Dadurch wird's für mich aber erst richtig interessant. Hab einen Rumpf fertig, der ordentlich funktioniert und wie ich glaube, vom Code her 'stimmt'. Es sollten u.a. aber auch wichtige Meldungen (Filecheck) angezeigt werden können. Alberto Milone hat für Ubuntu ein ubuntu-logo.script verfasst und mit hilfreichen Kommentaren versehen, davon kann man lernen.

Der Vorschlag mit 'background.image = background.original_image.Scale(Window.GetWidth() , Window.GetHeight());' macht den Ablauf etwas flüssiger.

'SetOpacity(.)' ist recht vielseitig verwendbar: Objekte anzeigen, verbergen, durchsichtig machen; wenn durchsichtig mit Hintergrundfarben verfärben. Falls mein 'Plan' gelingen sollte, wird das Ergebnis hier auf 'SetOpacity(1)' gesetzt.
Zuletzt geändert von magru am Dez 18th, '12, 13:19, insgesamt 1-mal geändert.
magru
 
Beiträge: 7
Registriert: Nov 3rd, '12, 19:30

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon alf » Dez 18th, '12, 11:26

Das Gehirn ist nicht wie Seife, es wird nicht weniger wenn es benutzt wird. -- Lisa Fitz
Benutzeravatar
alf
 
Beiträge: 2442
Registriert: Jun 1st, '11, 13:39
Wohnort: Paderborn

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon magru » Dez 18th, '12, 13:34

Klasse! Nun habe ich erstmal einiges an Material zusammen. Erstmal alles runter geladen und gleich gestaunt. Werde schauen, begutachten und versuchen viel nachzudenken, wie ich das auf meiner eher winzigen "Baustelle" am besten verarbeiten kann. Ich nutze zwar bereits seit Erscheinen von SUSE 6.3 Linux als Haupt-OS, begreife mit meinen fast 60 auch hin und wieder mal was Neues, aber außer allerlei HTML und auch etwas JS hab ich keine tollen Programmierfahrungen; bischen C noch, das hilft. Diese Syntax die JS nahe zu sein scheint -aber sicher bin ich mir nicht-, bringt mich schon ins Grübeln. Nach dem Schauen und Begutachten melde ich mich. (Ich mag KDE eigentlich auch sehr; wenn's doch endlich mal Exif und Co. richtig anzeigen würde. Hab mir ne neue Kamera gekauft, wollte in der Kennenlern-Phase die Wirkung verschiedener Einstellungen ausprobieren, ging nicht richtig. Vor jedem Update -Chakra- die Hoffnung, dass es nun wird, danach... Aber viele Proramme sind spitze.)
magru
 
Beiträge: 7
Registriert: Nov 3rd, '12, 19:30

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon alf » Dez 18th, '12, 21:30

btw. ich hätte da noch eines mit einem pulsierendem Logo, bei Interesse Downloadlink per PM.
Das Gehirn ist nicht wie Seife, es wird nicht weniger wenn es benutzt wird. -- Lisa Fitz
Benutzeravatar
alf
 
Beiträge: 2442
Registriert: Jun 1st, '11, 13:39
Wohnort: Paderborn

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon unklar » Dez 18th, '12, 22:43

magru hat geschrieben:begreife mit meinen fast 60 auch hin und wieder mal was Neues,
Leidensgenosse Bild
El Conkystador (el conquistador = der Sieger) ein Markenzeichen für @Sector11 8-)
unklar
 
Beiträge: 1468
Registriert: Jun 1st, '11, 15:06

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon alf » Dez 18th, '12, 22:48

unklar hat geschrieben:Leidensgenosse Bild


Hat's hier nur alte Knacker? Ne glücklicherweise nicht, Dok ist mal gerade halb so alt :D
Das Gehirn ist nicht wie Seife, es wird nicht weniger wenn es benutzt wird. -- Lisa Fitz
Benutzeravatar
alf
 
Beiträge: 2442
Registriert: Jun 1st, '11, 13:39
Wohnort: Paderborn

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon doktor5000 » Dez 18th, '12, 22:58

alf hat geschrieben:Ne glücklicherweise nicht, Dok ist mal gerade halb so alt :D

:? Physisch vielleicht ...
Ich bin nicht böse, sondern nur ehrlich. Und wer lesen kann, ist klar im Vorteil.
----
Mageia - the magic continues
Benutzeravatar
doktor5000
 
Beiträge: 6055
Registriert: Jun 2nd, '11, 09:39

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon magru » Dez 19th, '12, 13:48

Hallo unklar und alle sonstigen "Leidensgenossen"! ;) Btw. Hat wer 'ne Info über Rollatoren mit integr. Linuxkonsole? :mrgreen:

alf: Der Code Deiner Plymouth-Boot-Themen ist hervorragend. Beim Thema 'mud-waiting' hat's mich vor Lachen fast vom Stuhl gehauen. Mein Favorit ist jedoch 'photos-insects'. Und trotz der recht großen Bilder mit bis 1,6 MB ist der Ablauf recht flüssig. Eigentlich kann man da nichts mehr besser machen, "nur" noch variieren, eigene Bilder einbinden und so. Ich melde mich wg. dem pulsierendem Logo.
Ich habe aber vergessen zu berücksichtigen, dass es beim ersten Boot zwischen einem Monitor z.B. im Bildformat 1280 x 1024 und auf der anderen Seite 1920 x 1080 Unterschiede in der möglichen Farbauflösung gibt; kleinerer Monitor ist dabei besser. Beim Ubuntu-Standard-Thema gibt es extra zwei Sätze von Grafiken (hohe, niedrige Qualität); und mir steht nur niedrig zu bei 1920 x 1080 Bildpunkten. :cry: Dass ich mit meinem Monitor bei Themen mit viel grafischem Beiwerk Übergangs- u. Ladeeffekte beobachte - besonders vorm shutdown: 'waiting for plymouth' ist das auch ärgerlich - damit muss ich also leben, Meckern steht mir sowieso nicht zu. Jedoch mit 'fade-in' ist alles wieder gut.
Daraus folgt, dass bestimmte Boot-Themen Hardware-spezifisch eher ungeeignet sein können. Und für ein Standard-Thema bedeutet das: kleine Grafiken in niedriger Auflösung im Vordergrund; Logo, Ladebalken, Text, Animation per Software; Hintergrund eher nur farblich gestaltet.
Vieles ist mir klarer geworden, anderes eher undurchsichtig. Muss aber ab und zu Pause machen, sonst werd ich noch zur Nachteule.
magru
 
Beiträge: 7
Registriert: Nov 3rd, '12, 19:30

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon alf » Dez 19th, '12, 14:16

magru hat geschrieben:Muss aber ab und zu Pause machen, sonst werd ich noch zur Nachteule.
Ging mir damals nicht anders, das Einarbeiten in die Sprache, das Ausloten der Möglichkeiten, wie kann man was machen? All das hat mir so manche Stunde Schlaf geraubt aber es war auch faszinierend :D

BTW es gibt da auch noch den Plymouth-Theme-Switcher: ftp://ftp.mandrivauser.de/rpm/GPL/2010. ... noarch.rpm
musst dich mit dem Runterladen beeilen, du weißt der Server existiert nicnt mehr lange.
Das Gehirn ist nicht wie Seife, es wird nicht weniger wenn es benutzt wird. -- Lisa Fitz
Benutzeravatar
alf
 
Beiträge: 2442
Registriert: Jun 1st, '11, 13:39
Wohnort: Paderborn

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon magru » Feb 7th, '13, 11:22

Habe ein wenig experimentiert mit Plymouth-Scripten. Großen Dank an Alf für die Hilfe.

U.a. ist ein geändertes Script 'mga.script' entstanden ’/usr/share/plymouth/themes/Mageia-Default/mga.script’, das auf meiner Hardware (Atom-CPU, Ion-GPU (Nvidia) mit Nouveau-Treiber gut funktioniert, also ohne Stockungen durchläuft und etwas Textinformation liefert.

Code: Alles auswählen
# plymouth-boot-theme Mageia-Default -- mod. magru 7. Feb. 2013
# --------------------- background bg -------------------------

background_image = Image("background.png");

scr_w = Window.GetWidth();
scr_h = Window.GetHeight();

bg.Image = background_image.Scale(scr_w, scr_h);

bg.sprite = Sprite(bg.Image);
bg.sprite.SetPosition(0, 0, 0);

# ------------------------ logo lg ----------------------------

logo_image = Image("logo.png");
logo_h = logo_image.GetHeight();

ratio = scr_h / logo_h;

lg_w = logo_image.GetWidth() * ratio;
lg_h = logo_h * ratio;
lg.Image = logo_image.Scale(lg_w, lg_h);

offset_x = scr_w / 2 - lg.Image.GetWidth() / 2;
offset_y = scr_h / 2 - lg.Image.GetHeight() / 2;

lg.sprite = Sprite(lg.Image);
lg.sprite.SetPosition(offset_x, offset_y, 1);

# bubble b, logo + bubbles have same diameters ergo same offset

for (i = 1; i <= 5; i++){
  bubble_image = Image("bubble" + i + ".png");
  b[i].Image = bubble_image.Scale(lg_w, lg_h);
  b[i].sprite = Sprite(b[i].Image);
  b[i].sprite.SetPosition(offset_x, offset_y, i + 1);
  b[i].sprite.SetOpacity(0);
}

# --------------------------- fun -----------------------------
# ----- text-color = 1 / 255 * rgb-code ---- LightSkyBlue -----

message_sprite = Sprite();

fun message_callback(text){
  progress_image = Image.Text(text, 0.53, 0.81, 0.98);
  message_sprite = Sprite(progress_image);
  offset_txt_x = scr_w / 2 - progress_image.GetWidth() / 2;
  message_sprite.SetPosition(offset_txt_x, 30, 7);
}

Plymouth.SetMessageFunction(message_callback);

# ------------------ progressbar halt / boot ------------------

progress_message = Sprite();

fun progress_callback(duration, progress){
  local.time=Math.Int(duration);
  if (Plymouth.GetMode(text) == "shutdown"){
    text = "Linux stoppt  " + time + "s";
    message_callback(text);
  } else {
    text = "Linux startet  " + time + "s";
    message_callback(text);
    if (progress > 0.1){
      b[1].sprite.SetOpacity(1);
    }
    if (progress > 0.3){
      b[2].sprite.SetOpacity(1);
    }
    if (progress > 0.5){
      b[3].sprite.SetOpacity(1);
    }
    if (progress > 0.7){
      b[4].sprite.SetOpacity(1);
    }
    if (progress > 0.9){
      b[5].sprite.SetOpacity(1);
    }
  }
}

Plymouth.SetBootProgressFunction(progress_callback);


Wer es vielleicht mal probieren möchte -bitteschön- sollte sich auskennen, denn Vorsicht: Geht was schief bei der Einrichtung von Plymouth, bootet Mageia evtl. nicht mehr. (Den Code-Abschnitt "Dialog" habe ich weggelassen, benötige ich nicht.)
magru
 
Beiträge: 7
Registriert: Nov 3rd, '12, 19:30

Re: Mal ein anderes (Boot-)Thema: fade-in

Beitragvon alf » Feb 7th, '13, 12:02

magru hat geschrieben:denn Vorsicht: Geht was schief bei der Einrichtung von Plymouth, bootet Mageia evtl. nicht mehr

In dem Falle einfach ein noplymouth in der kernel-command-line mitgegeben sollte Abhilfe schaffen.
Das Gehirn ist nicht wie Seife, es wird nicht weniger wenn es benutzt wird. -- Lisa Fitz
Benutzeravatar
alf
 
Beiträge: 2442
Registriert: Jun 1st, '11, 13:39
Wohnort: Paderborn


Zurück zu Magischer Zirkel (aka Sandkasten)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron