ci: patch livecd-creator __get_efi_image_stanza LABEL → CDLABEL
Upstream bug in /usr/lib/python3.14/site-packages/imgcreate/live.py:
if self._isDracut:
args["rootlabel"] = "live:LABEL=%(fslabel)s" # WRONG
else:
args["rootlabel"] = "CDLABEL=%(fslabel)s"
For dracut path on EFI grub it writes `root=live:LABEL=...` but
dracut needs `live:CDLABEL=...` to look up ISO9660 by CD volume id.
Result: parse-livenet hook stalls indefinitely.
CI now sed-patches the file in-place before build. Reported upstream
livecd-tools as separate task.
This commit is contained in:
parent
ef54a246f0
commit
a23ce6310a
1 changed files with 10 additions and 0 deletions
10
.github/workflows/build-iso.yml
vendored
10
.github/workflows/build-iso.yml
vendored
|
|
@ -57,6 +57,7 @@ jobs:
|
||||||
lorax \
|
lorax \
|
||||||
livecd-tools \
|
livecd-tools \
|
||||||
pykickstart \
|
pykickstart \
|
||||||
|
python3-imgcreate \
|
||||||
anaconda-tui \
|
anaconda-tui \
|
||||||
squashfs-tools \
|
squashfs-tools \
|
||||||
xorriso \
|
xorriso \
|
||||||
|
|
@ -67,6 +68,15 @@ jobs:
|
||||||
|
|
||||||
cd /work
|
cd /work
|
||||||
|
|
||||||
|
# PATCH: livecd-creator bug — __get_efi_image_stanza writes
|
||||||
|
# `root=live:LABEL=...` instead of `live:CDLABEL=...` for dracut.
|
||||||
|
# Result: dracut hangs on parse-livenet looking for non-CD label.
|
||||||
|
# Fix in-place before running build.
|
||||||
|
LIVE_PY=$(python3 -c 'import imgcreate, os; print(os.path.dirname(imgcreate.__file__))')/live.py
|
||||||
|
sed -i 's|"live:LABEL=%(fslabel)s"|"live:CDLABEL=%(fslabel)s"|g' "$LIVE_PY"
|
||||||
|
grep -n 'CDLABEL=%(fslabel)s' "$LIVE_PY" || { echo "[ERR] patch failed"; exit 1; }
|
||||||
|
echo "[OK] livecd-creator patched: LABEL= → CDLABEL= for EFI dracut stanza"
|
||||||
|
|
||||||
# CI uses ks-ci.ks (no local fix-repo line). Generated from main ks.
|
# CI uses ks-ci.ks (no local fix-repo line). Generated from main ks.
|
||||||
# Also strip flags livecd-creator doesn't recognize.
|
# Also strip flags livecd-creator doesn't recognize.
|
||||||
sed -e '/veilor-fix/d' \
|
sed -e '/veilor-fix/d' \
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue