]> git.ipfire.org Git - thirdparty/dracut-ng.git/commitdiff
fix(dracut.sh): check that custom fw search patch exists before reading it
authorAntonio Alvarez Feijoo <antonio.feijoo@suse.com>
Thu, 18 Sep 2025 09:21:58 +0000 (11:21 +0200)
committerLaszlo <laszlo.gombos@gmail.com>
Thu, 18 Sep 2025 11:43:25 +0000 (07:43 -0400)
It may not exist, for example, when using an image builder like kiwi:

```
[ DEBUG   ]: 07:58:22 | /usr/bin/dracut: line 1095: /sys/module/firmware_class/parameters/path: No such file or directory
```

dracut.sh

index 79968925154650fb7a4d2c5f4bffc857fb60b157..53c572982ba4a7b3f0b56a9dbf38e7916f70f4ce 100755 (executable)
--- a/dracut.sh
+++ b/dracut.sh
@@ -1143,7 +1143,8 @@ drivers_dir="${drivers_dir%"${drivers_dir##*[!/]}"}"
 [[ $lvmconf_l ]] && lvmconf=$lvmconf_l
 [[ $dracutbasedir ]] || dracutbasedir="${dracutsysrootdir-}"/usr/lib/dracut
 [[ $fw_dir ]] || {
-    fw_path_para=$(< /sys/module/firmware_class/parameters/path)
+    [[ -e /sys/module/firmware_class/parameters/path ]] \
+        && fw_path_para=$(< /sys/module/firmware_class/parameters/path)
     fw_dir="${fw_path_para:+${dracutsysrootdir-}$fw_path_para:}${dracutsysrootdir-}/lib/firmware/updates/$kernel:${dracutsysrootdir-}/lib/firmware/updates:${dracutsysrootdir-}/lib/firmware/$kernel:${dracutsysrootdir-}/lib/firmware"
 }
 [[ $tmpdir_l ]] && tmpdir="$tmpdir_l"