#!/bin/bash [ -z "$BB_GIT" ] && declare -rg BB_GIT="https://git.busybox.net/busybox" [ -z "$BB_BRANCH" ] && declare -rg BB_BRANCH="1_36_1" build() ( local base_url="https://git.openslx.org/openslx-ng/mltk.git/plain/core/modules/busybox/" set -e git clone --depth 1 "$BB_GIT" --branch "$BB_BRANCH" "${moddir}/src" # apply patches cd "${moddir}/src" for _patch in "$base_url"/{fbsplash-fillbg,rtcwake-compat}.patch ; do if ! curl -m 10 -L "$_patch" | git apply -; then derror "Failed to apply: $_patch" return 1 fi done cp "${moddir}/openslx.config" "${moddir}/src/.config" yes '' | make oldconfig make -j busybox cd - &> /dev/null ) check() { if ! [ -x "${moddir}/src/busybox" ] && ! build; then derror "Failed to build busybox." kill $$ return 1 fi return 255 } depends() { echo "" } install() { if [ ! -s "${moddir}/src/busybox" ]; then derror "Failed to find busybox binary in build directory!" return 1 fi if ! inst "${moddir}/src/busybox" "/bin/busybox"; then derror "Could not install busybox" return 1 fi slx_service "s3-install-busybox" "Install busybox applet symlinks" \ --wbefore "dracut-cmdline.service" slx_service "s3-install-busybox-stage4" "Install busybox into stage 4" \ --wafter "initrd-root-fs.target" \ --after "s3-install-busybox.service" }