Forbered splashskærmbillede
Splashskærm håndteres af en beskrivelse kaldet "psplash" fundet under "/workdir/poky-honister/meta-raspberrypi/recipes-core" mappe af kildetræet.
Da "psplash" forventer, at et billede er i header-filformat, skal du først konvertere dit billede til et header-filformat ved hjælp af et script kaldet "make-image-header.sh".
Klon psplash-lagringsstedet
For at få scriptet klones yoctoproject psplash-lagringsstedet – i dette tilfælde til mappen /workdir
git clone https://git.yoctoproject.org/psplash
I psplash-biblioteket finder du scriptet "make-image-header.sh".
Installer bibliotek
Scriptet skal have "libgdk-pixbuf2.0-dev" installeret i systemet. Du kan gøre dette i et andet terminalvindue med:
docker exec -it --user=root crops-poky bash
apt-get install libgdk-pixbuf2.0-dev
exit
Nu kan du bruge scriptet til at konvertere din png-fil til .h-fil
./make-image-header.sh <path-to-png>/psplash-ixlogo.png POKY
Som resultat bør du få en fil med navnet "psplash-ixlogo-img.h". Overskriften ser sådan ud:
/* GdkPixbuf RGBA C-Source image dump 1-byte-run-length-encoded */
#define POKY_IMG_ROWSTRIDE (4080)
#define POKY_IMG_WIDTH (1020)
#define POKY_IMG_HEIGHT (768)
#define POKY_IMG_BYTES_PER_PIXEL (4) /* 3:RGB, 4:RGBA */
#define POKY_IMG_RLE_PIXEL_DATA ((uint8*) \
...
Hvis du vil ændre baggrundsfarven på splashskærmen, kan du tilføje følgende linje:
#define PSPLASH_BACKGROUND_COLOR 0x07,0x85,0x00
Dette indstiller baggrundsfarven til en grøn.
Opret brugerdefineret metalag
For at inkludere det oprettede splashskærmbillede skal vi bruge et brugerdefineret metalag.
Første kilde til rpi-build.
source poky-honister/oe-init-build-env rpi-build
Med "bitbake-layers" opretter vi et nyt metalag og tilføjer dette metalag til conf/bblayers.conf for det aktuelle projekt.
bitbake-layers create-layer meta-interelectronix-rpi
bitbake-layers add-layer meta-interelectronix-rpi
Efter dette kopieres mappen "psplash" fra meta-raspberrypi/recipes-core til det nye metalag:
mkdir meta-interelectronix-rpi/recipes-core
cp -r /workdir/poky-honister/meta-raspberrypi/recipes-core/psplash meta-interelectronix-rpi/recipes-core/
Kopier psplash-ixlogo-img.h til meta-interelectronix-rpi/recipes-core/psplash/files/
cp <path-to-h-file>/psplash-ixlogo-img.h meta-interelectronix-rpi/recipes-core/psplash/files/
Slutteligt redigeres "meta-interelectronix-rpi/recipes-core/psplash/psplash_%.bbappend" og ændres "psplash-raspberrypi-img.h" til "psplash-ixlogo-img.h".
Inkluder psplash
I det sidste trin skal psplash-pakken føjes til projektets local.conf-fil. For at gøre dette redigeres filen /workdir/rpi-build/conf/local.conf
Min local.conf ser sådan ud:
## systemd settings
DISTRO_FEATURES:append = " systemd"
VIRTUAL-RUNTIME:init_manager = "systemd"
VIRTUAL-RUNTIME:initscripts = ""
IMX_DEFAULT_DISTRO_FEATURES:append = " systemd"
## enable some hardware
ENABLE_I2C = "1"
ENABLE_UART = "1"
DISABLE_SPLASH = "1"
DISABLE_RPI_BOOT_LOGO = "1"
IMAGE_INSTALL:append = " psplash"
IMAGE_FEATURES += " splash "
Ophavsretslicens
Copyright © 2022 Interelectronix e.K.
Denne projektkildekode er licenseret under GPL-3.0-licensen.