commit:     1e5be6af9463e13666223e95e078f4785a736e14
Author:     Alexander Tsoy <alexander <AT> tsoy <DOT> me>
AuthorDate: Wed Jun 18 09:41:30 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jun 22 09:46:46 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e5be6af

sys-kernel/linux-firmware: directory->symlink transition workaround

Bug: https://bugs.gentoo.org/958268#c3
Bug: https://bugs.gentoo.org/958268
Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me>
Part-of: https://github.com/gentoo/gentoo/pull/42653
Closes: https://github.com/gentoo/gentoo/pull/42653
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...ux-firmware-20250613.ebuild => linux-firmware-20250613-r1.ebuild} | 5 +++++
 sys-kernel/linux-firmware/linux-firmware-99999999.ebuild             | 5 +++++
 2 files changed, 10 insertions(+)

diff --git a/sys-kernel/linux-firmware/linux-firmware-20250613.ebuild 
b/sys-kernel/linux-firmware/linux-firmware-20250613-r1.ebuild
similarity index 98%
rename from sys-kernel/linux-firmware/linux-firmware-20250613.ebuild
rename to sys-kernel/linux-firmware/linux-firmware-20250613-r1.ebuild
index 2202b123f02c..fe39f88ef6cc 100644
--- a/sys-kernel/linux-firmware/linux-firmware-20250613.ebuild
+++ b/sys-kernel/linux-firmware/linux-firmware-20250613-r1.ebuild
@@ -371,6 +371,11 @@ pkg_preinst() {
                rm -rf "${EROOT}"/lib/firmware/qcom/LENOVO/21BX
        fi
 
+       # Fix 'symlink is blocked by a directory' 
https://bugs.gentoo.org/958268#c3
+       if has_version "<${CATEGORY}/${PN}-20250613" ; then
+               rm -rf "${EROOT}"/lib/firmware/nvidia/{ad103,ad104,ad106,ad107}
+       fi
+
        # Make sure /boot is available if needed.
        use initramfs && ! use dist-kernel && mount-boot_pkg_preinst
 }

diff --git a/sys-kernel/linux-firmware/linux-firmware-99999999.ebuild 
b/sys-kernel/linux-firmware/linux-firmware-99999999.ebuild
index 2202b123f02c..fe39f88ef6cc 100644
--- a/sys-kernel/linux-firmware/linux-firmware-99999999.ebuild
+++ b/sys-kernel/linux-firmware/linux-firmware-99999999.ebuild
@@ -371,6 +371,11 @@ pkg_preinst() {
                rm -rf "${EROOT}"/lib/firmware/qcom/LENOVO/21BX
        fi
 
+       # Fix 'symlink is blocked by a directory' 
https://bugs.gentoo.org/958268#c3
+       if has_version "<${CATEGORY}/${PN}-20250613" ; then
+               rm -rf "${EROOT}"/lib/firmware/nvidia/{ad103,ad104,ad106,ad107}
+       fi
+
        # Make sure /boot is available if needed.
        use initramfs && ! use dist-kernel && mount-boot_pkg_preinst
 }

Reply via email to