diff options
author | Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> | 2011-11-28 12:28:03 -0300 |
---|---|---|
committer | Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> | 2011-11-28 12:28:03 -0300 |
commit | 0411fc90bbece254373808fb02ed2e3ce9d75758 (patch) | |
tree | 68be8f212270e9e1fce643cfd7b449f2a59cf384 /configs | |
parent | 8bd067461dc043a5c594c5230c79243198c45aff (diff) | |
download | archiso32-0411fc90bbece254373808fb02ed2e3ce9d75758.tar.xz |
[configs/releng] Make all syslinux bootloaders works with the sames configs.
* In that way, we have unified directory scheme among {pxe,sys,ext,iso}linux,
sharing the same directory structure and config files.
* Also enable IPAPPEND (will show a warning message about unknown directive in non-pxelinux before menu)
NEW:
* Rename syslinux*.cfg -> archiso*.cfg
* Now syslinux.cfg is only a "loadconfig" trick like we are doing for isolinux
* All paths are now relative to %INSTALL_DIR% ($archisobasedir) (Default: /arch/)
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Diffstat (limited to 'configs')
14 files changed, 118 insertions, 109 deletions
diff --git a/configs/releng/build.sh b/configs/releng/build.sh index aebf04a..28181c6 100755 --- a/configs/releng/build.sh +++ b/configs/releng/build.sh @@ -60,9 +60,11 @@ make_syslinux() { local _src_syslinux=${work_dir}/root-image/usr/lib/syslinux local _dst_syslinux=${work_dir}/iso/${install_dir}/boot/syslinux mkdir -p ${_dst_syslinux} - sed "s|%ARCHISO_LABEL%|${iso_label}|g; - s|%INSTALL_DIR%|${install_dir}|g; - s|%ARCH%|${arch}|g" ${script_path}/syslinux/syslinux.cfg > ${_dst_syslinux}/syslinux.cfg + for _cfg in ${script_path}/syslinux/*.cfg; do + sed "s|%ARCHISO_LABEL%|${iso_label}|g; + s|%INSTALL_DIR%|${install_dir}|g; + s|%ARCH%|${arch}|g" ${_cfg} > ${_dst_syslinux}/${_cfg##*/} + done cp ${script_path}/syslinux/splash.png ${_dst_syslinux} cp ${_src_syslinux}/*.c32 ${_dst_syslinux} cp ${_src_syslinux}/*.com ${_dst_syslinux} @@ -188,7 +190,7 @@ make_dual() { cp -a -l -f ${_src_one} ${work_dir}/dual cp -a -l -n ${_src_two} ${work_dir}/dual rm -f ${work_dir}/dual/iso/${install_dir}/aitab - rm -f ${work_dir}/dual/iso/${install_dir}/boot/syslinux/syslinux.cfg + rm -f ${work_dir}/dual/iso/${install_dir}/boot/syslinux/*.cfg if [[ ${_iso_type} == "core" ]]; then if [[ ! -e ${work_dir}/dual/iso/${install_dir}/any/repo-core-any.sfs || ! -e ${work_dir}/dual/iso/${install_dir}/i686/repo-core-i686.sfs || diff --git a/configs/releng/isolinux/isolinux.cfg b/configs/releng/isolinux/isolinux.cfg index e7bbaa4..1040d3f 100644 --- a/configs/releng/isolinux/isolinux.cfg +++ b/configs/releng/isolinux/isolinux.cfg @@ -1,5 +1,5 @@ DEFAULT loadconfig LABEL loadconfig - CONFIG /%INSTALL_DIR%/boot/syslinux/syslinux.cfg - APPEND /%INSTALL_DIR%/boot/syslinux/ + CONFIG /%INSTALL_DIR%/boot/syslinux/archiso.cfg + APPEND /%INSTALL_DIR%/ diff --git a/configs/releng/syslinux.dual/archiso.cfg b/configs/releng/syslinux.dual/archiso.cfg new file mode 100644 index 0000000..9994e43 --- /dev/null +++ b/configs/releng/syslinux.dual/archiso.cfg @@ -0,0 +1,12 @@ +DEFAULT choose +PROMPT 0 + +LABEL choose +KERNEL boot/syslinux/ifcpu64.c32 +APPEND have64 -- nohave64 + +LABEL have64 +CONFIG boot/syslinux/archiso_both.cfg + +LABEL nohave64 +CONFIG boot/syslinux/archiso_32only.cfg diff --git a/configs/releng/syslinux.dual/archiso_32only.cfg b/configs/releng/syslinux.dual/archiso_32only.cfg new file mode 100644 index 0000000..e0cad88 --- /dev/null +++ b/configs/releng/syslinux.dual/archiso_32only.cfg @@ -0,0 +1,3 @@ +INCLUDE boot/syslinux/archiso_head.cfg +INCLUDE boot/syslinux/archiso_arch32.cfg +INCLUDE boot/syslinux/archiso_tail.cfg diff --git a/configs/releng/syslinux.dual/syslinux_arch32.cfg b/configs/releng/syslinux.dual/archiso_arch32.cfg index 9b4030e..e7c7e23 100644 --- a/configs/releng/syslinux.dual/syslinux_arch32.cfg +++ b/configs/releng/syslinux.dual/archiso_arch32.cfg @@ -4,8 +4,7 @@ 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/vmlinuz -INITRD /%INSTALL_DIR%/boot/i686/archiso.img +LINUX boot/i686/vmlinuz +INITRD boot/i686/archiso.img APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% -# Next line should be uncommented when prepare enviroment to boot from PXE. -#IPAPPEND 3 +IPAPPEND 3 diff --git a/configs/releng/syslinux.dual/syslinux_arch64.cfg b/configs/releng/syslinux.dual/archiso_arch64.cfg index 6cc644d..aee7bb0 100644 --- a/configs/releng/syslinux.dual/syslinux_arch64.cfg +++ b/configs/releng/syslinux.dual/archiso_arch64.cfg @@ -4,8 +4,7 @@ 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/vmlinuz -INITRD /%INSTALL_DIR%/boot/x86_64/archiso.img +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/archiso.img APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% -# Next line should be uncommented when prepare enviroment to boot from PXE. -#IPAPPEND 3 +IPAPPEND 3 diff --git a/configs/releng/syslinux.dual/archiso_both.cfg b/configs/releng/syslinux.dual/archiso_both.cfg new file mode 100644 index 0000000..493ee81 --- /dev/null +++ b/configs/releng/syslinux.dual/archiso_both.cfg @@ -0,0 +1,4 @@ +INCLUDE boot/syslinux/archiso_head.cfg +INCLUDE boot/syslinux/archiso_arch32.cfg +INCLUDE boot/syslinux/archiso_arch64.cfg +INCLUDE boot/syslinux/archiso_tail.cfg diff --git a/configs/releng/syslinux.dual/syslinux_head.cfg b/configs/releng/syslinux.dual/archiso_head.cfg index f46ba78..929872e 100644 --- a/configs/releng/syslinux.dual/syslinux_head.cfg +++ b/configs/releng/syslinux.dual/archiso_head.cfg @@ -1,8 +1,8 @@ SERIAL 0 38400 -DEFAULT vesamenu.c32 +DEFAULT boot/syslinux/vesamenu.c32 PROMPT 0 MENU TITLE Arch Linux -MENU BACKGROUND splash.png +MENU BACKGROUND boot/syslinux/splash.png TIMEOUT 3000 MENU WIDTH 78 diff --git a/configs/releng/syslinux.dual/syslinux_tail.cfg b/configs/releng/syslinux.dual/archiso_tail.cfg index 7dd1270..a2040d1 100644 --- a/configs/releng/syslinux.dual/syslinux_tail.cfg +++ b/configs/releng/syslinux.dual/archiso_tail.cfg @@ -4,26 +4,26 @@ 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 +COM32 boot/syslinux/chain.c32 APPEND hd0 0 # http://www.memtest.org/ LABEL memtest MENU LABEL Run Memtest86+ (RAM test) -LINUX /%INSTALL_DIR%/boot/memtest +LINUX 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 +COM32 boot/syslinux/hdt.c32 +APPEND modules_alias=boot/syslinux/hdt/modalias.gz pciids=boot/syslinux/hdt/pciids.gz LABEL reboot MENU LABEL Reboot -COM32 reboot.c32 +COM32 boot/syslinux/reboot.c32 LABEL poweroff MENU LABEL Power Off -COMBOOT poweroff.com +COMBOOT boot/syslinux/poweroff.com ONTIMEOUT arch32 diff --git a/configs/releng/syslinux.dual/syslinux.cfg b/configs/releng/syslinux.dual/syslinux.cfg index ac92998..1040d3f 100644 --- a/configs/releng/syslinux.dual/syslinux.cfg +++ b/configs/releng/syslinux.dual/syslinux.cfg @@ -1,12 +1,5 @@ -DEFAULT choose -PROMPT 0 +DEFAULT loadconfig -LABEL choose -KERNEL ifcpu64.c32 -APPEND have64 -- nohave64 - -LABEL have64 -CONFIG syslinux_both.cfg - -LABEL nohave64 -CONFIG syslinux_32only.cfg +LABEL loadconfig + CONFIG /%INSTALL_DIR%/boot/syslinux/archiso.cfg + APPEND /%INSTALL_DIR%/ diff --git a/configs/releng/syslinux.dual/syslinux_32only.cfg b/configs/releng/syslinux.dual/syslinux_32only.cfg deleted file mode 100644 index c7a452d..0000000 --- a/configs/releng/syslinux.dual/syslinux_32only.cfg +++ /dev/null @@ -1,3 +0,0 @@ -INCLUDE syslinux_head.cfg -INCLUDE syslinux_arch32.cfg -INCLUDE syslinux_tail.cfg diff --git a/configs/releng/syslinux.dual/syslinux_both.cfg b/configs/releng/syslinux.dual/syslinux_both.cfg deleted file mode 100644 index 9cd1584..0000000 --- a/configs/releng/syslinux.dual/syslinux_both.cfg +++ /dev/null @@ -1,4 +0,0 @@ -INCLUDE syslinux_head.cfg -INCLUDE syslinux_arch32.cfg -INCLUDE syslinux_arch64.cfg -INCLUDE syslinux_tail.cfg diff --git a/configs/releng/syslinux/archiso.cfg b/configs/releng/syslinux/archiso.cfg new file mode 100644 index 0000000..e508bcc --- /dev/null +++ b/configs/releng/syslinux/archiso.cfg @@ -0,0 +1,69 @@ +SERIAL 0 38400 +DEFAULT boot/syslinux/vesamenu.c32 +PROMPT 0 +MENU TITLE Arch Linux +MENU BACKGROUND boot/syslinux/splash.png +TIMEOUT 3000 + +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 + +# 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 arch +TEXT HELP +Boot the Arch Linux live medium. It allows you to install Arch Linux or +perform system maintenance. +ENDTEXT +MENU LABEL Boot Arch Linux +LINUX boot/%ARCH%/vmlinuz +INITRD boot/%ARCH%/archiso.img +APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% +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 boot/syslinux/chain.c32 +APPEND hd0 0 + +# http://www.memtest.org/ +LABEL memtest +MENU LABEL Run Memtest86+ (RAM test) +LINUX boot/memtest + +# http://hdt-project.org/ +LABEL hdt +MENU LABEL Hardware Information (HDT) +COM32 boot/syslinux/hdt.c32 +APPEND modules_alias=boot/syslinux/hdt/modalias.gz pciids=boot/syslinux/hdt/pciids.gz + +LABEL reboot +MENU LABEL Reboot +COM32 boot/syslinux/reboot.c32 + +LABEL poweroff +MENU LABEL Power Off +COMBOOT boot/syslinux/poweroff.com + +ONTIMEOUT arch diff --git a/configs/releng/syslinux/syslinux.cfg b/configs/releng/syslinux/syslinux.cfg index 7762278..1040d3f 100644 --- a/configs/releng/syslinux/syslinux.cfg +++ b/configs/releng/syslinux/syslinux.cfg @@ -1,70 +1,5 @@ -SERIAL 0 38400 -DEFAULT vesamenu.c32 -PROMPT 0 -MENU TITLE Arch Linux -MENU BACKGROUND splash.png -TIMEOUT 3000 +DEFAULT loadconfig -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 - -# 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 arch -TEXT HELP -Boot the Arch Linux live medium. It allows you to install Arch Linux or -perform system maintenance. -ENDTEXT -MENU LABEL Boot Arch Linux -LINUX /%INSTALL_DIR%/boot/%ARCH%/vmlinuz -INITRD /%INSTALL_DIR%/boot/%ARCH%/archiso.img -APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% -# 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 arch +LABEL loadconfig + CONFIG /%INSTALL_DIR%/boot/syslinux/archiso.cfg + APPEND /%INSTALL_DIR%/ |