Commit f7465d3b authored by Anton V. Boyarshinov's avatar Anton V. Boyarshinov

bootsplash changed to plymouth

parent 38204ecd
......@@ -55,14 +55,14 @@ Here you find the graphical boot logo. Suitable for both lilo and syslinux.
Summary: Theme for splash animations during bootup
License: Distributable
Group: System/Configuration/Boot and Init
Provides: design-bootsplash design-bootsplash-%theme branding-alt-%theme-bootsplash
Requires: bootsplash >= 3.3
Obsoletes: branding-alt-%theme-bootsplash
Provides: plymouth-theme-%theme
Requires: plymouth-plugin-script
PreReq: plymouth
Conflicts: %(for n in %variants ; do [ "$n" = %brand-%theme ] || echo -n "branding-$n-bootsplash ";done )
%description bootsplash
This package contains graphics for boot process
(needs console splash screen enabled)
This package contains graphics for boot process, displayed via Plymouth
%package alterator
Summary: Design for alterator for %Brand %Theme
......@@ -316,12 +316,10 @@ shell_config_set /etc/sysconfig/grub2 GRUB_COLOR_HIGHLIGHT %grub_high
#bootsplash
%post bootsplash
%__ln_s -nf %theme %_sysconfdir/bootsplash/themes/current
%preun bootsplash
[ $1 = 0 ] || exit 0
[ "`readlink %_sysconfdir/bootsplash/themes/current`" != %theme ] ||
%__rm -f %_sysconfdir/bootsplash/themes/current
subst "s/Theme=.*/Theme=%theme/" /etc/plymouth/plymouthd.conf
[ -f /etc/sysconfig/grub2 ] && \
subst "s|GRUB_WALLPAPER=.*|GRUB_WALLPAPER=/usr/share/plymouth/themes/%theme/grub.jpg|" \
/etc/sysconfig/grub2 ||:
%post gnome-settings
%gconf2_set string /desktop/gnome/interface/font_name Sans 11
......@@ -338,8 +336,7 @@ shell_config_set /etc/sysconfig/grub2 GRUB_COLOR_HIGHLIGHT %grub_high
%_datadir/design
%files bootsplash
%_sysconfdir/bootsplash/themes/%theme/
%_datadir/plymouth/themes/%theme/*
%files release
%_sysconfdir/*-*
......
......@@ -30,14 +30,15 @@ boot:
cp -a components/bootloader/gfxboot.cfg design-bootloader-source/data-boot/
for size in 1024x768 800x600 640x480; do \
convert images/boot.jpg -quality 97 -resize "$$size!" -fill '#c62530' -font /usr/share/fonts/ttf/dejavu/DejaVuSansCondensed-Bold.ttf -style Normal -weight Normal -pointsize 20 -gravity northeast -draw 'text 25,25 "$(STATUS)"' boot-$$size.jpg ;\
cp -al boot-$$size.jpg components/bootsplash/images/silent-$$size.jpg ;\
convert -resize "$$size!" images/console.jpg components/bootsplash/images/bootsplash-$$size.jpg;\
done
cp -al boot-800x600.jpg design-bootloader-source/data-boot/back.jpg
convert images/boot.png -resize "800x600!" -fill '#c62530' -font /usr/share/fonts/ttf/dejavu/DejaVuSansCondensed-Bold.ttf -style Normal -weight Normal -pointsize 20 -gravity northeast -draw 'text 25,25 "$(STATUS)"' design-bootloader-source/data-install/back.jpg
#bootsplash
mkdir -p $(sysconfdir)/bootsplash/themes/$(THEME)
cp -a components/bootsplash/* $(sysconfdir)/bootsplash/themes/$(THEME)
mkdir -p $(datadir)/plymouth/themes/$(THEME)
cp -al boot-800x600.jpg $(datadir)/plymouth/themes/$(THEME)/grub.jpg
cp -al wallpaper.png $(datadir)/plymouth/themes/$(THEME)/
cp -a components/bootsplash/* $(datadir)/plymouth/themes/$(THEME)
mv $(datadir)/plymouth/themes/$(THEME)/theme.plymouth $(datadir)/plymouth/themes/$(THEME)/$(THEME).plymouth
#bootloader
DEFAULT_LANG='--lang-to-subst--' PATH=$(PATH):/usr/sbin make -C design-bootloader-source
install -d -m 755 $(sysconfdir)/../boot/splash/$(THEME)
......
# This is a bootsplash configuration file for
# ALT Linux, resolution 800x600.
#
# See www.bootsplash.org for more information.
# Written by Jakub Steiner <jimmac@novell.com>
# modified by Sergey V Turchin <zerg@altlinux.org>
# modified by Anton V. Boyarshinov <boyarsh@altlinux.org>
# modified by Sergey Alembekov <rt@altlinux.org>
#
version=3
state=1
progress_enable=1
overpaintok=1
fgcolor=7
bgcolor=0
tx=10
ty=50
tw=780
th=550
jpeg=/etc/bootsplash/themes/@THEME@/images/bootsplash-800x600.jpg
silentjpeg=/etc/bootsplash/themes/@THEME@/images/silent-800x600.jpg
box silent noover 99 370 701 372 #69696760
box silent noover 99 372 701 377 #CCCDCC60
box silent noover 99 377 701 387 #9A9A9A60 #9A9A9A60 #D7D7D760 #D7D7D760
box silent noover 99 387 701 378 #CBCBCC60
box silent inter 100 371 100 377 #@LIGHT_COLOR_HEX@
box silent 100 371 700 377 #@LIGHT_COLOR_HEX@
box silent inter 100 377 100 387 #@DARK_COLOR_HEX@
box silent 100 377 700 387 #@DARK_COLOR_HEX@
trigger "isdown" quit
trigger "rlreached 5" quit
trigger "rlchange 0" tosilent
trigger "rlchange 6" tosilent
# This is a bootsplash configuration file for
# ALT Linux, resolution 800x600.
#
# See www.bootsplash.org for more information.
# Written by Jakub Steiner <jimmac@novell.com>
# modified by Sergey V Turchin <zerg@altlinux.org>
# modified by Anton V. Boyarshinov <boyarsh@altlinux.org>
# modified by Sergey Alembekov <rt@altlinux.org>
#
version=3
state=1
progress_enable=1
overpaintok=1
fgcolor=7
bgcolor=0
tx=10
ty=50
tw=620
th=430
jpeg=/etc/bootsplash/themes/@THEME@/images/bootsplash-640x480.jpg
silentjpeg=/etc/bootsplash/themes/@THEME@/images/silent-640x480.jpg
box silent noover 99 370 541 372 #69696760
box silent noover 99 372 541 377 #CCCDCC60
box silent noover 99 377 541 387 #9A9A9A60 #9A9A9A60 #D7D7D760 #D7D7D760
box silent noover 99 387 541 378 #CBCBCC60
box silent inter 100 371 100 377 #@LIGHT_COLOR_HEX@
box silent 100 371 540 377 #@LIGHT_COLOR_HEX@
box silent inter 100 377 100 387 #@DARK_COLOR_HEX@
box silent 100 377 540 387 #@DARK_COLOR_HEX@
trigger "isdown" quit
trigger "rlreached 5" quit
trigger "rlchange 0" tosilent
trigger "rlchange 6" tosilent
# This is a bootsplash configuration file for
# ALT Linux, resolution 800x600.
#
# See www.bootsplash.org for more information.
# Written by Jakub Steiner <jimmac@novell.com>
# modified by Sergey V Turchin <zerg@altlinux.org>
# modified by Anton V. Boyarshinov <boyarsh@altlinux.org>
# modified by Sergey Alembekov <rt@altlinux.org>
#
version=3
state=1
progress_enable=1
overpaintok=1
fgcolor=7
bgcolor=0
tx=10
ty=50
tw=780
th=550
jpeg=/etc/bootsplash/themes/@THEME@/images/bootsplash-800x600.jpg
silentjpeg=/etc/bootsplash/themes/@THEME@/images/silent-800x600.jpg
box silent noover 99 370 701 372 #69696760
box silent noover 99 372 701 377 #CCCDCC60
box silent noover 99 377 701 387 #9A9A9A60 #9A9A9A60 #D7D7D760 #D7D7D760
box silent noover 99 387 701 378 #CBCBCC60
box silent inter 100 371 100 377 #@LIGHT_COLOR_HEX@
box silent 100 371 700 377 #@LIGHT_COLOR_HEX@
box silent inter 100 377 100 387 #@DARK_COLOR_HEX@
box silent 100 377 700 387 #@DARK_COLOR_HEX@
trigger "isdown" quit
trigger "rlreached 5" quit
trigger "rlchange 0" tosilent
trigger "rlchange 6" tosilent
[Plymouth Theme]
Name=@NAME@
Description=Script for @BRAND_FNAME@ @NAME@
ModuleName=script
[script]
ImageDir=/usr/share/plymouth/themes/@THEME@
ScriptFile=/usr/share/plymouth/themes/@THEME@/theme.script
# This is an example plymouth plugin script
#Window.SetBackgroundTopColor(0.234, 0.43, 0.705);
#Window.SetBackgroundBottomColor(0.16, 0.25, 0.44);
logo.image = Image("wallpaper.png");
logo.sprite = Sprite(logo.image);
logo.opacity_angle = 0;
fun refresh_callback ()
{
if (status == "normal")
{
logo.sprite.SetX (Window.GetX() + Window.GetWidth() / 2 - logo.image.GetWidth() / 2);
logo.sprite.SetY (Window.GetY() + Window.GetHeight() / 2 - logo.image.GetHeight() / 2);
}
else
{
logo.sprite.SetX (0);
logo.sprite.SetY (0);
logo.sprite.SetOpacity (1);
}
}
Plymouth.SetRefreshFunction (refresh_callback);
#----------------------------------------- Dialogue --------------------------------
status = "normal";
fun dialog_setup()
{
local.box;
local.lock;
local.entry;
box.image = Image("box.png");
lock.image = Image("lock.png");
entry.image = Image("entry.png");
box.sprite = Sprite(box.image);
box.x = Window.GetX() + Window.GetWidth() / 2 - box.image.GetWidth ()/2;
box.y = Window.GetY() + Window.GetHeight() / 2 - box.image.GetHeight()/2;
box.z = 10000;
box.sprite.SetPosition(box.x, box.y, box.z);
lock.sprite = Sprite(lock.image);
lock.x = box.x + box.image.GetWidth()/2 - (lock.image.GetWidth() + entry.image.GetWidth()) / 2;
lock.y = box.y + box.image.GetHeight()/2 - lock.image.GetHeight()/2;
lock.z = box.z + 1;
lock.sprite.SetPosition(lock.x, lock.y, lock.z);
entry.sprite = Sprite(entry.image);
entry.x = lock.x + lock.image.GetWidth();
entry.y = box.y + box.image.GetHeight()/2 - entry.image.GetHeight()/2;
entry.z = box.z + 1;
entry.sprite.SetPosition(entry.x, entry.y, entry.z);
global.dialog.box = box;
global.dialog.lock = lock;
global.dialog.entry = entry;
global.dialog.bullet_image = Image("bullet.png");
dialog_opacity (1);
}
fun dialog_opacity(opacity)
{
dialog.box.sprite.SetOpacity (opacity);
dialog.lock.sprite.SetOpacity (opacity);
dialog.entry.sprite.SetOpacity (opacity);
for (index = 0; dialog.bullet[index]; index++)
{
dialog.bullet[index].sprite.SetOpacity(opacity);
}
}
fun display_normal_callback ()
{
global.status = "normal";
if (global.dialog)
dialog_opacity (0);
}
fun display_password_callback (prompt, bullets)
{
global.status = "password";
if (!global.dialog)
dialog_setup();
else
dialog_opacity(1);
for (index = 0; dialog.bullet[index] || index < bullets; index++)
{
if (!dialog.bullet[index])
{
dialog.bullet[index].sprite = Sprite(dialog.bullet_image);
dialog.bullet[index].x = dialog.entry.x + index * dialog.bullet_image.GetWidth();
dialog.bullet[index].y = dialog.entry.y + dialog.entry.image.GetHeight() / 2 - dialog.bullet_image.GetHeight() / 2;
dialog.bullet[index].z = dialog.entry.z + 1;
dialog.bullet[index].sprite.SetPosition(dialog.bullet[index].x, dialog.bullet[index].y, dialog.bullet[index].z);
}
if (index < bullets)
dialog.bullet[index].sprite.SetOpacity(1);
else
dialog.bullet[index].sprite.SetOpacity(0);
}
}
Plymouth.SetDisplayNormalFunction(display_normal_callback);
Plymouth.SetDisplayPasswordFunction(display_password_callback);
#----------------------------------------- Progress Bar --------------------------------
progress_box.image = Image("progress_box.png");
progress_box.sprite = Sprite(progress_box.image);
progress_box.x = Window.GetX() + Window.GetWidth() / 2 - progress_box.image.GetWidth() / 2;
progress_box.y = Window.GetY() + Window.GetHeight() * 0.75 - progress_box.image.GetHeight() / 2;
progress_box.sprite.SetPosition(progress_box.x, progress_box.y, 0);
progress_bar.original_image = Image("progress_bar.png");
progress_bar.sprite = Sprite();
progress_bar.x = Window.GetX() + Window.GetWidth() / 2 - progress_bar.original_image.GetWidth() / 2;
progress_bar.y = Window.GetY() + Window.GetHeight() / 2 * 1.5 - progress_box.image.GetHeight() / 2 + (progress_box.image.GetHeight() - progress_bar.original_image.GetHeight()) / 2;
progress_bar.sprite.SetPosition(progress_bar.x, progress_bar.y, 1);
fun progress_callback (duration, progress)
{
if (progress_bar.image.GetWidth () != Math.Int (progress_bar.original_image.GetWidth () * progress))
{
progress_bar.image = progress_bar.original_image.Scale(progress_bar.original_image.GetWidth(progress_bar.original_image) * progress, progress_bar.original_image.GetHeight());
progress_bar.sprite.SetImage (progress_bar.image);
}
}
Plymouth.SetBootProgressFunction(progress_callback);
#----------------------------------------- Quit --------------------------------
fun quit_callback ()
{
logo.sprite.SetOpacity (1);
}
Plymouth.SetQuitFunction(quit_callback);
#----------------------------------------- Message --------------------------------
message_sprites = [];
message_sprite_count = 0;
message_sprite_y = 10;
fun display_message_callback (text)
{
my_image = Image.Text(text, 1, 1, 1);
message_sprites[message_sprite_count] = Sprite(my_image);
message_sprites[message_sprite_count].SetPosition(10, message_sprite_y, 10000);
message_sprites[message_sprite_count].text = text;
message_sprite_count++;
message_sprite_y += my_image.GetHeight();
}
fun hide_message_callback (text)
{
for (i = 0; i < message_sprite_count; i++)
{
if (message_sprites[i].text == text)
message_sprites[i] = NULL;
}
}
Plymouth.SetDisplayMessageFunction (display_message_callback);
Plymouth.SetHideMessageFunction (hide_message_callback);
......@@ -40,9 +40,7 @@ AC_SUBST(INACTIVE_COLOR)
AC_CONFIG_FILES([
Makefile
components/bootloader/config
components/bootsplash/config/bootsplash-640x480.cfg
components/bootsplash/config/bootsplash-800x600.cfg
components/bootsplash/config/bootsplash-1024x768.cfg
components/bootsplash/theme.plymouth
components/browser-qt/design/design.ini
components/browser-qt/design/design.qss
components/bootloader/gfxboot.cfg
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment