From e8fb93649bbceb314c691493dbc1cda2e7a0ffa6 Mon Sep 17 00:00:00 2001 From: Nippy Date: Sat, 18 Jul 2026 09:31:11 +0200 Subject: new btrfs --- .../usr/share/plymouth/themes/raveos/raveos.script | 127 +++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100644 releng/airootfs/usr/share/plymouth/themes/raveos/raveos.script (limited to 'releng/airootfs/usr/share/plymouth/themes/raveos/raveos.script') diff --git a/releng/airootfs/usr/share/plymouth/themes/raveos/raveos.script b/releng/airootfs/usr/share/plymouth/themes/raveos/raveos.script new file mode 100644 index 0000000..70ee581 --- /dev/null +++ b/releng/airootfs/usr/share/plymouth/themes/raveos/raveos.script @@ -0,0 +1,127 @@ +// RaveOS Plymouth boot splash script (live install medium) + +Window.SetBackgroundTopColor(0.102, 0.106, 0.114); +Window.SetBackgroundBottomColor(0.075, 0.078, 0.086); + +screen_width = Window.GetWidth(); +screen_height = Window.GetHeight(); + +// --- logo: owl icon, centered --- + +owl_image = Image("raveos-owl.png"); +owl_width = owl_image.GetWidth(); +owl_height = owl_image.GetHeight(); + +logo_scale = 0.36; +owl_width = owl_width * logo_scale; +owl_height = owl_height * logo_scale; +owl_image = owl_image.Scale(owl_width, owl_height); + +owl_sprite = Sprite(owl_image); + +owl_x = screen_width / 2 - owl_width / 2; +owl_y = screen_height / 2 - owl_height / 2 - 20; +owl_sprite.SetPosition(owl_x, owl_y, 10); + +// --- status text: pre-rendered PNG cycling by boot progress --- + +status_count = 6; +status_images[0] = Image("status-01.png"); +status_images[1] = Image("status-02.png"); +status_images[2] = Image("status-03.png"); +status_images[3] = Image("status-04.png"); +status_images[4] = Image("status-05.png"); +status_images[5] = Image("status-06.png"); + +status_sprite = Sprite(); +status_sprite.SetZ(10); +status_scale = 0.5; +status_y = owl_y + owl_height + 40; + +seconds_per_stage = 1.2; + +// --- progress dots --- + +dot_lit_image = Image("dot-lit.png"); +dot_dim_image = Image("dot-dim.png"); +dot_scale = 0.35; +dot_size = dot_lit_image.GetWidth() * dot_scale; +dot_gap = 10; +dots_width = status_count * dot_size + (status_count - 1) * dot_gap; +dots_y = status_y + 34; + +for (i = 0; i < status_count; i++) +{ + dot_sprites[i] = Sprite(); + dot_sprites[i].SetZ(10); + dot_sprites[i].SetX(screen_width / 2 - dots_width / 2 + i * (dot_size + dot_gap)); + dot_sprites[i].SetY(dots_y); +} + +fun update_dots(index) +{ + for (i = 0; i < status_count; i++) + { + if (i <= index) + img = dot_lit_image.Scale(dot_size, dot_size); + else + img = dot_dim_image.Scale(dot_size, dot_size); + dot_sprites[i].SetImage(img); + } +} + +fun update_status(index) +{ + if (index >= status_count) + index = status_count - 1; + + img = status_images[index].Scale(status_images[index].GetWidth() * status_scale, + status_images[index].GetHeight() * status_scale); + status_sprite.SetImage(img); + status_sprite.SetX(screen_width / 2 - img.GetWidth() / 2); + status_sprite.SetY(status_y); + + update_dots(index); +} + +update_status(0); + +# "duration" a valos eltelt masodperc a boot ota - ez mindig pontos, +# ellentetben a "progress" becslessel (ami elozo boot-idomeresre tamaszkodik, +# es elso/friss elo boot-nal megbizhatatlan / gyakorlatilag 0-n ragad). +Plymouth.SetBootProgressFunction(fun(duration, progress) +{ + index = Math.Int(duration / seconds_per_stage); + update_status(index); +}); + +// --- password prompt (LUKS unlock) --- + +fun display_password_callback(prompt, bullets) +{ + local.text = prompt; + if (local.text == "") + local.text = "Enter passphrase to unlock disk"; + + prompt_image = Image.Text(local.text, 0.9, 0.9, 0.9, 1, "Ubuntu Mono 11"); + bullets_image = Image.Text(bullets, 0.36, 0.66, 0.32, 1, "Ubuntu Mono 11"); + + prompt_sprite = Sprite(prompt_image); + bullets_sprite = Sprite(bullets_image); + + prompt_sprite.SetPosition(screen_width / 2 - prompt_image.GetWidth() / 2, + screen_height / 2 + 80, 20); + bullets_sprite.SetPosition(screen_width / 2 - bullets_image.GetWidth() / 2, + screen_height / 2 + 110, 20); +} +Plymouth.SetDisplayPasswordFunction(display_password_callback); + +fun display_normal_callback() +{ +} +Plymouth.SetDisplayNormalFunction(display_normal_callback); + +fun quit_callback() +{ +} +Plymouth.SetQuitFunction(quit_callback); -- cgit v1.3