Before this commit isolinux was used to boot an ISO and thus forms a hard requirement. isolinux however only exists for the x86 platform. This limitation did not allow to create ISO images for other platforms. With this commit a refactoring of the ISO boot setup is introduced. * isolinux is only used if the bios firmware is requested and the platform matches the x86 architecture. A runtime check will check for this condition and exits early if not applicable * in case of the EFI firmware we already used grub in EFI mode but still had isolinux in place for the legacy/CSM boot. That part is now also replaced by a platform specific grub eltorito image and grub's boot_hybrid.img for hybrid boot. On platforms that do not provide those modules the support for it will be skipped With this change in place it's possible to control the ISO boot layout through the firmware setup and all platform specific modules are handled as such. Therefore we also deleted the syslinux requirement. This Fixes #1092
153 lines
6.4 KiB
XML
153 lines
6.4 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
|
|
<image schemaversion="7.1" name="LimeJeOS-openSUSE-13.2" displayname="Bob">
|
|
<drivers>
|
|
<file name="crypto/*"/>
|
|
<file name="drivers/acpi/*"/>
|
|
<file name="bar"/>
|
|
</drivers>
|
|
<strip type="delete">
|
|
<file name="del-a"/>
|
|
<file name="del-b"/>
|
|
</strip>
|
|
<strip type="tools">
|
|
<file name="tool-a"/>
|
|
<file name="tool-b"/>
|
|
</strip>
|
|
<strip type="libs">
|
|
<file name="lib-a"/>
|
|
<file name="lib-b"/>
|
|
</strip>
|
|
<description type="system">
|
|
<author>Marcus Schäfer</author>
|
|
<contact>ms@suse.com</contact>
|
|
<specification>
|
|
openSUSE 13.2 JeOS, is a small text based image
|
|
</specification>
|
|
</description>
|
|
<profiles>
|
|
<profile name="metadata" description="Inlude some preferences metadata"/>
|
|
<profile name="noVersion" description="Does not include version element"/>
|
|
<profile name="xenFlavour" description="VMX with Xen kernel"/>
|
|
<profile name="ec2Flavour" description="VMX with EC2/Xen kernel"/>
|
|
<profile name="docker" description="docker image">
|
|
<requires profile="noVersion"/>
|
|
</profile>
|
|
<profile name="vmxFlavour" description="VMX with default kernel" import="true">
|
|
<requires profile="metadata"/>
|
|
</profile>
|
|
</profiles>
|
|
<preferences profiles="noVersion">
|
|
<locale>de_DE</locale>
|
|
<packagemanager>zypper</packagemanager>
|
|
</preferences>
|
|
<preferences profiles="metadata">
|
|
<version>1.13.2</version>
|
|
<packagemanager>zypper</packagemanager>
|
|
<locale>en_US</locale>
|
|
<keytable>us.map.gz</keytable>
|
|
<timezone>Europe/Berlin</timezone>
|
|
<rpm-excludedocs>true</rpm-excludedocs>
|
|
<bootsplash-theme>openSUSE</bootsplash-theme>
|
|
<bootloader-theme>openSUSE</bootloader-theme>
|
|
</preferences>
|
|
<preferences profiles="docker">
|
|
<type image="docker">
|
|
<containerconfig name="container_name" additionaltags="foo,bar"/>
|
|
</type>
|
|
</preferences>
|
|
<preferences profiles="ec2Flavour">
|
|
<type image="vmx" filesystem="ext3" bootprofile="ec2" bootkernel="ec2k" bootloader="grub2" kernelcmdline="xencons=xvc0 console=xvc0 multipath=off splash" firmware="ec2"/>
|
|
</preferences>
|
|
<preferences profiles="xenFlavour">
|
|
<type image="vmx" filesystem="ext3" bootprofile="xen" bootkernel="xenk" bootloader="grub2" kernelcmdline="splash">
|
|
<machine memory="512" xen_loader="pvgrub">
|
|
<vmdisk id="0" device="/dev/xvda" controller="ide"/>
|
|
<vmnic interface=""/>
|
|
</machine>
|
|
</type>
|
|
<type image="oem" filesystem="ext3" boot="oemboot/example-distribution" bootprofile="xen" bootkernel="xenk" installiso="true" bootloader="grub2" kernelcmdline="splash" xen_server="true" firmware="bios">
|
|
<oemconfig>
|
|
<oem-systemsize>2048</oem-systemsize>
|
|
<oem-swap>true</oem-swap>
|
|
</oemconfig>
|
|
</type>
|
|
</preferences>
|
|
<preferences profiles="vmxFlavour">
|
|
<type image="vmx" filesystem="ext3" format="vmdk" bootloader="grub2" kernelcmdline="splash" bootpartition="false">
|
|
<systemdisk name="systemVG"/>
|
|
<machine memory="512" guestOS="suse" HWversion="4">
|
|
<vmdisk id="0" controller="ide"/>
|
|
<vmnic driver="e1000" interface="0" mode="bridged"/>
|
|
</machine>
|
|
</type>
|
|
<type bootloader="grub2" image="oem" primary="true" boot="oemboot/example-distribution" firmware="efi" kernelcmdline="splash" vga="0x303" editbootconfig="my_edit_boot_script" editbootinstall="my_edit_boot_install" filesystem="btrfs" initrd_system="dracut" installiso="true">
|
|
<size unit="G" additive="true">1</size>
|
|
<systemdisk name="mydisk">
|
|
<volume name="root" size="6G" mountpoint="/" label="foo"/>
|
|
<volume name="foo" size="all"/>
|
|
<volume name="bar" freespace="all"/>
|
|
</systemdisk>
|
|
<machine memory="512" xen_loader="pvgrub">
|
|
<vmdisk id="0" device="/dev/xvda" controller="ide"/>
|
|
<vmnic interface=""/>
|
|
</machine>
|
|
<oemconfig>
|
|
<oem-systemsize>2048</oem-systemsize>
|
|
<oem-swap>true</oem-swap>
|
|
<oem-recovery>false</oem-recovery>
|
|
</oemconfig>
|
|
</type>
|
|
<type image="iso" mediacheck="true" firmware="bios"/>
|
|
</preferences>
|
|
<users>
|
|
<user groups="root" pwdformat="plain" password="mypwd" shell="/bin/bash" id="815" realname="Bob" home="/root" name="root"/>
|
|
</users>
|
|
<repository priority="42" imageinclude="true">
|
|
<source path="iso:///image/CDs/dvd.iso"/>
|
|
</repository>
|
|
<repository type="rpm-md">
|
|
<source path="obs://Devel:PubCloud:AmazonEC2/SLE_12_GA"/>
|
|
</repository>
|
|
<packages type="image" patternType="plusRecommended">
|
|
<namedCollection name="base"/>
|
|
<product name="openSUSE"/>
|
|
<package name="plymouth-branding-openSUSE" bootinclude="true"/>
|
|
<package name="grub2-branding-openSUSE" bootinclude="true"/>
|
|
<package name="ifplugd"/>
|
|
<package name="iputils"/>
|
|
<package name="vim" bootdelete="true"/>
|
|
<package name="openssh"/>
|
|
<archive name="image.tgz" bootinclude="true"/>
|
|
<package name="foo" arch="x86_64"/>
|
|
</packages>
|
|
<packages type="iso">
|
|
<package name="gfxboot-branding-openSUSE" bootinclude="true" bootdelete="true"/>
|
|
</packages>
|
|
<packages type="oem">
|
|
<package name="gfxboot-branding-openSUSE" bootinclude="true" bootdelete="true"/>
|
|
</packages>
|
|
<packages type="image" profiles="ec2Flavour">
|
|
<package name="kernel-ec2"/>
|
|
<package name="xen-tools" arch="x86_64"/>
|
|
<package name="xen" arch="x86_64"/>
|
|
</packages>
|
|
<packages type="image" profiles="xenFlavour">
|
|
<package name="kernel-xen"/>
|
|
<package name="xen-tools" arch="x86_64"/>
|
|
<package name="xen" arch="x86_64"/>
|
|
</packages>
|
|
<packages type="image" profiles="vmxFlavour">
|
|
<package name="kernel-default"/>
|
|
</packages>
|
|
<packages type="bootstrap">
|
|
<package name="filesystem"/>
|
|
<namedCollection name="bootstrap-collection"/>
|
|
<product name="kiwi"/>
|
|
<archive name="bootstrap.tgz"/>
|
|
</packages>
|
|
<packages type="delete">
|
|
<package name="kernel-debug"/>
|
|
</packages>
|
|
</image>
|