V8.00.000.2025.06.17
All checks were successful
🛡️ Shell Script Linting / 🛡️ Shell Script Linting (push) Successful in 51s

Signed-off-by: Marc S. Weidner <msw@coresecret.dev>
This commit is contained in:
2025-08-05 22:42:14 +02:00
parent f366d2daf2
commit 16a51c5536
6 changed files with 140 additions and 48 deletions

View File

@@ -26,24 +26,37 @@ guard_sourcing
#######################################
check_kernel() {
declare -i counter=1
declare first_string="" line="" name="" options="" var_cpu_vendor=""
declare first_string="" line="" name="" options="" var_cpu_vendor="" var_system_architecture=""
cat << 'EOF' >| "${VAR_NOTES}"
Kernel available
*+bpo* : Debian Backported Kernel
*cloud* : Special lightweight images for KVM
*unsigned* : Unsigned Kernel
*preempt_rt* : Special Kernel for real-time-computing
Not unsigned marked are MS signed Kernel for Secure Boot
EOF
# shellcheck disable=SC2312
var_cpu_vendor=$(</proc/cpuinfo grep 'vendor_id' | head -n1 | cut -d: -f2 | xargs)
var_system_architecture="$(dpkg --print-architecture)"
case "${var_cpu_vendor}" in
case "${var_system_architecture}" in
*AuthenticAMD*)
amd64)
# shellcheck disable=SC2312
apt-cache search linux-image | grep linux-image | grep amd64 | grep -v "meta-package" | grep -v "dbg" | grep -v "template" >> "${VAR_KERNEL_TMP}"
;;
*GenuineIntel*)
arm64)
# shellcheck disable=SC2312
apt-cache search linux-image | grep linux-image | grep arm64 | grep -v "meta-package" | grep -v "dbg" | grep -v "template" >> "${VAR_KERNEL_TMP}"
;;
*) do_log "info" "file_only" "4140() Unknown or unsupported CPU vendor: '${var_cpu_vendor}', skipping." ;;
*)
do_log "info" "file_only" "4140() Unknown Architecture: '${var_system_architecture}' and / or unsupported CPU vendor: '${var_cpu_vendor}', skipping."
;;
esac
sort --output="${VAR_KERNEL_SRT}" "${VAR_KERNEL_TMP}" || {
@@ -60,27 +73,82 @@ check_kernel() {
((counter++))
done < "${VAR_KERNEL_SRT}"
export NCURSES_NO_ALTSCREEN=1
tput smcup
declare var_response="" var_exitcode=""
while true; do
var_response=$(dialog \
--no-collapse \
--ascii-lines \
--clear \
--help-button --help-label "Info" \
--backtitle "CISS.debian.installer" \
--title "Select the Kernel for the CISS.debian.installer" \
--radiolist "Kernel available \n *+bpo* : Debian Backported Kernel \n *cloud* : Special lightweight images for KVM \n *unsigned* : Unsigned Kernel \n *preempt_rt* : Special Kernel for real-time-computing \n Not unsigned marked are MS signed Kernel for Secure Boot \n" 0 0 "${options[@]}" 3>&1 1>&2 2>&3 3>&-
)
var_exitcode="$?"
clear
case "${var_exitcode}" in
0)
VAR_KERNEL="${var_response}"
[[ "${VAR_KERNEL}" != linux-image-* ]] && VAR_KERNEL="linux-image-${VAR_KERNEL}"
do_log "info" "file_only" "0110() Kernel image selected interactively: '${VAR_KERNEL}'."
break
;;
1)
VAR_KERNEL=""
break
;;
2)
dialog --no-collapse \
--ascii-lines \
--clear \
--backtitle "CISS.debian.installer" \
--title "Important Notes" \
--scrollbar \
--textbox "${VAR_NOTES}" 32 128
clear
continue
;;
*)
VAR_KERNEL=""
break
;;
esac
done
# shellcheck disable=SC2034
if VAR_KERNEL=$(dialog \
--no-collapse \
--ascii-lines \
--clear \
--help-button \
--backtitle "CISS.debian.installer" \
--title "Select the Kernel for the CISS.debian.installer" \
--radiolist "Kernel available \n *+bpo* : Debian Backported Kernel \n *cloud* : Special lightweight images for KVM \n *unsigned* : Unsigned Kernel \n *preempt_rt* : Special Kernel for real-time-computing \n Not unsigned marked are MS signed Kernel for Secure Boot \n" 0 0 "${options[@]}" 3>&1 1>&2 2>&3 3>&-); then
#if VAR_KERNEL=$(dialog \
# --no-collapse \
# --ascii-lines \
# --clear \
# --help-button --help-label "Info" \
# --backtitle "CISS.debian.installer" \
# --title "Select the Kernel for the CISS.debian.installer" \
# --radiolist "Kernel available \n *+bpo* : Debian Backported Kernel \n *cloud* : Special lightweight images for KVM \n *unsigned* : Unsigned Kernel \n *preempt_rt* : Special Kernel for real-time-computing \n Not unsigned marked are MS signed Kernel for Secure Boot \n" 0 0 "${options[@]}" 3>&1 1>&2 2>&3 3>&-); then
#
# #clear
# [[ "${VAR_KERNEL}" != linux-image-* ]] && VAR_KERNEL="linux-image-${VAR_KERNEL}"
# do_log "info" "file_only" "0110() Kernel image selected interactively: '${VAR_KERNEL}'."
#
#else
#
# #clear
# VAR_KERNEL=""
#
#fi
clear
[[ "${VAR_KERNEL}" != linux-image-* ]] && VAR_KERNEL="linux-image-${VAR_KERNEL}"
do_log "info" "file_only" "0110() Kernel image selected interactively: '${VAR_KERNEL}'."
else
clear
VAR_KERNEL=""
fi
tput rmcup
return 0
}