Hello community,
here is the log from the commit of package
kiwi-instsource-plugins-openSUSE-12-1 for openSUSE:12.2 checked in at
2012-08-27 16:04:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.2/kiwi-instsource-plugins-openSUSE-12-1 (Old)
and /work/SRC/openSUSE:12.2/.kiwi-instsource-plugins-openSUSE-12-1.new
(New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kiwi-instsource-plugins-openSUSE-12-1", Maintainer is ""
Changes:
--------
---
/work/SRC/openSUSE:12.2/kiwi-instsource-plugins-openSUSE-12-1/kiwi-instsource-plugins-openSUSE-12-1.changes
2012-06-25 15:37:53.000000000 +0200
+++
/work/SRC/openSUSE:12.2/.kiwi-instsource-plugins-openSUSE-12-1.new/kiwi-instsource-plugins-openSUSE-12-1.changes
2012-08-27 16:04:39.000000000 +0200
@@ -1,0 +2,6 @@
+Mon Aug 27 13:19:05 UTC 2012 - [email protected]
+
+- add special hack for promo dvds so the kiwi live cds boot from
+ product DVDs
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kiwi-instsource-plugins-openSUSE-12-1.diff ++++++
--- /var/tmp/diff_new_pack.k0CF0B/_old 2012-08-27 16:04:39.000000000 +0200
+++ /var/tmp/diff_new_pack.k0CF0B/_new 2012-08-27 16:04:39.000000000 +0200
@@ -1,7 +1,7 @@
Index: KIWILiveTreePlugin.pm
===================================================================
---- KIWILiveTreePlugin.pm.orig 2012-03-05 13:56:09.045673886 +0100
-+++ KIWILiveTreePlugin.pm 2012-03-05 13:56:10.640598808 +0100
+--- KIWILiveTreePlugin.pm.orig
++++ KIWILiveTreePlugin.pm
@@ -109,16 +109,6 @@ sub new
}
# /constructor
@@ -59,8 +59,8 @@
}
Index: KIWIDescrPlugin.pm
===================================================================
---- KIWIDescrPlugin.pm.orig 2012-03-05 13:56:09.045673886 +0100
-+++ KIWIDescrPlugin.pm 2012-03-10 15:14:03.808988785 +0100
+--- KIWIDescrPlugin.pm.orig
++++ KIWIDescrPlugin.pm
@@ -230,6 +230,25 @@ sub executeDir
return 1;
}
@@ -87,3 +87,171 @@
if($this->{m_compress} =~ m{yes}i) {
foreach my $pfile(glob("$targetdir/packages*")) {
+Index: KIWIPromoDVDPlugin.ini
+===================================================================
+--- /dev/null
++++ KIWIPromoDVDPlugin.ini
+@@ -0,0 +1,5 @@
++[base]
++name = KIWIPromoDVDPlugin
++order = 7
++defaultenable = 1
++
+Index: KIWIPromoDVDPlugin.pm
+===================================================================
+--- /dev/null
++++ KIWIPromoDVDPlugin.pm
+@@ -0,0 +1,153 @@
++################################################################
++# Copyright (c) 2012 SUSE
++#
++# This program is free software; you can redistribute it and/or modify
++# it under the terms of the GNU General Public License version 2 as
++# published by the Free Software Foundation.
++#
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++# GNU General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with this program (see the file LICENSE); if not, write to the
++# Free Software Foundation, Inc.,
++# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
++#
++################################################################
++
++#================
++# FILE : KIWIPromoDVDPlugin.pm
++#----------------
++# PROJECT : OpenSUSE Build-Service
++# COPYRIGHT : (c) 2012 SUSE LINUX Products GmbH, Germany
++# :
++# AUTHOR : Stephan Kulow <[email protected]>
++# :
++# BELONGS TO : Operating System images
++# :
++# DESCRIPTION : Module patching mini iso builds
++# :
++# STATUS : Development
++#----------------
++
++package KIWIPromoDVDPlugin;
++
++use strict;
++
++use base "KIWIBasePlugin";
++use Data::Dumper;
++use Config::IniFiles;
++use File::Find;
++use File::Basename;
++
++
++sub new
++{
++ # ...
++ # Create a new KIWIPromoDVDPlugin object
++ # ---
++ my $class = shift;
++ my $handler = shift;
++ my $config = shift;
++
++ my $this = new KIWIBasePlugin($handler);
++ bless ($this, $class);
++
++ $config =~ m{(.*)/([^/]+)$};
++ my $configpath = $1;
++ my $configfile = $2;
++ if(not defined($configpath) or not defined($configfile)) {
++ $this->logMsg("E", "wrong parameters in plugin initialisation\n");
++ return undef;
++ }
++
++ ## now gather all necessary information from the inifile:
++ #===
++ # Issue: why duplicate code here? Why not put it into the base class?
++ # Answer: Each plugin may have different options. Some only need a target
filename,
++ # whilst some others may need much more. I don't want to specify a
complicated framework
++ # for the plugin, it shall just be a simple straightforward way to get
information
++ # into the plugin. The idea is that the people who decide on the metadata
write
++ # the plugin, and therefore damn well know what it needs and what not.
++ # I'm definitely not bothering PMs with Yet Another File Specification (tm)
++ #---
++
++ ## plugin content:
++ #-----------------
++ #[base]
++ #name = KIWIEulaPlugin
++ #order = 3
++ #defaultenable = 1
++ #
++ #[target]
++ #targetfile = content
++ #targetdir = $PRODUCT_DIR
++ #media = (list of numbers XOR "all")
++ #
++ my $ini = new Config::IniFiles( -file => "$configpath/$configfile" );
++ my $name = $ini->val('base', 'name'); # scalar value
++ my $order = $ini->val('base', 'order'); # scalar value
++ my $enable = $ini->val('base', 'defaultenable'); # scalar value
++
++ # if any of those isn't set, complain!
++ if(not defined($name)
++ or not defined($order)
++ or not defined($enable)
++ ) {
++ $this->logMsg("E", "Plugin ini file <$config> seems broken!\n");
++ return undef;
++ }
++
++ $this->name($name);
++ $this->order($order);
++ if($enable != 0) {
++ $this->ready(1);
++ }
++ return $this;
++}
++# /constructor
++
++# returns: number of patched gfxboot files
++sub execute
++{
++ my $this = shift;
++ if(not ref($this)) {
++ return undef;
++ }
++ my $retval = 0;
++ # sanity check:
++ if($this->{m_ready} == 0) {
++ return $retval;
++ }
++
++ my $ismini = $this->collect()->productData()->getVar("FLAVOR");
++ if(not defined($ismini)) {
++ $this->logMsg("W", "FLAVOR not set?");
++ return $retval;
++ }
++ if($ismini !~ m{dvd-promo}i) {
++ return $retval;
++ }
++
++ my $medium = $this->collect()->productData()->getVar("MEDIUM_NAME");
++ my $name = $this->{m_basesubdir}->{$cd} ) =~ s{.*/(.*)/*$}{$1};
++ my $cd;
++ find( sub { if (m/initrd.liv/) { $cd = $File::Find::name; } },
$this->handler()->collect()->basedir());
++ if (!$cd) {
++ $this->logMsg("E", "initrd.liv not found\n");
++ exit(1);
++ }
++ $this->logMsg("I", "$cd $medium $name");
++ my $dname = dirname($cd);
++ $this->logMsg("I", "$dname");
++ system("mkdir -p boot/grub; echo $medium > boot/grub/mbrid");
++ system("echo boot/grub/mbrid | cpio --create --format=newc --quiet | gzip
-9 -f >> $cd");
++ $this->logMsg("I", "updated $cd");
++
++ return $retval;
++}
++
++1;
++
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]