Hello community,

here is the log from the commit of package kiwi for openSUSE:Factory checked in 
at 2013-02-18 13:48:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kiwi (Old)
 and      /work/SRC/openSUSE:Factory/.kiwi.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kiwi", Maintainer is "m...@suse.com"

Changes:
--------
--- /work/SRC/openSUSE:Factory/kiwi/kiwi.changes        2013-02-13 
17:27:55.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kiwi.new/kiwi.changes   2013-02-18 
13:48:09.000000000 +0100
@@ -1,0 +2,94 @@
+Mon Feb 18 11:05:44 CET 2013 - m...@suse.de
+
+- v5.04.46 released
+  
+-------------------------------------------------------------------
+Mon Feb 18 09:57:40 CET 2013 - m...@suse.de
+  
+- switch back to firmware='bios' and print a warning if uefi
+  is requested on another than the x86_64 architecture. on SUSE
+  we provide signed loaders and kernels for x86_64 only
+  
+-------------------------------------------------------------------
+Mon Feb 18 09:46:42 CET 2013 - m...@suse.de
+  
+- secure boot grub commands are linuxefi and initrdefi
+  fix this also for oem disk images
+  
+-------------------------------------------------------------------
+Mon Feb 18 09:33:58 CET 2013 - m...@suse.de
+  
+- fixed building of i386-efi (32bit) live EFI iso images
+  
+-------------------------------------------------------------------
+Sun Feb 17 23:50:36 CET 2013 - m...@suse.de
+  
+- check for grub2 conf tool name before using it. with
+  openSUSE 12.3 the grub2-efi-... tool chain was removed
+  thus kiwi needs to check this before calling the mkconfig
+  command
+  
+-------------------------------------------------------------------
+Sun Feb 17 23:45:14 CET 2013 - m...@suse.de
+  
+- better logging messages for framebuffer device setup and
+  initrd creation for reboot of the system by either dracut
+  or mkinitrd
+  
+-------------------------------------------------------------------
+Sun Feb 17 18:55:49 CET 2013 - m...@suse.de
+  
+- increased default boot partition size to 200MB (+50M)
+  the plymouth splash data is huge. Just to give an example
+  12.2 SUSE plymouth theme data is ~3M, 12.3 SUSE plymouth
+  theme data is about 23M. That blows up the initrd and
+  needs more space on the boot partition
+  
+-------------------------------------------------------------------
+Sun Feb 17 18:41:30 CET 2013 - m...@suse.de
+  
+- make sure temporary config.lxc is removed after execution
+  
+-------------------------------------------------------------------
+Sun Feb 17 14:30:29 CET 2013 - m...@suse.de
+  
+- EFI/UEFI fixes according to standard
+  * EFI/BOOT is required instead of efi/boot
+  * eltorito alternative loader path must be boot/<arch>/efi
+  * secure boot grub commands are linuxefi and initrdefi
+  * check for 64bit or 32bit efi module
+    
+-------------------------------------------------------------------
+Sun Feb 17 14:28:04 CET 2013 - m...@suse.de
+    
+- KIWICollect install media package collector fixes
+  * pass all needed arguments to the KIWIIsoLinux constructor
+  * set logfile to terminal
+    
+-------------------------------------------------------------------
+Fri Feb 15 16:57:28 CET 2013 - m...@suse.de
+    
+- v5.04.45 released
+  
+-------------------------------------------------------------------
+Fri Feb 15 16:45:29 CET 2013 - m...@suse.de
+  
+- systemd related fixes causing the first boot to hang
+  * setupConsole should not run at all in case of systemd
+  * systemd has been moved to /usr/lib/systemd/systemd thus
+    /bin/systemd is now a link and that causes several
+    bash test calls to fail
+  * quit plymouth inside the initrd if the system image
+    doesn't have plymouth installed
+  * make debugging plymouth problems more easy by evaluating
+    the options plymouth.enable and/or rd.plymouth like
+    the mkinitrd scripts does it
+    
+-------------------------------------------------------------------
+Fri Feb 15 16:44:17 CET 2013 - m...@suse.de
+    
+- systemd has been moved to /usr/lib/systemd with openSUSE 12.3
+  thus the function baseSetRunlevel() needs to address old and
+  new location
+  
+-------------------------------------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kiwi.spec ++++++
--- /var/tmp/diff_new_pack.SI1T1c/_old  2013-02-18 13:48:15.000000000 +0100
+++ /var/tmp/diff_new_pack.SI1T1c/_new  2013-02-18 13:48:15.000000000 +0100
@@ -26,7 +26,7 @@
 Summary:        openSUSE - KIWI Image System
 License:        GPL-2.0
 Group:          System/Management
-Version:        5.04.44
+Version:        5.04.46
 Release:        0
 # requirements to build packages
 BuildRequires:  e2fsprogs

++++++ kiwi-docu.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/kiwi/kiwi-docu.tar.bz2 
/work/SRC/openSUSE:Factory/.kiwi.new/kiwi-docu.tar.bz2 differ: char 11, line 1

++++++ kiwi.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi/.revision new/kiwi/.revision
--- old/kiwi/.revision  2013-02-07 08:55:37.000000000 +0100
+++ new/kiwi/.revision  2013-02-07 08:55:37.000000000 +0100
@@ -1 +1 @@
-d8b03a59d1b1f49f9dc6f848d1823b7dca504d69
+a7cd6879743694b1b8d5e034140f76a5ebf8c433
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        2013-02-13 15:41:25.000000000 +0100
+++ new/kiwi/modules/KIWIBoot.pm        2013-02-18 11:07:44.000000000 +0100
@@ -425,6 +425,13 @@
                if ($type{firmware}) {
                        $firmware = $type{firmware};
                }
+               if (($firmware eq 'uefi') && ($arch ne 'x86_64')) {
+                       $kiwi -> warning (
+                               "UEFI Secure boot is only supported on x86_64"
+                       );
+                       $kiwi -> skipped ();
+                       $firmware = 'bios';
+               }
        }
        #==========================================
        # check partitioner
@@ -610,6 +617,10 @@
        } else {
                $bootloader = "grub";
        }
+       my $efi_arch= 'x86_64';
+       if ($arch ne 'x86_64') {
+               $efi_arch = 'i386';
+       }
        my $status;
        my $result;
        my $tmpdir;
@@ -848,17 +859,28 @@
                $kiwi -> done();
        }
        #==========================================
