Показать согласованное фоновое изображение с загрузки grub2 на логин единства для Ubuntu 16.04.3 с графическим процессором Nvidia [dубликат]

Я создаю пользовательский дистрибутив и задаю вопрос о логотипе Ubuntu с 5 точками, отображаемыми при загрузке.

В папке Ubuntu-Logo-Script в папке /lib/plymouth/themes/ubuntutext есть слово Ubuntu и ниже 5 прогрессирующих «точек». Можно ли удалить точки индикатора выполнения и вместо этого заменить его выцветшим логотипом Ubuntu, который постепенно доходит до полного?

57
задан 17 June 2012 в 20:19

13 ответов

Установить тему

Я создал тему, как вы хотели, с выцветшим логотипом Ubuntu (к тому же я добавил анимацию логотипа Ubuntu. Надеюсь, вам понравится :-P)

Снимок экрана

Снимок экрана

Перейти на страницу http://www.youtube.com/watch?v=zPo50gM3txU

Где вы можете получить эту тему?

Я загрузил ее в облако Mediafire http://www.youtube.com/watch?v=zPo50gM3txU .

Где вы можете получить эту тему?

Загрузите из приведенной выше ссылки, сохраните ее на своем рабочем столе, а затем выполните эти команды один за другим. Пожалуйста, замените /lib/plymouth/themes на /usr/share/plymouth/themes в командах, если вы на 16.04 или новее.

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

Как это проверить?

