Created
March 21, 2019 09:20
-
-
Save mulbc/9cf9167ec39017869a41b00903ee75c2 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!ipxe | |
# Source: https://gist.github.com/robinsmidsrod/2234639#file-menu-ipxe | |
# Some menu defaults | |
#set menu-timeout 5000 | |
set menu-timeout 0 | |
set submenu-timeout ${menu-timeout} | |
isset ${menu-default} || set menu-default exit | |
# Figure out if client is 64-bit capable | |
cpuid --ext 29 && set arch x64 || set arch x86 | |
cpuid --ext 29 && set archl amd64 || set archl i386 | |
:start | |
menu iPXE boot menu | |
item --gap -- ------------------------- Operating systems ------------------------------ | |
item --gap -- ------------------------- Tools and utilities ---------------------------- | |
item --key p pxelinux Load PXELinux menu | |
item --key d menu-diag Diagnostics tools... | |
item --key i menu-install Installers... | |
item --gap -- ------------------------- Advanced options ------------------------------- | |
item --key c config Configure settings | |
item shell Drop to iPXE shell | |
item reboot Reboot computer | |
item | |
item --key x exit Exit iPXE and continue BIOS boot | |
choose --timeout ${menu-timeout} --default ${menu-default} selected || goto cancel | |
set menu-timeout 0 | |
goto ${selected} | |
:cancel | |
echo You cancelled the menu, dropping you to a shell | |
:shell | |
echo Type 'exit' to get the back to the menu | |
shell | |
set menu-timeout 0 | |
set submenu-timeout 0 | |
goto start | |
:failed | |
echo Booting failed, dropping to shell | |
goto shell | |
:reboot | |
reboot | |
:exit | |
exit | |
:config | |
config | |
goto start | |
:back | |
set submenu-timeout 0 | |
clear submenu-default | |
goto start | |
############################ INSTALLER MENU ######################### | |
:menu-install | |
menu Installers | |
item proxmox Install Proxmox 5.1 via PXE | |
item proxmox-iso Install Proxmox 5.1 via ISO | |
item fed28 Install Fedora Server from Halifax server | |
item ubuntuBio Install Ubuntu Bionic from Halifax server | |
item | |
item --key 0x08 back Back to top menu... | |
iseq ${menu-default} menu-install && isset ${submenu-default} && goto menu-install-timed || | |
choose selected && goto ${selected} || goto start | |
:menu-install-timed | |
choose --timeout ${submenu-timeout} --default ${submenu-default} selected && goto ${selected} || goto start | |
:ubuntuBio | |
set base-url http://ftp.halifax.rwth-aachen.de/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64/ | |
kernel ${base-url}/linux | |
initrd ${base-url}/initrd.gz | |
boot || goto start | |
:fed28 | |
set base-url http://ftp.halifax.rwth-aachen.de/fedora/linux/releases/28/Server/x86_64/os/ | |
kernel ${base-url}/isolinux/vmlinuz ip=dhcp inst.stage2=${base-url} | |
initrd ${base-url}/isolinux/initrd.img | |
boot || goto start | |
goto start | |
:proxmox | |
kernel proxmox/linux26 vga=791 video=vesafb:ywrap,mtrr ramdisk_size=16777216 rw quiet splash=verbose | |
initrd proxmox/initrd.iso.img | |
boot || goto start | |
goto start | |
:proxmox-iso | |
initrd http://10.10.10.5/proxmox5.1.iso | |
chain memdisk iso || goto start | |
goto start | |
goto start |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment