[arch-releng] [PATCH] [configs/releng] Make all syslinux bootloaders works with the sames configs.
Gerardo Exequiel Pozzi
vmlinuz386 at yahoo.com.ar
Fri Nov 25 16:01:04 EST 2011
* 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 at yahoo.com.ar>
---
configs/releng/build.sh | 10 ++-
configs/releng/isolinux/isolinux.cfg | 4 +-
configs/releng/syslinux.dual/archiso.cfg | 12 ++++
configs/releng/syslinux.dual/archiso_32only.cfg | 3 +
configs/releng/syslinux.dual/archiso_arch32.cfg | 10 +++
configs/releng/syslinux.dual/archiso_arch64.cfg | 10 +++
configs/releng/syslinux.dual/archiso_both.cfg | 4 +
configs/releng/syslinux.dual/archiso_head.cfg | 28 ++++++++
configs/releng/syslinux.dual/archiso_tail.cfg | 29 +++++++++
configs/releng/syslinux.dual/syslinux.cfg | 15 +---
configs/releng/syslinux.dual/syslinux_32only.cfg | 3 -
configs/releng/syslinux.dual/syslinux_arch32.cfg | 11 ---
configs/releng/syslinux.dual/syslinux_arch64.cfg | 11 ---
configs/releng/syslinux.dual/syslinux_both.cfg | 4 -
configs/releng/syslinux.dual/syslinux_head.cfg | 28 --------
configs/releng/syslinux.dual/syslinux_tail.cfg | 29 ---------
configs/releng/syslinux/archiso.cfg | 69 ++++++++++++++++++++
configs/releng/syslinux/syslinux.cfg | 73 +--------------------
18 files changed, 181 insertions(+), 172 deletions(-)
create mode 100644 configs/releng/syslinux.dual/archiso.cfg
create mode 100644 configs/releng/syslinux.dual/archiso_32only.cfg
create mode 100644 configs/releng/syslinux.dual/archiso_arch32.cfg
create mode 100644 configs/releng/syslinux.dual/archiso_arch64.cfg
create mode 100644 configs/releng/syslinux.dual/archiso_both.cfg
create mode 100644 configs/releng/syslinux.dual/archiso_head.cfg
create mode 100644 configs/releng/syslinux.dual/archiso_tail.cfg
delete mode 100644 configs/releng/syslinux.dual/syslinux_32only.cfg
delete mode 100644 configs/releng/syslinux.dual/syslinux_arch32.cfg
delete mode 100644 configs/releng/syslinux.dual/syslinux_arch64.cfg
delete mode 100644 configs/releng/syslinux.dual/syslinux_both.cfg
delete mode 100644 configs/releng/syslinux.dual/syslinux_head.cfg
delete mode 100644 configs/releng/syslinux.dual/syslinux_tail.cfg
create mode 100644 configs/releng/syslinux/archiso.cfg
diff --git a/configs/releng/build.sh b/configs/releng/build.sh
index 325bca7..fcba3a3 100755
--- a/configs/releng/build.sh
+++ b/configs/releng/build.sh
@@ -75,9 +75,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}
@@ -187,7 +189,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/archiso_arch32.cfg b/configs/releng/syslinux.dual/archiso_arch32.cfg
new file mode 100644
index 0000000..e7c7e23
--- /dev/null
+++ b/configs/releng/syslinux.dual/archiso_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 boot/i686/vmlinuz
+INITRD boot/i686/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%
+IPAPPEND 3
diff --git a/configs/releng/syslinux.dual/archiso_arch64.cfg b/configs/releng/syslinux.dual/archiso_arch64.cfg
new file mode 100644
index 0000000..aee7bb0
--- /dev/null
+++ b/configs/releng/syslinux.dual/archiso_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 boot/x86_64/vmlinuz
+INITRD boot/x86_64/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%
+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/archiso_head.cfg b/configs/releng/syslinux.dual/archiso_head.cfg
new file mode 100644
index 0000000..929872e
--- /dev/null
+++ b/configs/releng/syslinux.dual/archiso_head.cfg
@@ -0,0 +1,28 @@
+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 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/configs/releng/syslinux.dual/archiso_tail.cfg b/configs/releng/syslinux.dual/archiso_tail.cfg
new file mode 100644
index 0000000..791cb13
--- /dev/null
+++ b/configs/releng/syslinux.dual/archiso_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 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 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 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_arch32.cfg b/configs/releng/syslinux.dual/syslinux_arch32.cfg
deleted file mode 100644
index 9b4030e..0000000
--- a/configs/releng/syslinux.dual/syslinux_arch32.cfg
+++ /dev/null
@@ -1,11 +0,0 @@
-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/vmlinuz
-INITRD /%INSTALL_DIR%/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
diff --git a/configs/releng/syslinux.dual/syslinux_arch64.cfg b/configs/releng/syslinux.dual/syslinux_arch64.cfg
deleted file mode 100644
index 6cc644d..0000000
--- a/configs/releng/syslinux.dual/syslinux_arch64.cfg
+++ /dev/null
@@ -1,11 +0,0 @@
-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/vmlinuz
-INITRD /%INSTALL_DIR%/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
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.dual/syslinux_head.cfg b/configs/releng/syslinux.dual/syslinux_head.cfg
deleted file mode 100644
index f46ba78..0000000
--- a/configs/releng/syslinux.dual/syslinux_head.cfg
+++ /dev/null
@@ -1,28 +0,0 @@
-SERIAL 0 38400
-DEFAULT vesamenu.c32
-PROMPT 0
-MENU TITLE Arch Linux
-MENU BACKGROUND splash.png
-TIMEOUT 3000
-
-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/configs/releng/syslinux.dual/syslinux_tail.cfg b/configs/releng/syslinux.dual/syslinux_tail.cfg
deleted file mode 100644
index 7dd1270..0000000
--- a/configs/releng/syslinux.dual/syslinux_tail.cfg
+++ /dev/null
@@ -1,29 +0,0 @@
-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
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%/
--
1.7.7.4
More information about the arch-releng
mailing list