+       # copy grub2 config file to efi path too
+       #------------------------------------------
+       if (($firmware eq "efi") || ($firmware eq "uefi")) {
+               qxx ("mkdir -p $tmpdir/EFI/BOOT");
+               qxx ("cp $tmpdir/boot/grub2-efi/grub.cfg $tmpdir/EFI/BOOT");
+       }
+       #==========================================
        # make iso EFI bootable
        #------------------------------------------
        if (($firmware eq "efi") || ($firmware eq "uefi")) {
-               my $efi_fat = "$tmpdir/boot/grub2-efi/efiboot.img";
-               $status = qxx ("qemu-img create $efi_fat 4M 2>&1");
+               my $efi_fat = "$tmpdir/boot/$efi_arch/efi";
+               $status = qxx ("mkdir -p $tmpdir/boot/$efi_arch");
                $result = $? >> 8;
                if ($result == 0) {
+                       $status = qxx ("qemu-img create $efi_fat 4M 2>&1");
+                       $result = $? >> 8;
+               }
+               if ($result == 0) {
                        $status = qxx ("/sbin/mkdosfs -n 'BOOT' $efi_fat 2>&1");
                        $result = $? >> 8;
                        if ($result == 0) {
-                               $status = qxx ("mcopy -Do -s -i $efi_fat 
$tmpdir/efi :: 2>&1");
+                               $status = qxx ("mcopy -Do -s -i $efi_fat 
$tmpdir/EFI :: 2>&1");
                                $result = $? >> 8;
                        }
                }
@@ -870,12 +892,6 @@
                }
        }
        #==========================================
-       # copy grub2 config file to efi path too
-       #------------------------------------------
-       if (($firmware eq "efi") || ($firmware eq "uefi")) {
-               qxx ("cp $tmpdir/boot/grub2-efi/grub.cfg $tmpdir/efi/boot");
-       }
-       #==========================================
        # Create an iso image from the tree
        #------------------------------------------
        $kiwi -> info ("Creating ISO image...");
@@ -893,7 +909,7 @@
                $base.= "-R -J -f -b boot/grub2/i386-pc/eltorito.img 
-no-emul-boot ";
                $base.= "-boot-load-size 4 -boot-info-table -udf 
-allow-limited-size ";
                if (($firmware eq "efi") || ($firmware eq "uefi")) {
-                       $base.= "-eltorito-alt-boot -b 
boot/grub2-efi/efiboot.img ";
+                       $base.= "-eltorito-alt-boot -b boot/$efi_arch/efi ";
                        $base.= "-no-emul-boot ";
                }
                $opts.= "-joliet-long ";
@@ -2592,8 +2608,8 @@
                # Mount efi jump boot space on this disk
                #------------------------------------------
                my $jump = $deviceMap{jump};
-               qxx ("mkdir -p $loopdir/efi");
-               if (! KIWIGlobals -> instance() -> mount ($jump, 
"$loopdir/efi")) {
+               qxx ("mkdir -p $loopdir/EFI");
+               if (! KIWIGlobals -> instance() -> mount ($jump, 
"$loopdir/EFI")) {
                        $kiwi -> failed ();
                        $kiwi -> error  ("Couldn't mount image jump device: 
$boot");
                        $kiwi -> failed ();
@@ -2612,8 +2628,8 @@
                #==========================================
                # Adapt efi boot path on jump partition
                #------------------------------------------
-               qxx ("mkdir -p $loopdir/efi/efi");
-               qxx ("mv $loopdir/efi/boot $loopdir/efi/efi");
+               qxx ("mkdir -p $loopdir/EFI/EFI");
+               qxx ("mv $loopdir/EFI/BOOT $loopdir/EFI/EFI");
        }
        #==========================================
        # umount entire boot space
@@ -3331,7 +3347,7 @@
                if (($firmware eq "efi") || ($firmware eq "uefi")) {
                        push @bootdir,"$tmpdir/boot/grub2-efi/$efipc";
                        push @bootdir,"$tmpdir/boot/grub2/$grubpc";
-                       push @bootdir,"$tmpdir/efi/boot";
+                       push @bootdir,"$tmpdir/EFI/BOOT";
                } else {
                        push @bootdir,"$tmpdir/boot/grub2/$grubpc";
                }
@@ -3479,7 +3495,7 @@
                                $kiwi -> failed ();
                                return;
                        }
-                       my $core    = "$tmpdir/efi/boot/bootx64.efi";
+                       my $core    = "$tmpdir/EFI/BOOT/bootx64.efi";
                        my @modules = (
                                
'fat','ext2','part_gpt','efi_gop','iso9660','chain',
                                
'linux','echo','configfile','boot','search_label',
@@ -3487,6 +3503,9 @@
                                'video','video_fb','normal'
                        );
                        my $fo = 'x86_64-efi';
+                       if ($arch ne 'x86_64') {
+                               $fo = 'i386-efi';
+                       }
                        $status = qxx (
                                "$grub2_mkimage -O $fo -o $core -c $bootefi 
@modules 2>&1"
                        );
@@ -3537,12 +3556,12 @@
                                return;
                        }
                        $status = qxx (
-                               "cp $tmpdir/$s_shim_ms 
$tmpdir/efi/boot/bootx64.efi 2>&1"
+                               "cp $tmpdir/$s_shim_ms 
$tmpdir/EFI/BOOT/bootx64.efi 2>&1"
                        );
                        $result = $? >> 8;
                        if ($result != 0) {
                                $status = qxx (
-                                       "cp $tmpdir/$s_shim_suse 
$tmpdir/efi/boot/bootx64.efi 2>&1"
+                                       "cp $tmpdir/$s_shim_suse 
$tmpdir/EFI/BOOT/bootx64.efi 2>&1"
                                );
                                $result = $? >> 8;
                        }
@@ -3553,7 +3572,7 @@
                                return;
                        }
                        $status = qxx (
-                               "cp $tmpdir/$s_signed $tmpdir/efi/boot/grub.efi 
2>&1");
+                               "cp $tmpdir/$s_signed $tmpdir/EFI/BOOT/grub.efi 
2>&1");
                        $result = $? >> 8;
                        if ($result != 0) {
                                $kiwi -> failed ();
@@ -3884,9 +3903,9 @@
                #==========================================
                # kernel loader command
                #------------------------------------------
-               my $linux = 'linux';
+               my $efi_suffix = '';
                if ($firmware eq "uefi") {
-                       $linux = 'linuxefi';
+                       $efi_suffix = 'efi';
                }
                #==========================================
                # Theme and Fonts table
@@ -4013,7 +4032,7 @@
                                print $FD ' --class opensuse --class os {'."\n";
                                if (($firmware eq "efi") || ($firmware eq 
"uefi")) {
                                        print $FD "\t"."set root='hd0,1'"."\n";
-                                       print $FD "\t".'chainloader 
/efi/boot/bootx64.efi'."\n";
+                                       print $FD "\t".'chainloader 
/EFI/BOOT/bootx64.efi'."\n";
                                } else {
                                        print $FD "\t"."set root='hd0'"."\n";
                                        if ($dev eq '(cd)') {
@@ -4047,30 +4066,30 @@
                                if ($iso) {
                                        print $FD "\t"."echo Loading 
linux...\n";
                                        print $FD "\t"."set 
gfxpayload=keep"."\n";
-                                       print $FD "\t"."$linux /boot/linux";
+                                       print $FD "\t"."linux$efi_suffix 
/boot/linux";
                                        print $FD ' ramdisk_size=512000 
ramdisk_blocksize=4096';
                                        print $FD " cdinst=1 loader=$bloader 
splash=silent";
                                } elsif (($type=~ /^KIWI USB/)||($imgtype=~ 
/vmx|oem|split/)) {
                                        print $FD "\t"."echo Loading 
linux.vmx...\n";
                                        print $FD "\t"."set 
gfxpayload=keep"."\n";
-                                       print $FD "\t"."$linux /boot/linux.vmx";
+                                       print $FD "\t"."linux$efi_suffix 
/boot/linux.vmx";
                                        print $FD " loader=$bloader 
splash=silent";
                                } else {
                                        print $FD "\t"."echo Loading 
linux...\n";
                                        print $FD "\t"."set 
gfxpayload=keep"."\n";
-                                       print $FD "\t"."$linux /boot/linux";
+                                       print $FD "\t"."linux$efi_suffix 
/boot/linux";
                                        print $FD " loader=$bloader 
splash=silent";
                                }
                                print $FD $cmdline;
                                if ($iso) {
                                        print $FD "\t"."echo Loading 
initrd...\n";
-                                       print $FD "\t"."initrd /boot/initrd\n";
+                                       print $FD "\t"."initrd$efi_suffix 
/boot/initrd\n";
                                } elsif (($type=~ /^KIWI USB/)||($imgtype=~ 
/vmx|oem|split/)) {
                                        print $FD "\t"."echo Loading 
initrd.vmx...\n";
-                                       print $FD "\t"."initrd 
/boot/initrd.vmx\n";
+                                       print $FD "\t"."initrd$efi_suffix 
/boot/initrd.vmx\n";
                                } else {
                                        print $FD "\t"."echo Loading 
initrd...\n";
-                                       print $FD "\t"."initrd /boot/initrd\n";
+                                       print $FD "\t"."initrd$efi_suffix 
/boot/initrd\n";
                                }
                                print $FD "}\n";
                        } else {
@@ -4121,7 +4140,7 @@
                                        if ($iso) {
                                                print $FD "\t"."echo Loading 
linux...\n";
                                                print $FD "\t"."set 
gfxpayload=keep"."\n";
-                                               print $FD "\t"."$linux 
/boot/linux";
+                                               print $FD 
"\t"."linux$efi_suffix /boot/linux";
                                                print $FD ' ramdisk_size=512000 
ramdisk_blocksize=4096';
                                                print $FD " cdinst=1 
loader=$bloader splash=silent";
                                        } elsif (
@@ -4130,28 +4149,28 @@
                                        ) {
                                                print $FD "\t"."echo Loading 
linux.vmx...\n";
                                                print $FD "\t"."set 
gfxpayload=keep"."\n";
-                                               print $FD "\t"."$linux 
/boot/linux.vmx";
+                                               print $FD 
"\t"."linux$efi_suffix /boot/linux.vmx";
                                                print $FD " loader=$bloader 
splash=silent";
                                        } else {
                                                print $FD "\t"."echo Loading 
linux...\n";
                                                print $FD "\t"."set 
gfxpayload=keep"."\n";
-                                               print $FD "\t"."$linux 
/boot/linux";
+                                               print $FD 
"\t"."linux$efi_suffix /boot/linux";
                                                print $FD " loader=$bloader 
splash=silent";
                                        }
                                        print $FD " @failsafe";
                                        print $FD $cmdline;
                                        if ($iso) {
                                                print $FD "\t"."echo Loading 
initrd...\n";
-                                               print $FD "\t"."initrd 
/boot/initrd\n";
+                                               print $FD 
"\t"."initrd$efi_suffix /boot/initrd\n";
                                        } elsif (
                                                ($type=~ /^KIWI USB/) ||
                                                ($imgtype=~ /vmx|oem|split/)
                                        ) {
                                                print $FD "\t"."echo Loading 
initrd.vmx...\n";
-                                               print $FD "\t"."initrd 
/boot/initrd.vmx\n";
+                                               print $FD 
"\t"."initrd$efi_suffix /boot/initrd.vmx\n";
                                        } else {
                                                print $FD "\t"."echo Loading 
initrd...\n";
-                                               print $FD "\t"."initrd 
/boot/initrd\n";
+                                               print $FD 
"\t"."initrd$efi_suffix /boot/initrd\n";
                                        }
                                        print $FD "}\n";
                                } else {
@@ -4897,7 +4916,7 @@
        # EFI
        #------------------------------------------
        if (($firmware eq "efi") || ($firmware eq "uefi")) {
-               $status = qxx ("cp -a $source/efi $dest");
+               $status = qxx ("cp -a $source/EFI $dest");
                $result = $? >> 8;
                if ($result != 0) {
                        $kiwi -> failed ();
@@ -6513,8 +6532,8 @@
        my $kiwi   = $this->{kiwi};
        my $xml    = $this->{xml};
        my %type   = %{$xml->getImageTypeAndAttributes_legacy()};
-       my $needMB = 150;
-       my $wantMB = 150;
+       my $needMB = 200;
+       my $wantMB = 200;
        if ($type{bootpartsize}) {
                $wantMB = $type{bootpartsize};
        }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi/modules/KIWICollect.pm 
new/kiwi/modules/KIWICollect.pm
--- old/kiwi/modules/KIWICollect.pm     2013-02-13 15:41:20.000000000 +0100
+++ new/kiwi/modules/KIWICollect.pm     2013-02-18 11:07:44.000000000 +0100
@@ -130,6 +130,7 @@
        bless $this, $class;
 
        $this->{m_logger}   = KIWILog -> instance();
+        $this->{m_logger}->setLogFile("terminal");
 
        #==========================================
        # Module Parameters
@@ -754,7 +755,7 @@
                                $this->{m_basesubdir}->{$cd},
                            $isoname,
                            $attr,
-                           $checkmedia
+                           $checkmedia, $this->{cmdL}, $this->{m_xml}
                        );
 
                        # Just the first media is usually bootable at SUSE
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      2013-02-06 22:22:37.000000000 +0100
+++ new/kiwi/modules/KIWIConfig.sh      2013-02-18 08:55:21.000000000 +0100
@@ -1627,14 +1627,16 @@
        # the specified value
        # ----
        local RUNLEVEL=$1
+       local target=/usr/lib/systemd/system/runlevel$RUNLEVEL.target
+       if [ ! -f $target ];then
+               target=/lib/systemd/system/runlevel$RUNLEVEL.target
+       fi
        case "$RUNLEVEL" in
                1|2|3|5)
                        sed -i 
"s/id:[0123456]:initdefault:/id:$RUNLEVEL:initdefault:/" \
                        /etc/inittab
                        if test -d /etc/systemd/system; then
-                               ln -sf \
-                                       
/lib/systemd/system/runlevel$RUNLEVEL.target \
-                                       /etc/systemd/system/default.target
+                               ln -sf $target 
/etc/systemd/system/default.target
                        fi
                ;;
                *)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi/modules/KIWIGlobals.pm 
new/kiwi/modules/KIWIGlobals.pm
--- old/kiwi/modules/KIWIGlobals.pm     2013-02-13 15:41:25.000000000 +0100
+++ new/kiwi/modules/KIWIGlobals.pm     2013-02-18 11:07:44.000000000 +0100
@@ -832,6 +832,10 @@
                                                "lxc-execute -n kiwi -f 
$root/config.lxc true 2>&1"
                                        );
                                        $code = $? >> 8;
+                                       
#==========================================
+                                       # cleanup lxc
+                                       
#------------------------------------------
+                                       KIWIQX::qxx ("rm -f $root/config.lxc 
2>&1");
                                }
                        }
                }
