Je fais une distribution personnalisée et j'ai une question sur le logo Ubuntu avec 5 points affichés lors du démarrage.
Le Ubuntu-Logo-Script
dans le dossier /lib/plymouth/themes/ubuntutext
contient le mot Ubuntu et sous ces 5 "points" en progression. Est-il possible de supprimer les points de barre de progression et de les remplacer par un logo Ubuntu délavé, qui passe progressivement au maximum?
J'ai créé le thème que vous souhaitiez avec un logo Ubuntu fané (en outre, 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?
Allez à http://www.youtube.com/watch?v=zPo50gM3tx
Où pouvez-vous trouver ce thème?
Je l'ai téléchargé sur le nuage Mediafire ici .
Comment l'installez-vous?
Téléchargez le lien ci-dessus, enregistrez-le sur votre bureau, puis exécutez ces commandes une par une. Veuillez remplacer /lib/plymouth/themes
par /usr/share/plymouth/themes
dans les commandes, si vous utilisez la version 16.04 ou ultérieure.
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 vérifier?
Copiez la commande entière ci-dessous, collez-la dans un terminal et appuyez sur Entrée. (Vous devrez probablement installer un paquet: 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
Plymouth Scripting Language est très similaire à C ou JavaScript. Si vous connaissez ces langues, il sera très facile de créer vous-même des scripts Plymouth.
Commençons par des notions de base telles que les opérateurs, les boucles, les commentaires, etc. Trois types de commentaires sont pris en charge.
# comment like in bash
// single line comment like in C
/* block comments */
Les instructions se terminent par un point-virgule, par ex.
foo = 10;
Les blocs d'instructions peuvent être créés avec des accolades, par ex.
{
foo = 10;
z = foo + foo;
}
Les opérateurs pris en charge sont +
, -
, *
, /
, %
. Les opérateurs d’affectation abrégés 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 bouclage:
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 beaucoup de lecteurs: les hachages, similaires aux tableaux. Les hachages peuvent être créés en accédant à leur contenu en utilisant des crochets dot
ou [ ]
, par exemple.
foo.a = 5;
x = foo["a"] ; # x equals to 5
Utilisez le mot clé fun
pour définir une fonction, par exemple.
fun animator (param1, param2, param3)
{
if (param1 == param2)
return param2;
else
return param3;
}
Pour créer une nouvelle image, attribuez le nom de fichier d'une image du 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
of text. (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 changer 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
Utilisez Sprite
pour placer un Image
à l'écran.
Création d'un Sprite
name__:
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
Changer d'opacité:
faded_Sprite.SetOpacity (0.3);
invisible_Sprite.SetOpacity (0);
Certaines méthodes diverses 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.
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.
Math.Abs()
Math.Min()
Math.Pi()
Math.Cos()
Math.Random()
Math.Int()
etc.
Ouvrez le fichier .script
à partir du thème que vous avez chargé et essayez de comprendre ce qu’il fait. Un guide fantastique peut être trouvé ici .
Je suis sûr que vous allez apprendre ça. Ce n'est pas difficile Faites-moi savoir si vous avez besoin d'aide.
J'espère que cela vous aiderait à 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 enlever
Window.SetBackgroundTopColor (p, q, r);
Window.SetBackgroundBottomColor (a, b, c);
où p, q, r, a, b, c
sont des valeurs.
Plus de liens
Utilisez le gestionnaire de Plymouth pour changer cela. Vous pouvez l’obtenir de à partir 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 "magique" si vous voulez tout faire par vous-même (en écrivant votre propre fichier de configuration de plymouth) et que vous voulez l'appliquer quand vous êtes prêt est:
Sudo update-alternatives --config default.plymouth && Sudo update-initramfs -u
J'ai changé l'écran GRUB avec le logiciel GRUB Customizer. Mais si vous voulez changer l'écran de Plymouth, c'est différent.
Toutes les choses de ce logiciel sont dans le répertoire /lib/plymouth/themes
et toute l'animation de celle-ci est 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!