home · contact · privacy
Move initramfs-hook generation to de-hardcode PARTITION_BOOT. master
authorPlom Heller <plom@plomlompom.com>
Tue, 8 Sep 2026 23:31:40 +0000 (01:31 +0200)
committerPlom Heller <plom@plomlompom.com>
Tue, 8 Sep 2026 23:31:40 +0000 (01:31 +0200)
setup_scripts/install_debian.sh
setup_scripts/start_root_t490s.sh

index 733dba7e1b8777eaf86c7593d754efc8bab72121..9a5bb3679e9e8b77d8f123c3a0941a2feec7b867 100755 (executable)
@@ -6,6 +6,7 @@ FNAME_NM_CONN=wifi.nmconnection
 PATH_CRYPTTAB=/etc/crypttab
 PATH_EFI=/boot/efi
 PATH_FSTAB=/etc/fstab
 PATH_CRYPTTAB=/etc/crypttab
 PATH_EFI=/boot/efi
 PATH_FSTAB=/etc/fstab
+PATH_HOOK_UPDATE_EFI=/etc/initramfs/post-update.d/update-efi
 PATH_HOSTNAME=/etc/hostname
 PATH_HOSTS=/etc/hosts
 PATH_INTERFACES=/etc/network/interfaces
 PATH_HOSTNAME=/etc/hostname
 PATH_HOSTS=/etc/hosts
 PATH_INTERFACES=/etc/network/interfaces
@@ -23,14 +24,17 @@ NAME_BOOT=$2
 NAME_ROOT="${NAME_BOOT}"
 
 # constants derived from changeables
 NAME_ROOT="${NAME_BOOT}"
 
 # constants derived from changeables
+PARTITION_EFI="${PATH_BOOT_DEVICE}p${IDX_BOOT_PARTITION}"
 PATH_EFI_NAME_BOOT="${PATH_EFI}/${NAME_BOOT}"
 PATH_MNT_APT_SOURCES="${PATH_MNT_ROOT}/etc/apt/sources.list"
 PATH_MNT_CRYPTTAB="${PATH_MNT_ROOT}${PATH_CRYPTTAB}"
 PATH_MNT_FSTAB="${PATH_MNT_ROOT}${PATH_FSTAB}"
 PATH_EFI_NAME_BOOT="${PATH_EFI}/${NAME_BOOT}"
 PATH_MNT_APT_SOURCES="${PATH_MNT_ROOT}/etc/apt/sources.list"
 PATH_MNT_CRYPTTAB="${PATH_MNT_ROOT}${PATH_CRYPTTAB}"
 PATH_MNT_FSTAB="${PATH_MNT_ROOT}${PATH_FSTAB}"
+PATH_MNT_HOOK_UPDATE_EFI="${PATH_MNT_ROOT}${PATH_HOOK_UPDATE_EFI}"
 PATH_MNT_HOSTNAME="${PATH_MNT_ROOT}${PATH_HOSTNAME}"
 PATH_MNT_HOSTS="${PATH_MNT_ROOT}${PATH_HOSTS}"
 PATH_MNT_NM_CONN="${PATH_MNT_ROOT}${PATH_NM_CONNECTIONS}/${FNAME_NM_CONN}"
 PATH_MNT_NM_CONNECTIONS="${PATH_MNT_ROOT}${PATH_NM_CONNECTIONS}"
 PATH_MNT_HOSTNAME="${PATH_MNT_ROOT}${PATH_HOSTNAME}"
 PATH_MNT_HOSTS="${PATH_MNT_ROOT}${PATH_HOSTS}"
 PATH_MNT_NM_CONN="${PATH_MNT_ROOT}${PATH_NM_CONNECTIONS}/${FNAME_NM_CONN}"
 PATH_MNT_NM_CONNECTIONS="${PATH_MNT_ROOT}${PATH_NM_CONNECTIONS}"
+PATH_UPDATE_EFI="/${NAME_DATA}/${NAME_REPO_DIR}/setup_scripts/update_efi.sh"
 PATH_VG=$(path_vg "${NAME_LUKSVG}")
 PATH_VG_DATA=${PATH_VG}/${NAME_DATA}
 PATH_VG_ROOT=${PATH_VG}/${NAME_ROOT}
 PATH_VG=$(path_vg "${NAME_LUKSVG}")
 PATH_VG_DATA=${PATH_VG}/${NAME_DATA}
 PATH_VG_ROOT=${PATH_VG}/${NAME_ROOT}
@@ -97,6 +101,15 @@ chroot_sh \
     cryptsetup cryptsetup-initramfs lvm2 \
     firmware-iwlwifi network-manager wpasupplicant"
 
     cryptsetup cryptsetup-initramfs lvm2 \
     firmware-iwlwifi network-manager wpasupplicant"
 
+msg 'Installing initramfs hook to refresh EFI boot files on kernel updates …'
+# (only after previous apt-get calls, easier to do its work below on our own)
+mkdir -p "$(dirname "${PATH_MNT_HOOK_UPDATE_EFI}")"
+cat <<EOF >| "${PATH_MNT_HOOK_UPDATE_EFI}"
+#!/bin/sh
+exec "${PATH_UPDATE_EFI}" "${PARTITION_EFI}"
+EOF
+chmod +x "${PATH_MNT_HOOK_UPDATE_EFI}"
+
 # pre-seed known wifi network into NetworkManager
 msg 'Extracting wifi credentials from %s …' "${PATH_INTERFACES}"
 NAME_WIFI_SSID=$(sed -n 's/^[[:space:]]*wpa-ssid[[:space:]]*//p' \
 # pre-seed known wifi network into NetworkManager
 msg 'Extracting wifi credentials from %s …' "${PATH_INTERFACES}"
 NAME_WIFI_SSID=$(sed -n 's/^[[:space:]]*wpa-ssid[[:space:]]*//p' \
index 38cdbd64657a731668ad89af7ed3bf3d1054f359..37f0f37431197a61148d578c1a2f515048695375 100755 (executable)
@@ -3,7 +3,6 @@
 
 # constants unlikely to change
 PATH_DEFAULT_LOCALE=/etc/default/locale
 
 # constants unlikely to change
 PATH_DEFAULT_LOCALE=/etc/default/locale
-PATH_HOOK_UPDATE_EFI=/etc/initramfs/post-update.d/update-efi
 PATH_SYSCTL_PRINTK=/etc/sysctl.d/60-printk-console.conf
 PATH_TLP_THRESH_CONF=/etc/tlp.conf.d/60-thresholds.conf
 PATH_UDEV_RULES=/etc/udev/rules.d
 PATH_SYSCTL_PRINTK=/etc/sysctl.d/60-printk-console.conf
 PATH_TLP_THRESH_CONF=/etc/tlp.conf.d/60-thresholds.conf
 PATH_UDEV_RULES=/etc/udev/rules.d
@@ -11,23 +10,12 @@ PATH_UDEV_RULES=/etc/udev/rules.d
 # constants we might want to change at some point
 FNAME_UDEV_RULES_BACKLIGHT=90-backlight.rules
 LOCALE=C.UTF-8
 # constants we might want to change at some point
 FNAME_UDEV_RULES_BACKLIGHT=90-backlight.rules
 LOCALE=C.UTF-8
-PARTITION_EFI=/dev/nvme0n1p1
 PRINTK_LEVELS="4 4 1 7"
 TLP_THRESH_START=40
 TLP_THRESH_STOP=80
 
 # constants derived from changeables
 PATH_TO_COPY="${PATH_REPO}/to_copy"
 PRINTK_LEVELS="4 4 1 7"
 TLP_THRESH_START=40
 TLP_THRESH_STOP=80
 
 # constants derived from changeables
 PATH_TO_COPY="${PATH_REPO}/to_copy"
-PATH_UPDATE_EFI_SCRIPT="${PATH_REPO}/setup_scripts/update_efi.sh"
-
-# before any apt-get call gets a chance to pull in a kernel update of its own …
-msg 'Installing initramfs hook to refresh EFI boot files on kernel updates …'
-mkdir -p "$(dirname "${PATH_HOOK_UPDATE_EFI}")"
-cat <<EOF >| "${PATH_HOOK_UPDATE_EFI}"
-#!/bin/sh
-exec "${PATH_UPDATE_EFI_SCRIPT}" "${PARTITION_EFI}"
-EOF
-chmod +x "${PATH_HOOK_UPDATE_EFI}"
 
 start_root t490s
 
 
 start_root t490s