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?
- Redémarrez Ubuntu et vous verrez une belle animation au démarrage et
éteindre. OU
-
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);
où p, q, r, a, b, c
sont des valeurs.
Plus de liens