From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-dev+bounces-102063-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (2048 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id 8668F15802E
	for <garchives@archives.gentoo.org>; Wed, 26 Jun 2024 20:08:41 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id E98C3E2A1B;
	Wed, 26 Jun 2024 20:08:37 +0000 (UTC)
Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 89300E2A16
	for <gentoo-dev@lists.gentoo.org>; Wed, 26 Jun 2024 20:08:37 +0000 (UTC)
Message-ID: <6dea0d2f-c4aa-4604-8ec2-df1f93bfc13c@gentoo.org>
Date: Wed, 26 Jun 2024 22:08:33 +0200
Precedence: bulk
List-Post: <mailto:gentoo-dev@lists.gentoo.org>
List-Help: <mailto:gentoo-dev+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-dev+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-dev+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-dev.gentoo.org>
X-BeenThere: gentoo-dev@lists.gentoo.org
Reply-to: gentoo-dev@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: [gentoo-dev] [PATCH 4/5] sys-kernel/linux-firmware: complain less
 when /boot is not, mounted
To: gentoo-dev@lists.gentoo.org
References: <b2c825ff-81cd-4a4e-831f-b7b0e6ba6670@gentoo.org>
 <38ed17cb-950a-4abd-b904-537388dbe612@gentoo.org>
 <476674df-a57c-4c4d-ad1e-487211a4daf0@gentoo.org>
 <d27e11c9-8212-48bc-9581-9d537705095b@gentoo.org>
 <445f5086-fc75-4a54-bba7-ee3e7ccf035b@gentoo.org>
Content-Language: en-US, nl-NL
From: Andrew Nowa Ammerlaan <andrewammerlaan@gentoo.org>
Autocrypt: addr=andrewammerlaan@gentoo.org; keydata=
 xsBNBF3n3cUBCAC6uoDZ0XzaO29l8AzUblXQ5rxZI7nbGEnfFqjEQCK3oEXxsDa9Ez1myx3M
 ir53Vyx64Iz1Bq/TOS/PttgguPpiLggCpTTD2vavp5SwFmg272+P8bUJVJF2mMRm0OR/YPiA
 B5dNfcoLqKIj+ZMOtrZ72B7agkUn+iDt8lB2fZ7XhfZMyQBXICYSe+EiJJmTuvIhHhOn7GCT
 VjpwGYCCSw3F/j2VPmJPUftz6Nb4oWaiaJ6ZwroS2ECYqZKeo+dXCsmB/LZWYqIFSSPILTLZ
 f1Hh/TklnQqkNVO+nY/B/o9RVYAhWJbl/F4VaKlRXemE+pDZIALlK8kt0IFU6liUOHHlABEB
 AAHNLUFuZHJldyBBbW1lcmxhYW4gPGFuZHJld2FtbWVybGFhbkBnZW50b28ub3JnPsLAlwQT
 AQgAQQIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAIZARYhBAb/U0G9gF2wvH0HpqGfY2zU
 7bzRBQJlNiYEBQkJL3u/AAoJEKGfY2zU7bzRUeYH/33eX3sOyo3++xcqR/KrTNodkgWAknPe
 Jl8BiYdIn7zEgif5Fz6Uu8IzjfDpPd8uR82sbV2uQWarrpNmnPrAACKuAuYN9vnuLZ+9UWz6
 ybGqMm545+qsFtUTTzdveMPEWr2nr+payfxthK6OdgZU5ZseLxDS9KYmBeAC7RVnIWMVDn9n
 opmuFK5iGxIUvIbYIl/xrk2HPAIsh1ScLBy4z7r8PFmWT1XGC0Na6PJyEG2KiQXwjKxwsljQ
 6mKEAkKOkbifD0CSO8eg56ccf8WYo0s/+SiYjBjI9SEhbgZbiUbpTSw3eT/g4V2SKX1CYs1z
 717XjlMKzqBNaw+AzWgrk0TOwE0EXefdxQEIAJtT7965MCxOTic3mISWSI6Z3mFFYmUkxQt8
 gBVsTAezOrkd6xEt/HnFPZqeGnbSiV8gMFPKv4RkaXxWfQYKm+9/12qJNEFdVop1rpe77lU2
 h0elVXuWiWsNmwqEhQcs1mq/awzO81Lyob9Miai2qNQ9MBikmFAp9c4n8C42kPLVrTKPmemI
 95gZ1Y830W+udYg1jNqLF2ucMDUX1M1U2EfazWI0pNCwPoKnOqAJS+VQbyxtJ1IlE3+9sk+6
 hjlTTF+RDYGv5hUoWkmcXDM2X/Cl0XB4XYOWr17Wa6+WXC+80/iLxxolMqM4KfuIR5OizbqK
 2CRAJY7la7TSv1lTD1cAEQEAAcLAfAQYAQgAJgIbDBYhBAb/U0G9gF2wvH0HpqGfY2zU7bzR
 BQJlNiHABQkJL3d7AAoJEKGfY2zU7bzRjDwH/1fp/87km2YYVgrfP1aWLjAA/TwcEVycRJQQ
 S9Q6xuzgD5AYhjzBSONoN46cwf+gla6xndY0lCawsZN7whtJ/DhqSZEfL0HgHkJ6T8FCXexf
 n1s6XmIAxqIrMmfsuOkAPLJIHzAAGzQX8DXcRSj1cIDUpa1Uy7ncVvI4EzJBRtJVJXIbl+53
 NGauXU8ZuprPYkMSPuW3eHATFc0F5DhmlFUXh+HYYK+2QTO73TENMhngkrYcw63je5bRp/+f
 72XFKlf1gXHK1ivg8nYueyUfrxZTBGKagusOiQeOao2I1uYcHoFhPYJrQWePMyZiYyB6PR0K
 DR4B/Ulo3v0eBXaaYzo=
Organization: Gentoo Linux
In-Reply-To: <445f5086-fc75-4a54-bba7-ee3e7ccf035b@gentoo.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Archives-Salt: 48abd97b-6f12-49cf-a26e-294101bc5865
X-Archives-Hash: 536ce315f229a24f792a045a178b879e

 From 45a34aecafa64a666976e3d3d7944f8c8ff1e058 Mon Sep 17 00:00:00 2001
From: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Date: Tue, 25 Jun 2024 16:32:42 +0200
Subject: [PATCH] sys-kernel/linux-firmware: complain less when /boot is not
  mounted

when using dist-kernel we can correct the problem and then
emerge --config ...

Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
---
  .../linux-firmware-20240410.ebuild            | 21 +++++++++++++------
  .../linux-firmware-20240513.ebuild            | 21 +++++++++++++------
  .../linux-firmware-20240610.ebuild            | 21 +++++++++++++------
  .../linux-firmware-99999999.ebuild            | 21 +++++++++++++------
  4 files changed, 60 insertions(+), 24 deletions(-)

diff --git a/sys-kernel/linux-firmware/linux-firmware-20240410.ebuild 
b/sys-kernel/linux-firmware/linux-firmware-20240410.ebuild
index 1bb6954d00c88..b8bbed17f1a6d 100644
--- a/sys-kernel/linux-firmware/linux-firmware-20240410.ebuild
+++ b/sys-kernel/linux-firmware/linux-firmware-20240410.ebuild
@@ -69,7 +69,15 @@ QA_PREBUILT="*"
  PATCHES=( "${FILESDIR}"/${PN}-copy-firmware-r4.patch )

  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
  }

  pkg_setup() {
@@ -379,7 +387,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
  }

  pkg_postinst() {
@@ -397,21 +405,22 @@ pkg_postinst() {
  		fi
  	done

-	# 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
  }

  pkg_prerm() {
  	# Make sure /boot is mounted so that we can remove /boot/amd-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
  }
diff --git a/sys-kernel/linux-firmware/linux-firmware-20240513.ebuild 
b/sys-kernel/linux-firmware/linux-firmware-20240513.ebuild
index 1bb6954d00c88..b8bbed17f1a6d 100644
--- a/sys-kernel/linux-firmware/linux-firmware-20240513.ebuild
+++ b/sys-kernel/linux-firmware/linux-firmware-20240513.ebuild
@@ -69,7 +69,15 @@ QA_PREBUILT="*"
  PATCHES=( "${FILESDIR}"/${PN}-copy-firmware-r4.patch )

  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
  }

  pkg_setup() {
@@ -379,7 +387,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
  }

  pkg_postinst() {
@@ -397,21 +405,22 @@ pkg_postinst() {
  		fi
  	done

-	# 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
  }

  pkg_prerm() {
  	# Make sure /boot is mounted so that we can remove /boot/amd-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
  }
diff --git a/sys-kernel/linux-firmware/linux-firmware-20240610.ebuild 
b/sys-kernel/linux-firmware/linux-firmware-20240610.ebuild
index 1bb6954d00c88..b8bbed17f1a6d 100644
--- a/sys-kernel/linux-firmware/linux-firmware-20240610.ebuild
+++ b/sys-kernel/linux-firmware/linux-firmware-20240610.ebuild
@@ -69,7 +69,15 @@ QA_PREBUILT="*"
  PATCHES=( "${FILESDIR}"/${PN}-copy-firmware-r4.patch )

  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
  }

  pkg_setup() {
@@ -379,7 +387,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
  }

  pkg_postinst() {
@@ -397,21 +405,22 @@ pkg_postinst() {
  		fi
  	done

-	# 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
  }

  pkg_prerm() {
  	# Make sure /boot is mounted so that we can remove /boot/amd-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
  }
diff --git a/sys-kernel/linux-firmware/linux-firmware-99999999.ebuild 
b/sys-kernel/linux-firmware/linux-firmware-99999999.ebuild
index dc02d051d7ea4..88c5398099a38 100644
--- a/sys-kernel/linux-firmware/linux-firmware-99999999.ebuild
+++ b/sys-kernel/linux-firmware/linux-firmware-99999999.ebuild
@@ -84,7 +84,15 @@ pkg_setup() {
  }

  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_unpack() {
@@ -379,7 +387,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
  }

  pkg_postinst() {
@@ -397,21 +405,22 @@ pkg_postinst() {
  		fi
  	done

-	# 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
  }

  pkg_prerm() {
  	# Make sure /boot is mounted so that we can remove /boot/amd-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
  }