From 1adf7dcc28fb2fd60984ac4496ed788bf17e9d15 Mon Sep 17 00:00:00 2001 From: Trevor Batley Date: Tue, 2 Jul 2024 14:58:59 +1000 Subject: [PATCH] add ISOlinux --- isolinux/CVS/Entries | 6 ++ isolinux/CVS/Repository | 1 + isolinux/CVS/Root | 1 + isolinux/boot.msg | 5 ++ isolinux/grub.conf | 17 +++++ isolinux/help.txt | 23 +++++++ isolinux/isolinux.cfg | 135 ++++++++++++++++++++++++++++++++++++++++ isolinux/splash.png | Bin 0 -> 18859 bytes 8 files changed, 188 insertions(+) create mode 100644 isolinux/CVS/Entries create mode 100644 isolinux/CVS/Repository create mode 100644 isolinux/CVS/Root create mode 100644 isolinux/boot.msg create mode 100644 isolinux/grub.conf create mode 100644 isolinux/help.txt create mode 100644 isolinux/isolinux.cfg create mode 100644 isolinux/splash.png diff --git a/isolinux/CVS/Entries b/isolinux/CVS/Entries new file mode 100644 index 0000000..6b9650f --- /dev/null +++ b/isolinux/CVS/Entries @@ -0,0 +1,6 @@ +/boot.msg/1.1/Wed May 31 17:47:47 2017// +/grub.conf/1.2/Wed Nov 25 13:33:10 2020// +/help.txt/1.1/Wed May 31 17:47:47 2017// +/isolinux.cfg/1.10/Wed Aug 17 19:16:19 2022// +/splash.png/1.1/Wed May 31 17:47:47 2017// +D diff --git a/isolinux/CVS/Repository b/isolinux/CVS/Repository new file mode 100644 index 0000000..5ee056b --- /dev/null +++ b/isolinux/CVS/Repository @@ -0,0 +1 @@ +cdrom.image/sme10/isolinux diff --git a/isolinux/CVS/Root b/isolinux/CVS/Root new file mode 100644 index 0000000..c00a8e4 --- /dev/null +++ b/isolinux/CVS/Root @@ -0,0 +1 @@ +:ext:shell.koozali.org:/cvs/smeserver diff --git a/isolinux/boot.msg b/isolinux/boot.msg new file mode 100644 index 0000000..ff54899 --- /dev/null +++ b/isolinux/boot.msg @@ -0,0 +1,5 @@ + +splash.lss + + - Press the 0107 key to begin the installation process. + diff --git a/isolinux/grub.conf b/isolinux/grub.conf new file mode 100644 index 0000000..f9e82c4 --- /dev/null +++ b/isolinux/grub.conf @@ -0,0 +1,17 @@ +#debug --graphics +default=2 +splashimage=@SPLASHPATH@ +timeout 60 +hiddenmenu +title Install Koozali SME Server 10 + findiso + kernel @KERNELPATH@ @ROOT@ quiet + initrd @INITRDPATH@ +title Install Koozali SME Server 10 in text mode + findiso + kernel @KERNELPATH@ @ROOT@ quiet text + initrd @INITRDPATH@ +title Test this media & install Koozali SME Server 10 + findiso + kernel @KERNELPATH@ @ROOT@ rd.live.check quiet + initrd @INITRDPATH@ diff --git a/isolinux/help.txt b/isolinux/help.txt new file mode 100644 index 0000000..609c1de --- /dev/null +++ b/isolinux/help.txt @@ -0,0 +1,23 @@ +For special installation needs you may use the sub menus + You may choose your Raid level and more + +For incompatibility video cases you may use the sub menu + RAID and LVM installation options using the Vesa video driver + +How to get back to the Installer menu + Use the 'Escape key' + +How to edit the boot line option of a menu + Use the 'Tab key' + +At the boot prompt "Press Enter Key" to get back to the installer + +For support issues our community forums are at + http://forums.koozali.org + +Bug reports and reports of potential bugs should be raised at + http://bugs.koozali.org + +The documentation of the project may be found at + http://wiki.koozali.org/SME_Server:Documentation + diff --git a/isolinux/isolinux.cfg b/isolinux/isolinux.cfg new file mode 100644 index 0000000..6489c2c --- /dev/null +++ b/isolinux/isolinux.cfg @@ -0,0 +1,135 @@ +default vesamenu.c32 +timeout 600 + +display boot.msg + +# Clear the screen when exiting the menu, instead of leaving the menu displayed. +# For vesamenu, this means the graphical background is still displayed without +# the menu itself for as long as the screen remains in graphics mode. +menu clear +menu background splash.png +menu title Koozali SME Server 10.1 +menu vshift 8 +menu rows 18 +menu margin 8 +#menu hidden +menu helpmsgrow 15 +menu tabmsgrow 13 + +# Border Area +menu color border * #00000000 #00000000 none + +# Selected item +menu color sel 0 #ffffffff #00000000 none + +# Title bar +menu color title 0 #ff7ba3d0 #00000000 none + +# Press [Tab] message +menu color tabmsg 0 #ff3a6496 #00000000 none + +# Unselected menu item +menu color unsel 0 #84b8ffff #00000000 none + +# Selected hotkey +menu color hotsel 0 #84b8ffff #00000000 none + +# Unselected hotkey +menu color hotkey 0 #ffffffff #00000000 none + +# Help text +menu color help 0 #ffffffff #00000000 none + +# A scrollbar of some type? Not sure. +menu color scrollbar 0 #ffffffff #ff355594 none + +# Timeout msg +menu color timeout 0 #ffffffff #00000000 none +menu color timeout_msg 0 #ffffffff #00000000 none + +# Command prompt text +menu color cmdmark 0 #84b8ffff #00000000 none +menu color cmdline 0 #ffffffff #00000000 none + +# Do not display the actual menu unless the user presses a key. All that is displayed is a timeout message. + +menu tabmsg Press Tab for full configuration options on menu items. + +menu separator # insert an empty line +menu separator # insert an empty line + +label linux + menu label ^Install Koozali SME Server 10 + text help + This GUI interface uses a kick-start to prepare your disk, + If you use the partitioning menu, it will use the CentOS + default instead, and you will need to restart the installer. + endtext + kernel vmlinuz + append initrd=initrd.img initcall_blacklist=clocksource_done_booting inst.stage2=hd:LABEL=SME\x20Server inst.ks=hd:LABEL=SME\x20Server:/Packages/base/sme-kickstart.cfg quiet + +label text + menu label ^Install Koozali SME Server 10 in text mode + text help + This text interface uses a kick-start to prepare your disk, + If you use the partitioning menu, it will use the CentOS + default instead, and you will need to restart the installer. + endtext + kernel vmlinuz + append initrd=initrd.img initcall_blacklist=clocksource_done_booting inst.stage2=hd:LABEL=SME\x20Server inst.ks=hd:LABEL=SME\x20Server:/Packages/base/sme-kickstart.cfg text quiet + +label check + menu label Test this ^media & install Koozali SME Server 10 + menu default + kernel vmlinuz + append initrd=initrd.img initcall_blacklist=clocksource_done_booting inst.stage2=hd:LABEL=SME\x20Server inst.ks=hd:LABEL=SME\x20Server:/Packages/base/sme-kickstart.cfg rd.live.check quiet + +menu separator # insert an empty line + +# utilities submenu +menu begin ^Troubleshooting + menu title Troubleshooting + +label vesa + menu indent count 5 + menu label Install Koozali SME Server 10 in ^basic graphics mode + text help + Try this option out if you're having trouble installing + Koozali SME Server 10. + endtext + kernel vmlinuz + append initrd=initrd.img initcall_blacklist=clocksource_done_booting inst.stage2=hd:LABEL=SME\x20Server inst.ks=hd:LABEL=SME\x20Server:/Packages/base/sme-kickstart.cfg xdriver=vesa nomodeset quiet + +label rescue + menu indent count 5 + menu label ^Rescue a Koozali SME Server system + text help + If the system will not boot, this lets you access files + and edit config files to try to get it booting again. + endtext + kernel vmlinuz + initrd=initrd.img initcall_blacklist=clocksource_done_booting inst.stage2=hd:LABEL=SME\x20Server rescue quiet + +label memtest + menu label Run a ^memory test + text help + If your system is having issues, a problem with your + system's memory may be the cause. Use this utility to + see if the memory is working correctly. + endtext + kernel memtest + +menu separator # insert an empty line + +label local + menu label Boot from ^local drive + localboot 0xffff + +menu separator # insert an empty line +menu separator # insert an empty line + +label returntomain + menu label Return to ^main menu + menu exit + +menu end diff --git a/isolinux/splash.png b/isolinux/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..3e3ab4d1062ba23a68b0a6f8e1b245f874597287 GIT binary patch literal 18859 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