[SCM] debian-live/live-helper branch, master, updated. 1.0_a27-1-51-g9377334
Daniel Baumann
daniel at debian.org
Sun Sep 23 15:24:04 UTC 2007
The branch, master has been updated
via 9377334c155c23018b1442ed640fe248505285a3 (commit)
via a0669384f1e97a1e81ff7cb255601ac734a2d74e (commit)
via 46f6fb1f4ef11d628c640f47f0b4864640396c3e (commit)
from bf8301b6cfaacbb7d87585ea30c37633c5f0e94d (commit)
- Shortlog ------------------------------------------------------------
9377334 implements syslinux vesa menu support
a066938 add new options to allow support for syslinux with vesa menu
46f6fb1 add template to be used by syslinux vesa menu support
Summary of changes:
functions/defaults.sh | 13 ++++
helpers/lh_binary_syslinux | 110 ++++++++++++++++++++++--------
helpers/lh_config | 20 ++++++
templates/syslinux-menu/data/lat1-16.psf | Bin 0 -> 5156 bytes
templates/syslinux-menu/data/splash.png | Bin 0 -> 57186 bytes
templates/syslinux-menu/isolinux.cfg | 23 ++++++
6 files changed, 138 insertions(+), 28 deletions(-)
-----------------------------------------------------------------------
Details of changes:
commit 9377334c155c23018b1442ed640fe248505285a3
Author: Otavio Salvador <otavio at ossystems.com.br>
Date: Tue Sep 18 21:43:18 2007 -0300
implements syslinux vesa menu support
diff --git a/helpers/lh_binary_syslinux b/helpers/lh_binary_syslinux
index c50ec05..4d26626 100755
--- a/helpers/lh_binary_syslinux
+++ b/helpers/lh_binary_syslinux
@@ -47,7 +47,12 @@ Require_stagefile .stage/bootstrap
Check_stagefile .stage/binary_syslinux
# Checking syslinux templates
-Check_templates syslinux
+if [ "${LH_SYSLINUX_MENU}" = "disabled" ]
+then
+ Check_templates syslinux
+else
+ Check_templates syslinux-menu
+fi
# Checking lock file
Check_lockfile .lock
@@ -68,12 +73,37 @@ Restore_cache cache/packages_binary
Install_package
# Local functions
+Syslinux_memtest_entry ()
+{
+ LABEL="${1}"
+ MENULABEL="${2}"
+ KERNEL="${3}"
+
+ # syslinux << 3.36 lacks support to file/path
+ if [ "`basename ${DESTDIR_LIVE}`" = "binary" ]
+ then
+ KERNEL="${DIRECTORY}/${KERNEL}"
+ fi
+
+ MEMTEST="${MEMTEST}\nLABEL ${LABEL}\n"
+
+ # Write the menu label if the syslinux menu is being use
+ if [ "${LH_SYSLINUX_MENU}" != "disabled" ]
+ then
+ MEMTEST="${MEMTEST}\tMENU LABEL ${MENULABEL}\n"
+ fi
+
+ MEMTEST="${MEMTEST}\tkernel /${KERNEL}\n"
+ MEMTEST="`/bin/echo ${MEMTEST} | sed -e 's#//#/#g'`"
+}
+
Syslinux_live_entry ()
{
LABEL="${1}"
- KERNEL="${2}"
- INITRD="${3}"
- APPEND="${4}"
+ MENULABEL="${2}"
+ KERNEL="${3}"
+ INITRD="${4}"
+ APPEND="${5}"
# syslinux << 3.36 lacks support to file/path
if [ "${LH_BINARY_IMAGES}" != "net" ] && [ "`basename ${DESTDIR_LIVE}`" != "binary" ]
@@ -84,6 +114,13 @@ Syslinux_live_entry ()
fi
LINUX_LIVE="${LINUX_LIVE}\nLABEL ${LABEL}\n"
+
+ # Write the menu label if the syslinux menu is being use
+ if [ "${LH_SYSLINUX_MENU}" != "disabled" ]
+ then
+ LINUX_LIVE="${LINUX_LIVE}\tMENU LABEL ${MENULABEL}\n"
+ fi
+
LINUX_LIVE="${LINUX_LIVE}\tkernel /${KERNEL}\n"
LINUX_LIVE="${LINUX_LIVE}\tappend initrd=/${INITRD} boot=${INITFS} LH_BOOTAPPEND_LIVE ${APPEND}\n"
}
@@ -250,8 +287,8 @@ DEFAULT_FLAVOUR="`echo ${LH_LINUX_FLAVOURS} | awk '{ print $1 }'`"
DEFAULT_KERNEL="`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR}`"
DEFAULT_INITRD="initrd.img-`echo ${DEFAULT_KERNEL} | sed -e 's/vmlinuz-//'`"
-Syslinux_live_entry "live" "${DEFAULT_KERNEL}" "${DEFAULT_INITRD}"
-Syslinux_live_entry "live-failsafe" "${DEFAULT_KERNEL}" "${DEFAULT_INITRD}" "${FAILSAFE}"
+Syslinux_live_entry "live" "${LH_SYSLINUX_MENU_LH_ENTRY}" "${DEFAULT_KERNEL}" "${DEFAULT_INITRD}"
+Syslinux_live_entry "live-failsafe" "${LH_SYSLINUX_MENU_LIVE_FAILSAFE_ENTRY}" "${DEFAULT_KERNEL}" "${DEFAULT_INITRD}" "${FAILSAFE}"
if [ "`echo ${LH_LINUX_FLAVOURS} | wc -w`" -gt "1" ]
then
@@ -261,8 +298,8 @@ then
KERNEL_VERSION="`echo ${KERNEL_IMAGE} | sed -e 's/vmlinuz-//'`"
INITRD="initrd.img-${KERNEL_VERSION}"
- Syslinux_live_entry "live-${KERNEL_VERSION}" "${KERNEL_IMAGE}" "${INITRD}"
- Syslinux_live_entry "live-${KERNEL_VERSION}-failsafe" "${KERNEL_IMAGE}" "${INITRD}" "${FAILSAFE}"
+ Syslinux_live_entry "live-${KERNEL_VERSION}" "${LH_SYSLINUX_MENU_LIVE_ENTRY}" "${KERNEL_IMAGE}" "${INITRD}"
+ Syslinux_live_entry "live-${KERNEL_VERSION}-failsafe" "${LH_SYSLINUX_MENU_LIVE_FAILSAFE_ENTRY}" "${KERNEL_IMAGE}" "${INITRD}" "${FAILSAFE}"
done
fi
@@ -308,16 +345,7 @@ LINUX_INSTALL="`/bin/echo ${LINUX_INSTALL} | sed -e 's/binary//g' -e 's#//#/#g'`
# Assembling memtest configuration
if [ -f "${DESTDIR_LIVE}"/memtest ]
then
- KERNEL_PATH="/`basename ${DESTDIR_LIVE}`/"
-
- # syslinux << 3.36 lacks support to file/path
- if [ "`basename ${DESTDIR_LIVE}`" = "binary" ]
- then
- KERNEL_PATH=""
- fi
-
- MEMTEST="LABEL memtest\n\tkernel ${KERNEL_PATH}memtest"
- MEMTEST="`/bin/echo ${MEMTEST} | sed -e 's#//#/#g'`"
+ Syslinux_memtest_entry "memtest" "${LH_SYSLINUX_MENU_MEMTEST_ENTRY}" "memtest"
fi
case "${LH_BINARY_IMAGES}" in
@@ -365,24 +393,44 @@ case "${LH_BINARY_IMAGES}" in
mv binary/isolinux/syslinux.cfg binary/isolinux/isolinux.cfg
+ # Copying configuration file
+ if [ -n "${LH_SYSLINUX_CFG}" ]
+ then
+ cp "${LH_SYSLINUX_CFG}" binary/isolinux/isolinux.cfg
+ fi
+
# Copying local configuration file
if [ -f config/binary_syslinux/syslinux.cfg ]
then
- cp config/binary_syslinux/syslinux.cfg binary/isolinux/isolinux.cfg
+ LH_SYSLINUX_SPLASH="config/binary_syslinux/splash.rle"
fi
- # Copying splash screen
- if [ -f config/binary_syslinux/splash.rle ]
+ # Copying menu module
+ if [ "${LH_SYSLINUX_MENU}" != "disabled" ]
then
- LH_SYSLINUX_SPLASH="config/binary_syslinux/splash.rle"
+ MENUPATH="`grep 'menu.c32' binary/isolinux/isolinux.cfg | sed 's,DEFAULT\s*\(.*menu.c32\)$,\1,g'`"
+ MENUMODULE="`basename ${MENUPATH}`"
+
+ mkdir -p binary/isolinux/"`dirname ${MENUPATH}`"
+ cp chroot/usr/lib/syslinux/"${MENUMODULE}" binary/isolinux/"`dirname ${MENUPATH}`"
fi
- if [ -n "${LH_SYSLINUX_SPLASH}" ]
+ # Copying splash screen
+ if [ -z "${LH_SYSLINUX_SPLASH}" ] || [ "${LH_SYSLINUX_SPLASH}" = "none" ]
then
- if [ "${LH_SYSLINUX_SPLASH}" = "none" ]
+ rm -f binary/isolinux/splash.rle
+ sed -i -e "s/.*splash.*//" binary/isolinux/boot.txt
+ else
+ if [ "${LH_SYSLINUX_MENU}" != "disabled" ]
then
- rm -f binary/isolinux/splash.rle
- sed -i -e "s/.*splash.*//" binary/isolinux/boot.txt
+ SPLASHPATH="`grep -i 'MENU BACKGROUND' binary/isolinux/isolinux.cfg | sed 's,MENU\sBACKGROUND\s*\(.*\)$,\1,g'`"
+ if [ ! -e "${LH_SYSLINUX_SPLASH}" ]
+ then
+ Echo_error "${LH_SYSLINUX_SPLASH} doen't exist"
+ exit 1
+ fi
+ mkdir -p binary/isolinux/"`dirname ${SPLASHPATH}`"
+ cp -f "${LH_SYSLINUX_SPLASH}" binary/isolinux/"${SPLASHPATH}"
else
cp -f "${LH_SYSLINUX_SPLASH}" binary/isolinux/splash.rle
fi
@@ -391,9 +439,15 @@ case "${LH_BINARY_IMAGES}" in
# Configure syslinux templates
sed -i -e "s at LINUX_LIVE@${LINUX_LIVE}@" -e "s at LINUX_INSTALL@${LINUX_INSTALL}@" -e "s at MEMTEST@${MEMTEST}@" binary/isolinux/isolinux.cfg
sed -i -e "s#LH_BOOTAPPEND_INSTALL#${LH_BOOTAPPEND_INSTALL}#" -e "s#LH_BOOTAPPEND_LIVE#${LH_BOOTAPPEND_LIVE}#" binary/isolinux/isolinux.cfg
- sed -i -e "s/LH_DISTRIBUTION/${LH_DISTRIBUTION}/" -e "s/LH_DATE/`date +%Y%m%d`/" -e "s/LH_MEDIA/CD-ROM/" binary/isolinux/f1.txt
+ if [ -e binary/isolinux/f1.txt ]
+ then
+ sed -i -e "s/LH_DISTRIBUTION/${LH_DISTRIBUTION}/" -e "s/LH_DATE/`date +%Y%m%d`/" -e "s/LH_MEDIA/CD-ROM/" binary/isolinux/f1.txt
+ fi
sed -i -e "s/LH_MEDIA/CD-ROM/" binary/isolinux/f3.txt
- sed -i -e "s/LH_VERSION/${VERSION}/" binary/isolinux/f10.txt
+ if [ -e binary/isolinux/f10.txt ]
+ then
+ sed -i -e "s/LH_VERSION/${VERSION}/" binary/isolinux/f10.txt
+ fi
# Working arround syslinux 8.3 limitation
if [ "`echo ${LH_LINUX_FLAVOURS} | wc -w`" -gt "1" ]
commit a0669384f1e97a1e81ff7cb255601ac734a2d74e
Author: Otavio Salvador <otavio at ossystems.com.br>
Date: Tue Sep 18 21:42:09 2007 -0300
add new options to allow support for syslinux with vesa menu
A set of new options has been add to allow the syslinux vesa menu
support to be added. Those are the new options:
- LH_SYSLINUX_CFG: set custom syslinux configuration file
- LH_SYSLINUX_MENU: set syslinux menu
- LH_SYSLINUX_MENU_LIVE_ENTRY: set text to be used on the menu for
live entries
- LH_SYSLINUX_MENU_LIVE_FAILSAFE_ENTRY: set text to be used on the
menu for live entries (failsafe ones)
- LH_SYSLINUX_MENU_MEMTEST_ENTRY: set text to be used on the menu
for memtest entry
diff --git a/functions/defaults.sh b/functions/defaults.sh
index 8557226..4ed1c9f 100755
--- a/functions/defaults.sh
+++ b/functions/defaults.sh
@@ -730,11 +730,24 @@ Set_defaults ()
# Setting netboot server address
LH_NET_SERVER="${LH_NET_SERVER:-192.168.1.1}"
+ # Setting syslinux configuration file
+ # LH_SYSLINUX_CFG
+
# Setting syslinux splash
# LH_SYSLINUX_SPLASH
LH_SYSLINUX_TIMEOUT="${LH_SYSLINUX_TIMEOUT:-0}"
+ # Setting syslinux menu
+ LH_SYSLINUX_MENU="${LH_SYSLINUX_MENU:-disabled}"
+
+ # Setting syslinux menu live entries
+ LH_SYSLINUX_MENU_LIVE_ENTRY="${LH_SYSLINUX_MENU_LIVE_ENTRY:-Start ${LH_ISO_APPLICATION}}"
+ LH_SYSLINUX_MENU_LIVE_ENTRY_FAILSAFE="${LH_SYSLINUX_MENU_LIVE_ENTRY_FAILSAFE:-${LH_SYSLINUX_MENU_LIVE_ENTRY} - Fail Safe}"
+
+ # Settings memtest menu entry
+ LH_SYSLINUX_MENU_MEMTEST_ENTRY="${LH_SYSLINUX_MENU_MEMTEST_ENTRY:-Memory test}"
+
# Setting username
LH_USERNAME="${LH_USERNAME:-user}"
diff --git a/helpers/lh_config b/helpers/lh_config
index d80dd9d..78604ea 100755
--- a/helpers/lh_config
+++ b/helpers/lh_config
@@ -924,6 +924,26 @@ LH_SYSLINUX_SPLASH="${LH_SYSLINUX_SPLASH}"
# (Default: 0)
LH_SYSLINUX_TIMEOUT="${LH_SYSLINUX_TIMEOUT}"
+# \$LH_SYSLINUX_CFG: set custom syslinux configuration file
+# (Default: empty)
+LH_SYSLINUX_CFG="${LH_SYSLINUX_CFG}"
+
+# \$LH_SYSLINUX_MENU: set syslinux menu
+# (Default: ${LH_SYSLINUX_MENU})
+LH_SYSLINUX_MENU="${LH_SYSLINUX_MENU}"
+
+# \$LH_SYSLINUX_MENU_LIVE_ENTRY: set text to be used on the menu for live entries
+# (Default: ${LH_SYSLINUX_MENU_LIVE_ENTRY})
+LH_SYSLINUX_MENU_LIVE_ENTRY="${LH_SYSLINUX_MENU_LIVE_ENTRY}"
+
+# \$LH_SYSLINUX_MENU_LIVE_FAILSAFE_ENTRY: set text to be used on the menu for live entries (failsafe ones)
+# (Default: ${LH_SYSLINUX_MENU_LIVE_FAILSAFE_ENTRY})
+LH_SYSLINUX_MENU_LIVE_FAILSAFE_ENTRY="${LH_SYSLINUX_MENU_LIVE_FAILSAFE_ENTRY}"
+
+# \$LH_SYSLINUX_MENU_MEMTEST_ENTRY: set text to be used on the menu for memtest entry
+# (Default: ${LH_SYSLINUX_MENU_MEMTEST_ENTRY})
+LH_SYSLINUX_MENU_MEMTEST_ENTRY="${LH_SYSLINUX_MENU_MEMTEST_ENTRY}"
+
# \$LH_USERNAME: set username
# (Default: ${LH_USERNAME})
LH_USERNAME="${LH_USERNAME}"
commit 46f6fb1f4ef11d628c640f47f0b4864640396c3e
Author: Otavio Salvador <otavio at ossystems.com.br>
Date: Tue Sep 18 21:51:56 2007 -0300
add template to be used by syslinux vesa menu support
A new template has been included to enable live-helper to support
syslinux vesa menu. This includes a font, splash image and a new
configuration file.
diff --git a/templates/syslinux-menu/data/lat1-16.psf b/templates/syslinux-menu/data/lat1-16.psf
new file mode 100644
index 0000000..097a640
Binary files /dev/null and b/templates/syslinux-menu/data/lat1-16.psf differ
diff --git a/templates/syslinux-menu/data/splash.png b/templates/syslinux-menu/data/splash.png
new file mode 100644
index 0000000..5669615
Binary files /dev/null and b/templates/syslinux-menu/data/splash.png differ
diff --git a/templates/syslinux-menu/isolinux.cfg b/templates/syslinux-menu/isolinux.cfg
new file mode 100644
index 0000000..887e3d8
--- /dev/null
+++ b/templates/syslinux-menu/isolinux.cfg
@@ -0,0 +1,23 @@
+FONT data/lat1-16.psf
+DEFAULT data/vesamenu.c32
+
+TIMEOUT 1000
+PROMPT 0
+
+MENU BACKGROUND data/splash.png
+MENU COLOR TITLE * #FFFFFFFF *
+MENU COLOR BORDER * #00000000 #00000000 none
+MENU COLOR SEL * #ffffffff #76a1d0ff *
+MENU COLOR HOTSEL 1;7;37;40 #ffffffff #76a1d0ff *
+MENU COLOR HOTKEY 1;37;40;44 #90ffffff #00000000 std
+MENU VSHIFT 7
+MENU HSHIFT 6
+MENU WIDTH 67
+MENU TABMSG Press [tab] to edit the menu entry
+MENU TIMEOUTROW 16
+
+LINUX_LIVE
+
+LINUX_INSTALL
+
+MEMTEST
--
debian-live/live-helper
More information about the debian-live-changes
mailing list