From 4f5c5aca7a94c75dde24f3fef34eb7ee41243ddf Mon Sep 17 00:00:00 2001 From: Rolf Neugebauer Date: Fri, 28 Apr 2017 16:50:27 +0100 Subject: [PATCH] kernels: Add support for creating Debian kernel packages This only pulls in 4.x kernels and does not include the headers to build modules against. Signed-off-by: Rolf Neugebauer --- scripts/kernels/debian.sh | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100755 scripts/kernels/debian.sh diff --git a/scripts/kernels/debian.sh b/scripts/kernels/debian.sh new file mode 100755 index 000000000..2b2501490 --- /dev/null +++ b/scripts/kernels/debian.sh @@ -0,0 +1,25 @@ +#! /bin/sh + +REPO="linuxkit/kernel-debian" +BASE_URL=http://mirrors.kernel.org/debian/pool/main/l/linux/ + +ARCH=amd64 +LINKS=$(curl -s ${BASE_URL}/ | sed -n 's/.*href="\([^"]*\).*/\1/p') +# Just get names for 4.x kernels +KERNELS=$(echo $LINKS | \ + grep -o "linux-image-4\.[0-9]\+\.[0-9]\+-[0-9]\+-${ARCH}[^ ]\+_${ARCH}\.deb") + +for KERN_DEB in $KERNELS; do + VERSION=$(echo $KERN_DEB | \ + grep -o "[0-9]\+\.[0-9]\+\.[0-9]\+-[0-9]\+" | head -1) + + echo "$VERSION -> $KERN_DEB" + DOCKER_CONTENT_TRUST=1 docker pull ${REPO}:${VERSION} && continue + + URLS="${BASE_URL}/${KERN_DEB}" + + # Doesn't exist build and push + docker build -t ${REPO}:${VERSION} -f Dockerfile.deb --no-cache \ + --build-arg DEB_URLS="${URLS}" . && + DOCKER_CONTENT_TRUST=1 docker push ${REPO}:${VERSION}) +done