@@ -927,7 +931,7 @@
        # Globals (generic)
        #------------------------------------------
        my %data;
-       $data{Version}         = "5.04.44";
+       $data{Version}         = "5.04.46";
        $data{Publisher}       = "SUSE LINUX GmbH";
        $data{Preparer}        = "KIWI - http://opensuse.github.com/kiwi";;
        $data{ConfigName}      = "config.xml";
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       2013-02-12 16:05:58.000000000 +0100
+++ new/kiwi/modules/KIWIImage.pm       2013-02-18 11:07:44.000000000 +0100
@@ -1477,7 +1477,6 @@
        my $this = shift;
        my $para = shift;
        my $kiwi = $this->{kiwi};
-       my $arch = $this->{arch};
        my $sxml = $this->{xml};
        my $cmdL = $this->{cmdL};
        my $idest= $cmdL->getImageIntermediateTargetDir();
@@ -2060,6 +2059,13 @@
        if ($stype{firmware}) {
                $firmware = $stype{firmware};
        }
+       if (($firmware eq 'uefi') && ($isoarch ne 'x86_64')) {
+               $kiwi -> warning (
+                       "UEFI Secure boot is only supported on x86_64"
+               );
+               $kiwi -> skipped ();
+               $firmware = 'bios';
+       }
        #==========================================
        # Create bootloader configuration
        #------------------------------------------
