This commit is contained in:
parent
e28b2640fb
commit
9d6868f20c
8
build.sh
Executable file
8
build.sh
Executable file
@ -0,0 +1,8 @@
|
||||
docker run --rm -it \
|
||||
-v $PWD/output:/output -v $PWD/input:/input \
|
||||
-e "DEFAULT_KERNEL_MODULES=*" \
|
||||
-e "SIZE_ROOT_PART=750M" \
|
||||
-e "SIZE_ROOT_FS=700M" \
|
||||
-e "DEFAULT_TIMEZONE=Europe/Budapest" \
|
||||
builder # <- don't forgetti to build this
|
||||
|
56
input/image.sh
Executable file
56
input/image.sh
Executable file
@ -0,0 +1,56 @@
|
||||
#!/bin/sh
|
||||
|
||||
VERSION="1"
|
||||
RUNTIME_PACKAGES="python3 udev alsa-utils alsa-utils-doc alsa-lib alsaconf py3-rpigpio"
|
||||
BUILD_PACKAGES="alsa-lib-dev gcc g++ python3-dev musl-dev"
|
||||
|
||||
# put back the resolv.conf to keep apk working
|
||||
rm ${ROOTFS_PATH}/etc/resolv.conf # remove symlink
|
||||
cp /etc/resolv.conf ${ROOTFS_PATH}/etc/resolv.conf
|
||||
|
||||
# install things
|
||||
chroot_exec apk add $RUNTIME_PACKAGES $BUILD_PACKAGES
|
||||
|
||||
|
||||
# setup udev
|
||||
chroot_exec rc-update add udev sysinit
|
||||
chroot_exec rc-update add udev-trigger default
|
||||
chroot_exec rc-update add udev-settle default
|
||||
# udev_postmount's purpose is to write stuff to / which is not possible now
|
||||
|
||||
# make audio work
|
||||
echo "snd_bcm2835" >> ${ROOTFS_PATH}/etc/modules # Actually this is also loaded by udev, but it wouldn't hurt
|
||||
echo "dtparam=audio=on" >> ${BOOTFS_PATH}/config.txt
|
||||
echo "hdmi_drive=1" >> ${BOOTFS_PATH}/config.txt # disable HDMI audio
|
||||
chroot_exec addgroup root audio
|
||||
sed -i -e "s/^defaults.ctl.card [0-9]*$/defaults.ctl.card 0/" ${ROOTFS_PATH}/usr/share/alsa/alsa.conf
|
||||
sed -i -e "s/^defaults.pcm.card [0-9]*$/defaults.pcm.card 0/" ${ROOTFS_PATH}/usr/share/alsa/alsa.conf
|
||||
chroot_exec rc-update add alsa default
|
||||
sed -i -e "s%alsastatedir=/var/lib/alsa%alsastatedir=/data/var/lib/alsa%" ${ROOTFS_PATH}/etc/init.d/alsa
|
||||
mkdir -p ${DATAFS_PATH}/var/lib/alsa
|
||||
|
||||
# make serial work
|
||||
sed -i -e 's%#ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100%ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100%' ${ROOTFS_PATH}/etc/inittab
|
||||
|
||||
# mark this version
|
||||
echo "Version: ${VERSION}\nBuild: $(date)\nUpdate: " > ${ROOTFS_PATH}/version
|
||||
|
||||
# install things
|
||||
mkdir -p ${ROOTFS_PATH}/opt/
|
||||
|
||||
for repo in iot-platform-raspberry iot-logic; do
|
||||
archive="${repo}.tar.gz"
|
||||
wget https://git.kmlabz.com/birbnetes/$repo/archive/master.tar.gz -O "${archive}"
|
||||
tar xvf "${archive}" -C ${ROOTFS_PATH}/opt/
|
||||
done
|
||||
|
||||
chroot_exec pip3 install /opt/iot-platform-raspberry/
|
||||
chroot_exec pip3 install -r /opt/iot-logic/requirements.txt
|
||||
|
||||
# clean build dependencies
|
||||
chroot_exec apk del $BUILD_PACKAGES
|
||||
|
||||
# Put back resolv.conf where it was
|
||||
rm ${ROOTFS_PATH}/etc/resolv.conf
|
||||
ln -fs /data/etc/resolv.conf ${ROOTFS_PATH}/etc/resolv.conf
|
||||
|
Loading…
Reference in New Issue
Block a user