diff --git a/linux/Makefile b/linux/Makefile new file mode 100644 index 0000000..5077b1a --- /dev/null +++ b/linux/Makefile @@ -0,0 +1,20 @@ +CHROOT_CMD := chroot build/rootfs /bin/bash -c +ITDIR := build/rootfs/etc/initramfs-tools + +build/rootfs/initrd.img: build/rootfs initramfs/modules initramfs/download.sh + $(CHROOT_CMD) "apt update && apt install -y linux-image-4.19.0-6-amd64" + cp initramfs/download.sh $(ITDIR)/scripts/local-top + chmod +x $(ITDIR)/scripts/local-top/download.sh + cp initramfs/modules $(ITDIR) + $(CHROOT_CMD) "update-initramfs -c -kall" + +build/rootfs: build/cache + rm -r build/rootfs || true + cp -r build/cache build/rootfs + +build/cache: + rm -r build/cache || true + debootstrap buster build/cache + +clean: + rm -r build/rootfs diff --git a/linux/Readme.md b/linux/Readme.md new file mode 100644 index 0000000..6b03b23 --- /dev/null +++ b/linux/Readme.md @@ -0,0 +1,2 @@ +# Linux for cloning +Run `make` to build. diff --git a/linux/initramfs/download.sh b/linux/initramfs/download.sh new file mode 100644 index 0000000..c12b0fb --- /dev/null +++ b/linux/initramfs/download.sh @@ -0,0 +1,8 @@ +#!/bin/sh +. /scripts/functions +configure_networking +tftp -g -r root.squashfs 192.168.14.2 +mkdir /mnt +modprobe loop +losetup /dev/loop0 +losetup -r /dev/loop0 /root.squashfs diff --git a/linux/initramfs/modules b/linux/initramfs/modules new file mode 100644 index 0000000..7c1157f --- /dev/null +++ b/linux/initramfs/modules @@ -0,0 +1 @@ +squashfs