Addition of and switch to ovos branded splash screen

This commit is contained in:
j1nx 2020-10-11 14:32:29 +02:00
parent 0d1d4beaed
commit bef18116f1
15 changed files with 153 additions and 7 deletions

View File

@ -6,6 +6,7 @@ menu "Mycroft A.I. Personal Assistant"
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/mycroft-gui/Config.in"
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/mycroft-service/Config.in"
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/mycroft-splash/Config.in"
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/ovos-splash/Config.in"
menu "Additional drivers, libraries and/or applications"
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/alsa-plugins/Config.in"
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/baresip/Config.in"

View File

@ -482,7 +482,7 @@ BR2_PACKAGE_PYTHON_MYCROFT=y
BR2_PACKAGE_MYCROFT_EMBEDDED_SHELL=y
BR2_PACKAGE_MYCROFT_GUI=y
BR2_PACKAGE_MYCROFT_SERVICE=y
BR2_PACKAGE_MYCROFT_SPLASH=y
BR2_PACKAGE_OVOS_SPLASH=y
BR2_PACKAGE_ALSA_PLUGINS=y
BR2_PACKAGE_BARESIP=y
BR2_PACKAGE_BTSPEAKER=y

View File

@ -0,0 +1,34 @@
config BR2_PACKAGE_OVOS_SPLASH
bool "ovos-splash"
depends on BR2_USE_WCHAR
help
Show OVOS branded splash screens during
boot/halt process based on psplash.
PSplash is a userspace graphical boot splash screen for
mainly embedded Linux devices supporting a 16bpp or 32bpp
framebuffer. It has few dependencies (just libc), supports
basic images and text and handles rotation. Its visual look
is configurable by basic source changes.
Also included is a 'client' command utility for sending
information to psplash such as boot progress information.
Start the drawing process with 'psplash -n&' as early as
possible. Note: psplash creates a FIFO in /tmp for
communication with psplash-write.
Usage:
* Set progress bar to 50 percent:
psplash-write "PROGRESS 50"
* Display message "foobar" above progress bar:
psplash-write "MSG foobar"
* Terminate psplash:
psplash-write "QUIT"
http://git.yoctoproject.org/cgit/cgit.cgi/psplash/
comment "mycroft-splash needs a toolchain w/ wchar"
depends on !BR2_USE_WCHAR

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -0,0 +1,12 @@
[Unit]
Description=Terminate OVOS splash boot Screen
After=ovos-splash-start.service
After=mycroft-messagebus.service
[Service]
Type=oneshot
ExecStart=/usr/bin/psplash-write QUIT
TimeoutSec=20
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,14 @@
[Unit]
Description=Starts OVOS splash boot screen
Wants=dev-dri-card0.device
After=dev-dri-card0.device
DefaultDependencies=no
[Service]
Type=oneshot
ExecStart=/usr/bin/psplash
RemainAfterExit=yes
Restart=no
[Install]
WantedBy=sysinit.target

View File

@ -0,0 +1,29 @@
################################################################################
#
# ovos-splash
#
################################################################################
OVOS_SPLASH_SOURCE = psplash-0a902f7cd875ccf018456451be369f05fa55f962.tar.gz
OVOS_SPLASH_SITE = http://git.yoctoproject.org/cgit/cgit.cgi/psplash/snapshot
OVOS_SPLASH_LICENSE = GPL-2.0+
OVOS_SPLASH_LICENSE_FILES = COPYING
OVOS_SPLASH_AUTORECONF = YES
define OVOS_SPLASH_INSTALL_INIT_SYSTEMD
$(INSTALL) -D -m 644 $(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/ovos-splash/ovos-splash-start.service \
$(TARGET_DIR)/usr/lib/systemd/system/ovos-splash-start.service
$(INSTALL) -D -m 644 $(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/ovos-splash/ovos-splash-quit.service \
$(TARGET_DIR)/usr/lib/systemd/system/ovos-splash-quit.service
endef
define OVOS_SPLASH_CHANGE_IMAGE
cp $(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/ovos-splash/psplash-colors.h $(@D)
cp $(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/ovos-splash/psplash-config.h $(@D)
cp $(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/ovos-splash/base-images/* $(@D)/base-images/
endef
OVOS_SPLASH_PRE_CONFIGURE_HOOKS += OVOS_SPLASH_CHANGE_IMAGE
$(eval $(autotools-package))

View File

@ -0,0 +1,26 @@
/*
* pslash - a lightweight framebuffer splashscreen for embedded devices.
*
* Copyright (c) 2012 sleep(5) ltd
* Author: Tomas Frydrych <tomas@sleepfive.com>
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
*/
#ifndef _HAVE_PSPLASH_COLORS_H
#define _HAVE_PSPLASH_COLORS_H
/* This is the overall background color */
#define PSPLASH_BACKGROUND_COLOR 0x00,0x00,0x00
/* This is the color of any text output */
#define PSPLASH_TEXT_COLOR 0xff,0xff,0xff
/* This is the color of the progress bar indicator */
#define PSPLASH_BAR_COLOR 0xff,0xff,0xff
/* This is the color of the progress bar background */
#define PSPLASH_BAR_BACKGROUND_COLOR 0x00,0x00,0x00
#endif

View File

@ -0,0 +1,30 @@
/*
* pslash - a lightweight framebuffer splashscreen for embedded devices.
*
* Copyright (c) 2014 MenloSystems GmbH
* Author: Olaf Mandel <o.mandel@menlosystems.com>
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
*/
#ifndef _HAVE_PSPLASH_CONFIG_H
#define _HAVE_PSPLASH_CONFIG_H
/* Text to output on program start; if undefined, output nothing */
#ifndef PSPLASH_DISABLE_STARTUP_MSG
#define PSPLASH_STARTUP_MSG ""
#endif
/* Bool indicating if the image is fullscreen, as opposed to split screen */
#ifndef PSPLASH_IMG_FULLSCREEN
#define PSPLASH_IMG_FULLSCREEN 1
#endif
/* Position of the image split from top edge, numerator of fraction */
#define PSPLASH_IMG_SPLIT_NUMERATOR 6
/* Position of the image split from top edge, denominator of fraction */
#define PSPLASH_IMG_SPLIT_DENOMINATOR 7
#endif

View File

@ -10,9 +10,9 @@ enable seeed-voicecard.service
enable NetworkManager.service
enable wifi-connect.service
enable mycroft-splash-start.service
enable mycroft-splash-40.service
enable mycroft-splash-60.service
enable ovos-splash-start.service
enable ovos-splash-40.service
enable ovos-splash-60.service
enable mycroft.service
enable mycroft-messagebus.service
enable mycroft-voice.service
@ -20,7 +20,7 @@ enable mycroft-audio.service
enable mycroft-skills.service
enable mycroft-enclosure.service
enable mycroft-gui.service
enable mycroft-splash-quit.service
enable ovos-splash-quit.service
disable getty@.service
disable mosquitto.service

View File

@ -1,5 +1,5 @@
[Unit]
Description=Update Mycroft splash boot screen to 40%
Description=Update OVOS splash boot screen to 40%
Wants=NetworkManager.service
After=NetworkManager.service
DefaultDependencies=no

View File

@ -1,5 +1,5 @@
[Unit]
Description=Update Mycroft splash boot screen to 60%
Description=Update OVOS splash boot screen to 60%
Wants=NetworkManager-wait-online.service
After=NetworkManager-wait-online.service
DefaultDependencies=no