Files
netboot.xyz/roles/netbootxyz/templates/menu/fedora.ipxe.j2
T
Antony Messerli 214e34961f Latest tuning, including utility menu generation
Creates proper ansible role structure
Creates utilities listing and allows for utility menu overrides
Splits utilities into efi and pcbios (legacy) so options
are hidden if they can't be used.
Add package list for debian
Split Ubuntu Live version loaders into seperate methods as versions
can behave differently.
2019-11-17 19:49:25 +00:00

84 lines
2.4 KiB
Django/Jinja

#!ipxe
# Fedora Operating System
# https://getfedora.org/
isset ${dhcp-server} && set ipparam ip=dhcp || set ipparam ip=${ip}::${gateway}:${netmask}:::none nameserver=${dns}
set ipparam BOOTIF=${netX/mac} ${ipparam}
goto ${menu} ||
:fedora
clear osversion
clear sku_type
clear ova
set os Fedora
menu Fedora - ${arch} - Image Sig Checks: [${img_sigs_enabled}]
item --gap Latest Releases
{% for item in releases.fedora.versions %}
item {{ item.code_name }} ${space} ${os} {{ item.name }}
{% endfor %}
iseq ${arch} x86_64 && item rawhide ${space} ${os} rawhide ||
isset ${osversion} || choose osversion || goto linux_menu
set ova ${os} ${osversion}
goto product_sku
:product_sku
menu ${os} ${arch} sku type
item Everything ${ova} Everything
item Server ${ova} Server
item Workstation ${ova} Workstation
item Atomic ${ova} Atomic
iseq ${arch} x86_64 && item Silverblue ${ova} Silverblue ||
isset ${sku_type} || choose sku_type || goto fedora
set dir ${fedora_base_dir}/releases/${osversion}/${sku_type}/${arch}/os
iseq ${osversion} rawhide && set dir ${fedora_base_dir}/development/${osversion}/${sku_type}/${arch}/os ||
iseq ${sku_type} Atomic && iseq ${osversion} 29 && set dir fedora-alt/atomic/stable/Fedora-Atomic-29-20181025.1/AtomicHost/x86_64/os ||
set ova ${ova} ${sku_type}
echo ${cls}
goto boottype
:boottype
menu ${os} ${arch} boot type
item normal ${ova} install
item rescue ${ova} rescue
item kickstart ${ova} specify kickstart url
isset ${bt} || choose bt || goto fedora
echo ${cls}
iseq ${bt} rescue && goto rescue ||
iseq ${bt} kickstart && goto kickstart ||
goto boot
:rescue
set params rescue ||
goto boot
:kickstart
echo -n Specify kickstart URL for ${os} ${osversion}: && read ksurl
set params ks=${ksurl} ||
goto boot
:boot
imgfree
kernel http://${fedora_mirror}/${dir}/images/pxeboot/vmlinuz repo=http://${fedora_mirror}/${dir} ${params} ${console} ${ipparam} initrd=initrd.img
initrd http://${fedora_mirror}/${dir}/images/pxeboot/initrd.img
echo
echo MD5sums:
md5sum vmlinuz initrd.img
iseq ${osversion} rawhide && goto skip_sigs ||
iseq ${img_sigs_enabled} true && goto verify_sigs || goto skip_sigs
:verify_sigs
echo
echo Checking signatures...
imgverify vmlinuz ${sigs}${dir}/images/pxeboot/vmlinuz.sig || goto error
imgverify initrd.img ${sigs}${dir}/images/pxeboot/initrd.img.sig || goto error
echo Signatures verified!
echo
:skip_sigs
boot
goto linux_menu
:linux_menu
clear menu
exit 0