mirror of
https://github.com/netbootxyz/netboot.xyz.git
synced 2026-08-24 10:14:02 -05:00
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.
84 lines
2.4 KiB
Django/Jinja
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
|