#!/bin/bash # SPDX-Version: 3.0 # SPDX-CreationInfo: 2025-06-17; WEIDNER, Marc S.; # SPDX-ExternalRef: GIT https://git.coresecret.dev/msw/CISS.debian.installer.git # SPDX-FileContributor: WEIDNER, Marc S.; Centurion Intelligence Consulting Agency # SPDX-FileCopyrightText: 2024-2025; WEIDNER, Marc S.; # SPDX-FileType: SOURCE # SPDX-License-Identifier: EUPL-1.2 OR LicenseRef-CCLA-1.0 # SPDX-LicenseComment: This file is part of the CISS.debian.installer.secure framework. # SPDX-PackageName: CISS.debian.installer # SPDX-Security-Contact: security@coresecret.eu guard_sourcing ####################################### # Deploy all changes made using the 'update-grub' and 'update-initramfs' commands. # Globals: # VAR_CHROOT_SYS_MASK_ENTER # VAR_CHROOT_SYS_MASK_LEAVE # VAR_KERNEL # Arguments: # None # Returns: # 0: on success ####################################### update_initramfs() { ### Declare Arrays, HashMaps, and Variables. declare -r var_logfile="/root/.ciss/cdi/log/4320_update_initramfs.log" # shellcheck disable=SC2153 declare -r var_kernel="${VAR_KERNEL#linux-image-}" chroot_logger "${TARGET}${var_logfile}" chroot_script "${TARGET}" " update-grub 2>&1 | tee -a ${var_logfile} echo ExitCode: \$? >> ${var_logfile} " chroot_script "${TARGET}" " ### Write the two helpers verbatim (no host-side expansion). cat >/tmp/.ciss_sysmask_enter.sh <<'EOS_ENTER' ${VAR_CHROOT_SYS_MASK_ENTER} EOS_ENTER cat >/tmp/.ciss_sysmask_leave.sh <<'EOS_LEAVE' ${VAR_CHROOT_SYS_MASK_LEAVE} EOS_LEAVE ### run: mask sys, build, unmask. bash -e /tmp/.ciss_sysmask_enter.sh depmod -a ${var_kernel} 2>&1 | tee -a ${var_logfile} update-initramfs -c -v -k all 2>&1 | tee -a ${var_logfile} echo ExitCode: \$? >> ${var_logfile} bash -e /tmp/.ciss_sysmask_leave.sh rm -f /tmp/.ciss_sysmask_{enter,leave}.sh " chroot_script "${TARGET}" " update-grub 2>&1 | tee -a ${var_logfile} echo ExitCode: \$? >> ${var_logfile} " guard_dir && return 0 } # vim: number et ts=2 sw=2 sts=2 ai tw=128 ft=sh