mirror of
https://github.com/rancher/os.git
synced 2025-06-22 04:57:04 +00:00
45 lines
903 B
Bash
Executable File
45 lines
903 B
Bash
Executable File
#!/bin/bash
|
|
set -e -x
|
|
|
|
# This script will convert an Ubuntu deb file to the kernel tar structure the RancherOS build expects
|
|
# For example
|
|
#
|
|
# ./scripts/mk-kernel-tar-from-deb.sh linux-image-3.19.0-28-generic_3.19.0-28.30_amd64.deb linux-image-extra-3.19.0-28-generic_3.19.0-28.30_amd64.deb linux-firmware_1.143.3_all.deb
|
|
#
|
|
|
|
mkdir -p $(dirname $0)/../build
|
|
BUILD=$(mktemp -d $(dirname $0)/../build/deb-XXXXX)
|
|
mkdir -p $BUILD
|
|
|
|
extract()
|
|
{
|
|
if [ ! -e $1 ]; then
|
|
echo $1 does not exist
|
|
exit 1
|
|
fi
|
|
|
|
local deb=$(readlink -f $1)
|
|
|
|
cd $BUILD
|
|
rm -f data.tar.* 2>/dev/null || true
|
|
ar x $deb
|
|
tar xvf data.tar.*
|
|
cd -
|
|
}
|
|
|
|
for i in "$@"; do
|
|
extract $i
|
|
done
|
|
|
|
cd $BUILD
|
|
|
|
KVER=$(ls ./lib/modules)
|
|
depmod -b . $KVER
|
|
|
|
echo Creating ${OLDPWD}/kernel.tar.gz
|
|
tar cvzf ${OLDPWD}/kernel.tar.gz ./lib boot/vmlinuz*
|
|
echo Created ${OLDPWD}/kernel.tar.gz
|
|
|
|
cd -
|
|
rm -rf ${BUILD}
|