Saltar al contenido

¿Cómo puedo personalizar el logotipo de arranque de Ubuntu?

No busques más por todo internet ya que llegaste al sitio necesario, contamos con la solución que buscas y sin liarte.

Solución:

Instalar el tema

He creado el tema como querías con un logo de Ubuntu descolorido (además he añadido una animación del logo de Ubuntu. Espero que te guste :-P)

Captura de pantalla

Girando el logotipo de Ubuntu y el logotipo de texto de Ubuntu con un efecto de desvanecimiento en movimiento.

¿Quieres verlo en vivo?

Vaya a http://www.youtube.com/watch?v=zPo50gM3txU

¿Dónde puedes conseguir este tema?

Lo he subido a la nube de Mediafire aquí.

¿Cómo lo instalas?

Descárguelo desde el enlace anterior, guárdelo en su escritorio y luego emita estos comandos uno por uno. Por favor cámbialo /lib/plymouth/themes con /usr/share/plymouth/themes en los comandos, si está en 16.04 o posterior.

cd ~/Desktop/
tar -xf ubuntufaded.tar
sudo cp -r ubuntu-faded-screen '/lib/plymouth/themes'
sudo rm '/lib/plymouth/themes/default.plymouth'
sudo ln -s '/lib/plymouth/themes/ubuntu-faded-screen/ubuntu-faded-screen.plymouth' '/lib/plymouth/themes/default.plymouth'
sudo update-initramfs -u

¿Cómo comprobarlo?

  1. Reinicie Ubuntu y verá una bonita animación mientras se inicia y se apaga. O
  2. Copie todo el comando a continuación y péguelo en una terminal y presione enter. (Probablemente necesitará instalar un paquete: sudo apt-get install plymouth-x11)

    sudo plymouthd --debug --debug-file=/tmp/plymouth-debug-out ; sudo plymouth --show-splash ; for ((I=0;I<10;I++)); do sleep 1 ; sudo plymouth --update=event$I ; done ; sudo plymouth --quit

Cómo crear un tema de Plymouth usted mismo

Plymouth Scripting Language es muy similar a C o JavaScript. Si conoce estos idiomas, será muy fácil crear usted mismo los scripts de Plymouth.

Comencemos con conceptos básicos como operadores, bucles, comentarios, etc. Se admiten tres tipos de comentarios.

# comment like in bash
// single line comment like in C
/* block comments */

Las declaraciones terminan con un punto y coma, p. Ej.

foo = 10;

Los bloques de instrucciones se pueden crear con llaves, p. Ej.


    foo = 10;
    z = foo + foo;

Los operadores admitidos son +, -, *, /, %. También se admiten operadores de asignación taquigráfica +=, -=, *=, También se admiten operadores unarios, p. ej.

foo *= ++z;

+ se utiliza para la concatenación, p. ej.

foo = "Jun" + 7; # here foo is "Jun7"

Ejemplo de operador de comparación:

x = (3 >= 1); # assign 1 to x because it's true
y = ("foo" == "bar"); # assign 0 to y because it's false

Operaciones condicionales y bucle:

if (foo > 4)

    foo--;
    z = 1;

else
    z = 0;


while (foo--)
    z *= foo;

&&, ||, ! también son compatibles.

if ( foo > 0 && foo <4 )

Esto puede ser nuevo para muchos lectores: hashes, similares a las matrices. Se pueden crear hashes accediendo a su contenido usando dot o [ ] soportes, p. ej.

foo.a = 5;
x = foo["a"] ; # x equals to 5

Utilizar el fun palabra clave para definir la función, p. ej.

fun animator (param1, param2, param3)

    if (param1 == param2)
        return param2;
    else
        return param3;

Los dos objetos básicos de Plymouth

Imagen

Para crear una nueva imagen, dé el nombre de archivo de una imagen dentro del directorio del tema a Image(). Recordar, solo se admiten archivos .png. Por ejemplo:

background = Image ("black.png"); 

Para mostrar un mensaje de texto debe crear un Image del texto. (Esto podría sorprenderlo). Por ejemplo:

text_message_image = Image.Text("I love Ubuntu");

El ancho y la altura se pueden encontrar usando GetWidth() y GetHeight(); por ejemplo:

image_area = background.GetWidth() * background.GetHeight();

Se puede rotar o cambiar el tamaño de una imagen; por ejemplo:

down_image = logo_image.Rotate (3.1415); # Image can be Rotated. Parameter to Rotate is the angle in radians
fat_image = background.Scale ( background.GetWidth() * 4 , background.GetHeight () ) # make the image four times the width

Duende

Usar Sprite para colocar un Image en la pantalla.

Creando un Sprite:

first_sprite = Sprite ();
first_sprite.SetImage (background);

O proporcionando imagen a su constructor,

first_sprite = Sprite (background);

Cómo configurar el sprite en diferentes posiciones en la pantalla (x, y, z):

first_sprite.SetX (300); # put at x=300
first_sprite.SetY (200); # put at y=200
background.SetZ(-20);
foreground.SetZ(50);

O puede configurar todo a la vez con SetPosition():

first_sprite.Setposition(300, 200, 50) # put at x=300, y=200, z=50

Cambio de opacidad:

faded_sprite.SetOpacity (0.3);
invisible_sprite.SetOpacity (0);

Algunos métodos diversos utilizados son:

Window.GetWidth();
Window.GetHeight();
Window.SetBackgroundTopColor (0.5, 0, 0); # RGB values between 0 to 1.
Window.SetBackgroundBottomColor (0.4, 0.3, 0.6);
Plymouth.GetMode(); #  returns a string of one of: "boot", "shutdown", "suspend", "resume" or unknown.
etc.

Funciones predefinidas

Plymouth.SetRefreshFunction (function); # Calling Plymouth.SetRefreshFunction with a function will set that function to be called up to 50 times every second
Plymouth.SetBootProgressFunction(); # function is called with two numbers, time spent booting so far and the progress (between 0 and 1)
Plymouth.SetRootMountedFunction(); # function is called when a new root is mounted
Plymouth.SetKeyboardInputFunction(); # function is called with a string containing a new character entered on the keyboard
Plymouth.SetUpdateStatusFunction(); # function is called with the new boot status string
Plymouth.SetDisplayPasswordFunction(); # function is called when the display should display a password dialogue. First param is prompt string, the second is the number of bullets.
Plymouth.SetDisplayQuestionFunction(); # function is called when the display should display a question dialogue. First param is prompt string, the second is the entry contents.
Plymouth.SetDisplayNormalFunction(); # function is called when the display should return to normal
Plymouth.SetMessageFunction(); # function is called when new message should be displayed. First arg is message to display.

Funciones Matemáticas

Math.Abs()
Math.Min()
Math.Pi()
Math.Cos()
Math.Random()
Math.Int()
etc.

Es mejor modificar un script existente que empezar desde cero.

Abrir .script archivo de mi tema cargado y tratar de entender lo que hace. Puede encontrar una guía fantástica aquí.

Estoy seguro de que aprenderá esto. No es dificil. Avísame si necesitas ayuda.

Espero que te ayude a crear uno tú mismo.

Respuesta al comentario de Roshan George :
Is it possible to replace the purple colour with an image as background in the default Plymouth theme names "ubuntu-logo" ?

background = Image ("your-image.png"); 
sprite = Sprite (background.Scale (Window.GetWidth(), Window.GetHeight()));
sprite.SetX (0); # put at x=0
sprite.SetY (0); # put at y=0

Es posible que deba agregar sprite.SetZ (-10);

Deberías eliminar

Window.SetBackgroundTopColor (p, q, r);
Window.SetBackgroundBottomColor (a, b, c);

dónde p, q, r, a, b, c son algunos valores.

Más enlaces

  • https://www.freedesktop.org/wiki/Software/Plymouth/
  • https://www.freedesktop.org/wiki/Software/Plymouth/Scripts/
  • https://www.khattam.info/plymouth-preview-a-tool-to-preview-your-plymouth-theme-2010-11-19.html
  • http://brej.org/blog/?p=158

Utilice el Plymouth Manager para cambiar esto. Puede obtenerlo desde aquí en Launchpad o ejecutar los siguientes comandos.

wget https://launchpad.net/plymouth-manager/trunk/stable/+download/plymouth-manager_1.5.0-1_all.deb
sudo dpkg -i plymouth-manager_1.5.0-1_all.deb 

Después de eso, deberá iniciar plymouth-manager con el comando:

sudo plymouth-manager

El comando "mágico" si desea hacerlo todo usted mismo (escribir su propio archivo de configuración de plymouth) y desea aplicarlo cuando esté listo es:

sudo update-alternatives --config default.plymouth && sudo update-initramfs -u

Ten en cuenta dar visibilidad a esta noticia si te ayudó.

¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 4)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *