Compare commits

..

33 Commits

Author SHA1 Message Date
tkl
a003541cbe recipes-core: Add timezone setting to greenhouse-container-image 2021-04-12 10:16:18 +02:00
tkl
f4669ff409 recipes-core: Add initial bootup script to busybox 2021-04-12 10:10:21 +02:00
tkl
59fb332512 recipes-core: Fix timezone definition for tiny images 2021-04-12 10:01:49 +02:00
tkl
500008e866 conf: Add timezone definition in roro distribution 2021-04-12 10:01:02 +02:00
tkl
1bf85d4b06 recipes-core: Add sudo to dev images 2021-04-07 07:20:48 +02:00
tkl
2ca4554a48 recipes-core: Add recipe for greenhouse container image app 2021-04-07 07:18:51 +02:00
tkl
a448d9a2e5 recipes-app: Add recipe for greenhouse web app 2021-04-07 07:17:42 +02:00
tkl
4f3bd729e6 recipes-devtools: Add recipe for w1thermsensor pypi package 2021-04-07 07:16:22 +02:00
tkl
faaf992e4e conf: Enable autoload for onewire related kernel modules 2021-04-07 07:14:51 +02:00
tkl
03dd24fbe6 buildconf: Enable onewire bus for rpi's 2021-04-07 07:14:07 +02:00
tkl
7a8003e482 recipes-devtools: Fix opkg configuration 2021-04-04 08:40:51 +02:00
tkl
8a02910512 recipes-core: Add recipe for yardlight application container image 2021-03-08 10:07:43 +01:00
tkl
59f576a955 recipes-app: Add recipe for yardlight 2021-03-08 09:59:40 +01:00
tkl
63bf0841e5 recipes-devtools: Add recipe for RPi.GPIO 2021-03-08 09:58:51 +01:00
tkl
dd5a355dd5 recipes-core: Add application container base image 2021-03-05 06:45:21 +01:00
tkl
573653228d recipes-core: Add development image for podman 2021-03-05 06:40:33 +01:00
tkl
a76caf5187 recipes-core: add development image base definition 2021-03-05 06:38:01 +01:00
tkl
0570847e71 roro: Set glibc as c libraty 2021-03-05 06:34:27 +01:00
tkl
de8f190eaa init-ifupdown: Fix interfaces definition for network 2021-02-23 22:08:03 +01:00
tkl
c388421a3f linux-yocto: Fix kernel config in bbappend 2021-02-23 22:06:53 +01:00
tkl
d6b9f930fe opkg: Adapt paths for opkg 2021-02-23 22:04:15 +01:00
tkl
61b2c0a001 busybox: Add hostname propagation for ifup 2021-02-23 21:54:29 +01:00
tkl
497d6aa4e3 Rename docker-image -> docker-host-image 2021-02-04 14:55:27 +01:00
Thomas Klaehn
d698d2f609 images: add podman-host-image 2021-02-04 14:55:27 +01:00
Thomas Klaehn
6c4837b8d8 buildconf: Ad buildconf for quemuarm 2021-01-28 11:27:47 +01:00
Thomas Klaehn
dcc094703d linux-raspberrypi: Version bump 2021-01-28 11:27:47 +01:00
Thomas Klaehn
c7d1761bbb linux-yocto: version bump 2021-01-28 11:27:47 +01:00
Thomas Klaehn
a0e07d0d53 gatesgarth: Version bump 2021-01-28 10:46:54 +01:00
Thomas Klaehn
a70f12921f raspberrypiX-64: use u-boot as bootloader 2020-09-29 21:00:29 +02:00
Thomas Klaehn
cb49dd26c4 meta-blackfinn: Add support for raspberrypi4-64
Signed-off-by: Thomas Klaehn <thomas.klaehn@perinet.io>
2020-09-23 08:22:44 +02:00
Thomas Klaehn
cf1dcbe16d tiny-image(s): exchange openssh server with dropbear 2020-09-22 12:03:49 +02:00
Thomas Klaehn
53cc9f6600 dunfell: Version bump
Signed-off-by: Thomas Klaehn <thomas.klaehn@perinet.io>
2020-09-19 07:42:32 +02:00
Thomas Klaehn
ac03fc9c25 meta-blackfinn: Remove bananapi-m3 support
Signed-off-by: Thomas Klaehn <thomas.klaehn@perinet.io>
2020-09-18 06:22:48 +02:00
52 changed files with 540 additions and 254 deletions

View File

@ -12,9 +12,11 @@ BBLAYERS ?= " \
${TOPDIR}/../layers/meta-openembedded/meta-filesystems \ ${TOPDIR}/../layers/meta-openembedded/meta-filesystems \
${TOPDIR}/../layers/meta-openembedded/meta-oe \ ${TOPDIR}/../layers/meta-openembedded/meta-oe \
${TOPDIR}/../layers/meta-openembedded/meta-networking \ ${TOPDIR}/../layers/meta-openembedded/meta-networking \
${TOPDIR}/../layers/meta-openembedded/meta-perl \
${TOPDIR}/../layers/meta-openembedded/meta-python \ ${TOPDIR}/../layers/meta-openembedded/meta-python \
${TOPDIR}/../layers/meta-virtualization \ ${TOPDIR}/../layers/meta-virtualization \
${TOPDIR}/../layers/meta-raspberrypi \ ${TOPDIR}/../layers/meta-raspberrypi \
${TOPDIR}/../layers/meta-security \
${TOPDIR}/../layers/meta-blackfinn \ ${TOPDIR}/../layers/meta-blackfinn \
" "

View File

@ -1,7 +1,8 @@
Common targets are: Common targets are:
console-image console-image
console-dev-image console-dev-image
docker-image docker-host-image
docker-host-dev-image
tiny-image tiny-image
core-image-minimal core-image-minimal
core-image-sato core-image-sato

View File

@ -42,3 +42,11 @@ SOURCE_MIRROR_URL = "https://files.blackfinn.de/mirror/sources"
BB_GENERATE_MIRROR_TARBALLS = "1" BB_GENERATE_MIRROR_TARBALLS = "1"
export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE DL_DIR" export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE DL_DIR"
ICECC_PARALLEL_MAKE = "-j 24"
INHERIT += "icecc"
ICECC_USER_PACKAGE_BL = "pkgconfig-native \
json-c \
podman \
"

View File

@ -0,0 +1,22 @@
# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
POKY_BBLAYERS_CONF_VERSION = "3"
BBPATH = "${TOPDIR}"
BBFILES ?= ""
BBLAYERS ?= " \
${TOPDIR}/../layers/poky/meta \
${TOPDIR}/../layers/poky/meta-poky \
${TOPDIR}/../layers/poky/meta-yocto-bsp \
${TOPDIR}/../layers/meta-openembedded/meta-filesystems \
${TOPDIR}/../layers/meta-openembedded/meta-oe \
${TOPDIR}/../layers/meta-openembedded/meta-networking \
${TOPDIR}/../layers/meta-openembedded/meta-perl \
${TOPDIR}/../layers/meta-openembedded/meta-python \
${TOPDIR}/../layers/meta-virtualization \
${TOPDIR}/../layers/meta-raspberrypi \
${TOPDIR}/../layers/meta-security \
${TOPDIR}/../layers/meta-blackfinn \
"

View File

@ -1,6 +1,8 @@
Common targets are: Common targets are:
console-image console-image
console-dev-image console-dev-image
docker-host-image
docker-host-dev-image
tiny-image tiny-image
core-image-minimal core-image-minimal
core-image-sato core-image-sato

View File

@ -1,4 +1,4 @@
MACHINE ?= "bananapi-m3" MACHINE ?= "qemuarm"
#DL_DIR ?= "${TOPDIR}/../../downloads" #DL_DIR ?= "${TOPDIR}/../../downloads"
#SSTATE_DIR ?= "${TOPDIR}/../../sstate-cache" #SSTATE_DIR ?= "${TOPDIR}/../../sstate-cache"
@ -13,6 +13,8 @@ PACKAGE_CLASSES ?= "package_ipk"
USER_CLASSES ?= "buildstats image-mklibs image-prelink" USER_CLASSES ?= "buildstats image-mklibs image-prelink"
SERIAL_CONSOLES = "115200;ttyS0"
PATCHRESOLVE = "noop" PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\ BB_DISKMON_DIRS = "\
@ -39,3 +41,10 @@ BB_GENERATE_MIRROR_TARBALLS = "1"
export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE DL_DIR" export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE DL_DIR"
ICECC_PARALLEL_MAKE = "-j 24"
INHERIT += "icecc"
ICECC_USER_PACKAGE_BL = "pkgconfig-native \
json-c \
podman \
"

View File

@ -12,8 +12,10 @@ BBLAYERS ?= " \
${TOPDIR}/../layers/meta-openembedded/meta-filesystems \ ${TOPDIR}/../layers/meta-openembedded/meta-filesystems \
${TOPDIR}/../layers/meta-openembedded/meta-oe \ ${TOPDIR}/../layers/meta-openembedded/meta-oe \
${TOPDIR}/../layers/meta-openembedded/meta-networking \ ${TOPDIR}/../layers/meta-openembedded/meta-networking \
${TOPDIR}/../layers/meta-openembedded/meta-perl \
${TOPDIR}/../layers/meta-openembedded/meta-python \ ${TOPDIR}/../layers/meta-openembedded/meta-python \
${TOPDIR}/../layers/meta-raspberrypi \ ${TOPDIR}/../layers/meta-raspberrypi \
${TOPDIR}/../layers/meta-virtualization \ ${TOPDIR}/../layers/meta-virtualization \
${TOPDIR}/../layers/meta-security \
${TOPDIR}/../layers/meta-blackfinn \ ${TOPDIR}/../layers/meta-blackfinn \
" "

View File

@ -2,7 +2,8 @@ Common targets are:
console-image console-image
console-dev-image console-dev-image
tiny-image tiny-image
docker-image docker-host-image
docker-host-dev-image
core-image-minimal core-image-minimal
core-image-sato core-image-sato
meta-toolchain meta-toolchain

View File

@ -31,6 +31,10 @@ ENABLE_UART = "1"
ENABLE_SPI_BUS = "1" ENABLE_SPI_BUS = "1"
ENABLE_I2C = "1" ENABLE_I2C = "1"
RPI_EXTRA_CONFIG = "dtoverlay=w1-gpio,gpiopin=4"
RPI_USE_U_BOOT = "1"
INHERIT += "rm_work" INHERIT += "rm_work"
INHERIT += "own-mirrors" INHERIT += "own-mirrors"
@ -39,3 +43,10 @@ BB_GENERATE_MIRROR_TARBALLS = "1"
export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE DL_DIR" export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE DL_DIR"
ICECC_PARALLEL_MAKE = "-j 24"
INHERIT += "icecc"
ICECC_USER_PACKAGE_BL = "pkgconfig-native \
json-c \
podman \
"

View File

@ -1,6 +1,6 @@
# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf # POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly # changes incompatibly
POKY_BBLAYERS_CONF_VERSION = "2" POKY_BBLAYERS_CONF_VERSION = "3"
BBPATH = "${TOPDIR}" BBPATH = "${TOPDIR}"
BBFILES ?= "" BBFILES ?= ""
@ -8,9 +8,14 @@ BBFILES ?= ""
BBLAYERS ?= " \ BBLAYERS ?= " \
${TOPDIR}/../layers/poky/meta \ ${TOPDIR}/../layers/poky/meta \
${TOPDIR}/../layers/poky/meta-poky \ ${TOPDIR}/../layers/poky/meta-poky \
${TOPDIR}/../layers/poky/meta-yocto-bsp \
${TOPDIR}/../layers/meta-openembedded/meta-filesystems \
${TOPDIR}/../layers/meta-openembedded/meta-oe \ ${TOPDIR}/../layers/meta-openembedded/meta-oe \
${TOPDIR}/../layers/meta-openembedded/meta-networking \ ${TOPDIR}/../layers/meta-openembedded/meta-networking \
${TOPDIR}/../layers/meta-openembedded/meta-perl \
${TOPDIR}/../layers/meta-openembedded/meta-python \ ${TOPDIR}/../layers/meta-openembedded/meta-python \
${TOPDIR}/../layers/meta-raspberrypi \
${TOPDIR}/../layers/meta-virtualization \
${TOPDIR}/../layers/meta-security \
${TOPDIR}/../layers/meta-blackfinn \ ${TOPDIR}/../layers/meta-blackfinn \
${TOPDIR}/../layers/meta-sunxi \
" "

View File

@ -0,0 +1,12 @@
Common targets are:
console-image
console-dev-image
tiny-image
docker-host-image
docker-host-dev-image
core-image-minimal
core-image-sato
meta-toolchain
adt-installer
meta-ide-support

View File

@ -0,0 +1,52 @@
MACHINE ?= "raspberrypi4-64"
DISTRO ?= "roro"
PACKAGE_CLASSES ?= "package_ipk"
#SDKMACHINE ?= "i686"
#EXTRA_IMAGE_FEATURES ?= "debug-tweaks"
USER_CLASSES ?= "buildstats image-mklibs image-prelink"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\
STOPTASKS,${TMPDIR},1G,100K \
STOPTASKS,${DL_DIR},1G,100K \
STOPTASKS,${SSTATE_DIR},1G,100K \
STOPTASKS,/tmp,100M,100K \
ABORT,${TMPDIR},100M,1K \
ABORT,${DL_DIR},100M,1K \
ABORT,${SSTATE_DIR},100M,1K \
ABORT,/tmp,10M,1K"
#SSTATE_MIRRORS ?= "\
#file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \
#file://.* file:///some/local/dir/sstate/PATH"
CONF_VERSION = "1"
ENABLE_UART = "1"
ENABLE_SPI_BUS = "1"
ENABLE_I2C = "1"
RPI_EXTRA_CONFIG = "dtoverlay=w1-gpio,gpiopin=4"
RPI_USE_U_BOOT = "1"
INHERIT += "rm_work"
INHERIT += "own-mirrors"
SOURCE_MIRROR_URL = "https://files.blackfinn.de/mirror/sources"
BB_GENERATE_MIRROR_TARBALLS = "1"
export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE DL_DIR"
ICECC_PARALLEL_MAKE = "-j 24"
INHERIT += "icecc"
ICECC_USER_PACKAGE_BL = "pkgconfig-native \
json-c \
podman \
"

View File

@ -24,8 +24,15 @@ DISTRO_FEATURES = " \
POKY_DEFAULT_EXTRA_RDEPENDS = "packagegroup-core-boot" POKY_DEFAULT_EXTRA_RDEPENDS = "packagegroup-core-boot"
POKY_DEFAULT_EXTRA_RRECOMMENDS = "kernel-module-af-packet" POKY_DEFAULT_EXTRA_RRECOMMENDS = "kernel-module-af-packet"
# INIT_MANAGER ?= "none"
# INIT_MANAGER ?= "sysvinit"
# INIT_MANAGER ?= "systemd"
INIT_MANAGER ?= "mdev-busybox" INIT_MANAGER ?= "mdev-busybox"
TCLIBC = "musl"
TCLIBC = "glibc"
# TCLIBC = "newlib"
# TCLIBC = "musl"
# TLIBC = "baremetal"
# Disable wide char support for ncurses as we don't include it in # Disable wide char support for ncurses as we don't include it in
# in the LIBC features below. # in the LIBC features below.
@ -33,6 +40,8 @@ TCLIBC = "musl"
ENABLE_WIDEC = "false" ENABLE_WIDEC = "false"
ENABLE_WIDEC_class-native = "true" ENABLE_WIDEC_class-native = "true"
DEFAULT_TIMEZONE = "Europe/Berlin"
# Drop native language support. This removes the # Drop native language support. This removes the
# eglibc->bash->gettext->libc-posix-clang-wchar dependency. # eglibc->bash->gettext->libc-posix-clang-wchar dependency.
USE_NLS="no" USE_NLS="no"
@ -42,3 +51,6 @@ SDK_VERSION := "${@'${DISTRO_VERSION}'.replace('snapshot-${DATE}','snapshot')}"
MAINTAINER = "rorodist " MAINTAINER = "rorodist "
INHERIT += "buildhistory" INHERIT += "buildhistory"
BUILDHISTORY_COMMIT = "1" BUILDHISTORY_COMMIT = "1"
KERNEL_MODULE_AUTOLOAD += "w1-gpio"
KERNEL_MODULE_AUTOLOAD += "w1-therm"

View File

@ -9,7 +9,7 @@ BBFILES += " \
BBFILE_COLLECTIONS += "meta-blackfinn" BBFILE_COLLECTIONS += "meta-blackfinn"
BBFILE_PATTERN_meta-blackfinn = "^${LAYERDIR}/" BBFILE_PATTERN_meta-blackfinn = "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-blackfinn = "11" BBFILE_PRIORITY_meta-blackfinn = "12"
LAYERSERIES_COMPAT_meta-blackfinn = "zeus warrior thud sumo rocko" LAYERSERIES_COMPAT_meta-blackfinn = "gatesgarth dunfell zeus warrior thud sumo rocko"

View File

@ -1,14 +0,0 @@
#@TYPE: Machine
#@NAME: bananapi-m3
#@DESCRIPTION: Machine configuration for the Bananapi M3, based on the
#Allwinner A83T CPU.
require conf/machine/include/sun8i.inc
PREFERRED_VERSION_u-boot = "v2018.09%"
UBOOT_MACHINE = "Sinovoip_BPI_M3_defconfig"
PREFERRED_VERSION_virtual/kernel = "4.20.15"
KERNEL_IMAGETYPE = "zImage"
KERNEL_DEVICETREE = "sun8i-a83t-bananapi-m3.dtb"

View File

@ -0,0 +1,3 @@
#!/bin/sh
gunicorn --bind 0.0.0.0:80 greenhouse:app

View File

@ -0,0 +1,35 @@
SUMMARY = "Greenhouse control"
SECTION = "Applications"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
PR = "r0"
SRCREV = "${AUTOREV}"
SRC_URI = " \
git://git.blackfinn.de/python/greenhouse.git;protocol=https;branch=master \
file://run.sh \
"
S = "${WORKDIR}/git"
do_install_append () {
install -d ${D}/usr/
install -d ${D}/usr/bin/
install -m 0755 ${WORKDIR}/run.sh ${D}/usr/bin/
}
RDEPENDS_${PN} += " \
python3 \
python3-gunicorn \
python3-flask \
rpi.gpio \
w1thermsensor \
"
FILES_${PN} = " \
/usr/bin/run.sh \
"
inherit setuptools3

View File

@ -0,0 +1,3 @@
#!/bin/sh
gunicorn --bind 0.0.0.0:80 weblight:app

View File

@ -0,0 +1,34 @@
SUMMARY = "Yardlight switcher with web ui"
SECTION = "Applications"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
PR = "r0"
SRCREV = "${AUTOREV}"
SRC_URI = " \
git://git.blackfinn.de/python/weblight.git;protocol=https;branch=master \
file://run.sh \
"
S = "${WORKDIR}/git"
do_install_append () {
install -d ${D}/usr/
install -d ${D}/usr/bin/
install -m 0755 ${WORKDIR}/run.sh ${D}/usr/bin/
}
RDEPENDS_${PN} += "\
python3 \
python3-gunicorn \
python3-flask \
rpi.gpio \
"
FILES_${PN} = " \
/usr/bin/run.sh \
"
inherit setuptools3

View File

@ -1,9 +0,0 @@
do_install_append () {
install -d ${D}${sysconfdir}/
install -d ${D}${sysconfdir}/rcS.d/
cd ${D}${sysconfdir}/rcS.d/
ln -s ../init.d/sshd S47sshd.sh
}

View File

@ -1,5 +1,13 @@
LICENSE = "GPLv2" LICENSE = "GPLv2"
FILESEXTRAPATHS_prepend := "${THISDIR}/files:" FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
SRC_URI += " file://docker.init" SRC_URI += " \
file://docker.init \
file://daemon.json \
"
do_install_append() {
install -d ${D}${sysconfdir}/
install -d ${D}${sysconfdir}/docker/
install -m 0600 ${WORKDIR}/daemon.json ${D}${sysconfdir}/docker/
}

View File

@ -0,0 +1,5 @@
{
"ipv6": true,
"fixed-cidr-v6": "2001:db8:1::/64"
}

View File

@ -1,12 +0,0 @@
______ _ ___ ___ _____
| ___ \ (_) | \/ ||____ |
| |_/ / __ _ _ __ __ _ _ __ __ _ _ __ _ | . . | / /
| ___ \/ _` | '_ \ / _` | '_ \ / _` | '_ \| | | |\/| | \ \
| |_/ / (_| | | | | (_| | | | | (_| | |_) | | | | | |.___/ /
\____/ \__,_|_| |_|\__,_|_| |_|\__,_| .__/|_| \_| |_/\____/
| |
|_|

View File

@ -1,11 +1,11 @@
LICENSE = "GPLv2" LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6" LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
#file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
FILESEXTRAPATHS_prepend := "${THISDIR}/files:" FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
SRC_URI += " \ SRC_URI += " \
file://S20load_modules.sh \ file://S20load_modules.sh \
file://S99firstboot.sh \
file://S49cgroups_mount.sh \ file://S49cgroups_mount.sh \
file://ntp.conf \ file://ntp.conf \
file://ntpd \ file://ntpd \
@ -18,11 +18,12 @@ do_install_append () {
install -m 0644 ${WORKDIR}/ntp.conf ${D}${sysconfdir} install -m 0644 ${WORKDIR}/ntp.conf ${D}${sysconfdir}
install -m 0755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d/ install -m 0755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d/
install -m 0755 ${WORKDIR}/S20load_modules.sh ${D}${sysconfdir}/rcS.d/ install -m 0755 ${WORKDIR}/S20load_modules.sh ${D}${sysconfdir}/rcS.d/
install -m 0755 ${WORKDIR}/S99firstboot.sh ${D}${sysconfdir}/rcS.d/
install -m 0755 ${WORKDIR}/S49cgroups_mount.sh ${D}${sysconfdir}/rcS.d/ install -m 0755 ${WORKDIR}/S49cgroups_mount.sh ${D}${sysconfdir}/rcS.d/
cd ${D}${sysconfdir}/rcS.d/ cd ${D}${sysconfdir}/rcS.d/
ln -s ../init.d/networking S40networking.sh ln -s ../init.d/networking S40networking.sh
ln -s ../init.d/dropbear S47dropbear.sh
ln -s ../init.d/ntpd S48ntpd.sh ln -s ../init.d/ntpd S48ntpd.sh
ln -s ../init.d/docker.init S50docker.sh ln -s ../init.d/docker.init S50docker.sh
} }

View File

@ -0,0 +1,110 @@
#!/bin/sh
function generate_hostname() {
mac=$( ifconfig |grep eth0 | grep -io '[0-9a-f:]\{15\}[0-9a-f]\{2\}' )
mac=${mac//:}
nic=${mac:6}
nic=$(( 16#$nic ))
let length=32
for i in 4 3 2 1 0; do
let div=$length**$i
let idx=$nic/$div
let nic=$nic%$div
if [ $idx = 0 ] ; then
res=a
elif [ $idx = 1 ] ; then
res=b
elif [ $idx = 2 ] ; then
res=c
elif [ $idx = 3 ] ; then
res=d
elif [ $idx = 4 ] ; then
res=e
elif [ $idx = 5 ] ; then
res=f
elif [ $idx = 6 ] ; then
res=g
elif [ $idx = 7 ] ; then
res=h
elif [ $idx = 8 ] ; then
res=i
elif [ $idx = 9 ] ; then
res=j
elif [ $idx = 10 ] ; then
res=k
elif [ $idx = 11 ] ; then
res=m
elif [ $idx = 12 ] ; then
res=n
elif [ $idx = 13 ] ; then
res=p
elif [ $idx = 14 ] ; then
res=q
elif [ $idx = 15 ] ; then
res=r
elif [ $idx = 16 ] ; then
res=s
elif [ $idx = 17 ] ; then
res=t
elif [ $idx = 18 ] ; then
res=u
elif [ $idx = 19 ] ; then
res=v
elif [ $idx = 20 ] ; then
res=w
elif [ $idx = 21 ] ; then
res=x
elif [ $idx = 22 ] ; then
res=y
elif [ $idx = 23 ] ; then
res=z
elif [ $idx = 24 ] ; then
res=2
elif [ $idx = 25 ] ; then
res=3
elif [ $idx = 26 ] ; then
res=4
elif [ $idx = 27 ] ; then
res=5
elif [ $idx = 28 ] ; then
res=6
elif [ $idx = 29 ] ; then
res=7
elif [ $idx = 30 ] ; then
res=8
elif [ $idx = 31 ] ; then
res=8
fi
basex="$basex${res}"
done
old_hostname=$( cat /etc/hostname )
new_hostname=unknown-$basex
if [ $old_hostname = raspberrypi3-64 ]
then
new_hostname=rpi3-$basex
fi
if [ $old_hostname = raspberrypi4-64 ]
then
new_hostname=rpi3-$basex
fi
echo $new_hostname > /etc/hostname
}
FLAG="/var/local/firstboot.log"
if [ ! -f $FLAG ]; then
echo "First boot"
touch $FLAG
generate_hostname
generate_avahi_service
reboot
fi

View File

@ -3,3 +3,4 @@ CONFIG_FEATURE_NTPD_SERVER=y
CONFIG_FEATURE_NTPD_CONF=y CONFIG_FEATURE_NTPD_CONF=y
CONFIG_FEATURE_NTP_AUTH=y CONFIG_FEATURE_NTP_AUTH=y
CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -b -H $HOSTNAME"

View File

@ -0,0 +1,22 @@
SUMMARY = "A minimal container image"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
PREFERRED_PROVIDER_virtual/kernel = "linux-dummy"
IMAGE_FSTYPES = "container oci"
inherit image
inherit image-oci
IMAGE_FEATURES = ""
IMAGE_LINGUAS = ""
NO_RECOMMENDATIONS = "1"
IMAGE_CONTAINER_NO_DUMMY = "0"
IMAGE_INSTALL = " \
base-files \
base-passwd \
netbase \
"

View File

@ -74,7 +74,6 @@ IMAGE_INSTALL += " \
" "
IMAGE_INSTALL_append_beaglebone-yocto = " linux-firmware-rtl8192cu" IMAGE_INSTALL_append_beaglebone-yocto = " linux-firmware-rtl8192cu"
IMAGE_INSTALL_append_bananapi-m3 += " linux-firmware-bcm43430"
set_local_timezone() { set_local_timezone() {
ln -sf /usr/share/zoneinfo/Europe/Berlin ${IMAGE_ROOTFS}/etc/localtime ln -sf /usr/share/zoneinfo/Europe/Berlin ${IMAGE_ROOTFS}/etc/localtime

View File

@ -0,0 +1,6 @@
IMAGE_INSTALL_append = " \
git \
sudo \
vim \
"

View File

@ -0,0 +1,9 @@
SUMMARY = "Development image for docker host system"
HOMEPAGE = "https://blackfinn.de"
LICENSE = "MIT"
require docker-host-image.bb
require dev-image.inc
export IMAGE_BASENAME = "docker-host-dev-image"

View File

@ -10,5 +10,5 @@ EXTRA_USERS_PARAMS += " \
usermod -a -G docker tkl \ usermod -a -G docker tkl \
" "
export IMAGE_BASENAME = "docker-image" export IMAGE_BASENAME = "docker-host-image"

View File

@ -0,0 +1,23 @@
SUMMARY = "Greenhouse container image"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require app-container-image.bb
IMAGE_INSTALL += " \
busybox \
busybox-initcfg \
greenhouse \
tzdata \
"
# docker run
# --detach
# --restart always
# --cap-add SYS_RAWIO
# --device=/dev/mem:/dev/mem
# --device=/dev/gpiomem:/dev/gpiomem
# --publish 80:80
# --name greenhouse
# greenhouse
# run.sh

View File

@ -0,0 +1,8 @@
SUMMARY = "A tiny image"
HOMEPAGE = "https://blackfinn.de"
LICENSE = "MIT"
require podman-host-image.bb
require dev-image.inc
export IMAGE_BASENAME = "podman-host-dev-image"

View File

@ -0,0 +1,15 @@
SUMMARY = "A tiny image"
HOMEPAGE = "https://blackfinn.de"
LICENSE = "MIT"
require tiny-image-base.inc
IMAGE_INSTALL_append = " \
initscripts \
init-ifupdown \
podman \
podman-compose \
cgroup-lite \
"
export IMAGE_BASENAME = "podman-host-image"

View File

@ -6,9 +6,7 @@ IMAGE_FEATURES += "package-management"
CORE_OS = " \ CORE_OS = " \
busybox-initcfg \ busybox-initcfg \
openssh \ dropbear \
openssh-keygen \
openssh-sftp-server \
psplash \ psplash \
tzdata \ tzdata \
" "
@ -32,18 +30,11 @@ IMAGE_INSTALL += " \
" "
IMAGE_INSTALL_append_beaglebone-yocto = " linux-firmware-rtl8192cu" IMAGE_INSTALL_append_beaglebone-yocto = " linux-firmware-rtl8192cu"
IMAGE_INSTALL_append_bananapi-m3 += " linux-firmware-bcm43430"
set_local_timezone() {
ln -sf /usr/share/zoneinfo/Europe/Berlin ${IMAGE_ROOTFS}/etc/localtime
}
disable_bootlogd() { disable_bootlogd() {
echo BOOTLOGD_ENABLE=no > ${IMAGE_ROOTFS}/etc/default/bootlogd echo BOOTLOGD_ENABLE=no > ${IMAGE_ROOTFS}/etc/default/bootlogd
} }
ROOTFS_POSTPROCESS_COMMAND += " \ ROOTFS_POSTPROCESS_COMMAND += " \
set_local_timezone ; \
disable_bootlogd ; \ disable_bootlogd ; \
" "

View File

@ -0,0 +1,21 @@
SUMMARY = "Busybox container image"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require app-container-image.bb
IMAGE_INSTALL += " \
busybox \
yardlight \
"
# docker run
# --detach
# --restart always
# --cap-add SYS_RAWIO
# --device=/dev/mem:/dev/mem
# --device=/dev/gpiomem:/dev/gpiomem
# --publish 80:80
# --name yardlight
# yardlight
# run.sh

View File

@ -0,0 +1,22 @@
# The loopback interface
auto lo
iface lo inet loopback
# Wireless interface
allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
wireless_mode managed
wireless_essid any
wpa-driver nl80211
wpa-conf /etc/wpa_supplicant.conf
wireless-power off
# Wired interface
auto eth0
iface eth0 inet dhcp
# Bluetooth networking
iface bnep0 inet dhcp

View File

@ -24,9 +24,9 @@
# Offline mode (for use in constructing flash images offline) # Offline mode (for use in constructing flash images offline)
#option offline_root target #option offline_root target
src/gz all https://opkg.blackfinn.de/thud/all src/gz all https://files.blackfinn.de/yocto/gatesgarth/all
src/gz beaglebone https://opkg.blackfinn.de/thud/beaglebone src/gz beaglebone https://files.blackfinn.de/yocto/gatesgarth/beaglebone_yocto
src/gz cortexa8hf-neon https://opkg.blackfinn.de/thud/cortexa8hf-neon src/gz cortexa8hf-neon https://files.blackfinn.de/yocto/gatesgarth/cortexa8hf-neon
# Default destination for installed packages # Default destination for installed packages
dest root / dest root /

View File

@ -24,9 +24,9 @@
# Offline mode (for use in constructing flash images offline) # Offline mode (for use in constructing flash images offline)
#option offline_root target #option offline_root target
src/gz all https://opkg.blackfinn.de/thud/all src/gz all https://files.blackfinn.de/yocto/gatesgarth/all
src/gz armv7vet2hf-neon https://opkg.blackfinn.de/thud/armv7vet2hf-neon src/gz raspberrypi3_64 https://files.blackfinn.de/yocto/gatesgarth/raspberrypi3_64
src/gz bananapi_m3 https://opkg.blackfinn.de/thud/bananapi_m3 src/gz cortexa53 https://files.blackfinn.de/yocto/gatesgarth/cortexa53
# Default destination for installed packages # Default destination for installed packages
dest root / dest root /

View File

@ -24,9 +24,9 @@
# Offline mode (for use in constructing flash images offline) # Offline mode (for use in constructing flash images offline)
#option offline_root target #option offline_root target
src/gz all https://opkg.blackfinn.de/thud/all src/gz all https://files.blackfinn.de/yocto/gatesgarth/all
src/gz raspberrypi3_64 https://opkg.blackfinn.de/thud/raspberrypi3_64 src/gz raspberrypi4_64 https://files.blackfinn.de/yocto/gatesgarth/raspberrypi4_64
src/gz aarch64 https://opkg.blackfinn.de/thud/aarch64 src/gz cortexa72 https://files.blackfinn.de/yocto/gatesgarth/cortexa72
# Default destination for installed packages # Default destination for installed packages
dest root / dest root /

View File

@ -0,0 +1,18 @@
SUMMARY = "RPi.GPIO"
SECTION = "Devtools"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
PR = "r0"
SRC_URI[sha256sum] = "7424bc6c205466764f30f666c18187a0824077daf20b295c42f08aea2cb87d3f"
inherit pypi setuptools3
PYPI_PACKAGE = "RPi.GPIO"
TARGET_CFLAGS += "-fcommon"
RDEPENDS_${PN} = " \
python3 \
"

View File

@ -0,0 +1,18 @@
SUMMARY = "RPi.GPIO"
SECTION = "Devtools"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
PR = "r0"
SRC_URI[sha256sum] = "11c684af807c89c6f066ed93cb7cfc00082095fef8899e412e92e748e642d9c1"
inherit pypi setuptools3
PYPI_PACKAGE = "w1thermsensor"
# TARGET_CFLAGS += "-fcommon"
RDEPENDS_${PN} = " \
python3 \
"

View File

@ -1,153 +0,0 @@
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_CGROUPS=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_PERF_EVENTS=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_ARCH_SUNXI=y
CONFIG_SMP=y
CONFIG_NR_CPUS=8
CONFIG_AEABI=y
CONFIG_HIGHMEM=y
CONFIG_CMA=y
CONFIG_ARM_APPENDED_DTB=y
CONFIG_ARM_ATAG_DTB_COMPAT=y
CONFIG_CPU_FREQ=y
CONFIG_CPUFREQ_DT=y
CONFIG_VFP=y
CONFIG_NEON=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_IP_PNP_BOOTP=y
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
# CONFIG_INET_XFRM_MODE_BEET is not set
# CONFIG_INET_DIAG is not set
# CONFIG_IPV6 is not set
CONFIG_CAN=y
CONFIG_CAN_SUN4I=y
# CONFIG_WIRELESS is not set
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_DMA_CMA=y
CONFIG_BLK_DEV_SD=y
CONFIG_ATA=y
CONFIG_AHCI_SUNXI=y
CONFIG_NETDEVICES=y
CONFIG_SUN4I_EMAC=y
# CONFIG_NET_VENDOR_ARC is not set
# CONFIG_NET_CADENCE is not set
# CONFIG_NET_VENDOR_BROADCOM is not set
# CONFIG_NET_VENDOR_CIRRUS is not set
# CONFIG_NET_VENDOR_FARADAY is not set
# CONFIG_NET_VENDOR_INTEL is not set
# CONFIG_NET_VENDOR_MARVELL is not set
# CONFIG_NET_VENDOR_MICREL is not set
# CONFIG_NET_VENDOR_MICROCHIP is not set
# CONFIG_NET_VENDOR_NATSEMI is not set
# CONFIG_NET_VENDOR_SAMSUNG is not set
# CONFIG_NET_VENDOR_SEEQ is not set
# CONFIG_NET_VENDOR_SMSC is not set
CONFIG_STMMAC_ETH=y
# CONFIG_NET_VENDOR_VIA is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_WLAN is not set
CONFIG_INPUT_EVDEV=y
CONFIG_KEYBOARD_SUN4I_LRADC=y
# CONFIG_INPUT_MOUSE is not set
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_SUN4I=y
CONFIG_INPUT_MISC=y
CONFIG_INPUT_AXP20X_PEK=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_NR_UARTS=8
CONFIG_SERIAL_8250_RUNTIME_UARTS=8
CONFIG_SERIAL_8250_DW=y
CONFIG_SERIAL_OF_PLATFORM=y
# CONFIG_HW_RANDOM is not set
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_MV64XXX=y
CONFIG_I2C_SUN6I_P2WI=y
CONFIG_SPI=y
CONFIG_SPI_SUN4I=y
CONFIG_SPI_SUN6I=y
CONFIG_GPIO_SYSFS=y
CONFIG_POWER_SUPPLY=y
CONFIG_CHARGER_AXP20X=y
CONFIG_BATTERY_AXP20X=y
CONFIG_AXP20X_POWER=y
CONFIG_THERMAL=y
CONFIG_CPU_THERMAL=y
CONFIG_WATCHDOG=y
CONFIG_SUNXI_WATCHDOG=y
CONFIG_MFD_AC100=y
CONFIG_MFD_AXP20X_I2C=y
CONFIG_MFD_AXP20X_RSB=y
CONFIG_REGULATOR=y
CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_REGULATOR_AXP20X=y
CONFIG_REGULATOR_GPIO=y
CONFIG_MEDIA_SUPPORT=y
CONFIG_RC_CORE=y
CONFIG_RC_DEVICES=y
CONFIG_IR_SUNXI=y
CONFIG_DRM=y
CONFIG_DRM_SUN4I=y
CONFIG_DRM_DUMB_VGA_DAC=y
CONFIG_FB_SIMPLE=y
CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_SND_SOC=y
CONFIG_SND_SUN4I_CODEC=y
CONFIG_USB=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_HCD_PLATFORM=y
CONFIG_USB_OHCI_HCD=y
CONFIG_USB_OHCI_HCD_PLATFORM=y
CONFIG_USB_MUSB_HDRC=y
CONFIG_USB_MUSB_SUNXI=y
CONFIG_NOP_USB_XCEIV=y
CONFIG_USB_GADGET=y
CONFIG_MMC=y
CONFIG_MMC_SUNXI=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_GPIO=y
CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
CONFIG_RTC_CLASS=y
# CONFIG_RTC_INTF_SYSFS is not set
# CONFIG_RTC_INTF_PROC is not set
CONFIG_RTC_DRV_AC100=y
CONFIG_RTC_DRV_SUNXI=y
CONFIG_DMADEVICES=y
CONFIG_DMA_SUN6I=y
# CONFIG_IOMMU_SUPPORT is not set
CONFIG_EXTCON=y
CONFIG_IIO=y
CONFIG_AXP20X_ADC=y
CONFIG_PWM=y
CONFIG_PWM_SUN4I=y
CONFIG_PHY_SUN4I_USB=y
CONFIG_PHY_SUN9I_USB=y
CONFIG_NVMEM=y
CONFIG_NVMEM_SUNXI_SID=y
CONFIG_EXT4_FS=y
CONFIG_VFAT_FS=y
CONFIG_TMPFS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFS_V4=y
CONFIG_ROOT_NFS=y
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_ISO8859_1=y
CONFIG_PRINTK_TIME=y
CONFIG_DEBUG_FS=y
CONFIG_CRYPTO_DEV_SUN4I_SS=y

View File

@ -0,0 +1,2 @@
CONFIG_I2C_BCM2835=y
CONFIG_DRM=y

View File

@ -0,0 +1,2 @@
CONFIG_I2C_BCM2835=y
CONFIG_DRM=y

View File

@ -1,27 +0,0 @@
SECTION = "kernel"
DESCRIPTION = "Mainline Linux kernel"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
COMPATIBLE_MACHINE = "sun8i"
inherit kernel
# Since we're not using git, this doesn't make a difference, but we need to fill
# in something or kernel-yocto.bbclass will fail.
KBRANCH ?= "master"
# Pull in the devicetree files into the rootfs
RDEPENDS_${KERNEL_PACKAGE_NAME}-base += "kernel-devicetree"
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"
S = "${WORKDIR}/linux-${PV}"
SRC_URI[md5sum] = "8e2e10238ce5698904e9ea1e851f4ddd"
SRC_URI[sha256sum] = "d93b1b216e909e4ea8441a41a070f839f55ac9cf5f7effb16e1b04e7f5688407"
SRC_URI = " \
https://www.kernel.org/pub/linux/kernel/v4.x/linux-${PV}.tar.xz \
file://defconfig \
"

View File

@ -1,2 +1,9 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
KERNEL_FEATURES_remove = " cfg/virtio.scc"
KERNEL_MODULE_AUTOLOAD += " brcmfmac i2c-dev spi-bcm2835" KERNEL_MODULE_AUTOLOAD += " brcmfmac i2c-dev spi-bcm2835"
SRC_URI += " \
file://config.cfg \
"

View File

@ -1,5 +1,5 @@
LICENSE = "GPLv2" LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
FILESEXTRAPATHS_prepend := "${THISDIR}/files:" FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
@ -12,10 +12,9 @@ SRC_URI += " \
file://0002-onboard-led-init-disable.patch \ file://0002-onboard-led-init-disable.patch \
" "
KERNEL_CONFIG_FRAGMENTS_append_ti33x = " \ KERNEL_CONFIG_FRAGMENTS_append = " \
${WORKDIR}/rtl8192cu.cfg \ ${WORKDIR}/rtl8192cu.cfg \
${WORKDIR}/enable_onboard_leds.cfg \ ${WORKDIR}/enable_onboard_leds.cfg \
${WORKDIR}/enable_hostap_wext.cfg \ ${WORKDIR}/enable_hostap_wext.cfg \
${WORKDIR}/enable_cgroups.cfg \ ${WORKDIR}/enable_cgroups.cfg \
" "