aboutsummaryrefslogtreecommitdiffstats
path: root/examples/tg23/pxe
diff options
context:
space:
mode:
Diffstat (limited to 'examples/tg23/pxe')
-rw-r--r--examples/tg23/pxe/README.md1
-rw-r--r--examples/tg23/pxe/bg.pngbin0 -> 270329 bytes
-rw-r--r--examples/tg23/pxe/debian.conf97
-rw-r--r--examples/tg23/pxe/menu.conf86
4 files changed, 184 insertions, 0 deletions
diff --git a/examples/tg23/pxe/README.md b/examples/tg23/pxe/README.md
new file mode 100644
index 0000000..fcec3d5
--- /dev/null
+++ b/examples/tg23/pxe/README.md
@@ -0,0 +1 @@
+Built on https://github.com/netbootxyz/netboot.xyz and ipxe.
diff --git a/examples/tg23/pxe/bg.png b/examples/tg23/pxe/bg.png
new file mode 100644
index 0000000..f798c3a
--- /dev/null
+++ b/examples/tg23/pxe/bg.png
Binary files differ
diff --git a/examples/tg23/pxe/debian.conf b/examples/tg23/pxe/debian.conf
new file mode 100644
index 0000000..b9f50d4
--- /dev/null
+++ b/examples/tg23/pxe/debian.conf
@@ -0,0 +1,97 @@
+#!ipxe
+
+# Debian Operating System
+# http://www.debian.org
+
+goto ${menu}
+
+:debian
+set os Debian
+set os_arch ${arch}
+iseq ${os_arch} x86_64 && set os_arch amd64 ||
+iseq ${os_arch} i386 && set os_arch i386 ||
+iseq ${os_arch} arm64 && set os_arch arm64 ||
+clear debian_version
+clear older_release
+menu ${os} - ${os_arch}
+item --gap Latest Releases
+item bullseye ${space} ${os} 11.0 (bullseye)
+item buster ${space} ${os} 10.0 (buster)
+item stretch ${space} ${os} 9.0 (stretch)
+item --gap Testing Releases
+item bookworm ${space} ${os} bookworm (testing)
+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 ||
+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-${os_arch}/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-${os_arch}/current/images/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...
+item systems ${space} Systems inforscreens
+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_systems
+set preseedurl http://systems-ansible.tg23.gathering.org/preseed.conf
+set install_params auto=true priority=high preseed/url=${preseedurl}
+goto deb_text
+
+:deb_text
+set dir ${dir}${menu}-installer/${os_arch}
+goto deb_boot
+
+:deb_graphical
+set dir ${dir}gtk/${menu}-installer/${os_arch}
+set install_params vga=788
+goto deb_boot
+
+:deb_boot
+imgfree
+kernel ${debian_mirror}/${dir}/linux ${install_params} ${netcfg} ${mirrorcfg} initrd=initrd.magic ${cmdline}
+initrd ${debian_mirror}/${dir}/initrd.gz
+echo
+echo MD5sums:
+md5sum linux initrd.gz
+boot
+
+:debian_exit
+clear menu
+exit 0 \ No newline at end of file
diff --git a/examples/tg23/pxe/menu.conf b/examples/tg23/pxe/menu.conf
new file mode 100644
index 0000000..001ec11
--- /dev/null
+++ b/examples/tg23/pxe/menu.conf
@@ -0,0 +1,86 @@
+#!ipxe
+console --x 1280 --y 720 ||
+console --picture http://boot.tg23.gathering.org/bg.png --left 360 --right 10 --top 15 --bottom 50 ||
+
+:start
+isset ${arch} && goto skip_arch_detect ||
+cpuid --ext 29 && set arch x86_64 || set arch i386
+iseq ${buildarch} arm64 && set arch arm64 ||
+:skip_arch_detect
+chain --autofree boot.cfg ||
+ntp 0.pool.ntp.org ||
+iseq ${cls} serial && goto ignore_cls ||
+set cls:hex 1b:5b:4a # ANSI clear screen sequence - "^[[J"
+set cls ${cls:string}
+:ignore_cls
+
+isset ${menu} && goto ${menu} ||
+isset ${ip} || dhcp
+
+:main_menu
+clear menu
+set space:hex 20:20
+set space ${space:string}
+menu The Gathering 2023
+item --gap Default:
+item local ${space} Boot from local disk
+item --gap Distributions:
+iseq ${menu_linux} 1 && item linux ${space} Linux Network Installs (64-bit) ||
+iseq ${menu_linux_i386} 1 && item linux-i386 ${space} Linux Network Installs (32-bit) ||
+iseq ${menu_linux_arm} 1 && item linux-arm ${space} Linux Network Installs (arm64) ||
+iseq ${menu_live} 1 && item live ${space} Live CDs ||
+iseq ${menu_live_arm} 1 && item live-arm ${space} Live CDs ||
+iseq ${menu_bsd} 1 && item bsd ${space} BSD Installs ||
+iseq ${menu_unix} 1 && item unix ${space} Unix Network Installs ||
+iseq ${menu_freedos} 1 && item freedos ${space} FreeDOS ||
+item --gap Tools:
+iseq ${menu_utils} 1 && iseq ${platform} efi && item utils-efi ${space} Utilities (UEFI) ||
+iseq ${menu_utils} 1 && iseq ${platform} pcbios && iseq ${arch} x86_64 && item utils-pcbios-64 ${space} Utilities (64-bit) ||
+iseq ${menu_utils} 1 && iseq ${platform} pcbios && iseq ${arch} i386 && item utils-pcbios-32 ${space} Utilities (32-bit) ||
+iseq ${menu_utils_arm} 1 && item utils-arm ${space} Utilities (arm64) ||
+item change_arch ${space} Architecture: ${arch}
+item shell ${space} iPXE shell
+item netinfo ${space} Network card info
+item lspci ${space} PCI Device List
+item
+item
+item
+item --gap Har du problemer?
+item --gap Ta kontakt med Tech:Support i Servicedesken.
+isset ${menu} && set timeout 0 || set timeout ${boot_timeout}
+choose --timeout ${timeout} --default ${menu} menu || goto local
+echo ${cls}
+goto ${menu} ||
+iseq ${sigs_enabled} true && goto verify_sigs || goto change_menu
+
+:verify_sigs
+imgverify ${menu}.ipxe ${sigs}${menu}.ipxe.sig || goto error
+goto change_menu
+
+:change_menu
+chain ${menu}.ipxe || goto error
+goto main_menu
+
+:error
+echo Error occured, press any key to return to menu ...
+prompt
+goto main_menu
+
+:local
+echo Booting from local disks ...
+exit 0
+
+:shell
+echo Type "exit" to return to menu.
+set menu main_menu
+shell
+goto main_menu
+
+:change_arch
+iseq ${arch} x86_64 && set arch i386 && set menu_linux_i386 1 && set menu_linux 0 && goto main_menu ||
+iseq ${arch} i386 && set arch x86_64 && set menu_linux_i386 0 && set menu_linux 1 && goto main_menu ||
+goto main_menu
+
+:sig_check
+iseq ${sigs_enabled} true && set sigs_enabled false || set sigs_enabled true
+goto main_menu \ No newline at end of file