Summary: | sys-kernel/genkernel-4.2.1-r1 break FIRMWARE_FILES in /etc/genkernel.conf | ||
---|---|---|---|
Product: | Gentoo Hosted Projects | Reporter: | Bogdan <bogdan.pylypenko107> |
Component: | genkernel | Assignee: | Gentoo Genkernel Maintainers <genkernel> |
Status: | UNCONFIRMED --- | ||
Severity: | normal | CC: | boris2.9 |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Bogdan
2021-03-30 20:02:59 UTC
No, this was actually a bugfix, see https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=9722fb1b99011c720459fa5f11e9b78929b060ac for more details. tl;dr Use comma-separated instead of space-separated list. This will work with your existing configuration, you just have to update it. Please, improve normalization of FIRMWARE_FILES value before parsing: 1) remove spaces at start of line and at end of line: Normalize line from: FIRMWARE_FILES=" amd-ucode/microcode_amd_fam17h.bin,amd/amd_sev_fam17h_model0xh.sbin " Normalize line to: FIRMWARE_FILES=" amd-ucode/microcode_amd_fam17h.bin,amd/amd_sev_fam17h_model0xh.sbin" 2) remove spaces beetwen comma (symbol ',') and next non-space character: Normalize line from: FIRMWARE_FILES="amd-ucode/microcode_amd_fam17h.bin, amd/amd_sev_fam17h_model0xh.sbin" Normalize line to: FIRMWARE_FILES="amd-ucode/microcode_amd_fam17h.bin,amd/amd_sev_fam17h_model0xh.sbin" With those 2 rules, line: FIRMWARE_FILES=" amd-ucode/microcode_amd_fam17h.bin, amd/amd_sev_fam17h_model0xh.sbin" will be normalized to: FIRMWARE_FILES="amd-ucode/microcode_amd_fam17h.bin,amd/amd_sev_fam17h_model0xh.sbin" and parsed correctly. I doubt that this will happen. It's written in Bash and something like trimming isn't that easy. And why should we spend time on this when all you have to do is fixing your config? It isn't that hard to change > FIRMWARE_FILES="amd-ucode/microcode_amd_fam17h.bin amd/amd_sev_fam17h_model0xh.sbin" > FIRMWARE_FILES+=" regulatory.db regulatory.db.p7s" > FIRMWARE_FILES+=" rtw88/rtw8822c_wow_fw.bin rtw88/rtw8822c_fw.bin" > FIRMWARE_FILES+=" rtl_bt/rtl8822cu_fw.bin rtl_bt/rtl8822cu_config.bin" > FIRMWARE_FILES+=" mt7601u.bin" > FIRMWARE_FILES+=" amdgpu/renoir_asd.bin amdgpu/renoir_ce.bin amdgpu/renoir_dmcub.bin" to something like > FIRMWARE_FILES="amd-ucode/microcode_amd_fam17h.bin,amd/amd_sev_fam17h_model0xh.sbin" > FIRMWARE_FILES+=",regulatory.db,regulatory.db.p7s" > FIRMWARE_FILES+=",rtw88/rtw8822c_wow_fw.bin,rtw88/rtw8822c_fw.bin" > FIRMWARE_FILES+=",rtl_bt/rtl8822cu_fw.bin,rtl_bt/rtl8822cu_config.bin" > FIRMWARE_FILES+=",mt7601u.bin" > FIRMWARE_FILES+=",amdgpu/renoir_asd.bin,amdgpu/renoir_ce.bin,amdgpu/renoir_dmcub.bin" Sadly, this broke my setup: FIRMWARE_FILES="i915/kbl*" I was using Bash globbing, it wasn't documented at all but it was working pretty well. |