Comment personnaliser le logo de démarrage d'Ubuntu?

57

Je réalise une distribution personnalisée et pose une question sur le logo Ubuntu avec 5 points lors du démarrage.

Le Ubuntu-Logo-Script dans le dossier /lib/plymouth/themes/ubuntutext contient le mot Ubuntu et au-dessous de 5 «points» progressifs. Est-il possible de supprimer les points de la barre de progression et de la remplacer par un logo Ubuntu délavé, qui se colore progressivement jusqu'à son plein?

    
posée Roshan George 28.05.2012 - 17:55
la source

3 réponses

132

Installer le thème

J'ai créé un thème comme vous le souhaitiez avec un logo fané d’Ubuntu (de plus, j’ai ajouté une animation du logo Ubuntu. J'espère que vous l’aimerez :-P)

Capture d'écran

Voulez-vous le voir en direct?

Accédez à lien

Où pouvez-vous trouver ce thème?

Je l’ai téléchargé sur le cloud Mediafire ici .

Comment l’installez-vous?

Téléchargez depuis le lien ci-dessus, enregistrez-le sur votre bureau, puis lancez ces commandes une par une. S'il vous plaît remplacer /lib/plymouth/themes avec /usr/share/plymouth/themes dans les commandes, si vous êtes sur 16.04 ou plus tard.

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

Comment le vérifier?

  1. Redémarrez Ubuntu et vous verrez une belle animation au démarrage et éteindre. OU
  2. Copiez la commande entière ci-dessous et collez-la dans un terminal et appuyez sur Entrée. (Vous devrez probablement installer un paquetage: 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

Comment créer vous-même un thème Plymouth

Plymouth Scripting Language est très similaire à C ou JavaScript. Si vous connaissez ces langues, il sera très facile de créer des scripts Plymouth vous-même.

Commençons par les bases comme les opérateurs, les boucles, les commentaires, etc. Trois types de commentaires sont supportés.

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

Les instructions se terminent par un point-virgule, par exemple

foo = 10;

Les blocs d’instruction peuvent être créés avec des accolades, par exemple

{
    foo = 10;
    z = foo + foo;
}

Les opérateurs pris en charge sont + , - , * , / , % . Les opérateurs d'affectation abrégée sont également pris en charge +=, -=, *=, etc. Les opérateurs unaires sont également pris en charge, par exemple

foo *= ++z;

+ est utilisé pour la concaténation, par exemple

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

Exemple d'opérateur de comparaison:

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

Opérations conditionnelles et boucle:

if (foo > 4)
{
    foo--;
    z = 1;
}
else
    z = 0;


while (foo--)
    z *= foo;

&& , || , ! sont également pris en charge.

if ( foo > 0 && foo <4 )

Cela peut être nouveau pour de nombreux lecteurs: des hachages, similaires aux tableaux. Les hachages peuvent être créés en accédant à leur contenu à l’aide de dot ou de [ ] entre parenthèses, par exemple

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

Utilisez le mot-clé fun pour définir la fonction, par exemple

fun animator (param1, param2, param3)
{
    if (param1 == param2)
        return param2;
    else
        return param3;
}

Les deux objets de base de Plymouth

Image

Pour créer une nouvelle image, donnez le nom de fichier d’une image dans le répertoire du thème à Image() . N'oubliez pas que seuls les fichiers .png sont pris en charge . Par exemple:

background = Image ("black.png"); 

Pour afficher un message texte, vous devez créer un Image du texte. (Cela pourrait vous surprendre.) Par exemple:

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

La largeur et la hauteur peuvent être trouvées en utilisant GetWidth() et GetHeight() ; par exemple:

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

On peut faire pivoter ou modifier la taille d’une image; par exemple:

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

Sprite

Utilisez Sprite pour placer un Image à l'écran.

Créer un Sprite :

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

Ou en fournissant une image à son constructeur,

first_sprite = Sprite (background);

Comment définir différents sprites à différentes positions sur l'écran (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);

Ou vous pouvez tout définir en même temps avec SetPosition() :

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

Changement d'opacité:

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

Les diverses méthodes utilisées sont:

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.

Fonctions prédéfinies

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.

Fonctions mathématiques

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

Il est préférable de modifier un script existant plutôt que de recommencer à zéro.

Ouvrez le fichier .script de mon thème téléchargé et essayez de comprendre ce qu’il fait. Un excellent guide peut être trouvé ici .

Je suis sûr que vous allez apprendre cela. Ce n'est pas difficile Faites-moi savoir si vous avez besoin d'aide.

J'espère que cela vous aidera à en créer un vous-même.

Réponse au commentaire 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

Vous devrez peut-être ajouter sprite.SetZ (-10);

Vous devriez supprimer

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

p, q, r, a, b, c sont des valeurs.

Plus de liens

réponse donnée virpara 30.06.2017 - 23:43
la source
3

Utilisez Plymouth Manager pour changer cela. Vous pouvez l'obtenir de d'ici sur Launchpad ou exécuter les commandes ci-dessous.

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 

Après cela, vous devrez lancer plymouth-manager avec la commande:

sudo plymouth-manager

La commande "magic" si vous voulez tout faire par vous-même (en écrivant votre propre fichier de configuration plymouth) et que vous voulez l'appliquer quand vous êtes prêt:

sudo update-alternatives --config default.plymouth && sudo update-initramfs -u
    
réponse donnée Frantique 05.06.2012 - 15:07
la source
1

J'ai modifié l’écran GRUB avec le logiciel GRUB Customizer. Mais si vous voulez changer l’écran de Plymouth, c’est différent.

Toutes les fonctionnalités de ce logiciel se trouvent dans le répertoire /lib/plymouth/themes et toutes les animations se trouvent dans le fichier /lib/plymouth/themes/ubuntu-logo/ubuntu-logo.script .

Si vous souhaitez modifier à votre guise Plymouth, tout ce dont vous avez besoin est dans le dossier ubuntu-logo .

Vous pouvez le faire vous-même sans l'aide d'un logiciel externe, mais vous devez comprendre la programmation .

Vous pouvez également trouver des outils pour le faire dans le référentiel Ubuntu, mais vous devez apprendre à créer des thèmes Plymouth.

Bonne chance!

    
réponse donnée Lucio 05.06.2012 - 06:12
la source

Lire d'autres questions sur les étiquettes