Hello community,
here is the log from the commit of package kiwi
checked in at Mon Jul 2 18:04:37 CEST 2007.
--------
--- arch/i386/kiwi/kiwi.changes 2007-06-21 15:52:27.000000000 +0200
+++ /mounts/work_src_done/STABLE/kiwi/kiwi.changes 2007-07-02 17:02:45.294390000 +0200
@@ -1,0 +2,15 @@
+Fri Jun 22 10:56:38 CEST 2007 - ms@suse.de
+
+- v1.42
+- don't use fstab from host system, create default file (#286298)
+- allow --add-package in --upgrade mode. This will install additional
+ packages as specified into the existing root tree after the upgrade
+ was finished successfully
+- added support for parted partitioner in KIWILinuxRC.sh
+- fixed standalone grub setup if UNIONFS_CONFIG is used
+- added optional config.<mac> parameter KIWI_KERNEL
+- added vmware package/configuration description section. This
+ will lead to an appropriate .vmx file for use in vmware player
+- fixed isoboot theme used for SLED (#288849)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kiwi.spec ++++++
--- /var/tmp/diff_new_pack.v24963/_old 2007-07-02 18:03:53.000000000 +0200
+++ /var/tmp/diff_new_pack.v24963/_new 2007-07-02 18:03:53.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package kiwi (Version 1.41)
+# spec file for package kiwi (Version 1.42)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -15,10 +15,10 @@
BuildRequires: module-init-tools perl perl-XML-LibXML perl-libwww-perl screen smart syslinux
Requires: perl perl-XML-LibXML perl-libwww-perl screen
Summary: OpenSuSE - KIWI Image System
-Version: 1.41
+Version: 1.42
Release: 1
Group: System/Management
-License: GNU General Public License (GPL)
+License: GPL v2 or later
Source: kiwi.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-build
ExcludeArch: ia64 ppc64 s390x s390 ppc
@@ -302,6 +302,18 @@
%{_datadir}/kiwi/image/xenboot/suse*
%changelog
+* Fri Jun 22 2007 - ms@suse.de
+- v1.42
+- don't use fstab from host system, create default file (#286298)
+- allow --add-package in --upgrade mode. This will install additional
+ packages as specified into the existing root tree after the upgrade
+ was finished successfully
+- added support for parted partitioner in KIWILinuxRC.sh
+- fixed standalone grub setup if UNIONFS_CONFIG is used
+- added optional config.<mac> parameter KIWI_KERNEL
+- added vmware package/configuration description section. This
+ will lead to an appropriate .vmx file for use in vmware player
+- fixed isoboot theme used for SLED (#288849)
* Wed Jun 20 2007 - ms@suse.de
- v1.41
- fixed cleanInitrd() for 64bit archs
++++++ kiwi.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/kiwi.pl new/kiwi/kiwi.pl
--- old/kiwi/kiwi.pl 2007-06-21 15:50:03.000000000 +0200
+++ new/kiwi/kiwi.pl 2007-07-02 16:52:46.000000000 +0200
@@ -30,7 +30,7 @@
#============================================
# Globals (Version)
#--------------------------------------------
-our $Version = "1.41";
+our $Version = "1.42";
our $SchemeVersion = "1.4";
#============================================
# Globals
@@ -246,7 +246,7 @@
}
$kiwi -> done();
#==========================================
- # Initialize logical image extend
+ # Check type params and create image obj
#------------------------------------------
$image = new KIWIImage (
$kiwi,$xml,$Create,$Destination,$StripImage,
@@ -257,6 +257,40 @@
if (! defined $para) {
my $code = kiwiExit (1); return $code;
}
+ #==========================================
+ # Check for type packages if any
+ #------------------------------------------
+ my @addonList;
+ if ($type{type} eq "vmx") {
+ $kiwi -> info ("Creating VMware package list");
+ @addonList = $xml -> getVMwareList();
+ $kiwi -> done();
+ }
+ if ($type{type} eq "xen") {
+ $kiwi -> info ("Creating Xen package list");
+ @addonList = $xml -> getXenList();
+ $kiwi -> done();
+ }
+ if (@addonList) {
+ $kiwi -> info ("Installing packages: @addonList...\n");
+ $kiwi -> warning (
+ "*** Packages installed here won't be removed later ***\n"
+ );
+ $main::Survive = "yes";
+ $main::Upgrade = $Create;
+ @main::AddPackage = @addonList;
+ undef $main::Create;
+ if (! defined main::main()) {
+ $main::Survive = "default";
+ my $code = kiwiExit (1); return $code;
+ }
+ $main::Survive = "default";
+ $main::Create = $main::Upgrade;
+ undef $main::Upgrade;
+ }
+ #==========================================
+ # Initialize logical image extend
+ #------------------------------------------
my $ok;
SWITCH: for ($type{type}) {
/^ext2/ && do {
@@ -337,17 +371,11 @@
$xml -> addRepository (\@AddRepositoryType,\@AddRepository);
}
#==========================================
- # Check for add-package option
- #------------------------------------------
- if (defined @AddPackage) {
- $xml -> addImagePackages (@AddPackage);
- }
- #==========================================
# Initialize root system, use existing root
#------------------------------------------
$root = new KIWIRoot (
$kiwi,$xml,$Upgrade,undef,
- "/base-system",$Upgrade
+ "/base-system",$Upgrade,\@AddPackage
);
if (! defined $root) {
$kiwi -> error ("Couldn't create root object");
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIBoot.pm new/kiwi/modules/KIWIBoot.pm
--- old/kiwi/modules/KIWIBoot.pm 2007-06-14 09:26:10.000000000 +0200
+++ new/kiwi/modules/KIWIBoot.pm 2007-06-27 11:08:20.000000000 +0200
@@ -21,6 +21,8 @@
#------------------------------------------
use strict;
use KIWILog;
+use File::Basename;
+use File::Spec;
#==========================================
# Constructor
@@ -84,9 +86,14 @@
return undef;
}
$kernel = $initrd;
- $knlink = $kernel;
- $knlink =~ s/gz$/kernel/;
- $kernel = readlink ($knlink);
+ $kernel =~ s/gz$/kernel/;
+ if (-l $kernel) {
+ $knlink = $kernel;
+ $kernel = readlink ($knlink);
+ if (!File::Spec->file_name_is_absolute($kernel)) {
+ $kernel = File::Spec->catfile(dirname($initrd), $kernel);
+ }
+ }
if (! -f $kernel) {
$kiwi -> error ("Couldn't find kernel file: $kernel");
$kiwi -> failed ();
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIConfig.sh new/kiwi/modules/KIWIConfig.sh
--- old/kiwi/modules/KIWIConfig.sh 2007-05-24 11:07:13.000000000 +0200
+++ new/kiwi/modules/KIWIConfig.sh 2007-07-02 16:52:45.000000000 +0200
@@ -159,3 +159,37 @@
umount /dev/pts
umount /sys
}
+
+#======================================
+# stripLocales
+#--------------------------------------
+function baseStripLocales {
+ local imageLocales="$@"
+ local directories="
+ /opt/gnome/share/locale
+ /usr/share/locale
+ /opt/kde3/share/locale
+ /usr/lib/locale
+ "
+ for dir in $directories; do
+ locales=`find $dir -type d -maxdepth 1 2>/dev/null`
+ for locale in $locales;do
+ if test $locale = $dir;then
+ continue
+ fi
+
+ local baseLocale=`basename $locale`
+ local found="no"
+ for keep in $imageLocales;do
+ if echo $baseLocale | grep $keep;then
+ found="yes"
+ break
+ fi
+ done
+
+ if test $found = "no";then
+ rm -rf $locale
+ fi
+ done
+ done
+}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIImage.pm new/kiwi/modules/KIWIImage.pm
--- old/kiwi/modules/KIWIImage.pm 2007-06-21 15:50:03.000000000 +0200
+++ new/kiwi/modules/KIWIImage.pm 2007-07-02 16:52:45.000000000 +0200
@@ -378,7 +378,10 @@
}
$main::Survive = "yes";
$main::RootTree = "/tmp/kiwi-".$text."boot-$$";
- $main::Prepare = $main::System."/".$boot;
+ $main::Prepare = $boot;
+ if ($boot !~ /^\//) {
+ $main::Prepare = $main::System."/".$boot;
+ }
$main::Create = $main::RootTree;
$main::ForeignRepo{xmlnode} = $xml -> getForeignNodeList();
$main::ForeignRepo{prepare} = $main::Prepare;
@@ -455,6 +458,8 @@
#------------------------------------------
my $this = shift;
my $para = shift;
+ my $xml = $this->{xml};
+ my %vmwc = $xml -> getPackageAttributes ("vmware");
my $name = $this -> createImageUSB ($para,"VMX");
if (! defined $name) {
return undef;
@@ -471,6 +476,16 @@
$main::Survive = "default";
return undef;
}
+ #==========================================
+ # Create virtual disk configuration
+ #------------------------------------------
+ if ($main::BootVMFormat eq "vmdk") {
+ # VMware vmx file...
+ if (! $this -> buildVMwareConfig ($main::Destination,$name,\%vmwc)) {
+ $main::Survive = "default";
+ return undef;
+ }
+ }
$main::Survive = "default";
return $this;
}
@@ -715,7 +730,10 @@
}
$main::Survive = "yes";
$main::RootTree = "/tmp/kiwi-cdboot-$$";
- $main::Prepare = $main::System."/".$boot;
+ $main::Prepare = $boot;
+ if ($boot !~ /^\//) {
+ $main::Prepare = $main::System."/".$boot;
+ }
$main::Create = $main::RootTree;
$main::ForeignRepo{xmlnode} = $xml -> getForeignNodeList();
$main::ForeignRepo{prepare} = $main::Prepare;
@@ -1217,7 +1235,7 @@
last SWITCH;
};
/linux/i && do {
- $type = "L";
+ $type = "83";
last SWITCH;
};
}
@@ -1787,6 +1805,71 @@
}
#==========================================
+# buildVMwareConfig
+#------------------------------------------
+sub buildVMwareConfig {
+ my $this = shift;
+ my $dest = shift;
+ my $name = shift;
+ my $vmwref = shift;
+ my $kiwi = $this->{kiwi};
+ my $file = $dest."/".$name->{systemImage}.".vmx";
+ my %vmwconfig = %{$vmwref};
+ if (defined $vmwconfig{disk}) {
+ $kiwi -> info ("Creating image VMware configuration file...");
+ if (! open (FD,">$file")) {
+ $kiwi -> failed ();
+ $kiwi -> error ("Couldn't create xenconfig file: $!");
+ $kiwi -> failed ();
+ return undef;
+ }
+ my $device = $vmwconfig{disk};
+ my $memory = $vmwconfig{memory};
+ my $image = $dest."/".$name->{systemImage};
+ # General...
+ print FD '#!/usr/bin/vmware'."\n";
+ print FD 'config.version = "8"'."\n";
+ print FD 'virtualHW.version = "3"'."\n";
+ print FD 'memsize = "'.$memory.'"'."\n";
+ print FD 'guestOS = "Linux"'."\n";
+ print FD 'displayName = "'.$name->{systemImage}.'"'."\n";
+ if ($device =~ /^ide/) {
+ # IDE Interface...
+ print FD $device.':0.present = "true"'."\n";
+ print FD $device.':0.fileName= "'.$image.'.vmdk"'."\n";
+ print FD $device.':0.redo = ""'."\n";
+ } else {
+ # SCSI Interface...
+ print FD $device.'.present = "true"'."\n";
+ print FD $device.'.sharedBus = "none"'."\n";
+ print FD $device.'.virtualDev = "lsilogic"'."\n";
+ print FD $device.':0.present = "true"'."\n";
+ print FD $device.':0.fileName = "'.$image.'"'."\n";
+ print FD $device.':0.deviceType = "scsi-hardDisk"'."\n";
+ }
+ # Floppy...
+ print FD 'floppy0.fileName = "/dev/fd0"'."\n";
+ # Network...
+ print FD 'Ethernet0.present = "true"'."\n";
+ print FD 'ethernet0.addressType = "generated"'."\n";
+ print FD 'ethernet0.generatedAddress = "00:0c:29:13:ea:50"'."\n";
+ print FD 'ethernet0.generatedAddressOffset = "0"'."\n";
+ # USB...
+ print FD 'usb.present = "true"'."\n";
+ # Power management...
+ print FD 'priority.grabbed = "normal"'."\n";
+ print FD 'priority.ungrabbed = "normal"'."\n";
+ print FD 'powerType.powerOff = "hard"'."\n";
+ print FD 'powerType.powerOn = "hard"'."\n";
+ print FD 'powerType.suspend = "hard"'."\n";
+ print FD 'powerType.reset = "hard"'."\n";
+ close FD;
+ $kiwi -> done();
+ }
+ return $dest;
+}
+
+#==========================================
# buildMD5Sum
#------------------------------------------
sub buildMD5Sum {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWILinuxRC.sh new/kiwi/modules/KIWILinuxRC.sh
--- old/kiwi/modules/KIWILinuxRC.sh 2007-06-21 15:50:03.000000000 +0200
+++ new/kiwi/modules/KIWILinuxRC.sh 2007-07-02 16:52:45.000000000 +0200
@@ -16,6 +16,11 @@
# STATUS : Development
#----------------
#======================================
+# Exports (General)
+#--------------------------------------
+export PARTITIONER=sfdisk
+
+#======================================
# Debug
#--------------------------------------
function Debug {
@@ -474,9 +479,9 @@
fi
}
#======================================
-# partitionCount
+# sfdiskPartitionCount
#--------------------------------------
-function partitionCount {
+function sfdiskPartitionCount {
# /.../
# calculate the number of partitions to create. If the
# number is more than 4 an extended partition needs to be
@@ -492,9 +497,9 @@
PART_NEED_FILL=`expr 8 - \( $PART_NUMBER - $PART_NEED_FILL \* 8 \)`
}
#======================================
-# fillPartition
+# sfdiskFillPartition
#--------------------------------------
-function fillPartition {
+function sfdiskFillPartition {
# /.../
# in case of an extended partition the number of input lines
# must be a multiple of 4, so this function will fill the input
@@ -506,9 +511,9 @@
done
}
#======================================
-# createSwap
+# sfdiskCreateSwap
#--------------------------------------
-function createSwap {
+function sfdiskCreateSwap {
# /.../
# create the sfdisk input line for setting up the
# swap space
@@ -530,9 +535,9 @@
done
}
#======================================
-# createPartition
+# sfdiskCreatePartition
#--------------------------------------
-function createPartition {
+function sfdiskCreatePartition {
# /.../
# create the sfdisk input lines for setting up the
# partition table except the swap space
@@ -586,9 +591,126 @@
fi
}
#======================================
-# writePartitionTable
+# partedCreatePartition
#--------------------------------------
-function writePartitionTable {
+function partedCreatePartition {
+ # /.../
+ # create the parted input data for setting up the
+ # partition table
+ # ----
+ p_stopp=0
+ dd if=/dev/zero of=$DISK bs=512 count=1 >/dev/null 2>&1 && \
+ /usr/sbin/parted -s $DISK mklabel msdos
+ if [ $? -ne 0 ];then
+ systemException \
+ "Failed to clean partition table on: $DISK !" \
+ "reboot"
+ fi
+ p_opts="-s $DISK unit s print"
+ p_size=`/usr/sbin/parted $p_opts | grep "Disk" | cut -f2 -d: | cut -f1 -ds`
+ p_size=`echo $p_size`
+ p_cmd="/usr/sbin/parted -s $DISK unit s"
+ p_idc="/sbin/sfdisk -c $DISK"
+ p_ids="true"
+ IFS="," ; for i in $PART;do
+ field=0
+ IFS=";" ; for n in $i;do
+ case $field in
+ 0) partSize=$n ; field=1 ;;
+ 1) partID=$n ; field=2 ;;
+ 2) partMount=$n;
+ esac
+ done
+ PART_COUNT=`expr $PART_COUNT + 1`
+ if test $partSize = "x";then
+ partSize=$p_size
+ else
+ partSize=`expr $partSize \* 2048`
+ fi
+ if test $partID = "82" -o $partID = "S";then
+ partedGetSectors 63 $partSize
+ p_cmd="$p_cmd mkpartfs primary linux-swap $p_start $p_stopp"
+ continue
+ fi
+ if [ $p_stopp = 0 ];then
+ systemException \
+ "Invalid partition setup: $PART !" \
+ "reboot"
+ fi
+ partedGetSectors $p_stopp $partSize
+ if [ $PART_COUNT -le 3 ];then
+ p_cmd="$p_cmd mkpart primary $p_start $p_stopp"
+ p_ids="$p_ids && $p_idc $PART_COUNT $partID"
+ else
+ if [ $PART_COUNT -eq 4 ];then
+ p_cmd="$p_cmd mkpart extended $p_start $p_size"
+ p_ids="$p_ids && $p_idc $PART_COUNT 85"
+ PART_COUNT=`expr $PART_COUNT + 1`
+ NO_FILE_SYSTEM=1
+ fi
+ p_start=`expr $p_start + 1`
+ p_cmd="$p_cmd mkpart logical $p_start $p_stopp"
+ p_ids="$p_ids && $p_idc $PART_COUNT $partID"
+ fi
+ if test -z "$PART_MOUNT";then
+ PART_MOUNT="$partMount"
+ PART_DEV="$DISK$devices"
+ else
+ PART_MOUNT="$PART_MOUNT:$partMount"
+ if [ $NO_FILE_SYSTEM -eq 2 ];then
+ NO_FILE_SYSTEM=0
+ fi
+ PART_DEV="$PART_DEV:$DISK$devices"
+ fi
+ if [ $NO_FILE_SYSTEM -eq 1 ];then
+ NO_FILE_SYSTEM=2
+ fi
+ done
+ p_cmd="$p_cmd set 2 boot on"
+}
+#======================================
+# partedGetSectors
+#--------------------------------------
+function partedGetSectors {
+ # /.../
+ # calculate start/end sector for given
+ # sector size
+ # ---
+ p_start=$1
+ if [ $p_start -gt 63 ];then
+ p_start=`expr $p_start + 1`
+ fi
+ p_stopp=`expr $p_start + $2`
+ if [ $p_stopp -gt $p_size ];then
+ p_stopp=$p_size
+ fi
+}
+#======================================
+# partedWritePartitionTable
+#--------------------------------------
+function partedWritePartitionTable {
+ # /.../
+ # write the partition table using parted
+ # ----
+ diskDevice=$1
+
+ eval $p_cmd
+ if test $? != 0;then
+ systemException \
+ "Failed to create partition table on: $diskDevice !" \
+ "reboot"
+ fi
+ eval $p_ids >/dev/null 2>&1
+ if test $? != 0;then
+ systemException \
+ "Failed to setup partition IDs on: $diskDevice !" \
+ "reboot"
+ fi
+}
+#======================================
+# sfdiskWritePartitionTable
+#--------------------------------------
+function sfdiskWritePartitionTable {
# /.../
# write the partition table using PART_FILE as
# input for sfdisk
@@ -613,6 +735,42 @@
rm -f $PART_FILE
}
#======================================
+# partitionCount
+#--------------------------------------
+function partitionCount {
+ if [ $PARTITIONER = "sfdisk" ];then
+ sfdiskPartitionCount
+ fi
+}
+#======================================
+# createSwap
+#--------------------------------------
+function createSwap {
+ if [ $PARTITIONER = "sfdisk" ];then
+ sfdiskCreateSwap
+ fi
+}
+#======================================
+# createPartition
+#--------------------------------------
+function createPartition {
+ if [ $PARTITIONER = "sfdisk" ];then
+ sfdiskCreatePartition
+ else
+ partedCreatePartition
+ fi
+}
+#======================================
+# writePartitionTable
+#--------------------------------------
+function writePartitionTable {
+ if [ $PARTITIONER = "sfdisk" ];then
+ sfdiskWritePartitionTable $1
+ else
+ partedWritePartitionTable $1
+ fi
+}
+#======================================
# linuxPartition
#--------------------------------------
function linuxPartition {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIManager.pm new/kiwi/modules/KIWIManager.pm
--- old/kiwi/modules/KIWIManager.pm 2007-05-21 14:41:52.000000000 +0200
+++ new/kiwi/modules/KIWIManager.pm 2007-06-27 11:08:20.000000000 +0200
@@ -544,6 +544,7 @@
# using the package manager upgrade functionality
# ---
my $this = shift;
+ my $addPacks = shift;
my $kiwi = $this->{kiwi};
my $root = $this->{root};
my $manager = $this->{manager};
@@ -564,7 +565,13 @@
#------------------------------------------
$kiwi -> info ("Upgrading image...");
print $fd "chroot $root smart update\n";
- print $fd "chroot $root smart upgrade -y\n";
+ if (defined $addPacks) {
+ my @addonPackages = @{$addPacks};
+ print $fd "chroot $root smart upgrade -y && ";
+ print $fd "chroot $root smart install -y @addonPackages\n";
+ } else {
+ print $fd "chroot $root smart upgrade -y\n";
+ }
print $fd "echo \$? > $screenCall.exit\n";
$fd -> close();
}
@@ -576,7 +583,13 @@
# Create screen call file
#------------------------------------------
$kiwi -> info ("Upgrading image...");
- print $fd "chroot $root yes | zypper upgrade\n";
+ if (defined $addPacks) {
+ my @addonPackages = @{$addPacks};
+ print $fd "chroot $root yes | zypper upgrade && ";
+ print $fd "chroot $root yes | zypper install -y @addonPackages\n";
+ } else {
+ print $fd "chroot $root yes | zypper upgrade\n";
+ }
print $fd "echo \$? > $screenCall.exit\n";
$fd -> close();
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIRoot.pm new/kiwi/modules/KIWIRoot.pm
--- old/kiwi/modules/KIWIRoot.pm 2007-06-14 09:26:10.000000000 +0200
+++ new/kiwi/modules/KIWIRoot.pm 2007-07-02 16:52:45.000000000 +0200
@@ -49,6 +49,7 @@
my $selfRoot = shift;
my $baseSystem = shift;
my $useRoot = shift;
+ my $addPacks = shift;
#==========================================
# Constructor setup
#------------------------------------------
@@ -177,6 +178,7 @@
$this->{useRoot} = $useRoot;
$this->{root} = $root;
$this->{manager} = $manager;
+ $this->{addPacks} = $addPacks;
return $this;
}
@@ -239,20 +241,30 @@
qx ( mkdir -p $root/var/log/YaST2 );
qx ( touch $root/etc/mtab );
qx ( touch $root/etc/sysconfig/bootloader );
- qx ( cp /etc/resolv.conf $root/etc 2>&1 );
- qx ( cp /etc/fstab $root/etc 2>&1 );
qx ( cp /etc/group $root/etc 2>&1 );
qx ( cp /etc/passwd $root/etc 2>&1 );
qx ( cp $main::KConfig $root/.kconfig 2>&1 );
#==================================
+ # Create default fstab file
+ #----------------------------------
+ if ( ! open (FD,">$root/etc/fstab")) {
+ $kiwi -> error ("Failed to create fstab file: $!");
+ $kiwi -> failed ();
+ return undef;
+ }
+ print FD "devpts /dev/pts devpts mode=0620,gid=5 0 0\n";
+ print FD "proc /proc proc defaults 0 0\n";
+ close FD;
+
+ #==================================
# Create /etc/ImageVersion file
#----------------------------------
my $imageVersionFile = "$root/etc/ImageVersion";
my $imageVersion = $xml -> getImageVersion();
my $imageName = $xml -> getImageName();
if ( ! open (FD,">$imageVersionFile")) {
- $kiwi -> error ("Failed to create Version File: $!");
+ $kiwi -> error ("Failed to create version file: $!");
$kiwi -> failed ();
return undef;
}
@@ -273,7 +285,8 @@
# ---
my $this = shift;
my $kiwi = $this->{kiwi};
- my $manager = $this->{manager};
+ my $manager = $this->{manager};
+ my $addPacks = $this->{addPacks};
#==========================================
# Mount local and NFS directories
#------------------------------------------
@@ -285,7 +298,7 @@
#==========================================
# Upgrade system
#------------------------------------------
- if (! $manager -> setupUpgrade()) {
+ if (! $manager -> setupUpgrade ($addPacks)) {
return undef;
}
return $this;
@@ -303,6 +316,7 @@
my $kiwi = $this->{kiwi};
my $xml = $this->{xml};
my $manager = $this->{manager};
+ my %type;
#==========================================
# Get image package list
#------------------------------------------
@@ -315,7 +329,7 @@
#==========================================
# Get Xen package if type is appropriate
#------------------------------------------
- my %type = %{$xml -> getImageTypeAndAttributes()};
+ %type = %{$xml -> getImageTypeAndAttributes()};
if ("$type{type}" eq "xen") {
$kiwi -> info ("Creating Xen package list");
my @xenList = $xml -> getXenList();
@@ -328,6 +342,17 @@
$kiwi -> done ();
}
#==========================================
+ # Get VMware package if type is appropriate
+ #------------------------------------------
+ if ("$type{type}" eq "vmx") {
+ $kiwi -> info ("Creating VMware package list");
+ my @vmwareList = $xml -> getVMwareList();
+ if (@vmwareList) {
+ @packList = (@packList,@vmwareList);
+ }
+ $kiwi -> done ();
+ }
+ #==========================================
# Mount local and NFS directories
#------------------------------------------
if (! setupMount ($this)) {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIScheme.xsd new/kiwi/modules/KIWIScheme.xsd
--- old/kiwi/modules/KIWIScheme.xsd 2007-06-19 16:13:58.000000000 +0200
+++ new/kiwi/modules/KIWIScheme.xsd 2007-07-02 16:52:45.000000000 +0200
@@ -21,7 +21,7 @@