From: Andre Ramnitz Date: Tue, 22 Apr 2025 11:08:12 +0000 (+0200) Subject: upgrayyedd: don't rely on hardcoded paths X-Git-Url: https://git.ramnitz.eu/?a=commitdiff_plain;h=799ce4d13a8cfc9a5dca03f464f37db1c24ea62f;p=dotfiles.git upgrayyedd: don't rely on hardcoded paths --- diff --git a/dot-local/bin/upgrayyedd b/dot-local/bin/upgrayyedd index 0bc25369..c57a3cf6 100755 --- a/dot-local/bin/upgrayyedd +++ b/dot-local/bin/upgrayyedd @@ -14,7 +14,7 @@ fi case "$1" in refresh) - $precmd /usr/bin/emaint sync -A + $precmd emaint sync -A $precmd /usr/bin/emerge -avuDN @world "${@:2}" ;; again) @@ -37,7 +37,7 @@ case "$1" in $precmd /usr/bin/emerge -a --clean "${@:2}" exit 0 ;; - kbuild-gentoo) + kernel-gentoo) 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" @@ -55,7 +55,7 @@ case "$1" in echo "Build completed. Remember to upgrayyedd /usr/src/config-* if necessary." exit 0 ;; - kbuild-llvm) + kernel-llvm) 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" @@ -73,7 +73,7 @@ case "$1" in echo "Build completed. Remember to upgrayyedd /usr/src/config-* if necessary." exit 0 ;; - kbuild-git) + kernel-git) 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" @@ -92,8 +92,24 @@ case "$1" in 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}" + kernel-server) + MOSTRECENT=$(command ls -1 /usr/src/ | grep -P "^linux-(\\d+\\.)?(\\d+\\.)?(\\*|\\d+)-gentoo$" | 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-server" "./.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 ;; clean-kernels) echo "Relevant files in /boot:" @@ -109,6 +125,6 @@ case "$1" in echo "${@:2}" ;; *) - echo "Currently available commands: 'refresh', 'again', 'skipkernel', 'clean', 'log', 'kbuild-gentoo', 'kbuild-llvm', 'kbuild-git', 'kbuild-server', 'clean-kernels'" + echo "Currently available commands: 'refresh', 'again', 'skipkernel', 'clean', 'log', 'kernel-gentoo', 'kernel-llvm', 'kernel-git', 'kernel-server', 'clean-kernels'" ;; esac