@@ -2067,26 +2073,30 @@
                #==========================================
                # Setup grub2 if efi live iso is requested
                #------------------------------------------
-               my $grub = 'grub2-efi';
+               my $grub   = 'grub2-efi';
+               my $efi_fo = 'x86_64-efi';
+               if ($isoarch ne 'x86_64') {
+                       $efi_fo = 'i386-efi';
+               }
                if (! -d "$tmpdir/usr/lib/$grub") {
                        $grub = 'grub2';
                }
                my @theme      = $sxml -> getBootTheme_legacy();
-               my $ir_modules = "$tmpdir/usr/lib/$grub/x86_64-efi";
+               my $ir_modules = "$tmpdir/usr/lib/$grub/$efi_fo";
                my $ir_themes  = "$tmpdir/usr/share/grub2/themes";
                my $ir_bgnds   = "$tmpdir/usr/share/grub2/backgrounds";
                my $ir_font    = "$tmpdir/usr/share/grub2/unicode.pf2";
-               my $efi_modules= "$CD/efi/boot";
-               my $cd_modules = "$CD/boot/grub2-efi/x86_64-efi";
+               my $efi_modules= "$CD/EFI/BOOT";
+               my $cd_modules = "$CD/boot/grub2-efi/$efi_fo";
                my $cd_loader  = "$CD/boot/grub2-efi";
                my $theme      = $theme[1];
                my $ir_bg      = "$ir_bgnds/$theme/1024x768.png";
                my $cd_bg      = "$cd_loader/themes/$theme/background.png";
                my $fodir      = '/boot/grub2-efi/themes/';
                my $ascii      = 'ascii.pf2';
-               my $linux      = 'linux';
+               my $efi_suffix = '';
                if ($firmware eq "uefi") {
-                       $linux = 'linuxefi';
+                       $efi_suffix = 'efi';
                }
                my @fonts = (
                        "DejaVuSans-Bold14.pf2",
@@ -2106,7 +2116,7 @@
                # Check for grub2-efi
                #------------------------------------------
                if (! -d $ir_modules) {
-                       $kiwi -> error ("Couldn't find grub2-efi in initrd");
+                       $kiwi -> error ("Couldn't find EFI grub2 data in: 
$ir_modules");
                        $kiwi -> failed ();
                        return;
                }
@@ -2160,16 +2170,15 @@
                                $kiwi -> failed ();
                                return;
                        }
-                       my $core    = "$CD/efi/boot/bootx64.efi";
+                       my $core    = "$CD/EFI/BOOT/bootx64.efi";
                        my @modules = (
                                
'fat','ext2','part_gpt','efi_gop','iso9660','chain',
                                
'linux','echo','configfile','boot','search_label',
                                'search_fs_file','search','search_fs_uuid','ls',
                                'video','video_fb','normal','test','sleep'
                        );
-                       my $fo = 'x86_64-efi';
                        $status = qxx (
-                               "$grub2_mkimage -O $fo -o $core -c $bootefi 
@modules 2>&1"
+                               "$grub2_mkimage -O $efi_fo -o $core -c $bootefi 
@modules 2>&1"
                        );
                        $result = $? >> 8;
                        if ($result != 0) {
@@ -2207,12 +2216,12 @@
                                return;
                        }
                        $status = qxx (
-                               "cp $s_shim_ms $CD/efi/boot/bootx64.efi 2>&1"
+                               "cp $s_shim_ms $CD/EFI/BOOT/bootx64.efi 2>&1"
                        );
                        $result = $? >> 8;
                        if ($result != 0) {
                                $status = qxx (
-                                       "cp $s_shim_suse 
$CD/efi/boot/bootx64.efi 2>&1"
+                                       "cp $s_shim_suse 
$CD/EFI/BOOT/bootx64.efi 2>&1"
                                );
                                $result = $? >> 8;
                        }
@@ -2222,7 +2231,7 @@
                                $kiwi -> failed ();
                                return;
                        }
