From c5cf62a41038e344312d8758a4ba232fcd726053 Mon Sep 17 00:00:00 2001
From: Andrew Ammerlaan <andrewammerl...@gentoo.org>
Date: Tue, 25 Jun 2024 16:36:46 +0200
Subject: [PATCH] sys-firmware/intel-microcode: complain less when /boot
is not
mounted
When using dist-kernel users can correct the problem and then
emerge --config ...
Signed-off-by: Andrew Ammerlaan <andrewammerl...@gentoo.org>
---
.../intel-microcode-20240312_p20240312.ebuild | 21 +++++++++++++------
.../intel-microcode-20240514_p20240514.ebuild | 21 +++++++++++++------
.../intel-microcode-20240531_p20240526.ebuild | 21 +++++++++++++------
3 files changed, 45 insertions(+), 18 deletions(-)
diff --git
a/sys-firmware/intel-microcode/intel-microcode-20240312_p20240312.ebuild
b/sys-firmware/intel-microcode/intel-microcode-20240312_p20240312.ebuild
index 957da662f92e3..5e2d305fc9ed6 100644
--- a/sys-firmware/intel-microcode/intel-microcode-20240312_p20240312.ebuild
+++ b/sys-firmware/intel-microcode/intel-microcode-20240312_p20240312.ebuild
@@ -83,7 +83,15 @@ MICROCODE_SIGNATURES_DEFAULT=""
# exclude specific CPU: MICROCODE_SIGNATURES="-s !0x00000686"
pkg_pretend() {
- use initramfs && mount-boot_pkg_pretend
+ if use initramfs; then
+ if [[ -z ${ROOT} ]] && use dist-kernel; then
+ # Check, but don't die because we can fix the problem
and then
+ # emerge --config ... to re-run installation.
+ nonfatal mount-boot_check_status
+ else
+ mount-boot_pkg_pretend
+ fi
+ fi
}
src_prepare() {
@@ -181,7 +189,7 @@ pkg_preinst() {
fi
# Make sure /boot is available if needed.
- use initramfs && mount-boot_pkg_preinst
+ use initramfs && ! use dist-kernel && mount-boot_pkg_preinst
local _initramfs_file="${ED}/boot/intel-uc.img"
@@ -274,21 +282,22 @@ pkg_preinst() {
pkg_prerm() {
# Make sure /boot is mounted so that we can remove /boot/intel-uc.img!
- use initramfs && mount-boot_pkg_prerm
+ use initramfs && ! use dist-kernel && mount-boot_pkg_prerm
}
pkg_postrm() {
# Don't forget to umount /boot if it was previously mounted by us.
- use initramfs && mount-boot_pkg_postrm
+ use initramfs && ! use dist-kernel && mount-boot_pkg_postrm
}
pkg_postinst() {
- # Don't forget to umount /boot if it was previously mounted by us.
if use initramfs; then
if [[ -z ${ROOT} ]] && use dist-kernel; then
dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}"
+ else
+ # Don't forget to umount /boot if it was previously
mounted by us.
+ mount-boot_pkg_postinst
fi
- mount-boot_pkg_postinst
fi
# We cannot give detailed information if user is affected or not:
diff --git
a/sys-firmware/intel-microcode/intel-microcode-20240514_p20240514.ebuild
b/sys-firmware/intel-microcode/intel-microcode-20240514_p20240514.ebuild
index c33321a94497a..656f5a519b913 100644
--- a/sys-firmware/intel-microcode/intel-microcode-20240514_p20240514.ebuild
+++ b/sys-firmware/intel-microcode/intel-microcode-20240514_p20240514.ebuild
@@ -83,7 +83,15 @@ MICROCODE_SIGNATURES_DEFAULT=""
# exclude specific CPU: MICROCODE_SIGNATURES="-s !0x00000686"
pkg_pretend() {
- use initramfs && mount-boot_pkg_pretend
+ if use initramfs; then
+ if [[ -z ${ROOT} ]] && use dist-kernel; then
+ # Check, but don't die because we can fix the problem
and then
+ # emerge --config ... to re-run installation.
+ nonfatal mount-boot_check_status
+ else
+ mount-boot_pkg_pretend
+ fi
+ fi
}
src_prepare() {
@@ -181,7 +189,7 @@ pkg_preinst() {
fi
# Make sure /boot is available if needed.
- use initramfs && mount-boot_pkg_preinst
+ use initramfs && ! use dist-kernel && mount-boot_pkg_preinst
local _initramfs_file="${ED}/boot/intel-uc.img"
@@ -274,21 +282,22 @@ pkg_preinst() {
pkg_prerm() {
# Make sure /boot is mounted so that we can remove /boot/intel-uc.img!
- use initramfs && mount-boot_pkg_prerm
+ use initramfs && ! use dist-kernel && mount-boot_pkg_prerm
}
pkg_postrm() {
# Don't forget to umount /boot if it was previously mounted by us.
- use initramfs && mount-boot_pkg_postrm
+ use initramfs && ! use dist-kernel && mount-boot_pkg_postrm
}
pkg_postinst() {
- # Don't forget to umount /boot if it was previously mounted by us.
if use initramfs; then
if [[ -z ${ROOT} ]] && use dist-kernel; then
dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}"
+ else
+ # Don't forget to umount /boot if it was previously
mounted by us.
+ mount-boot_pkg_postinst
fi
- mount-boot_pkg_postinst
fi
# We cannot give detailed information if user is affected or not:
diff --git
a/sys-firmware/intel-microcode/intel-microcode-20240531_p20240526.ebuild
b/sys-firmware/intel-microcode/intel-microcode-20240531_p20240526.ebuild
index c33321a94497a..656f5a519b913 100644
--- a/sys-firmware/intel-microcode/intel-microcode-20240531_p20240526.ebuild
+++ b/sys-firmware/intel-microcode/intel-microcode-20240531_p20240526.ebuild
@@ -83,7 +83,15 @@ MICROCODE_SIGNATURES_DEFAULT=""
# exclude specific CPU: MICROCODE_SIGNATURES="-s !0x00000686"
pkg_pretend() {
- use initramfs && mount-boot_pkg_pretend
+ if use initramfs; then
+ if [[ -z ${ROOT} ]] && use dist-kernel; then
+ # Check, but don't die because we can fix the problem
and then
+ # emerge --config ... to re-run installation.
+ nonfatal mount-boot_check_status
+ else
+ mount-boot_pkg_pretend
+ fi
+ fi
}
src_prepare() {
@@ -181,7 +189,7 @@ pkg_preinst() {
fi
# Make sure /boot is available if needed.
- use initramfs && mount-boot_pkg_preinst
+ use initramfs && ! use dist-kernel && mount-boot_pkg_preinst
local _initramfs_file="${ED}/boot/intel-uc.img"
@@ -274,21 +282,22 @@ pkg_preinst() {
pkg_prerm() {
# Make sure /boot is mounted so that we can remove /boot/intel-uc.img!
- use initramfs && mount-boot_pkg_prerm
+ use initramfs && ! use dist-kernel && mount-boot_pkg_prerm
}
pkg_postrm() {
# Don't forget to umount /boot if it was previously mounted by us.
- use initramfs && mount-boot_pkg_postrm
+ use initramfs && ! use dist-kernel && mount-boot_pkg_postrm
}
pkg_postinst() {
- # Don't forget to umount /boot if it was previously mounted by us.
if use initramfs; then
if [[ -z ${ROOT} ]] && use dist-kernel; then
dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}"
+ else
+ # Don't forget to umount /boot if it was previously
mounted by us.
+ mount-boot_pkg_postinst
fi
- mount-boot_pkg_postinst
fi
# We cannot give detailed information if user is affected or not: