[GH-ISSUE #276] Debian: Support "daily" debian-installer #118

Closed
opened 2026-02-27 14:50:26 +03:00 by kerem · 2 comments
Owner

Originally created by @jbglaw on GitHub (Oct 20, 2018).
Original GitHub issue: https://github.com/netbootxyz/netboot.xyz/issues/276

Originally assigned to: @thelamer on GitHub.

The current d-i seems to be broken for sid (mismatch between kernel image and sid's distro kernel package), but the daily build of debian-installer is already fixed. It would be nice to be able to use the daily build, to be found at:

https://d-i.debian.org/daily-images/amd64/daily/netboot/debian-installer/amd64/

(There's the usual "linux" and "initrd.gz" files.)

Originally created by @jbglaw on GitHub (Oct 20, 2018). Original GitHub issue: https://github.com/netbootxyz/netboot.xyz/issues/276 Originally assigned to: @thelamer on GitHub. The current d-i seems to be broken for sid (mismatch between kernel image and sid's distro kernel package), but the daily build of debian-installer is already fixed. It would be nice to be able to use the daily build, to be found at: https://d-i.debian.org/daily-images/amd64/daily/netboot/debian-installer/amd64/ (There's the usual "linux" and "initrd.gz" files.)
kerem 2026-02-27 14:50:26 +03:00
Author
Owner

@thelamer commented on GitHub (Dec 13, 2019):

I wrote this up and all boot params are correct:

#!ipxe

# Debian Operating System
# http://www.debian.org

goto ${menu}

:debian
set os Debian
clear debian_version
clear older_release
menu ${os} - ${arch_a} - Image Sig Checks: [${img_sigs_enabled}]
item --gap Latest Releases
item buster ${space} ${os} 10.0 (buster)
item stretch ${space} ${os} 9.0 (stretch)
item jessie ${space} ${os} 8.0 (jessie)
item wheezy ${space} ${os} 7.0 (jessie)
item --gap Testing Releases
item bullseye ${space} ${os} bullseye (testing)
item daily ${space} ${os} daily (daily)
item sid ${space} ${os} sid (unstable)
item --gap Older Releases
item older_release ${space} Set release codename...
choose debian_version || goto debian_exit
iseq ${debian_version} older_release && goto older_release ||
iseq ${debian_version} daily && goto dailycfg ||
goto mirrorcfg

:older_release
set older_release true
set debian_mirror http://archive.debian.org
echo Setting mirror to ${debian_mirror}
clear debian_version
echo -n Please set enter code name of release: ${} && read debian_version
set dir ${debian_base_dir}/dists/${debian_version}/main/installer-${arch_a}/current/images/netboot/
goto deb_boot_type

:mirrorcfg
set debian_mirror ${debian_mirror}
set mirrorcfg mirror/suite=${debian_version}
set dir ${debian_base_dir}/dists/${debian_version}/main/installer-${arch_a}/current/images/netboot/
goto deb_boot_type

:dailycfg
set debian_mirror http://d-i.debian.org
set mirrorcfg mirror/suite=${debian_version}
set dir daily-images/amd64/daily/netboot/
goto deb_boot_type

:deb_boot_type
menu ${os} [${debian_version}] Installer
item --gap Install types
item text ${space} Text Based Install
item graphical ${space} Graphical Based Install
item rescue ${space} Rescue Mode
item expert ${space} Expert Install
item preseed ${space} Specify preseed url...
choose --default ${type} type || goto debian

echo ${cls}
goto deb_${type}

:deb_rescue
set install_params rescue/enable=true
goto deb_text

:deb_expert
set install_params priority=low
goto deb_text

:deb_preseed
echo -n Specify preseed URL for ${os} ${debian_version}: && read preseedurl
set install_params auto=true priority=critical preseed/url=${preseedurl}
goto deb_text

:deb_text
set dir ${dir}${menu}-installer/${arch_a}
goto deb_boot

:deb_graphical
set dir ${dir}gtk/${menu}-installer/${arch_a}
set install_params vga=788
goto deb_boot

:deb_boot
imgfree
echo Boot parameters: ${install_params} -- quiet ${params}
kernel ${debian_mirror}/${dir}/linux ${install_params} ${netcfg} ${mirrorcfg} ${console} -- quiet ${params} initrd=initrd.gz
initrd ${debian_mirror}/${dir}/initrd.gz
echo
echo MD5sums:
md5sum linux initrd.gz
iseq ${img_sigs_enabled} true && iseq ${older_release} true && goto skip_sigs ||
iseq ${img_sigs_enabled} true && goto verify_sigs || goto skip_sigs
:verify_sigs
echo
echo Checking signatures...
imgverify linux ${sigs}${dir}/linux.sig || goto error
imgverify initrd.gz ${sigs}${dir}/initrd.gz.sig || goto error
echo Signatures verified!
echo
:skip_sigs
boot

:debian_exit
clear menu
exit 0

But when booting you get back "Deep recursion configuring package libc6-udeb (dep loop?)"
Might be a problem with running the dailies??
As far as I can tell from their boot menu entries on the mirror the syntax is correct, we should table this until someone can make it boot

<!-- gh-comment-id:565249346 --> @thelamer commented on GitHub (Dec 13, 2019): I wrote this up and all boot params are correct: ``` #!ipxe # Debian Operating System # http://www.debian.org goto ${menu} :debian set os Debian clear debian_version clear older_release menu ${os} - ${arch_a} - Image Sig Checks: [${img_sigs_enabled}] item --gap Latest Releases item buster ${space} ${os} 10.0 (buster) item stretch ${space} ${os} 9.0 (stretch) item jessie ${space} ${os} 8.0 (jessie) item wheezy ${space} ${os} 7.0 (jessie) item --gap Testing Releases item bullseye ${space} ${os} bullseye (testing) item daily ${space} ${os} daily (daily) item sid ${space} ${os} sid (unstable) item --gap Older Releases item older_release ${space} Set release codename... choose debian_version || goto debian_exit iseq ${debian_version} older_release && goto older_release || iseq ${debian_version} daily && goto dailycfg || goto mirrorcfg :older_release set older_release true set debian_mirror http://archive.debian.org echo Setting mirror to ${debian_mirror} clear debian_version echo -n Please set enter code name of release: ${} && read debian_version set dir ${debian_base_dir}/dists/${debian_version}/main/installer-${arch_a}/current/images/netboot/ goto deb_boot_type :mirrorcfg set debian_mirror ${debian_mirror} set mirrorcfg mirror/suite=${debian_version} set dir ${debian_base_dir}/dists/${debian_version}/main/installer-${arch_a}/current/images/netboot/ goto deb_boot_type :dailycfg set debian_mirror http://d-i.debian.org set mirrorcfg mirror/suite=${debian_version} set dir daily-images/amd64/daily/netboot/ goto deb_boot_type :deb_boot_type menu ${os} [${debian_version}] Installer item --gap Install types item text ${space} Text Based Install item graphical ${space} Graphical Based Install item rescue ${space} Rescue Mode item expert ${space} Expert Install item preseed ${space} Specify preseed url... choose --default ${type} type || goto debian echo ${cls} goto deb_${type} :deb_rescue set install_params rescue/enable=true goto deb_text :deb_expert set install_params priority=low goto deb_text :deb_preseed echo -n Specify preseed URL for ${os} ${debian_version}: && read preseedurl set install_params auto=true priority=critical preseed/url=${preseedurl} goto deb_text :deb_text set dir ${dir}${menu}-installer/${arch_a} goto deb_boot :deb_graphical set dir ${dir}gtk/${menu}-installer/${arch_a} set install_params vga=788 goto deb_boot :deb_boot imgfree echo Boot parameters: ${install_params} -- quiet ${params} kernel ${debian_mirror}/${dir}/linux ${install_params} ${netcfg} ${mirrorcfg} ${console} -- quiet ${params} initrd=initrd.gz initrd ${debian_mirror}/${dir}/initrd.gz echo echo MD5sums: md5sum linux initrd.gz iseq ${img_sigs_enabled} true && iseq ${older_release} true && goto skip_sigs || iseq ${img_sigs_enabled} true && goto verify_sigs || goto skip_sigs :verify_sigs echo echo Checking signatures... imgverify linux ${sigs}${dir}/linux.sig || goto error imgverify initrd.gz ${sigs}${dir}/initrd.gz.sig || goto error echo Signatures verified! echo :skip_sigs boot :debian_exit clear menu exit 0 ``` But when booting you get back "Deep recursion configuring package libc6-udeb (dep loop?)" Might be a problem with running the dailies?? As far as I can tell from their boot menu entries on the mirror the syntax is correct, we should table this until someone can make it boot
Author
Owner

@thelamer commented on GitHub (Dec 30, 2019):

When I came back to check into this it turns out the build is broken at head and this is something that happens from time to time.
https://d-i.debian.org/daily-images/amd64/20191230-00:04/build_netboot.log
The result is there is no netboot build output.
I do not see us ever adding this to the menus as it is a rolling endpoint that we have zero quality control over.

<!-- gh-comment-id:569565735 --> @thelamer commented on GitHub (Dec 30, 2019): When I came back to check into this it turns out the build is broken at head and this is something that happens from time to time. https://d-i.debian.org/daily-images/amd64/20191230-00:04/build_netboot.log The result is there is no netboot build output. I do not see us ever adding this to the menus as it is a rolling endpoint that we have zero quality control over.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/netboot.xyz#118
No description provided.