From: Andre Ramnitz Date: Wed, 2 Apr 2025 05:55:05 +0000 (+0200) Subject: upgrayyedd: genkernel is deprecated now, switch to manual build X-Git-Url: https://git.ramnitz.eu/?a=commitdiff_plain;h=0cb3be0e6392eb1fc2b77b3cad219bb5a70fa2a5;p=dotfiles.git upgrayyedd: genkernel is deprecated now, switch to manual build --- diff --git a/dot-local/bin/upgrayyedd b/dot-local/bin/upgrayyedd index 8e0e22d3..300546fa 100755 --- a/dot-local/bin/upgrayyedd +++ b/dot-local/bin/upgrayyedd @@ -32,17 +32,52 @@ case "$1" in ;; depclean) $precmd /usr/bin/emerge -a --depclean "${@:2}" + exit 0 ;; kbuild-gentoo) - $precmd /usr/bin/genkernel all --kernel-config=/usr/src/config-gentoo "${@:3}" + MOSTRECENT=$(command ls -1 /usr/src/ | grep -P "^linux-(\\d+\\.)?(\\d+\\.)?(\\*|\\d+)-gentoo$" | tail -n1) + test -h "/usr/src/linux" && sudo rm -f "/usr/src/linux" + sudo ln -sf "/usr/src/${MOSTRECENT}/" "/usr/src/linux" + echo "Building $MOSTRECENT" + echo "" + cd "/usr/src/linux" || exit 1 + sudo make mrproper + sudo cp "/usr/src/config-gentoo" "./.config" || exit 1 + sudo schedtool -B -n \-19 -e make oldconfig + sudo schedtool -B -n \-19 -e make modules_prepare + sudo schedtool -B -n \-19 -e make -j28 || exit 1 + sudo emerge @module-rebuild + sudo schedtool -B -n \-19 -e make modules_install + sudo schedtool -B -n \-19 -e make install + echo "Build completed. Remember to upgrayyedd /usr/src/config-* if necessary." + exit 0 ;; kbuild-git) - $precmd /usr/bin/genkernel all --kernel-config=/usr/src/config-git "${@:3}" + MOSTRECENT=$(command ls -1 /usr/src/ | grep -P "^linux-(\\d+\\.)?(\\*|\\d+)-rc" | tail -n1) + test -n "$MOSTRECENT" || exit 1 + test -h "/usr/src/linux" && sudo rm -f "/usr/src/linux" + sudo ln -sf "/usr/src/${MOSTRECENT}/" "/usr/src/linux" + echo "Building $MOSTRECENT" + echo "" + cd "/usr/src/linux" || exit 1 + sudo make mrproper + sudo cp "/usr/src/config-git" "./.config" || exit 1 + sudo schedtool -B -n \-19 -e make oldconfig + sudo schedtool -B -n \-19 -e make modules_prepare + sudo schedtool -B -n \-19 -e make -j28 || exit 1 + sudo emerge @module-rebuild + sudo schedtool -B -n \-19 -e make modules_install + sudo schedtool -B -n \-19 -e make install + echo "Build completed. Remember to upgrayyedd /usr/src/config-* if necessary." + exit 0 ;; kbuild-server) $precmd /usr/bin/genkernel all --kernel-config=/usr/src/config-server "${@:3}" ;; clean-kernels) + echo "Relevant files in /boot:" + echo "" + command ls -1 --hide='*/' /boot/System.map* /boot/initramfs* /boot/vmlinuz* $precmd eclean-kernel -aA -L std ;; log)