Перезапустите Ubuntu, и вы увидите приятная анимация при загрузке и выключении. ИЛИ Скопируйте всю команду ниже и вставьте ее в терминал и нажмите enter. (Возможно, вам нужно будет установить пакет: 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 или JavaScript. Если вы знаете эти языки, вам будет очень легко создавать скрипты Plymouth.

Давайте начнем с основ, таких как операторы, петли, комментарии и т. Д. Поддерживаются три типа комментариев.

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

Заявления заканчиваются точкой с запятой, например

foo = 10;

Блоки операторов могут быть созданы с фигурными скобками, например

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

Поддерживаемые операторы - + , -, *, /, %. Также поддерживаются операторы присваивания сокращений +=, -=, *=, и т. Д. Унарные операторы также поддерживаются, например

foo *= ++z;

+ используется для конкатенации, например

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

Пример оператора сравнения:

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

Условные операции и циклизация:

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

&&, ||, ! также поддерживаются.

if ( foo > 0 && foo <4 )

Это может быть новым для многих читателей: хэши, похожие на массивы. Хэши могут быть созданы путем доступа к их содержимому с помощью скобок dot или [ ], например

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

Используйте ключевое слово fun для определения функции, например

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

Два основных объекта Plymouth

Изображение

Чтобы создать новое изображение, укажите имя файла в каталоге темы Image(). Помните, поддерживаются только файлы .png. Например:

background = Image ("black.png");

Чтобы отобразить текстовое сообщение, вы должны создать текст Image текста. (Это может вас удивить.) Например:

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

Ширина и высота можно найти с помощью GetWidth() и GetHeight(); например:

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

Можно повернуть или изменить размер изображения; например:

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

Используйте Sprite, чтобы поместить Image на экран.

Создание Sprite:

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

Или, предоставив изображение его конструктору,

first_sprite = Sprite (background);

Как установить различный спрайт в разные положения на экране (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);

Или вы можете установить все сразу с помощью SetPosition():

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

Изменение непрозрачности:

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

Используются разные методы:

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.

Лучше изменить существующий скрипт, чем начинать с нуля.

Откройте файл .script из загруженной темы и попытайтесь понять, что он делает.

Я уверен, что вы это узнаете. Это не сложно. Дайте мне знать, если вам нужна помощь.

поддерживаются только файлы .png

Как это проверить? : 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

Возможно, вам потребуется добавить sprite.SetZ (-10);

Вы должны удалить

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

, где p, q, r, a, b, c - некоторые значения.

Дополнительные ссылки

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
132
ответ дан 18 July 2018 в 04:27

Установить тему

Я создал тему, как вы хотели, с выцветшим логотипом Ubuntu (к тому же я добавил анимацию логотипа Ubuntu. Надеюсь, вам понравится :-P)

Снимок экрана

Снимок экрана

Перейти на страницу http://www.youtube.com/watch?v=zPo50gM3txU

Где вы можете получить эту тему?

Я загрузил ее в облако Mediafire http://www.youtube.com/watch?v=zPo50gM3txU .

Где вы можете получить эту тему?

Загрузите из приведенной выше ссылки, сохраните ее на своем рабочем столе, а затем выполните эти команды один за другим. Пожалуйста, замените /lib/plymouth/themes на /usr/share/plymouth/themes в командах, если вы на 16.04 или новее.

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

Как это проверить?

Перезапустите Ubuntu, и вы увидите приятная анимация при загрузке и выключении. ИЛИ Скопируйте всю команду ниже и вставьте ее в терминал и нажмите enter. (Возможно, вам нужно будет установить пакет: 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 или JavaScript. Если вы знаете эти языки, вам будет очень легко создавать скрипты Plymouth.

Давайте начнем с основ, таких как операторы, петли, комментарии и т. Д. Поддерживаются три типа комментариев.

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

Заявления заканчиваются точкой с запятой, например

foo = 10;

Блоки операторов могут быть созданы с фигурными скобками, например

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

Поддерживаемые операторы - + , -, *, /, %. Также поддерживаются операторы присваивания сокращений +=, -=, *=, и т. Д. Унарные операторы также поддерживаются, например

foo *= ++z;

+ используется для конкатенации, например

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

Пример оператора сравнения:

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

Условные операции и циклизация:

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

&&, ||, ! также поддерживаются.

if ( foo > 0 && foo <4 )

Это может быть новым для многих читателей: хэши, похожие на массивы. Хэши могут быть созданы путем доступа к их содержимому с помощью скобок dot или [ ], например

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

Используйте ключевое слово fun для определения функции, например

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

Два основных объекта Plymouth

Изображение

Чтобы создать новое изображение, укажите имя файла в каталоге темы Image(). Помните, поддерживаются только файлы .png. Например:

background = Image ("black.png");

Чтобы отобразить текстовое сообщение, вы должны создать текст Image текста. (Это может вас удивить.) Например:

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

Ширина и высота можно найти с помощью GetWidth() и GetHeight(); например:

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

Можно повернуть или изменить размер изображения; например:

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

Используйте Sprite, чтобы поместить Image на экран.

Создание Sprite:

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

Или, предоставив изображение его конструктору,

first_sprite = Sprite (background);

Как установить различный спрайт в разные положения на экране (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);

Или вы можете установить все сразу с помощью SetPosition():

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

Изменение непрозрачности:

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

Используются разные методы:

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.

Лучше изменить существующий скрипт, чем начинать с нуля.

Откройте файл .script из загруженной темы и попытайтесь понять, что он делает.

Я уверен, что вы это узнаете. Это не сложно. Дайте мне знать, если вам нужна помощь.

поддерживаются только файлы .png

Как это проверить? : 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

Возможно, вам потребуется добавить sprite.SetZ (-10);

Вы должны удалить

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

, где p, q, r, a, b, c - некоторые значения.

Дополнительные ссылки

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
132
ответ дан 24 July 2018 в 18:05

Установить тему

Я создал тему, как вы хотели, с выцветшим логотипом Ubuntu (к тому же я добавил анимацию логотипа Ubuntu. Надеюсь, вам понравится :-P)

Снимок экрана

Spinning Ubuntu logo and the Ubuntu text logo with a moving fade effect. [/g17]

Хотите увидеть его вживую?

Перейти к http://www.youtube

Я загрузил его в облако Mediafire здесь .

Где вы можете получить эту тему? / g31]

Как его установить?

Загрузите из приведенной выше ссылки, сохраните ее на своем рабочем столе, а затем выполните эти команды по одному. Пожалуйста, замените /lib/plymouth/themes на /usr/share/plymouth/themes в командах, если вы на 16.04 или новее.

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

Как это проверить?

  1. Перезапустите Ubuntu и вы Когда вы загрузитесь и закроетесь, увидите приятную анимацию. ИЛИ
  2. Скопируйте всю команду ниже и вставьте ее в терминал и нажмите enter. (Возможно, вам нужно будет установить пакет: 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 или JavaScript. Если вы знаете эти языки, вам будет очень легко создавать скрипты Плимута.

Давайте начнем с основ, таких как операции, петли, комментарии и т. Д. Поддерживаются три типа комментариев.

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

Заявления заканчиваются точкой с запятой, например

foo = 10;

Блоки операторов могут быть созданы с фигурными скобками, например

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

Поддерживаемыми операторами являются + , -, *, /, %. Также поддерживаются операторы присваивания сокращений +=, -=, *=, и т. Д. Унарные операторы также поддерживаются, например

foo *= ++z;

+ используется для конкатенации, например

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

Пример оператора сравнения:

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

Условные операции и циклизация:

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


while (foo--)
    z *= foo;

&&, ||, ! также поддерживаются.

if ( foo > 0 && foo <4 )

Это может быть новым для многих читателей: хэши, похожие на массивы. Хэши могут быть созданы путем доступа к их содержимому с помощью скобок dot или [ ], например

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

Используйте ключевое слово fun для определения функции, например

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

Два основных объекта Plymouth

Изображение

Чтобы создать новое изображение, укажите имя файла в каталоге темы Image(). Помните, что поддерживаются только файлы .png . . Например:

background = Image ("black.png"); 

Чтобы отобразить текстовое сообщение, вы должны создать текст Image текста. (Это может вас удивить.) Например:

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

Ширина и высота можно найти с помощью GetWidth() и GetHeight(); например:

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

Можно повернуть или изменить размер изображения; например:

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

Используйте Sprite для размещения Image на экране.

Создание Sprite:

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

Или путем подачи изображения на его конструктор,

first_sprite = Sprite (background);

Как установить различный спрайт в разные положения на экране (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);

Или вы можете установить все сразу с помощью SetPosition():

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

Изменение непрозрачности:

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

Некоторые другие используемые методы:

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.

Лучше изменить существующий скрипт, чем начинать с нуля.

Откройте файл .script из загруженной темы и попытайтесь понять, что он делает. Фантастический гид можно найти здесь здесь .

Я уверен, что вы это узнаете. Это не сложно. Дайте мне знать, если вам нужна помощь.

Надеюсь, он поможет вам создать его самостоятельно.

Ответ на комментарий Рошана Джорджа: 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

Возможно, вам потребуется добавить sprite.SetZ (-10);

Вы должны удалить

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

, где p, q, r, a, b, c - некоторые значения.

Дополнительные ссылки

132
ответ дан 31 July 2018 в 21:09

Установить тему

Я создал тему, как вы хотели, с выцветшим логотипом Ubuntu (к тому же я добавил анимацию логотипа Ubuntu. Надеюсь, вам понравится :-P)

Снимок экрана

Spinning Ubuntu logo and the Ubuntu text logo with a moving fade effect. [/g17]

Хотите увидеть его вживую?

Перейти к http://www.youtube

Я загрузил его в облако Mediafire здесь .

Где вы можете получить эту тему? / g31]

Как его установить?

Загрузите из приведенной выше ссылки, сохраните ее на своем рабочем столе, а затем выполните эти команды по одному. Пожалуйста, замените /lib/plymouth/themes на /usr/share/plymouth/themes в командах, если вы на 16.04 или новее.

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

Как это проверить?

  1. Перезапустите Ubuntu и вы Когда вы загрузитесь и закроетесь, увидите приятную анимацию. ИЛИ
  2. Скопируйте всю команду ниже и вставьте ее в терминал и нажмите enter. (Возможно, вам нужно будет установить пакет: 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 или JavaScript. Если вы знаете эти языки, вам будет очень легко создавать скрипты Плимута.

Давайте начнем с основ, таких как операции, петли, комментарии и т. Д. Поддерживаются три типа комментариев.

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

Заявления заканчиваются точкой с запятой, например

foo = 10;

Блоки операторов могут быть созданы с фигурными скобками, например

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

Поддерживаемыми операторами являются + , -, *, /, %. Также поддерживаются операторы присваивания сокращений +=, -=, *=, и т. Д. Унарные операторы также поддерживаются, например

foo *= ++z;

+ используется для конкатенации, например

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

Пример оператора сравнения:

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

Условные операции и циклизация:

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


while (foo--)
    z *= foo;

&&, ||, ! также поддерживаются.

if ( foo > 0 && foo <4 )

Это может быть новым для многих читателей: хэши, похожие на массивы. Хэши могут быть созданы путем доступа к их содержимому с помощью скобок dot или [ ], например

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

Используйте ключевое слово fun для определения функции, например

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

Два основных объекта Plymouth

Изображение

Чтобы создать новое изображение, укажите имя файла в каталоге темы Image(). Помните, что поддерживаются только файлы .png . . Например:

background = Image ("black.png"); 

Чтобы отобразить текстовое сообщение, вы должны создать текст Image текста. (Это может вас удивить.) Например:

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

Ширина и высота можно найти с помощью GetWidth() и GetHeight(); например:

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

Можно повернуть или изменить размер изображения; например:

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

Используйте Sprite для размещения Image на экране.

Создание Sprite:

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

Или путем подачи изображения на его конструктор,

first_sprite = Sprite (background);

Как установить различный спрайт в разные положения на экране (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);

Или вы можете установить все сразу с помощью SetPosition():

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

Изменение непрозрачности:

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

Некоторые другие используемые методы:

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.

Лучше изменить существующий скрипт, чем начинать с нуля.

Откройте файл .script из загруженной темы и попытайтесь понять, что он делает. Фантастический гид можно найти здесь здесь .

Я уверен, что вы это узнаете. Это не сложно. Дайте мне знать, если вам нужна помощь.

Надеюсь, он поможет вам создать его самостоятельно.

Ответ на комментарий Рошана Джорджа: 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

Возможно, вам потребуется добавить sprite.SetZ (-10);

Вы должны удалить

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

, где p, q, r, a, b, c - некоторые значения.

Дополнительные ссылки

132
ответ дан 2 August 2018 в 14:15

Установить тему

Я создал тему, как вы хотели, с выцветшим логотипом Ubuntu (к тому же я добавил анимацию логотипа Ubuntu. Надеюсь, вам понравится :-P)

Снимок экрана

Spinning Ubuntu logo and the Ubuntu text logo with a moving fade effect. [/g17]

Хотите увидеть его вживую?

Перейти к http://www.youtube

Я загрузил его в облако Mediafire здесь .

Где вы можете получить эту тему? / g31]

Как его установить?

Загрузите из приведенной выше ссылки, сохраните ее на своем рабочем столе, а затем выполните эти команды по одному. Пожалуйста, замените /lib/plymouth/themes на /usr/share/plymouth/themes в командах, если вы на 16.04 или новее.

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

Как это проверить?

  1. Перезапустите Ubuntu и вы Когда вы загрузитесь и закроетесь, увидите приятную анимацию. ИЛИ
  2. Скопируйте всю команду ниже и вставьте ее в терминал и нажмите enter. (Возможно, вам нужно будет установить пакет: 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 или JavaScript. Если вы знаете эти языки, вам будет очень легко создавать скрипты Плимута.

Давайте начнем с основ, таких как операции, петли, комментарии и т. Д. Поддерживаются три типа комментариев.

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

Заявления заканчиваются точкой с запятой, например

foo = 10;

Блоки операторов могут быть созданы с фигурными скобками, например

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

Поддерживаемыми операторами являются + , -, *, /, %. Также поддерживаются операторы присваивания сокращений +=, -=, *=, и т. Д. Унарные операторы также поддерживаются, например

foo *= ++z;

+ используется для конкатенации, например

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

Пример оператора сравнения:

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

Условные операции и циклизация:

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


while (foo--)
    z *= foo;

&&, ||, ! также поддерживаются.

if ( foo > 0 && foo <4 )

Это может быть новым для многих читателей: хэши, похожие на массивы. Хэши могут быть созданы путем доступа к их содержимому с помощью скобок dot или [ ], например

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

Используйте ключевое слово fun для определения функции, например

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

Два основных объекта Plymouth

Изображение

Чтобы создать новое изображение, укажите имя файла в каталоге темы Image(). Помните, что поддерживаются только файлы .png . . Например:

background = Image ("black.png"); 

Чтобы отобразить текстовое сообщение, вы должны создать текст Image текста. (Это может вас удивить.) Например:

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

Ширина и высота можно найти с помощью GetWidth() и GetHeight(); например:

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

Можно повернуть или изменить размер изображения; например:

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

Используйте Sprite для размещения Image на экране.

Создание Sprite:

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

Или путем подачи изображения на его конструктор,

first_sprite = Sprite (background);

Как установить различный спрайт в разные положения на экране (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);

Или вы можете установить все сразу с помощью SetPosition():

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

Изменение непрозрачности:

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

Некоторые другие используемые методы:

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.

Лучше изменить существующий скрипт, чем начинать с нуля.

Откройте файл .script из загруженной темы и попытайтесь понять, что он делает. Фантастический гид можно найти здесь здесь .

Я уверен, что вы это узнаете. Это не сложно. Дайте мне знать, если вам нужна помощь.

Надеюсь, он поможет вам создать его самостоятельно.

Ответ на комментарий Рошана Джорджа: 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

Возможно, вам потребуется добавить sprite.SetZ (-10);

Вы должны удалить

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

, где p, q, r, a, b, c - некоторые значения.

Дополнительные ссылки

132
ответ дан 3 August 2018 в 18:26

Установить тему

Я создал тему, как вы хотели, с выцветшим логотипом Ubuntu (к тому же я добавил анимацию логотипа Ubuntu. Надеюсь, вам понравится :-P)

Снимок экрана

Spinning Ubuntu logo and the Ubuntu text logo with a moving fade effect. [/g17]

Хотите увидеть его вживую?

Перейти к http://www.youtube

Я загрузил его в облако Mediafire здесь .

Где вы можете получить эту тему? / g31]

Как его установить?

Загрузите из приведенной выше ссылки, сохраните ее на своем рабочем столе, а затем выполните эти команды по одному. Пожалуйста, замените /lib/plymouth/themes на /usr/share/plymouth/themes в командах, если вы на 16.04 или новее.

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

Как это проверить?

  1. Перезапустите Ubuntu и вы Когда вы загрузитесь и закроетесь, увидите приятную анимацию. ИЛИ
  2. Скопируйте всю команду ниже и вставьте ее в терминал и нажмите enter. (Возможно, вам нужно будет установить пакет: 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 или JavaScript. Если вы знаете эти языки, вам будет очень легко создавать скрипты Плимута.

Давайте начнем с основ, таких как операции, петли, комментарии и т. Д. Поддерживаются три типа комментариев.

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

Заявления заканчиваются точкой с запятой, например

foo = 10;

Блоки операторов могут быть созданы с фигурными скобками, например

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

Поддерживаемыми операторами являются + , -, *, /, %. Также поддерживаются операторы присваивания сокращений +=, -=, *=, и т. Д. Унарные операторы также поддерживаются, например

foo *= ++z;

+ используется для конкатенации, например

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

Пример оператора сравнения:

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

Условные операции и циклизация:

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


while (foo--)
    z *= foo;

&&, ||, ! также поддерживаются.

if ( foo > 0 && foo <4 )

Это может быть новым для многих читателей: хэши, похожие на массивы. Хэши могут быть созданы путем доступа к их содержимому с помощью скобок dot или [ ], например

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

Используйте ключевое слово fun для определения функции, например

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

Два основных объекта Plymouth

Изображение

Чтобы создать новое изображение, укажите имя файла в каталоге темы Image(). Помните, что поддерживаются только файлы .png . . Например:

background = Image ("black.png"); 

Чтобы отобразить текстовое сообщение, вы должны создать текст Image текста. (Это может вас удивить.) Например:

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

Ширина и высота можно найти с помощью GetWidth() и GetHeight(); например:

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

Можно повернуть или изменить размер изображения; например:

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

Используйте Sprite для размещения Image на экране.

Создание Sprite:

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

Или путем подачи изображения на его конструктор,

first_sprite = Sprite (background);

Как установить различный спрайт в разные положения на экране (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);

Или вы можете установить все сразу с помощью SetPosition():

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

Изменение непрозрачности:

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

Некоторые другие используемые методы:

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.

Лучше изменить существующий скрипт, чем начинать с нуля.

Откройте файл .script из загруженной темы и попытайтесь понять, что он делает. Фантастический гид можно найти здесь здесь .

Я уверен, что вы это узнаете. Это не сложно. Дайте мне знать, если вам нужна помощь.

Надеюсь, он поможет вам создать его самостоятельно.

Ответ на комментарий Рошана Джорджа: 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

Возможно, вам потребуется добавить sprite.SetZ (-10);

Вы должны удалить

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

, где p, q, r, a, b, c - некоторые значения.

Дополнительные ссылки

132
ответ дан 5 August 2018 в 03:28

Установить тему

Я создал тему, как вы хотели, с выцветшим логотипом Ubuntu (к тому же я добавил анимацию логотипа Ubuntu. Надеюсь, вам понравится :-P)

Снимок экрана

Spinning Ubuntu logo and the Ubuntu text logo with a moving fade effect. [/g17]

Хотите увидеть его вживую?

Перейти к http://www.youtube

Я загрузил его в облако Mediafire здесь .

Где вы можете получить эту тему? / g31]

Как его установить?

Загрузите из приведенной выше ссылки, сохраните ее на своем рабочем столе, а затем выполните эти команды по одному. Пожалуйста, замените /lib/plymouth/themes на /usr/share/plymouth/themes в командах, если вы на 16.04 или новее.

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

Как это проверить?

  1. Перезапустите Ubuntu и вы Когда вы загрузитесь и закроетесь, увидите приятную анимацию. ИЛИ
  2. Скопируйте всю команду ниже и вставьте ее в терминал и нажмите enter. (Возможно, вам нужно будет установить пакет: 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 или JavaScript. Если вы знаете эти языки, вам будет очень легко создавать скрипты Плимута.

Давайте начнем с основ, таких как операции, петли, комментарии и т. Д. Поддерживаются три типа комментариев.

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

Заявления заканчиваются точкой с запятой, например

foo = 10;

Блоки операторов могут быть созданы с фигурными скобками, например

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

Поддерживаемыми операторами являются + , -, *, /, %. Также поддерживаются операторы присваивания сокращений +=, -=, *=, и т. Д. Унарные операторы также поддерживаются, например

foo *= ++z;

+ используется для конкатенации, например

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

Пример оператора сравнения:

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

Условные операции и циклизация:

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


while (foo--)
    z *= foo;

&&, ||, ! также поддерживаются.

if ( foo > 0 && foo <4 )

Это может быть новым для многих читателей: хэши, похожие на массивы. Хэши могут быть созданы путем доступа к их содержимому с помощью скобок dot или [ ], например

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

Используйте ключевое слово fun для определения функции, например

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

Два основных объекта Plymouth

Изображение

Чтобы создать новое изображение, укажите имя файла в каталоге темы Image(). Помните, что поддерживаются только файлы .png . . Например:

background = Image ("black.png"); 

Чтобы отобразить текстовое сообщение, вы должны создать текст Image текста. (Это может вас удивить.) Например:

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

Ширина и высота можно найти с помощью GetWidth() и GetHeight(); например:

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

Можно повернуть или изменить размер изображения; например:

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

Используйте Sprite для размещения Image на экране.

Создание Sprite:

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

Или путем подачи изображения на его конструктор,

first_sprite = Sprite (background);

Как установить различный спрайт в разные положения на экране (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);

Или вы можете установить все сразу с помощью SetPosition():

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

Изменение непрозрачности:

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

Некоторые другие используемые методы:

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.

Лучше изменить существующий скрипт, чем начинать с нуля.

Откройте файл .script из загруженной темы и попытайтесь понять, что он делает. Фантастический гид можно найти здесь здесь .

Я уверен, что вы это узнаете. Это не сложно. Дайте мне знать, если вам нужна помощь.

Надеюсь, он поможет вам создать его самостоятельно.

Ответ на комментарий Рошана Джорджа: 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

Возможно, вам потребуется добавить sprite.SetZ (-10);

Вы должны удалить

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

, где p, q, r, a, b, c - некоторые значения.

Дополнительные ссылки

132
ответ дан 6 August 2018 в 20:23

Установить тему

Я создал тему, как вы хотели, с выцветшим логотипом Ubuntu (к тому же я добавил анимацию логотипа Ubuntu. Надеюсь, вам понравится :-P)

Снимок экрана

Spinning Ubuntu logo and the Ubuntu text logo with a moving fade effect. [/g17]

Хотите увидеть его вживую?

Перейти к http://www.youtube

Я загрузил его в облако Mediafire здесь .

Где вы можете получить эту тему? / g31]

Как его установить?

Загрузите из приведенной выше ссылки, сохраните ее на своем рабочем столе, а затем выполните эти команды по одному. Пожалуйста, замените /lib/plymouth/themes на /usr/share/plymouth/themes в командах, если вы на 16.04 или новее.

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

Как это проверить?

  1. Перезапустите Ubuntu и вы Когда вы загрузитесь и закроетесь, увидите приятную анимацию. ИЛИ
  2. Скопируйте всю команду ниже и вставьте ее в терминал и нажмите enter. (Возможно, вам нужно будет установить пакет: 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 или JavaScript. Если вы знаете эти языки, вам будет очень легко создавать скрипты Плимута.

Давайте начнем с основ, таких как операции, петли, комментарии и т. Д. Поддерживаются три типа комментариев.

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

Заявления заканчиваются точкой с запятой, например

foo = 10;

Блоки операторов могут быть созданы с фигурными скобками, например

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

Поддерживаемыми операторами являются + , -, *, /, %. Также поддерживаются операторы присваивания сокращений +=, -=, *=, и т. Д. Унарные операторы также поддерживаются, например

foo *= ++z;

+ используется для конкатенации, например

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

Пример оператора сравнения:

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

Условные операции и циклизация:

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


while (foo--)
    z *= foo;

&&, ||, ! также поддерживаются.

if ( foo > 0 && foo <4 )

Это может быть новым для многих читателей: хэши, похожие на массивы. Хэши могут быть созданы путем доступа к их содержимому с помощью скобок dot или [ ], например

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

Используйте ключевое слово fun для определения функции, например

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

Два основных объекта Plymouth

Изображение

Чтобы создать новое изображение, укажите имя файла в каталоге темы Image(). Помните, что поддерживаются только файлы .png . . Например:

background = Image ("black.png"); 

Чтобы отобразить текстовое сообщение, вы должны создать текст Image текста. (Это может вас удивить.) Например:

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

Ширина и высота можно найти с помощью GetWidth() и GetHeight(); например:

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

Можно повернуть или изменить размер изображения; например:

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

Используйте Sprite для размещения Image на экране.

Создание Sprite:

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

Или путем подачи изображения на его конструктор,

first_sprite = Sprite (background);

Как установить различный спрайт в разные положения на экране (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);

Или вы можете установить все сразу с помощью SetPosition():

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

Изменение непрозрачности:

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

Некоторые другие используемые методы:

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.

Лучше изменить существующий скрипт, чем начинать с нуля.

Откройте файл .script из загруженной темы и попытайтесь понять, что он делает. Фантастический гид можно найти здесь здесь .

Я уверен, что вы это узнаете. Это не сложно. Дайте мне знать, если вам нужна помощь.

Надеюсь, он поможет вам создать его самостоятельно.

Ответ на комментарий Рошана Джорджа: 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

Возможно, вам потребуется добавить sprite.SetZ (-10);

Вы должны удалить

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

, где p, q, r, a, b, c - некоторые значения.

Дополнительные ссылки

132
ответ дан 9 August 2018 в 00:47

Установить тему

Я создал тему, как вы хотели, с выцветшим логотипом Ubuntu (к тому же я добавил анимацию логотипа Ubuntu. Надеюсь, вам понравится :-P)

Снимок экрана

Spinning Ubuntu logo and the Ubuntu text logo with a moving fade effect. [/g17]

Хотите увидеть его вживую?

Перейти к http://www.youtube

Я загрузил его в облако Mediafire здесь .

Где вы можете получить эту тему? / g31]

Как его установить?

Загрузите из приведенной выше ссылки, сохраните ее на своем рабочем столе, а затем выполните эти команды по одному. Пожалуйста, замените /lib/plymouth/themes на /usr/share/plymouth/themes в командах, если вы на 16.04 или новее.

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

Как это проверить?

  1. Перезапустите Ubuntu и вы Когда вы загрузитесь и закроетесь, увидите приятную анимацию. ИЛИ
  2. Скопируйте всю команду ниже и вставьте ее в терминал и нажмите enter. (Возможно, вам нужно будет установить пакет: 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 или JavaScript. Если вы знаете эти языки, вам будет очень легко создавать скрипты Плимута.

Давайте начнем с основ, таких как операции, петли, комментарии и т. Д. Поддерживаются три типа комментариев.

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

Заявления заканчиваются точкой с запятой, например

foo = 10;

Блоки операторов могут быть созданы с фигурными скобками, например

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

Поддерживаемыми операторами являются + , -, *, /, %. Также поддерживаются операторы присваивания сокращений +=, -=, *=, и т. Д. Унарные операторы также поддерживаются, например

foo *= ++z;

+ используется для конкатенации, например

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

Пример оператора сравнения:

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

Условные операции и циклизация:

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


while (foo--)
    z *= foo;

&&, ||, ! также поддерживаются.

if ( foo > 0 && foo <4 )

Это может быть новым для многих читателей: хэши, похожие на массивы. Хэши могут быть созданы путем доступа к их содержимому с помощью скобок dot или [ ], например

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

Используйте ключевое слово fun для определения функции, например

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

Два основных объекта Plymouth

Изображение

Чтобы создать новое изображение, укажите имя файла в каталоге темы Image(). Помните, что поддерживаются только файлы .png . . Например:

background = Image ("black.png"); 

Чтобы отобразить текстовое сообщение, вы должны создать текст Image текста. (Это может вас удивить.) Например:

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

Ширина и высота можно найти с помощью GetWidth() и GetHeight(); например:

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

Можно повернуть или изменить размер изображения; например:

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

Используйте Sprite для размещения Image на экране.

Создание Sprite:

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

Или путем подачи изображения на его конструктор,

first_sprite = Sprite (background);

Как установить различный спрайт в разные положения на экране (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);

Или вы можете установить все сразу с помощью SetPosition():

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

Изменение непрозрачности:

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

Некоторые другие используемые методы:

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.

Лучше изменить существующий скрипт, чем начинать с нуля.

Откройте файл .script из загруженной темы и попытайтесь понять, что он делает. Фантастический гид можно найти здесь здесь .

Я уверен, что вы это узнаете. Это не сложно. Дайте мне знать, если вам нужна помощь.

Надеюсь, он поможет вам создать его самостоятельно.

Ответ на комментарий Рошана Джорджа: 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

Возможно, вам потребуется добавить sprite.SetZ (-10);

Вы должны удалить

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

, где p, q, r, a, b, c - некоторые значения.

Дополнительные ссылки

132
ответ дан 14 August 2018 в 19:00

Я изменил экран GRUB с помощью программного обеспечения GRUB Customizer. Но если вы хотите изменить экран Plymouth, это по-другому.

Все вещи этого программного обеспечения находятся в каталоге /lib/plymouth/themes, и вся анимация этого файла находится в файле /lib/plymouth/themes/ubuntu-logo/ubuntu-logo.script.

Если вы хотите изменить по своему вкусу Plymouth, все, что вам нужно, находится в папке ubuntu-logo.

Вы можете сделать это самостоятельно без помощи любого внешнего программного обеспечения, но вы должны понимать программирование.

Также вы можете найти инструменты для этого в репозитории Ubuntu, но вам нужно научиться создавать темы Plymouth.

Удачи!

1
ответ дан 18 July 2018 в 04:27

Используйте Plymouth Manager, чтобы изменить это. Вы можете получить это отсюда на Launchpad или выполнить приведенные ниже команды.

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

После этого вам нужно будет запустить plymouth-manager с помощью команды:

sudo plymouth-manager

«magic», если вы хотите сделать все самостоятельно (написав свой собственный файл конфигурации plymouth), и вы хотите применить его, когда будете готовы:

sudo update-alternatives --config default.plymouth && sudo update-initramfs -u
3
ответ дан 18 July 2018 в 04:27

Я изменил экран GRUB с помощью программного обеспечения GRUB Customizer. Но если вы хотите изменить экран Plymouth, это по-другому.

Все вещи этого программного обеспечения находятся в каталоге /lib/plymouth/themes, и вся анимация этого файла находится в файле /lib/plymouth/themes/ubuntu-logo/ubuntu-logo.script.

Если вы хотите изменить по своему вкусу Plymouth, все, что вам нужно, находится в папке ubuntu-logo.

Вы можете сделать это самостоятельно без помощи любого внешнего программного обеспечения, но вы должны понимать программирование.

Также вы можете найти инструменты для этого в репозитории Ubuntu, но вам нужно научиться создавать темы Plymouth.

Удачи!

1
ответ дан 24 July 2018 в 18:05

Используйте Plymouth Manager, чтобы изменить это. Вы можете получить это отсюда на Launchpad или выполнить приведенные ниже команды.

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

После этого вам нужно будет запустить plymouth-manager с помощью команды:

sudo plymouth-manager

«magic», если вы хотите сделать все самостоятельно (написав свой собственный файл конфигурации plymouth), и вы хотите применить его, когда будете готовы:

sudo update-alternatives --config default.plymouth && sudo update-initramfs -u
3
ответ дан 24 July 2018 в 18:05

Другие вопросы по тегам:

Похожие вопросы: