From 1a5209bef51abe3032a59fafa1ac45e4a4fcd620 Mon Sep 17 00:00:00 2001 From: Thomas Bächler Date: Thu, 2 Dec 2010 21:41:07 -0300 Subject: [archiso2dual] Autodetect whether we can boot x86_64 Edited from original commit to adapt them to install_dir scheme. Signed-off-by: Gerardo Exequiel Pozzi --- archiso2dual/Makefile | 1 + archiso2dual/syslinux.cfg | 88 ++++------------------------------------ archiso2dual/syslinux_32only.cfg | 3 ++ archiso2dual/syslinux_arch32.cfg | 10 +++++ archiso2dual/syslinux_arch64.cfg | 10 +++++ archiso2dual/syslinux_both.cfg | 4 ++ archiso2dual/syslinux_head.cfg | 32 +++++++++++++++ archiso2dual/syslinux_tail.cfg | 29 +++++++++++++ 8 files changed, 97 insertions(+), 80 deletions(-) create mode 100644 archiso2dual/syslinux_32only.cfg create mode 100644 archiso2dual/syslinux_arch32.cfg create mode 100644 archiso2dual/syslinux_arch64.cfg create mode 100644 archiso2dual/syslinux_both.cfg create mode 100644 archiso2dual/syslinux_head.cfg create mode 100644 archiso2dual/syslinux_tail.cfg diff --git a/archiso2dual/Makefile b/archiso2dual/Makefile index 84540db..f615bce 100644 --- a/archiso2dual/Makefile +++ b/archiso2dual/Makefile @@ -5,6 +5,7 @@ install: all install -d -m 755 $(DESTDIR)/usr/share/archiso2dual/syslinux install -D -m 644 isomounts $(DESTDIR)/usr/share/archiso2dual/isomounts install -D -m 644 syslinux.cfg $(DESTDIR)/usr/share/archiso2dual/syslinux/syslinux.cfg + install -D -m 644 *.cfg $(DESTDIR)/usr/share/archiso2dual/syslinux/ install -D -m 644 removefiles.lst $(DESTDIR)/usr/share/archiso2dual/removefiles.lst uninstall: diff --git a/archiso2dual/syslinux.cfg b/archiso2dual/syslinux.cfg index d520330..ac92998 100644 --- a/archiso2dual/syslinux.cfg +++ b/archiso2dual/syslinux.cfg @@ -1,84 +1,12 @@ -DEFAULT vesamenu.c32 +DEFAULT choose PROMPT 0 -MENU TITLE Arch Linux -MENU BACKGROUND /%INSTALL_DIR%/boot/splash.png -TIMEOUT 3000 -# TODO: Replace these crappy messages with something useful -F1 boot.txt -F2 options.txt -F3 help.txt +LABEL choose +KERNEL ifcpu64.c32 +APPEND have64 -- nohave64 -MENU WIDTH 78 -MENU MARGIN 4 -MENU ROWS 6 -MENU VSHIFT 10 -MENU TIMEOUTROW 13 -MENU TABMSGROW 11 -MENU CMDLINEROW 11 -MENU HELPMSGROW 16 -MENU HELPMSGENDROW 29 +LABEL have64 +CONFIG syslinux_both.cfg -# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu - -MENU COLOR border 30;44 #40ffffff #a0000000 std -MENU COLOR title 1;36;44 #9033ccff #a0000000 std -MENU COLOR sel 7;37;40 #e0ffffff #20ffffff all -MENU COLOR unsel 37;44 #50ffffff #a0000000 std -MENU COLOR help 37;40 #c0ffffff #a0000000 std -MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std -MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std -MENU COLOR msg07 37;40 #90ffffff #a0000000 std -MENU COLOR tabmsg 31;40 #30ffffff #00000000 std - -LABEL arch32 -TEXT HELP -Boot the Arch Linux (i686) live medium. It allows you to install Arch Linux or -perform system maintenance. -ENDTEXT -MENU LABEL Boot Arch Linux (i686) -LINUX /%INSTALL_DIR%/boot/i686/vmlinuz26 -APPEND initrd=/%INSTALL_DIR%/boot/i686/archiso.img archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% rw_branch_size=75% locale=en_US.UTF-8 -# Next line should be uncommented when prepare enviroment to boot from PXE. -#IPAPPEND 3 - -LABEL arch64 -TEXT HELP -Boot the Arch Linux (x86_64) live medium. It allows you to install Arch Linux or -perform system maintenance. -ENDTEXT -MENU LABEL Boot Arch Linux (x86_64) -LINUX /%INSTALL_DIR%/boot/x86_64/vmlinuz26 -APPEND initrd=/%INSTALL_DIR%/boot/x86_64/archiso.img archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% rw_branch_size=75% locale=en_US.UTF-8 -# Next line should be uncommented when prepare enviroment to boot from PXE. -#IPAPPEND 3 - -LABEL existing -TEXT HELP -Boot an existing operating system. Press TAB to edit the disk and partition -number to boot. -ENDTEXT -MENU LABEL Boot existing OS -COM32 chain.c32 -APPEND hd0 0 - -# http://www.memtest.org/ -LABEL memtest -MENU LABEL Run Memtest86+ (RAM test) -LINUX /%INSTALL_DIR%/boot/memtest - -# http://hdt-project.org/ -LABEL hdt -MENU LABEL Hardware Information (HDT) -COM32 hdt.c32 -APPEND modules_alias=hdt/modalias.gz pciids=hdt/pciids.gz - -LABEL reboot -MENU LABEL Reboot -COM32 reboot.c32 - -LABEL poweroff -MENU LABEL Power Off -COMBOOT poweroff.com - -ONTIMEOUT arch32 +LABEL nohave64 +CONFIG syslinux_32only.cfg diff --git a/archiso2dual/syslinux_32only.cfg b/archiso2dual/syslinux_32only.cfg new file mode 100644 index 0000000..c7a452d --- /dev/null +++ b/archiso2dual/syslinux_32only.cfg @@ -0,0 +1,3 @@ +INCLUDE syslinux_head.cfg +INCLUDE syslinux_arch32.cfg +INCLUDE syslinux_tail.cfg diff --git a/archiso2dual/syslinux_arch32.cfg b/archiso2dual/syslinux_arch32.cfg new file mode 100644 index 0000000..f912874 --- /dev/null +++ b/archiso2dual/syslinux_arch32.cfg @@ -0,0 +1,10 @@ +LABEL arch32 +TEXT HELP +Boot the Arch Linux (i686) live medium. It allows you to install Arch Linux or +perform system maintenance. +ENDTEXT +MENU LABEL Boot Arch Linux (i686) +LINUX /%INSTALL_DIR%/boot/i686/vmlinuz26 +APPEND initrd=/%INSTALL_DIR%/boot/i686/archiso.img archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% rw_branch_size=75% locale=en_US.UTF-8 +# Next line should be uncommented when prepare enviroment to boot from PXE. +#IPAPPEND 3 diff --git a/archiso2dual/syslinux_arch64.cfg b/archiso2dual/syslinux_arch64.cfg new file mode 100644 index 0000000..10786cd --- /dev/null +++ b/archiso2dual/syslinux_arch64.cfg @@ -0,0 +1,10 @@ +LABEL arch64 +TEXT HELP +Boot the Arch Linux (x86_64) live medium. It allows you to install Arch Linux or +perform system maintenance. +ENDTEXT +MENU LABEL Boot Arch Linux (x86_64) +LINUX /%INSTALL_DIR%/boot/x86_64/vmlinuz26 +APPEND initrd=/%INSTALL_DIR%/boot/x86_64/archiso.img archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% rw_branch_size=75% locale=en_US.UTF-8 +# Next line should be uncommented when prepare enviroment to boot from PXE. +#IPAPPEND 3 diff --git a/archiso2dual/syslinux_both.cfg b/archiso2dual/syslinux_both.cfg new file mode 100644 index 0000000..9cd1584 --- /dev/null +++ b/archiso2dual/syslinux_both.cfg @@ -0,0 +1,4 @@ +INCLUDE syslinux_head.cfg +INCLUDE syslinux_arch32.cfg +INCLUDE syslinux_arch64.cfg +INCLUDE syslinux_tail.cfg diff --git a/archiso2dual/syslinux_head.cfg b/archiso2dual/syslinux_head.cfg new file mode 100644 index 0000000..ff955e4 --- /dev/null +++ b/archiso2dual/syslinux_head.cfg @@ -0,0 +1,32 @@ +DEFAULT vesamenu.c32 +PROMPT 0 +MENU TITLE Arch Linux +MENU BACKGROUND /%INSTALL_DIR%/boot/splash.png +TIMEOUT 3000 + +# TODO: Replace these crappy messages with something useful +F1 boot.txt +F2 options.txt +F3 help.txt + +MENU WIDTH 78 +MENU MARGIN 4 +MENU ROWS 7 +MENU VSHIFT 10 +MENU TIMEOUTROW 13 +MENU TABMSGROW 11 +MENU CMDLINEROW 11 +MENU HELPMSGROW 16 +MENU HELPMSGENDROW 29 + +# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu + +MENU COLOR border 30;44 #40ffffff #a0000000 std +MENU COLOR title 1;36;44 #9033ccff #a0000000 std +MENU COLOR sel 7;37;40 #e0ffffff #20ffffff all +MENU COLOR unsel 37;44 #50ffffff #a0000000 std +MENU COLOR help 37;40 #c0ffffff #a0000000 std +MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std +MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std +MENU COLOR msg07 37;40 #90ffffff #a0000000 std +MENU COLOR tabmsg 31;40 #30ffffff #00000000 std diff --git a/archiso2dual/syslinux_tail.cfg b/archiso2dual/syslinux_tail.cfg new file mode 100644 index 0000000..7dd1270 --- /dev/null +++ b/archiso2dual/syslinux_tail.cfg @@ -0,0 +1,29 @@ +LABEL existing +TEXT HELP +Boot an existing operating system. Press TAB to edit the disk and partition +number to boot. +ENDTEXT +MENU LABEL Boot existing OS +COM32 chain.c32 +APPEND hd0 0 + +# http://www.memtest.org/ +LABEL memtest +MENU LABEL Run Memtest86+ (RAM test) +LINUX /%INSTALL_DIR%/boot/memtest + +# http://hdt-project.org/ +LABEL hdt +MENU LABEL Hardware Information (HDT) +COM32 hdt.c32 +APPEND modules_alias=hdt/modalias.gz pciids=hdt/pciids.gz + +LABEL reboot +MENU LABEL Reboot +COM32 reboot.c32 + +LABEL poweroff +MENU LABEL Power Off +COMBOOT poweroff.com + +ONTIMEOUT arch32 -- cgit v1.2.3-70-g09d2