lorax/share/x86.tmpl

74 lines
2.8 KiB
Cheetah
Raw Normal View History

2011-07-25 23:39:48 +00:00
<%page args="kernels, runtime_img, basearch, outroot, product"/>
<%
2011-08-09 00:35:35 +00:00
configdir="tmp/config_files"
SYSLINUXDIR="usr/share/syslinux"
PXEBOOTDIR="images/pxeboot"
BOOTDIR="isolinux"
KERNELDIR=PXEBOOTDIR
LIVEDIR="LiveOS"
%>
mkdir ${LIVEDIR}
install ${runtime_img} ${LIVEDIR}/squashfs.img
mkdir ${BOOTDIR} ${KERNELDIR}
install ${SYSLINUXDIR}/isolinux.bin ${BOOTDIR}
2011-08-09 00:35:35 +00:00
install ${configdir}/syslinux.cfg ${BOOTDIR}/isolinux.cfg
install usr/share/anaconda/boot/syslinux-splash.png ${BOOTDIR}/splash.png
2011-08-09 00:35:35 +00:00
install ${configdir}/boot.msg.x86 ${BOOTDIR}/boot.msg
install ${SYSLINUXDIR}/vesamenu.c32 ${BOOTDIR}
2011-08-09 00:35:35 +00:00
install ${configdir}/grub.conf ${BOOTDIR}
replace @VERSION@ ${product.version} ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg
replace @PRODUCT@ ${product.name} ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg
replace @ROOT@ 'root=live:CDLABEL=${udev_escape(product.name)}' ${BOOTDIR}/isolinux.cfg
%if exists("boot/memtest*"):
install boot/memtest* ${BOOTDIR}
append ${BOOTDIR}/isolinux.cfg "label memtest86"
append ${BOOTDIR}/isolinux.cfg " menu label ^Memory test"
append ${BOOTDIR}/isolinux.cfg " kernel memtest"
append ${BOOTDIR}/isolinux.cfg " append -"
%endif
%for kernel in kernels:
%if kernel.flavor:
installkernel images-xen ${kernel.path} ${KERNELDIR}/vmlinuz-${kernel.flavor}
installinitrd images-xen ${kernel.initrd.path} ${KERNELDIR}/initrd-${kernel.flavor}.img
%else:
installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz
installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img
%endif
%endfor
hardlink ${KERNELDIR}/vmlinuz ${BOOTDIR}
hardlink ${KERNELDIR}/initrd.img ${BOOTDIR}
%if basearch == 'x86_64':
treeinfo images-xen kernel ${KERNELDIR}/vmlinuz
treeinfo images-xen initrd ${KERNELDIR}/initrd.img
%endif
## WHeeeeeeee, EFI.
## We could remove the basearch restriction someday..
<% efiargs=""; efigraft=""; efihybrid="" %>
%if exists("boot/efi/EFI/redhat/grub.efi") and basearch != 'i386':
<%
efiarch = 'X64' if basearch=='x86_64' else 'IA32'
efiargs="-eltorito-alt-boot -e images/efiboot.img -no-emul-boot"
2011-05-12 17:34:02 +00:00
efigraft="EFI/BOOT={0}/EFI/BOOT images/efiboot.img={0}/images/efiboot.img".format(outroot)
efihybrid="-u"
%>
2011-08-09 00:35:35 +00:00
<%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch=efiarch"/>
%endif
runcmd mkisofs -o ${outroot}/images/boot.iso \
-b ${BOOTDIR}/isolinux.bin -c ${BOOTDIR}/boot.cat \
-boot-load-size 4 -boot-info-table -no-emul-boot \
${efiargs} -R -J -V '${product.name}' -T -graft-points \
${BOOTDIR}=${outroot}/${BOOTDIR} \
2011-05-12 17:34:02 +00:00
${KERNELDIR}=${outroot}/${KERNELDIR} \
${LIVEDIR}=${outroot}/${LIVEDIR} \
${efigraft}
runcmd isohybrid ${efihybrid} ${outroot}/images/boot.iso
treeinfo images-${basearch} boot.iso images/boot.iso