From 2879013b96ec401b65200e652b5e81c0468d4489 Mon Sep 17 00:00:00 2001 From: William Pitcock Date: Sat, 3 Sep 2011 00:27:50 -0500 Subject: main/syslinux: detect xen --- main/syslinux/APKBUILD | 6 +++--- main/syslinux/update-extlinux | 24 +++++++++++++++++++++++- main/syslinux/update-extlinux.conf | 5 +++++ 3 files changed, 31 insertions(+), 4 deletions(-) (limited to 'main/syslinux') diff --git a/main/syslinux/APKBUILD b/main/syslinux/APKBUILD index 459085bc35..7a420c10e6 100644 --- a/main/syslinux/APKBUILD +++ b/main/syslinux/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: Natanael Copa pkgname=syslinux pkgver=4.04 -pkgrel=6 +pkgrel=7 pkgdesc="Boot loader for the Linux operating system" url="http://syslinux.org" arch="x86 x86_64" @@ -37,5 +37,5 @@ package() { } md5sums="a3936208767eb7ced65320abe2e33a10 syslinux-4.04.tar.bz2 -14443fe391bd315a54478851abdc32cb update-extlinux.conf -7164c110dae13a8d06d175943e48b841 update-extlinux" +92ed1795cfda4bc2f06fca2da0dc977c update-extlinux.conf +5a2ecfb888bea885cbd56d271713a4ae update-extlinux" diff --git a/main/syslinux/update-extlinux b/main/syslinux/update-extlinux index a2488cc8df..1ba98658e3 100755 --- a/main/syslinux/update-extlinux +++ b/main/syslinux/update-extlinux @@ -89,6 +89,28 @@ echo "MENU AUTOBOOT Alpine will be booted automatically in # seconds." >> $conf. echo "TIMEOUT $rtimeout" >> $conf.new lst=0 +if [ -f "/boot/xen.gz" ]; then + for kernel in $(find /boot -name vmlinuz-* -type f); do + tag=$(basename $kernel | cut -b9-) + everbose "Found Xen hypervisor: /boot/xen.gz, kernel: $kernel" + + if [ -f "/boot/initramfs-$tag" ]; then + everbose "Found initramfs: /boot/initramfs-$tag" + initramfs="initrd=initramfs-$tag" + fi + + echo "LABEL $lst" >> $conf.new + if [ "$lst" = "$default" ]; then + echo " MENU DEFAULT" >> $conf.new + fi + echo " MENU LABEL Xen + Linux $tag" >> $conf.new + echo " KERNEL mboot.c32" >> $conf.new + echo " APPEND xen.gz $xen_opts --- $(basename $kernel) root=$root modules=${modules}${TYPE:+,$TYPE} $default_kernel_opts --- $initramfs" >> $conf.new + echo "" >> $conf.new + lst=$(($lst + 1)) + done +fi + for kernel in $(find /boot -name vmlinuz-* -type f); do tag=$(basename $kernel | cut -b9-) everbose "Found kernel: $kernel" @@ -122,7 +144,7 @@ everbose "$lst entries found." for entry in /etc/update-extlinux.d/*; do [ -f "$entry" ] && cat $entry >> $conf.new -done +done if [ "$overwrite" = "1" ]; then # keep a backup just in case diff --git a/main/syslinux/update-extlinux.conf b/main/syslinux/update-extlinux.conf index 17a47f22ca..c64988b793 100644 --- a/main/syslinux/update-extlinux.conf +++ b/main/syslinux/update-extlinux.conf @@ -29,3 +29,8 @@ verbose=0 # hidden # if set to non-zero, the boot menu will be hidden by default. hidden=1 + +# xen_opts +# options to hand to xen hypervisor, useful ones are: +# dom0_mem=256M (give domain-0 environment 256M ram) +xen_opts=dom0_mem=256M -- cgit v1.2.3