summaryrefslogtreecommitdiffstats
path: root/modules.d/busybox/module-setup.sh
diff options
context:
space:
mode:
Diffstat (limited to 'modules.d/busybox/module-setup.sh')
-rw-r--r--modules.d/busybox/module-setup.sh42
1 files changed, 42 insertions, 0 deletions
diff --git a/modules.d/busybox/module-setup.sh b/modules.d/busybox/module-setup.sh
new file mode 100644
index 00000000..807022e9
--- /dev/null
+++ b/modules.d/busybox/module-setup.sh
@@ -0,0 +1,42 @@
+#!/bin/bash
+[ -z "$BB_GIT" ] && declare -rg BB_GIT="git://git.busybox.net/busybox"
+[ -z "$BB_BRANCH" ] && declare -rg BB_BRANCH="1_25_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-center,fbsplash-fillbg,rtcwake-compat}.patch ; do
+ curl "$_patch" | git apply - || derror "Failed to apply: $_patch"
+ done
+
+ cp "${moddir}/openslx.config" > "${target}/.config"
+ yes '' | make oldconfig
+ make -j busybox
+ cd - &> /dev/null
+ )
+}
+check() {
+ if [ ! -x "${moddir}/src/busybox" ] && ! build; then
+ derror "Failed to build busybox."
+ 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
+ inst "${moddir}/src/busybox" "/bin/busybox"
+ inst_hook cmdline 00 "${moddir}/install-busybox.sh"
+ inst_hook pre-pivot 50 "${moddir}/install-busybox-stage4.sh"
+}