#!ipxe :global_vars # set site name set site_name netboot.xyz # set boot domain set boot_domain boot.netboot.xyz # set location of memdisk set memdisk http://${boot_domain}/memdisk # set location of custom netboot.xyz live assets set live_endpoint https://github.com/netbootxyz # signature check enabled? set sigs_enabled true # set location of signatures for sources set sigs http://${boot_domain}/sigs/ # set location of latest iPXE iseq ${platform} efi && set ipxe_disk netboot.xyz-snponly.efi || set ipxe_disk netboot.xyz-undionly.kpxe # set default boot timeout set boot_timeout 300000 ###################################### # Media Locations for Licensed Distros ###################################### set rhel_base_url set win_base_url ################## # official mirrors ################## :mirrors ### AlmaLinux set almalinux_mirror http://repo.almalinux.org set almalinux_base_dir almalinux ### Alpine Linux set alpinelinux_mirror http://dl-cdn.alpinelinux.org set alpinelinux_base_dir alpine ### Arch Linux set archlinux_mirror mirrors.kernel.org set archlinux_base_dir archlinux ### CentOS set centos_mirror http://mirror.centos.org set centos_base_dir centos ### Debian set debian_mirror http://deb.debian.org set debian_base_dir debian ### Devuan set devuan_mirror http://deb.devuan.org set devuan_base_dir devuan ### Fedora set fedora_mirror http://mirrors.kernel.org set fedora_base_dir fedora ### Fedora CoreOS set coreos_mirror https://builds.coreos.fedoraproject.org set coreos_base_dir prod/streams ### FreeDOS set freedos_mirror http://www.ibiblio.org set freedos_base_dir pub/micro/pc-stuff/freedos/files/distributions/1.3/official ### IPFire set ipfire_mirror https://downloads.ipfire.org set ipfire_base_dir releases/ipfire-2.x ### Kali Linux set kali_mirror http://http.kali.org set kali_base_dir kali ### Mageia set mageia_mirror http://mirrors.kernel.org set mageia_base_dir mageia ### OpenBSD set openbsd_mirror http://ftp.openbsd.org set openbsd_base_dir pub/OpenBSD ### openEuler set openEuler_mirror http://repo.openeuler.org set openEuler_base_dir ### openSUSE set opensuse_mirror http://download.opensuse.org set opensuse_base_dir distribution/leap ### Rocky Linux set rockylinux_mirror http://download.rockylinux.org set rockylinux_base_dir pub/rocky ### Slackware set slackware_mirror http://mirrors.kernel.org set slackware_base_dir slackware ### SmartOS set smartos_mirror https://netboot.smartos.org/os/ set smartos_base_dir /platform/i86pc/ ### Ubuntu set ubuntu_mirror http://archive.ubuntu.com set ubuntu_base_dir ubuntu ################################################# # determine architectures and enable menu options ################################################# :architectures set menu_linux 1 set menu_bsd 1 set menu_unix 1 set menu_freedos 1 set menu_live 1 set menu_pci 1 set menu_windows 1 set menu_utils 1 iseq ${arch} i386 && goto i386 || iseq ${arch} x86_64 && goto x86_64 || iseq ${arch} arm64 && goto arm64 || goto architectures_end :x86_64 set menu_linux_i386 0 iseq ${platform} efi && goto efi || goto architectures_end :i386 set menu_linux 0 set menu_linux_i386 1 set menu_bsd 1 set menu_unix 0 set menu_freedos 1 set menu_live 0 set menu_windows 0 set menu_utils 1 iseq ${platform} efi && goto efi || goto architectures_end :arm64 set menu_linux 0 set menu_linux_arm 1 set menu_unix 0 set menu_freedos 0 set menu_live 0 set menu_live_arm 1 set menu_windows 0 set menu_utils 0 set menu_utils_arm 1 set menu_pci 0 iseq ${platform} efi && goto efi || goto architectures_end :efi set menu_bsd 0 set menu_freedos 0 set menu_unix 0 set menu_pci 0 goto architectures_end :architectures_end goto clouds ################################### # set iPXE cloud provider specifics ################################### :clouds iseq ${ipxe_cloud_config} gce && goto gce || iseq ${ipxe_cloud_config} metal && goto metal || iseq ${ipxe_cloud_config} packet && goto metal || goto clouds_end :gce set cmdline console=ttyS0,115200n8 goto clouds_end :metal iseq ${arch} i386 && goto metal_x86_64 || iseq ${arch} x86_64 && goto metal_x86_64 || iseq ${arch} arm64 && goto metal_arm64 || goto clouds_end :metal_x86_64 set cmdline console=ttyS1,115200n8 iseq ${platform} efi && set ipxe_disk netboot.xyz-metal-snp.efi || set ipxe_disk netboot.xyz-metal.kpxe set menu_linux_i386 0 set menu_freedos 0 set menu_windows 0 iseq ${platform} efi && set menu_pci 0 || goto clouds_end :metal_arm64 set cmdline console=ttyAMA0,115200 set ipxe_disk netboot.xyz-metal-arm64-snp.efi set menu_bsd 0 set menu_freedos 0 set menu_live 0 set menu_windows 0 set menu_utils 0 set menu_pci 0 goto clouds_end :clouds_end goto end :end set sigs_enabled false set archlinux_mirror mirror.juniorjpdj.pl set archlinux_base_dir archlinux exit