distro: add customization / branding

- replace PRODUCT by NWL in nwl-init-build-env
- add meta-nwl-distro to bblayers.conf.sample
- remove the meta-belden-coreos-demo layers by default
- add some branding

Squashed commit of the following:
commit e3ece0d4f75e6f37accd731f70c0071f3643b62a
commit 3c7e0567e523c6d2951883089e4944aa32d6a150
commit 29065139af735c71478d14c2316af80309bcaa1d

Signed-off-by: Patrick Zysset <patrick.zysset@netmodule.com>
This commit is contained in:
Samuel Dolt 2023-03-10 19:27:52 +01:00 committed by Patrick Zysset
parent c11d0a5044
commit a222bed20e
7 changed files with 109 additions and 19 deletions

View File

@ -0,0 +1,26 @@
# File in the base-files subdirectory of this recipe should overwrite the
# same file in OE-Core
FILESEXTRAPATHS:prepend := "${THISDIR}/base-files:"
BASEFILESISSUEINSTALL = "do_install_coreos_basefilesissue"
do_install_coreos_basefilesissue() {
install -m 644 ${WORKDIR}/issue* ${D}${sysconfdir}
printf "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue
printf "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue.net
printf "${DISTRO_VERSION} " >> ${D}${sysconfdir}/issue
printf "${DISTRO_VERSION} " >> ${D}${sysconfdir}/issue.net
printf "${COREOS_METADATA_BRANCH} " >> ${D}${sysconfdir}/issue
printf "${COREOS_METADATA_BRANCH} " >> ${D}${sysconfdir}/issue.net
printf "${COREOS_METADATA_REVISION} " >> ${D}${sysconfdir}/issue
printf "${COREOS_METADATA_REVISION} " >> ${D}${sysconfdir}/issue.net
printf "\\\n \\\l\n" >> ${D}${sysconfdir}/issue
echo >> ${D}${sysconfdir}/issue
echo "%h" >> ${D}${sysconfdir}/issue.net
echo >> ${D}${sysconfdir}/issue.net
}

View File

