aboutsummaryrefslogtreecommitdiff
path: root/linux
diff options
context:
space:
mode:
Diffstat (limited to 'linux')
-rwxr-xr-xlinux/kernel/package.sh23
-rwxr-xr-xlinux/kernel/upgrade.sh26
2 files changed, 49 insertions, 0 deletions
diff --git a/linux/kernel/package.sh b/linux/kernel/package.sh
new file mode 100755
index 0000000..14a23b2
--- /dev/null
+++ b/linux/kernel/package.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+set -e
+set -x
+
+if [ $(id -u) -ne 0 ] ; then
+ echo "You must be root"
+ exit 1;
+fi
+
+if [ -z "$1" ] ; then
+ echo "Usage: $0 \$version"
+ echo "Will place currently installed kernel \$version in the current directory"
+ exit 1;
+fi
+version="$1"; shift
+
+tar -C / -cvf - \
+ "/usr/lib/modules/$version" \
+ "/boot/config-$version" \
+ "/boot/vmlinuz-$version" \
+ "/boot/System.map-${version}" \
+ "/boot/initramfs-${version}.img" \
+ | gzip -3c > $version.tar.gz
diff --git a/linux/kernel/upgrade.sh b/linux/kernel/upgrade.sh
new file mode 100755
index 0000000..dab1518
--- /dev/null
+++ b/linux/kernel/upgrade.sh
@@ -0,0 +1,26 @@
+#!/bin/sh
+set -e
+set -x
+version="$(sed 11q Makefile \
+ | sed -n \
+ -e's/^VERSION = //p' \
+ -e's/^PATCHLEVEL = //p' \
+ -e's/^SUBLEVEL = //p' \
+ | tr '\n' '.' \
+ | sed -e's/\.$//')"
+localversion="$(sed 25q .config \
+ | sed -rn \
+ -e's/^CONFIG_LOCALVERSION="(.*)"$/\1/p')"
+if [ -z "$version" ] ; then
+ exit 1;
+fi
+CPUs="$(nproc)"
+# git checkout v$version
+make -j$CPUs "$@" olddefconfig bzImage modules
+sudo make -j$CPUs install modules_install
+cd /
+sudo sh -c 'umask 002; sh /etc/kernel.d/post-install/10-dkms linux '"${version}${localversion}"
+cd -
+sudo dracut -f --kver "${version}${localversion}"
+sudo grub-mkconfig -o /boot/grub/grub.cfg
+echo "You'll have to update grub by hand there bud"