-                       $status = qxx ("cp $s_signed $CD/efi/boot/grub.efi 
2>&1");
+                       $status = qxx ("cp $s_signed $CD/EFI/BOOT/grub.efi 
2>&1");
                        $result = $? >> 8;
                        if ($result != 0) {
                                $kiwi -> failed ();
@@ -2233,26 +2242,6 @@
                        $kiwi -> done();
                }
                #==========================================
-               # make iso EFI bootable
-               #------------------------------------------
-               my $efi_fat = "$CD/boot/grub2-efi/efiboot.img";
-               $status = qxx ("qemu-img create $efi_fat 4M 2>&1");
-               $result = $? >> 8;
-               if ($result == 0) {
-                       $status = qxx ("/sbin/mkdosfs -n 'BOOT' $efi_fat 2>&1");
-                       $result = $? >> 8;
-                       if ($result == 0) {
-                               $status = qxx ("mcopy -Do -s -i $efi_fat 
$CD/efi :: 2>&1");
-                               $result = $? >> 8;
-                       }
-               }
-               if ($result != 0) {
-                       $kiwi -> error  ("Failed creating efi fat image: 
$status");
-                       $kiwi -> failed ();
-                       return;
-               }
-               $efibootloadsize = -s $efi_fat;
-               #==========================================
                # create grub configuration
                #------------------------------------------
                $kiwi -> info ("Creating grub2 configuration file...");
@@ -2304,11 +2293,11 @@
                if (! $isxen) {
                        print $FD "\t"."echo Loading linux...\n";
                        print $FD "\t"."set gfxpayload=keep"."\n";
-                       print $FD "\t"."$linux /boot/$isoarch/loader/linux";
+                       print $FD "\t"."linux$efi_suffix 
/boot/$isoarch/loader/linux";
                        print $FD ' ramdisk_size=512000 ramdisk_blocksize=4096';
                        print $FD " splash=silent"."\n";
                        print $FD "\t"."echo Loading initrd...\n";
-                       print $FD "\t"."initrd /boot/$isoarch/loader/initrd\n";
+                       print $FD "\t"."initrd$efi_suffix 
/boot/$isoarch/loader/initrd\n";
                        print $FD "}\n";
                } else {
                        print $FD "\t"."echo Loading Xen\n";
@@ -2330,12 +2319,12 @@
                if (! $isxen) {
                        print $FD "\t"."echo Loading linux...\n";
                        print $FD "\t"."set gfxpayload=keep"."\n";
-                       print $FD "\t"."$linux /boot/$isoarch/loader/linux";
+                       print $FD "\t"."linux$efi_suffix 
/boot/$isoarch/loader/linux";
                        print $FD ' ramdisk_size=512000 ramdisk_blocksize=4096';
                        print $FD " splash=silent";
                        print $FD " @failsafe"."\n";
                        print $FD "\t"."echo Loading initrd...\n";
-                       print $FD "\t"."initrd /boot/$isoarch/loader/initrd\n";
+                       print $FD "\t"."initrd$efi_suffix 
/boot/$isoarch/loader/initrd\n";
                        print $FD "}\n";
                } else {
                        print $FD "\t"."echo Loading Xen\n";
@@ -2359,10 +2348,10 @@
                        if (! $isxen) {
                                print $FD "\t"."echo Loading linux...\n";
                                print $FD "\t"."set gfxpayload=keep"."\n";
-                               print $FD "\t"."$linux 
/boot/$isoarch/loader/linux";
+                               print $FD "\t"."linux$efi_suffix 
/boot/$isoarch/loader/linux";
                                print $FD " mediacheck=1 splash=silent";
                                print $FD "\t"."echo Loading initrd...\n";
-                               print $FD "\t"."initrd 
/boot/$isoarch/loader/initrd\n";
+                               print $FD "\t"."initrd$efi_suffix 
/boot/$isoarch/loader/initrd\n";
                                print $FD "}\n";
                        } else {
                                print $FD "\t"."echo Loading Xen\n";
@@ -2386,7 +2375,7 @@
                print $FD 'menuentry "Boot from Hard Disk"';
                print $FD ' --class opensuse --class os {'."\n";
                print $FD "\t"."set root='hd0,1'"."\n";
-               print $FD "\t".'chainloader /efi/boot/bootx64.efi'."\n";
+               print $FD "\t".'chainloader /EFI/BOOT/bootx64.efi'."\n";
                print $FD '}'."\n";
                #==========================================
                # setup memtest entry
@@ -2400,8 +2389,28 @@
                #==========================================
                # copy grub config to efi directory too
                #------------------------------------------
-               qxx ("cp $CD/boot/grub2-efi/grub.cfg $CD/efi/boot");
+               qxx ("cp $CD/boot/grub2-efi/grub.cfg $CD/EFI/BOOT");
                $kiwi -> done();
+               #==========================================
+               # make iso EFI bootable
+               #------------------------------------------
+               my $efi_fat = "$CD/boot/$isoarch/efi";
+               $status = qxx ("qemu-img create $efi_fat 4M 2>&1");
+               $result = $? >> 8;
+               if ($result == 0) {
+                       $status = qxx ("/sbin/mkdosfs -n 'BOOT' $efi_fat 2>&1");
+                       $result = $? >> 8;
+                       if ($result == 0) {
+                               $status = qxx ("mcopy -Do -s -i $efi_fat 
$CD/EFI :: 2>&1");
+                               $result = $? >> 8;
+                       }
+               }
+               if ($result != 0) {
+                       $kiwi -> error  ("Failed creating efi fat image: 
$status");
+                       $kiwi -> failed ();
+                       return;
+               }
+               $efibootloadsize = -s $efi_fat;
        }
        #==========================================
        # copy base graphics boot CD files
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi/modules/KIWIIsoLinux.pm 
new/kiwi/modules/KIWIIsoLinux.pm
--- old/kiwi/modules/KIWIIsoLinux.pm    2013-02-07 10:34:44.000000000 +0100
+++ new/kiwi/modules/KIWIIsoLinux.pm    2013-02-18 11:07:44.000000000 +0100
@@ -392,7 +392,7 @@
        #==========================================
        # update sort file
        #------------------------------------------
-       qxx ("echo $src/boot/grub2-efi/efiboot.img 1000001 >> $sort");
+       qxx ("echo $src/boot/x86_64/efi 1000001 >> $sort");
        #==========================================
        # add end-of-header marker
        #------------------------------------------
@@ -404,7 +404,7 @@
        $para.= ' -eltorito-alt-boot ';
        # FIXME: setting the size limits it, which is pretty bad
        # $para.= " -boot-load-size $size";
-       $para.= ' -b boot/grub2-efi/efiboot.img';
+       $para.= ' -b boot/x86_64/efi';
        $para.= ' -no-emul-boot -joliet-long -hide glump -hide-joliet glump';
        $this -> {params} = $para;
        return $this;
@@ -758,6 +758,9 @@
        }
        $iso_blk -> close();
        $iso_fd  -> close();
+       $kiwi -> loginfo ("
+               KIWIIsoLinux::findAndCopyMagicBlock start block at: $start\n"
+       );
        $this->{efi_offset} = $start * 4;
        $this->{efi_loop_offset} = $start * 2048;
        return $start;
@@ -857,7 +860,7 @@
        #==========================================
        # Call mkisofs second stage
        #------------------------------------------
-       if ($firmware eq "efi") {
+       if ($firmware eq "efi" || $firmware eq "uefi") {
                if (! $this -> findAndCopyMagicBlock()) {
                        $kiwi -> error  ("Failed to read magic iso header");
                        $kiwi -> failed ();
@@ -1055,12 +1058,12 @@
        my $partOpt   = $optNames{'partok'};
        my $uefiOpt   = $optNames{'uefi'};
        my $offset    = 64;
-       if (($firmware eq 'efi') && (! $uefiOpt)) {
+       if (($firmware eq 'efi' || $firmware eq 'uefi') && (! $uefiOpt)) {
                $kiwi -> warning ("installed isohybrid does not support EFI");
                $kiwi -> skipped ();
                $firmware = 'bios';
        }
-       if ($firmware eq 'efi') {
+       if ($firmware eq 'efi' || $firmware eq 'uefi') {
                $offset = $this->{efi_offset};
        }
        #==========================================
@@ -1070,7 +1073,7 @@
        if ($mbrid) {
                $cmd.= " $idOpt $mbrid $typeOpt 0x83";
        }
-       if ($firmware eq 'efi') {
+       if ($firmware eq 'efi' || $firmware eq 'uefi') {
                $cmd.= " $uefiOpt";
        }
        $data = qxx ("$cmd $iso 2>&1");
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     2013-02-13 15:41:25.000000000 +0100
+++ new/kiwi/modules/KIWILinuxRC.sh     2013-02-18 11:07:44.000000000 +0100
@@ -28,6 +28,7 @@
 export HYBRID_PERSISTENT_DIR=/read-write
 export UTIMER_INFO=/dev/utimer
 export bootLoaderOK=0
+export enablePlymouth=1
 
 #======================================
 # Exports (console)
@@ -487,10 +488,12 @@
 #--------------------------------------
 function createFramebufferDevices {
        if [ -f /proc/fb ]; then
-               Echo "Creating framebuffer devices"
                while read fbnum fbtype; do
                        if [ $(($fbnum < 32)) ] ; then
-                               [ -c /dev/fb$fbnum ] || mknod -m 0660 
/dev/fb$fbnum c 29 $fbnum
+                               if [ ! -c /dev/fb$fbnum ];then
+                                       Echo "Creating framebuffer device: 
/dev/fb$fbnum"
+                                       mknod -m 0660 /dev/fb$fbnum c 29 $fbnum
+                               fi
                        fi
                done < /proc/fb
        fi
@@ -661,8 +664,18 @@
        udevTrigger
        # wait for events to finish
        udevPending
-       # start plymouth if it exists
-       startPlymouth
+       # start plymouth if it exists and enabled
+       for o in $(cat /proc/cmdline) ; do
+               case "$o" in
+                       plymouth.enable=0*|rd.plymouth=0*)
+                       enablePlymouth=0
+                       break
+                       ;;
+               esac
+       done
+       if [ $enablePlymouth -eq 1 ]; then
+               startPlymouth
+       fi
 }
 #======================================
 # moduleLoadBeforeUdev
@@ -876,8 +889,8 @@
        local instTool=grub2-install
        local confPath=/boot/grub2/grub.cfg
        if [ "$partedTableType" = "gpt" ];then
-               confTool=grub2-efi-mkconfig
-               instTool=grub2-efi-install
+               which grub2-efi-mkconfig &>/dev/null && 
confTool=grub2-efi-mkconfig
+               which grub2-efi-install  &>/dev/null && 
instTool=grub2-efi-install
                confPath=/boot/grub2-efi/grub.cfg
        fi
        if ! which $confTool &>/dev/null;then
@@ -979,8 +992,8 @@
        # check tool status
        #--------------------------------------
        if [ "$partedTableType" = "gpt" ];then
-               confTool=grub2-efi-mkconfig
-               instTool=grub2-efi-install
+               which grub2-efi-mkconfig &>/dev/null && 
confTool=grub2-efi-mkconfig
+               which grub2-efi-install  &>/dev/null && 
instTool=grub2-efi-install
                confPath=/boot/grub2-efi/grub.cfg
        fi
        if ! which $confTool &>/dev/null;then
@@ -1053,6 +1066,7 @@
        done
        setupDefaultTheme
        if [ $systemMap -eq 1 ];then
+               Echo "Creating dracut based initrd"
                if [ ! -e /proc/mounts ];then
                        mount -t proc proc /proc
                        umountProc=1
@@ -1127,6 +1141,7 @@
        done
        setupDefaultTheme
        if [ $systemMap -eq 1 ];then
+               Echo "Creating mkinitrd based initrd"
                if [ ! -e /proc/mounts ];then
                        mount -t proc proc /proc
                        umountProc=1
@@ -2888,12 +2903,12 @@
        #======================================
        # check for kiwi_JumpPart
        #--------------------------------------
-       if [ ! -z "$kiwi_JumpPart" ] && [ -d /mnt/$mount/efi ];then
+       if [ ! -z "$kiwi_JumpPart" ] && [ -d /mnt/$mount/EFI ];then
                local jdev=$(ddn $imageDiskDevice $kiwi_JumpPart)
                local fstype=$(blkid $jdev -s TYPE -o value)
                if [ ! -z "$fstype" ];then
                        jdev=$(getDiskID $jdev)
-                       echo "$jdev /boot/efi $fstype defaults 0 0" >> $nfstab
+                       echo "$jdev /boot/EFI $fstype defaults 0 0" >> $nfstab
                fi
        fi
 }
@@ -4031,8 +4046,8 @@
 # updateMTAB
 #--------------------------------------
 function updateMTAB {
-       prefix=$1
-       umount=0
+       local prefix=$1
+       local umount=0
        if [ ! -e /proc/mounts ];then
                mount -t proc proc /proc
                umount=1
@@ -6675,7 +6690,7 @@
        # check for init kernel option
        #--------------------------------------
        if [ -z "$init" ];then
-               if [ -f /mnt/bin/systemd ];then
+               if [ -e /mnt/bin/systemd ];then
                        export init=/bin/systemd
                else
                        export init=/sbin/init
@@ -6774,6 +6789,12 @@
        #--------------------------------------
        if which plymouthd &>/dev/null;then
                plymouth update-root-fs --new-root-dir=/mnt
+               #======================================
+               # stop if not installed in system image
+               #--------------------------------------
+               if [ ! -e /mnt/usr/bin/plymouth ];then
+                       plymouth quit
+               fi
        fi
        #======================================
        # export root block device
@@ -8886,9 +8907,16 @@
        # ----
        local itab=/etc/inittab
        local stty=/etc/securetty
+       local init=/bin/systemd
        local xvc="X0:12345:respawn:/sbin/mingetty --noclear xvc0 linux"
        local hvc="H0:12345:respawn:/sbin/mingetty --noclear hvc0 linux"
        #======================================
+       # return early in case of systemd
+       #--------------------------------------
+       if [ -e $init ];then
+               return
+       fi
+       #======================================
        # create tty nodes if not done
        #--------------------------------------
        setupTTY
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi/modules/KIWISchema.rnc 
new/kiwi/modules/KIWISchema.rnc
--- old/kiwi/modules/KIWISchema.rnc     2013-02-06 22:22:37.000000000 +0100
+++ new/kiwi/modules/KIWISchema.rnc     2013-02-18 11:07:44.000000000 +0100
@@ -1516,7 +1516,7 @@
        k.type.bootpartsize.attribute =
                ## For images with a separate boot partition this attribute
                ## specifies the size in MB. If not set the min bootpart
-               ## size is set to 150 MB
+               ## size is set to 200 MB
                attribute bootpartsize { xsd:nonNegativeInteger }
        k.type.bootprofile.attribute =
                ## Specifies the boot profile defined in the boot image
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kiwi/modules/KIWISchema.rng 
new/kiwi/modules/KIWISchema.rng
--- old/kiwi/modules/KIWISchema.rng     2013-02-06 22:22:37.000000000 +0100
+++ new/kiwi/modules/KIWISchema.rng     2013-02-18 11:07:44.000000000 +0100
@@ -2020,7 +2020,7 @@
       <attribute name="bootpartsize">
         <a:documentation>For images with a separate boot partition this 
attribute
 specifies the size in MB. If not set the min bootpart
-size is set to 150 MB</a:documentation>
+size is set to 200 MB</a:documentation>
         <data type="nonNegativeInteger"/>
       </attribute>
     </define>

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to