@ -0,0 +1,22 @@
_ _ _ ___ ___ _ _
| \\ | | | | | \\/ | | | | |
| \\| | ___| |_| . . | ___ __| |_ _| | ___
| . ` |/ _ \\ __| |\\/| |/ _ \\ / _` | | | | |/ _ \\
| |\\ | __/ |_| | | | (_) | (_| | |_| | | __/
\\_| \\_/\\___|\\__\\_| |_/\\___/ \\__,_|\\__,_|_|\\___|
_ _ _ _
| | | (_) | |
| | | |_ _ __ ___| | ___ ___ ___
| |/\\| | | '__/ _ \\ |/ _ \\/ __/ __|
\\ /\\ / | | | __/ | __/\\__ \\__ \\
\\/ \\/|_|_| \\___|_|\\___||___/___/
_ _
| | (_)
| | _ _ __ _ ___ __
| | | | '_ \\| | | \\ \\/ /
| |___| | | | | |_| |> <
\\_____/_|_| |_|\\__,_/_/\\_\\

View File

@ -0,0 +1,22 @@
_ _ _ ___ ___ _ _
| \\ | | | | | \\/ | | | | |
| \\| | ___| |_| . . | ___ __| |_ _| | ___
| . ` |/ _ \\ __| |\\/| |/ _ \\ / _` | | | | |/ _ \\
| |\\ | __/ |_| | | | (_) | (_| | |_| | | __/
\\_| \\_/\\___|\\__\\_| |_/\\___/ \\__,_|\\__,_|_|\\___|
_ _ _ _
| | | (_) | |
| | | |_ _ __ ___| | ___ ___ ___
| |/\\| | | '__/ _ \\ |/ _ \\/ __/ __|
\\ /\\ / | | | __/ | __/\\__ \\__ \\
\\/ \\/|_|_| \\___|_|\\___||___/___/
_ _
| | (_)
| | _ _ __ _ ___ __
| | | | '_ \\| | | \\ \\/ /
| |___| | | | | |_| |> <
\\_____/_|_| |_|\\__,_/_/\\_\\

View File

@ -0,0 +1,3 @@
# NWL based distro should provide their own implementation of base-file to
# have their custom branding and version info
require ${@'base-files-nwl.inc' if d.getVar('DISTRO') == 'nwl' else ''}

View File

@ -5,31 +5,31 @@
# On some shell, we can get the path of this script when sources. Otherwise we
# use the current directory as a fallback
if [ -z "$PRODUCT_ROOT" ]; then
if [ -z "$NWL_ROOT" ]; then
if [ -n "$BASH_SOURCE" ]; then
PRODUCT_ROOT=$(dirname "$BASH_SOURCE")
NWL_ROOT=$(dirname "$BASH_SOURCE")
elif [ -n "$ZSH_NAME" ]; then
PRODUCT_ROOT=$(dirname "$0")
NWL_ROOT=$(dirname "$0")
else
PRODUCT_ROOT="$(pwd)"
NWL_ROOT="$(pwd)"
fi
fi
# Get a non relative path to the root directory
PRODUCT_ROOT=$(readlink -f "${PRODUCT_ROOT}")
NWL_ROOT=$(readlink -f "${NWL_ROOT}")
# CoreOS init settings
COREOS_ROOT="${PRODUCT_ROOT}/coreos"
TEMPLATECONF="${PRODUCT_ROOT}/templates"
COREOS_ROOT="${NWL_ROOT}/coreos"
TEMPLATECONF="${NWL_ROOT}/templates"
# Call the coreos-init-build-env scripts of CoreOS
. "${COREOS_ROOT}/coreos-init-build-env" "${1:-$PRODUCT_ROOT/build}"
. "${COREOS_ROOT}/coreos-init-build-env" "${1:-$NWL_ROOT/build}"
# From here the scripts and functions defined by CoreOS and
# OpenEmbedded-Core are available
# Add support for ##PRODUCTS_LAYERSDIR## inside of bblayer template
coreos-bblayers-envsub PRODUCT_LAYERSDIR "${PRODUCT_ROOT}/layers"
# Add support for ##NWLS_LAYERSDIR## inside of bblayer template
coreos-bblayers-envsub NWL_LAYERSDIR "${NWL_ROOT}/layers"
# Add the scripts directory of the product to the path
coreos_path_add "${PRODUCT_ROOT}/scripts"
# Add the scripts directory of the NWL to the path
coreos_path_add "${NWL_ROOT}/scripts"

View File

@ -9,7 +9,6 @@ BBLAYERS ?= " \
##OEROOT##/meta \
##COREOS_LAYERSDIR##/meta-belden-coreos \
##COREOS_LAYERSDIR##/meta-belden-coreos-bsp \
##COREOS_LAYERSDIR##/meta-belden-coreos-demo \
##COREOS_LAYERSDIR##/meta-belden-marvell-bsp \
##COREOS_LAYERSDIR##/meta-openembedded/meta-oe \
##COREOS_LAYERSDIR##/meta-openembedded/meta-networking \
@ -19,4 +18,5 @@ BBLAYERS ?= " \
##COREOS_LAYERSDIR##/meta-virtualization \
##COREOS_LAYERSDIR##/meta-efibootguard \
##COREOS_LAYERSDIR##/meta-swupdate \
##NWL_LAYERSDIR##/meta-nwl-distro \
"

View File

@ -1,9 +1,26 @@
____ _ _ _____ ____ _____
| _ \ | | | | / ____| / __ \ / ____|
| |_) | ___| | __| | ___ _ __ | | ___ _ __ ___| | | | (___
| _ < / _ \ |/ _` |/ _ \ '_ \ | | / _ \| '__/ _ \ | | |\___ \
| |_) | __/ | (_| | __/ | | | | |___| (_) | | | __/ |__| |____) |
|____/ \___|_|\__,_|\___|_| |_| \_____\___/|_| \___|\____/|_____/
_ _ _ ___ ___ _ _
| \ | | | | | \/ | | | | |
| \| | ___| |_| . . | ___ __| |_ _| | ___
| . ` |/ _ \ __| |\/| |/ _ \ / _` | | | | |/ _ \
| |\ | __/ |_| | | | (_) | (_| | |_| | | __/
\_| \_/\___|\__\_| |_/\___/ \__,_|\__,_|_|\___|
_ _ _ _
| | | (_) | |
| | | |_ _ __ ___| | ___ ___ ___
| |/\| | | '__/ _ \ |/ _ \/ __/ __|
\ /\ / | | | __/ | __/\__ \__ \
\/ \/|_|_| \___|_|\___||___/___/
_ _
| | (_)
| | _ _ __ _ ___ __
| | | | '_ \| | | \ \/ /
| |___| | | | | |_| |> <
\_____/_|_| |_|\__,_/_/\_\
### Shell environment set up for builds. ###