Hello community,
here is the log from the commit of package yast2-product-creator
checked in at Fri Mar 28 17:17:17 CET 2008.
--------
--- yast2-product-creator/yast2-product-creator.changes 2008-03-25 08:57:55.000000000 +0100
+++ /mounts/work_src_done/NOARCH/yast2-product-creator/yast2-product-creator.changes 2008-03-28 16:25:34.254920000 +0100
@@ -1,0 +2,19 @@
+Fri Mar 28 16:12:34 CET 2008 - jsuchome@suse.cz
+
+- use new ag_anyxml to read parts of config.xml (WIP)
+- show package lists in different kiwi profiles
+- neutralize package and pattern selection before opening package
+ selector
+- do not return patterns selected by dependencies from package
+ selector (requires transact_by in Pkg:ResolvableProperties)
+- 2.16.11
+
+-------------------------------------------------------------------
+Tue Mar 25 09:05:06 CET 2008 - jsuchome@suse.cz
+
+- fixes for bnc#364838:
+- save modification of target image type
+- set the default value of format attribute for vmx image
+- check for kiwi-desc-* packages after selecting image type
+
+-------------------------------------------------------------------
Old:
----
yast2-product-creator-2.16.10.tar.bz2
New:
----
yast2-product-creator-2.16.11.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-product-creator.spec ++++++
--- /var/tmp/diff_new_pack.hL9599/_old 2008-03-28 17:16:48.000000000 +0100
+++ /var/tmp/diff_new_pack.hL9599/_new 2008-03-28 17:16:48.000000000 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-product-creator (Version 2.16.10)
+# spec file for package yast2-product-creator (Version 2.16.11)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -12,21 +12,21 @@
Name: yast2-product-creator
-Version: 2.16.10
+Version: 2.16.11
Release: 1
License: GPL v2 or later
Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-product-creator-2.16.10.tar.bz2
+Source0: yast2-product-creator-2.16.11.tar.bz2
Prefix: /usr
BuildRequires: autoyast2-installation perl-XML-Writer update-desktop-files yast2-devtools yast2-packager yast2-security yast2-testsuite
PreReq: %fillup_prereq
Requires: autoyast2-installation yast2-security perl-XML-LibXML
# SourceDialogs::IsPlainDir()
Requires: yast2-packager >= 2.16.20
-# GPG.ycp and GPGWidgets.ycp
-Requires: yast2 >= 2.15.2
-BuildRequires: yast2 >= 2.15.2
+# ag_anyxml with perl-XML-Simple
+Requires: yast2 >= 2.16.40
+BuildRequires: yast2 >= 2.16.40
# New API of StorageDevices.ycp
Conflicts: yast2-storage < 2.16.1
BuildArch: noarch
@@ -39,7 +39,7 @@
%prep
-%setup -n yast2-product-creator-2.16.10
+%setup -n yast2-product-creator-2.16.11
%build
%{prefix}/bin/y2tool y2autoconf
@@ -86,6 +86,19 @@
/usr/lib/YaST2/servers_non_y2/ag_*
/var/adm/fillup-templates/sysconfig.product-creator
%changelog
+* Fri Mar 28 2008 jsuchome@suse.cz
+- use new ag_anyxml to read parts of config.xml (WIP)
+- show package lists in different kiwi profiles
+- neutralize package and pattern selection before opening package
+ selector
+- do not return patterns selected by dependencies from package
+ selector (requires transact_by in Pkg:ResolvableProperties)
+- 2.16.11
+* Tue Mar 25 2008 jsuchome@suse.cz
+- fixes for bnc#364838:
+- save modification of target image type
+- set the default value of format attribute for vmx image
+- check for kiwi-desc-* packages after selecting image type
* Tue Mar 25 2008 lslezak@suse.cz
- always update metadata in content files (bnc#368146)
- 2.16.10
++++++ yast2-product-creator-2.16.10.tar.bz2 -> yast2-product-creator-2.16.11.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/agent-kiwi/ag_kiwi new/yast2-product-creator-2.16.11/agent-kiwi/ag_kiwi
--- old/yast2-product-creator-2.16.10/agent-kiwi/ag_kiwi 2008-02-15 15:11:27.000000000 +0100
+++ new/yast2-product-creator-2.16.11/agent-kiwi/ag_kiwi 2008-02-15 16:22:12.000000000 +0100
@@ -114,10 +114,12 @@
my $name = $element -> getAttribute ("name");
my $pwd = $element -> getAttribute ("pwd");
my $home = $element -> getAttribute ("home");
+ my $realname = $element -> getAttribute ("realname");
if (defined $name) {
$retmap{"users"}{$name}{group} = $group if (defined $group);
$retmap{"users"}{$name}{home} = $home if (defined $home);
$retmap{"users"}{$name}{pwd} = $pwd if (defined $pwd);
+ $retmap{"users"}{$name}{realname} = $realname if (defined $realname);
}
}
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/configure new/yast2-product-creator-2.16.11/configure
--- old/yast2-product-creator-2.16.10/configure 2008-03-25 08:56:14.000000000 +0100
+++ new/yast2-product-creator-2.16.11/configure 2007-10-25 15:23:08.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for yast2-product-creator 2.16.10.
+# Generated by GNU Autoconf 2.61 for yast2-product-creator 2.16.0.
#
# Report bugs to http://bugs.opensuse.org/.
#
@@ -574,8 +574,8 @@
# Identity of this package.
PACKAGE_NAME='yast2-product-creator'
PACKAGE_TARNAME='yast2-product-creator'
-PACKAGE_VERSION='2.16.10'
-PACKAGE_STRING='yast2-product-creator 2.16.10'
+PACKAGE_VERSION='2.16.0'
+PACKAGE_STRING='yast2-product-creator 2.16.0'
PACKAGE_BUGREPORT='http://bugs.opensuse.org/'
ac_unique_file="RPMNAME"
@@ -1197,7 +1197,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures yast2-product-creator 2.16.10 to adapt to many kinds of systems.
+\`configure' configures yast2-product-creator 2.16.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1268,7 +1268,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of yast2-product-creator 2.16.10:";;
+ short | recursive ) echo "Configuration of yast2-product-creator 2.16.0:";;
esac
cat <<\_ACEOF
@@ -1346,7 +1346,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-yast2-product-creator configure 2.16.10
+yast2-product-creator configure 2.16.0
generated by GNU Autoconf 2.61
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1360,7 +1360,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by yast2-product-creator $as_me 2.16.10, which was
+It was created by yast2-product-creator $as_me 2.16.0, which was
generated by GNU Autoconf 2.61. Invocation command line was
$ $0 $@
@@ -2181,7 +2181,7 @@
# Define the identity of the package.
PACKAGE='yast2-product-creator'
- VERSION='2.16.10'
+ VERSION='2.16.0'
cat >>confdefs.h <<_ACEOF
@@ -2408,8 +2408,7 @@
-
-VERSION="2.16.10"
+VERSION="2.16.0"
RPMNAME="yast2-product-creator"
MAINTAINER="Ladislav Slezak "
@@ -2651,8 +2650,8 @@
if test -z "$XGETTEXT" ; then
- { { echo "$as_me:$LINENO: error: xgettext is missing; please install gettext-tools." >&5
-echo "$as_me: error: xgettext is missing; please install gettext-tools." >&2;}
+ { { echo "$as_me:$LINENO: error: xgettext is missing; please install gettext-devel." >&5
+echo "$as_me: error: xgettext is missing; please install gettext-devel." >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -3304,7 +3303,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by yast2-product-creator $as_me 2.16.10, which was
+This file was extended by yast2-product-creator $as_me 2.16.0, which was
generated by GNU Autoconf 2.61. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -3347,7 +3346,7 @@
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-yast2-product-creator config.status 2.16.10
+yast2-product-creator config.status 2.16.0
configured by $0, generated by GNU Autoconf 2.61,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/configure.in new/yast2-product-creator-2.16.11/configure.in
--- old/yast2-product-creator-2.16.10/configure.in 2008-03-25 08:56:09.000000000 +0100
+++ new/yast2-product-creator-2.16.11/configure.in 2007-10-25 15:23:04.000000000 +0200
@@ -1,9 +1,9 @@
dnl configure.in for yast2-product-creator
dnl
-dnl -- This file is generated by y2autoconf 2.16.8 - DO NOT EDIT! --
+dnl -- This file is generated by y2autoconf 2.15.9 - DO NOT EDIT! --
dnl (edit configure.in.in instead)
-AC_INIT(yast2-product-creator, 2.16.10, http://bugs.opensuse.org/, yast2-product-creator)
+AC_INIT(yast2-product-creator, 2.16.0, http://bugs.opensuse.org/, yast2-product-creator)
dnl Check for presence of file 'RPMNAME'
AC_CONFIG_SRCDIR([RPMNAME])
@@ -14,11 +14,10 @@
AC_PREFIX_DEFAULT(/usr)
-dnl long filenames; we use GNU Make extensions and that's ok
-AM_INIT_AUTOMAKE(tar-ustar -Wno-portability)
+AM_INIT_AUTOMAKE(tar-ustar) dnl searches for some needed programs
dnl Important YaST2 variables
-VERSION="2.16.10"
+VERSION="2.16.0"
RPMNAME="yast2-product-creator"
MAINTAINER="Ladislav Slezak "
@@ -108,7 +107,7 @@
dnl no need for AC_ARG_VAR
AC_PATH_PROG(XGETTEXT, xgettext)
if test -z "$XGETTEXT" ; then
- AC_MSG_ERROR(xgettext is missing; please install gettext-tools.)
+ AC_MSG_ERROR(xgettext is missing; please install gettext-devel.)
fi
Y2DEVTOOLS_PREFIX=`pkg-config --print-errors --variable=prefix yast2-devtools`
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/COPYRIGHT.english new/yast2-product-creator-2.16.11/COPYRIGHT.english
--- old/yast2-product-creator-2.16.10/COPYRIGHT.english 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-product-creator-2.16.11/COPYRIGHT.english 2008-03-28 16:18:06.000000000 +0100
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ 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; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/Makefile.am new/yast2-product-creator-2.16.11/Makefile.am
--- old/yast2-product-creator-2.16.10/Makefile.am 2008-03-25 08:56:09.000000000 +0100
+++ new/yast2-product-creator-2.16.11/Makefile.am 2007-10-25 15:23:04.000000000 +0200
@@ -23,14 +23,13 @@
ALL_PACKAGES = $(DEVTOOLS_DIR)/admin/all-packages
LEGALESE_DIR = $(if $(HAS_YAST_LICENSE),$(DEVTOOLS_DIR)/admin/copyright/yast,$(DEVTOOLS_DIR)/admin/copyright/gpl)
-COPYRIGHT_files_gpl = README COPYING
+COPYRIGHT_files_gpl = README COPYING COPYRIGHT.english
COPYRIGHT_files_yast = YAST_LICENSE README COPYING COPYRIGHT.english \
COPYRIGHT.french COPYRIGHT.german COPYRIGHT.spanish
extra_COPYRIGHT_files = $(if $(HAS_YAST_LICENSE), $(COPYRIGHT_files_yast), $(COPYRIGHT_files_gpl))
-# less strict; prefer bzip2
AUTOMAKE_OPTIONS = foreign dist-bzip2 no-dist-gzip
# where devtools instal m4 snippets
# argh, executed literally
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/Makefile.in new/yast2-product-creator-2.16.11/Makefile.in
--- old/yast2-product-creator-2.16.10/Makefile.in 2008-03-25 08:56:16.000000000 +0100
+++ new/yast2-product-creator-2.16.11/Makefile.in 2007-10-25 15:23:11.000000000 +0200
@@ -44,8 +44,8 @@
@CREATE_PKGCONFIG_TRUE@am__append_1 = $(RPMNAME).pc.in
subdir = .
DIST_COMMON = $(am__configure_deps) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(top_srcdir)/configure TODO \
- config.guess config.sub install-sh missing
+ $(srcdir)/Makefile.in $(top_srcdir)/configure config.guess \
+ config.sub install-sh missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
@@ -217,13 +217,11 @@
DEVTOOLS_DIR = $(if $(IS_DEVTOOLS),$(srcdir)/devtools,$(Y2DEVTOOLS_PREFIX)/share/YaST2/data/devtools)
ALL_PACKAGES = $(DEVTOOLS_DIR)/admin/all-packages
LEGALESE_DIR = $(if $(HAS_YAST_LICENSE),$(DEVTOOLS_DIR)/admin/copyright/yast,$(DEVTOOLS_DIR)/admin/copyright/gpl)
-COPYRIGHT_files_gpl = README COPYING
+COPYRIGHT_files_gpl = README COPYING COPYRIGHT.english
COPYRIGHT_files_yast = YAST_LICENSE README COPYING COPYRIGHT.english \
COPYRIGHT.french COPYRIGHT.german COPYRIGHT.spanish
extra_COPYRIGHT_files = $(if $(HAS_YAST_LICENSE), $(COPYRIGHT_files_yast), $(COPYRIGHT_files_gpl))
-
-# less strict; prefer bzip2
AUTOMAKE_OPTIONS = foreign dist-bzip2 no-dist-gzip
# where devtools instal m4 snippets
# argh, executed literally
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/README new/yast2-product-creator-2.16.11/README
--- old/yast2-product-creator-2.16.10/README 2008-03-25 08:57:07.000000000 +0100
+++ new/yast2-product-creator-2.16.11/README 2008-03-28 16:18:06.000000000 +0100
@@ -1,2 +1,2 @@
This program/library is part of YaST2
-See the file COPYING for license terms
+See the file COPYRIGHT.english for license terms
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/src/complex.ycp new/yast2-product-creator-2.16.11/src/complex.ycp
--- old/yast2-product-creator-2.16.10/src/complex.ycp 2008-03-25 08:56:00.000000000 +0100
+++ new/yast2-product-creator-2.16.11/src/complex.ycp 2008-03-25 09:04:35.000000000 +0100
@@ -698,17 +698,6 @@
ProductCreator::Config = Configurations[current]:$[];
string task = ProductCreator::Config["current_task"]:"";
list<string> to_install = [ "kiwi" ];
- if (contains ([ "iso", "xen", "vmx", "usb" ], task))
- {
- string bootdir = ProductCreator::Config["type",task,"boot"]:"";
- if (bootdir == "" ||
- (!FileUtils::Exists ("/usr/share/kiwi/image/" + bootdir) &&
- !FileUtils::Exists (bootdir))
- )
- {
- to_install = add (to_install, sformat("kiwi-desc-%1boot", task));
- }
- }
if (Package::InstallAll (to_install))
{
string dir =
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/src/dialogs.ycp new/yast2-product-creator-2.16.11/src/dialogs.ycp
--- old/yast2-product-creator-2.16.10/src/dialogs.ycp 2008-03-12 14:51:57.000000000 +0100
+++ new/yast2-product-creator-2.16.11/src/dialogs.ycp 2008-03-28 16:10:31.000000000 +0100
@@ -953,6 +953,9 @@
any ret = nil;
+ Pkg::ResolvableNeutral ("", `package, true);
+ Pkg::ResolvableNeutral ("", `pattern, true);
+
// set a mount point - there is no use to display DU of the current system
Pkg::TargetInitDU([ $[ "name" : "/",
"free" : ProductCreator::max_size_mb * 1024,
@@ -1215,7 +1218,17 @@
}
else
{
- seladd = Pkg::GetPatterns(`selected, "");
+ // do not return patterns selected by dependencies
+ foreach (map pat, Pkg::ResolvableProperties ("", `pattern, ""),
+ {
+ if (pat["status"]:`none == `selected)
+ {
+ y2milestone ("pat %1 selected by %2" , pat["name"]:"",
+ pat["transact_by"]:nil);
+ if (pat["transact_by"]:nil != `solver)
+ seladd = add (seladd, pat["name"]:"");
+ }
+ });
selbase = Pkg::GetPatterns(`selected, "base");
}
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/src/kiwi_dialogs.ycp new/yast2-product-creator-2.16.11/src/kiwi_dialogs.ycp
--- old/yast2-product-creator-2.16.10/src/kiwi_dialogs.ycp 2008-02-18 10:56:49.000000000 +0100
+++ new/yast2-product-creator-2.16.11/src/kiwi_dialogs.ycp 2008-03-28 16:12:09.000000000 +0100
@@ -12,12 +12,13 @@
import "CWM";
import "CWMTab";
import "Directory";
- import "ProductCreator";
import "FileUtils";
import "Label";
import "Kiwi";
+ import "Package";
import "PackageSystem";
import "Popup";
+ import "ProductCreator";
import "SourceDialogs";
import "SourceManager";
import "Summary";
@@ -55,9 +56,9 @@
return ret;
}
- /********************************************************************************************
+ /*****************************************************************************
* widget handlers
- *******************************************************************************************/
+ ****************************************************************************/
/**
* Initialize the widget with ignored packages
@@ -103,27 +104,26 @@
*/
define void InitSWRichText (string id) {
- string sw_selection = KiwiConfig["sw_selection"]:"image";
- string pattern_key = sw_selection == "image" ? "addons" : (sw_selection + "_patterns");
+ integer package_set = KiwiConfig["package_set"]:0;
string rt = "";
- if (KiwiConfig[pattern_key]:[] != [])
- {
+
+ list packages = KiwiConfig["packages"]:[];
+ string pat = "";
+ string pac = "";
+
+ if (size (packages[package_set,"opensusePattern"]:[]) > 0)
// richtext header
- rt = Summary::AddHeader ("", _("Patterns"));
- foreach (string pattern, (list<string>) KiwiConfig[pattern_key]:[], {
- rt = Summary::AddListItem (rt, pattern);
- });
- }
- string package_key = sw_selection == "image" ? "packages" : (sw_selection + "_packages");
- if (KiwiConfig[package_key]:[] != [])
- {
+ pat = Summary::AddHeader ("", _("Patterns"));
+ foreach (map patmap, packages[package_set,"opensusePattern"]:[], {
+ pat = Summary::AddListItem (pat, patmap["name"]:"");
+ });
+ if (size (packages[package_set,"package"]:[]) > 0)
// richtext header
- rt = Summary::AddHeader (rt, _("Packages"));
- foreach (string package, (list<string>) KiwiConfig[package_key]:[], {
- rt = Summary::AddListItem (rt, package);
- });
- }
- UI::ChangeWidget (`id (id), `Value, rt);
+ pac = Summary::AddHeader ("", _("Packages"));
+ foreach (map pacmap, packages[package_set,"package"]:[], {
+ pac = Summary::AddListItem (pac, pacmap["name"]:"");
+ });
+ UI::ChangeWidget (`id (id), `Value, pat + pac);
}
/**
@@ -132,42 +132,34 @@
define symbol HandleSWSelection (string key, map event) {
if (event["ID"]:nil == key)
{
- string sw_selection = KiwiConfig["sw_selection"]:"image";
+ integer package_set = KiwiConfig["package_set"]:0;
+ map sw_contents = KiwiConfig["packages",package_set]:$[];
integer mbytes = (integer) UI::QueryWidget (`id ("size"), `Value);
if (UI::QueryWidget (`id ("sizeunit"), `Value) == "G")
mbytes = mbytes * 1024;
ProductCreator::max_size_mb = mbytes;
- if (sw_selection == "image" && packageSelector () != `cancel)
- {
- KiwiConfig["addons"] = ProductCreator::Config["addons"]:[];
- KiwiConfig["packages"] = ProductCreator::Config["packages"]:[];
- InitSWRichText ("rt_sw");
- if (ProductCreator::Config["taboo"]:[] != nil)
- {
- //FIXME do not replace current 'ignored' tags...
- KiwiConfig["ignore"] = union (KiwiConfig["ignore"]:[],
- ProductCreator::Config["taboo"]:[]);
- InitSWIgnore ("ignore");
- }
- }
- else if (sw_selection != "image")
- {
- map selected = runPackageSelector ("",
- KiwiConfig[sw_selection + "_patterns"]:[],
- KiwiConfig[sw_selection + "_packages"]:[],
- KiwiConfig[sw_selection + "_ignore"]:[],
- `packages
- );
- KiwiConfig[sw_selection + "_patterns"] = selected["addons"]:[];
- KiwiConfig[sw_selection + "_packages"] = selected["packages"]:[];
- InitSWRichText ("rt_sw");
- if (ProductCreator::Config["taboo"]:[] != nil)
- {
- KiwiConfig["ignore"] = ProductCreator::Config["taboo"]:[];
- InitSWIgnore ("ignore");
- }
- }
+
+ map ret_map = runPackageSelector ("",
+ maplist (map pat, sw_contents["opensusePattern"]:[],
+ ``(pat["name"]:"")),
+ maplist (map pat, sw_contents["package"]:[],
+ ``(pat["name"]:"")),
+ maplist (map pat, sw_contents["ignore"]:[],
+ ``(pat["name"]:"")),
+ `packages
+ );
+ if (ret_map["ui"]:nil == `cancel)
+ return nil;
+ sw_contents["opensusePattern"] = maplist (string patname,
+ ret_map["addons"]:[], ``($[ "name" : patname]));
+ sw_contents["package"] = maplist (string patname,
+ ret_map["packages"]:[], ``($[ "name" : patname]));
+ sw_contents["ignore"] = maplist (string patname,
+ ret_map["taboo"]:[], ``($[ "name" : patname]));
+ KiwiConfig["packages",package_set] = sw_contents;
+ InitSWRichText ("rt_sw");
+// InitSWIgnore ("ignore"); FIXME
}
return nil;
}
@@ -176,21 +168,34 @@
* initialize the combo box with package selection groups
*/
define void InitSWSelectionCombo (string id) {
- string sw_selection = KiwiConfig["sw_selection"]:"image";
- list items = [
- `item (`id ("image"), _("Image"), sw_selection == "image"),
- ];
- if (kiwi_task == "xen")
- items = add (items, `item (`id ("xen"), _("Xen Specific"), sw_selection == "xen"));
+ integer package_set = KiwiConfig["package_set"]:0;
+ list items = [];
+ integer i = 0;
+ foreach (map pmap, KiwiConfig["packages"]:[], {
+ string type = pmap["type"]:"";
+ // combo box label
+ string label = _("Image");
+ if (type == "bootstrap")
+ // combo box label
+ label = _("Bootstrap");
+ if (type == "xen")
+ // combo box label
+ label = _("Xen Specific"); // FIXME labels...
+ if (pmap["profiles"]:"" != "")
+ // combo box label, %1 is profile name
+ label = sformat (_("Image, profile %1"), pmap["profiles"]:"");
+ items = add (items, `item (`id (i), label, package_set == i));
+ i = i + 1;
+ });
UI::ChangeWidget (`id (id), `Items, items);
}
define void StoreSWSelectionCombo (string key, map event) {
- KiwiConfig[key] = (string) UI::QueryWidget(`id(key), `Value);
+ KiwiConfig["package_set"] = (integer) UI::QueryWidget(`id(key), `Value);
}
/**
- * handler for combo box with isoboot items
+ * handler for combo box with package sets items
*/
define symbol HandleSWSelectionCombo (string key, map event) {
any id = event["ID"]:nil;
@@ -198,13 +203,13 @@
if (id == `next) StoreSWSelectionCombo (key, event);
else if (event["ID"]:nil == key)
{
- string selected = (string) UI::QueryWidget(`id(key), `Value);
- if (selected != KiwiConfig["sw_selection"]:"image")
+ integer selected = (integer) UI::QueryWidget(`id(key), `Value);
+ if (selected != KiwiConfig["package_set"]:0)
{
- StoreSWIgnore ("ignore", event);
+// StoreSWIgnore ("ignore", event); FIXME
StoreSWSelectionCombo (key, event);
InitSWRichText ("rt_sw");
- InitSWIgnore ("ignore");
+// InitSWIgnore ("ignore"); FIXME
}
}
return nil;
@@ -838,9 +843,10 @@
map label2boot = $[
"openSUSE 10.2" : "suse-10.2",
"openSUSE 10.3" : "suse-10.3",
+ "openSUSE 11.0" : "suse-11.0",
"SUSE Linux 10.1" : "suse-10.1",
"SUSE Linux Enterprise Server 10" : "suse-SLES10",
- "SUSE Linux Enterprise Desktop 10" : "suse-SLED10"
+ "SUSE Linux Enterprise Desktop 10" : "suse-SLED10",
];
map distproduct2boot = $[
"openSUSE-10.2-CD-download" : "suse-10.2",
@@ -884,9 +890,9 @@
}
- /********************************************************************************************
+ /****************************************************************************
* widget descriptions
- *******************************************************************************************/
+ ****************************************************************************/
// return map with description of tabs
// it is a function, to be able to adapt to actual state (e.g. boot_image_widget ())
@@ -901,23 +907,39 @@
`VSpacing (0.2),
`HBox (
`HWeight (1, "version"),
- `HWeight (1, `HBox ("size", "sizeunit"))
+ `HWeight (1, `HBox ("size", "sizeunit")),
+ `VBox (
+ `Label (""), "compressed"
+ )
),
+ /*
"sw_selection",
`HBox (
`HWeight (1, `VBox (
- `Left (`Label (_("Installed Software"))), "rt_sw", `Right ("configure_sw")
+ `Left (`Label (_("Installed Software"))),
+ "rt_sw", `Right ("configure_sw")
+ ))
+// `HWeight (1, `VBox ("ignore", "delete_sw"))
+ ),
+ */
+ `HBox (
+ `HWeight (2, `VBox (
+ "sw_selection",
+ `Left (`Label (_("Installed Software"))),
+ "rt_sw",
+ `Right ("configure_sw")
)),
- `HWeight (1, `VBox ("ignore", "delete_sw"))
+ `HWeight (1, "delete_sw")
),
`VSpacing (0.2)
), `HSpacing(1)),
"widget_names" : [
"version",
- "size", "sizeunit",
+ "size", "sizeunit", "compressed",
"sw_selection",
"rt_sw", "configure_sw",
- "ignore", "delete_sw"
+ "delete_sw",
+// "ignore", "delete_sw"
],
],
"description" : $[
@@ -1006,79 +1028,6 @@
"no_help" : true,
],
// widgets for config.xml tab
- /*
- "isoboot" : $[
- "widget" : `combobox,
- "opt" : [ `hstretch, `notify ],
- // combo box label
- "label" : _("C&D Boot Image"),
- // help text for "C&D Boot Image", %1/%2 is path (on extra line)
- "help" : sformat (_("<p>Choose one <b>CD Boot Image</b> from the<br>
-<tt>%1/%2</tt><br>
-directory.</p>
-"),
- Kiwi::kiwi_dir, boot_image_widget ()),
- "items" : [],
- "init" : InitBootCombo,
- "store" : StoreBootCombo,
- "handle" : HandleBootCombo,
- ],
- "xenboot" : $[
- "widget" : `combobox,
- "opt" : [ `hstretch, `notify ],
- // combo box label
- "label" : _("&Xen Boot Image"),
- // help text for "XEN Boot Image"
- "help" : sformat (_("<p>Choose one <b>Xen Boot Image</b> from the<br>
-<tt>%1/%2</tt><br>
-directory.</p>
-"),
- Kiwi::kiwi_dir, boot_image_widget ()),
- "items" : [],
- "init" : InitBootCombo,
- "store" : StoreBootCombo,
- "handle" : HandleBootCombo,
- ],
- "usbboot" : $[
- "widget" : `combobox,
- "opt" : [ `hstretch, `notify ],
- // combo box label
- "label" : _("&USB Stick Boot Image"),
- // help text for "XEN Boot Image"
- "help" : sformat (_("<p>Choose one <b>USB Stick Boot Image</b> from the<br>
-<tt>%1/%2</tt><br>
-directory.</p>
-"),
- Kiwi::kiwi_dir, boot_image_widget ()),
- "items" : [],
- "init" : InitBootCombo,
- "store" : StoreBootCombo,
- "handle" : HandleBootCombo,
- ],
- "vmxboot" : $[
- "widget" : `combobox,
- "opt" : [ `hstretch, `notify ],
- // combo box label
- "label" : _("&Virtual Disk Boot Image"),
- // help text for "XEN Boot Image"
- "help" : sformat (_("<p>Choose one <b>Virtual Disk Boot Image</b> from the<br>
-<tt>%1/%2</tt><br>
-directory.</p>
-"),
- Kiwi::kiwi_dir, boot_image_widget ()),
- "items" : [],
- "init" : InitBootCombo,
- "store" : StoreBootCombo,
- "handle" : HandleBootCombo,
- ],
- */
- "configure_boot" : $[
- "widget" : `push_button,
- // pusbutton label
- "label" : _("C&onfigure..."),
- "help" : _("<p>Create a new boot image with <b>Configure</b>.</p>"),
- "handle" : NotImplementedHandler
- ],
"compressed" : $[
"widget" : `checkbox,
// textentry label
@@ -1088,6 +1037,7 @@
"store" : StoreCompressCheckBox,
"handle" : HandleCompressCheckBox,
],
+ /*
"sw_selection" : kiwi_task == "xen" ? $[
"widget" : `combobox,
"opt" : [ `hstretch, `notify ],
@@ -1103,6 +1053,19 @@
"widget" : `empty,
"no_help" : true,
],
+ */
+ "sw_selection" : $[
+ "widget" : `combobox,
+ "opt" : [ `hstretch, `notify ],
+ // combo box label
+ "label" : _("So&ftware Selection"),
+ // help text for "So&ftware selection"
+ "help" : "",
+ "items" : [],
+ "init" : InitSWSelectionCombo,
+ "store" : StoreSWSelectionCombo,
+ "handle" : HandleSWSelectionCombo,
+ ],
"rt_sw" : $[
"widget" : `richtext,
"init" : InitSWRichText,
@@ -1725,7 +1688,7 @@
if (template_items != [])
UI::ChangeWidget (`id (`template), `Enabled, false);
UI::ChangeWidget (`id (`import), `Enabled, false);
- UI::ChangeWidget (`id (`config), `ValidChars, String::CAlnum () + "-_");
+ UI::ChangeWidget (`id (`config), `ValidChars, String::CAlnum ()+".-_");
}
any ret = nil;
while (true)
@@ -1924,6 +1887,7 @@
kiwi_task = (string) UI::QueryWidget (`id (`type), `Value);
list<string> failed_repositories = [];
+ map new_repositories = $[];
if (size (repositories) > 0)
{
map current_sources = $[];
@@ -1935,7 +1899,7 @@
current_sources[url] = srcid;
});
// initialize new repos now
- repositories = filter (string url, map repo, repositories, {
+ new_repositories = filter (string url, map repo, repositories, {
if (substring (url, 0, 1) == "/")
url = "dir://" + url;
if (haskey (current_sources, url))
@@ -1968,7 +1932,26 @@
Continue anyway?"), mergestring (failed_repositories, "\n"))))
{
- update_repo_table ();
+ continue;
+ }
+ else
+ {
+ repositories = new_repositories;
+ }
+ }
+ string to_install = "";
+ if (contains ([ "iso", "xen", "vmx", "usb" ], kiwi_task))
+ {
+ string bootdir = Config["type",kiwi_task,"boot"]:"";
+ if (bootdir == "" ||
+ (!FileUtils::Exists ("/usr/share/kiwi/image/" + bootdir) &&
+ !FileUtils::Exists (bootdir))
+ )
+ {
+ to_install = sformat("kiwi-desc-%1boot", kiwi_task);
+ }
+ if (to_install != "" && !Package::Install (to_install))
+ {
continue;
}
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/src/Kiwi.ycp new/yast2-product-creator-2.16.11/src/Kiwi.ycp
--- old/yast2-product-creator-2.16.10/src/Kiwi.ycp 2008-02-15 15:11:27.000000000 +0100
+++ new/yast2-product-creator-2.16.11/src/Kiwi.ycp 2008-03-28 16:15:02.000000000 +0100
@@ -178,6 +178,8 @@
ret["flags"] = typemap["flags"]:"";
if (typemap["format"]:"" != "")
ret["format"] = typemap["format"]:"";
+ if (type == "vmx" && ret["format"]:"" == "")
+ ret["format"] = "vmdk";
if (type == task)
ret["primary"] = "true";
return ret;
@@ -192,6 +194,8 @@
];
if (task != "iso")
ret["filesystem"] = "ext3";
+ if (task == "vmx")
+ ret["format"] = "vmdk";
retlist = [ ret ];
}
return retlist;
@@ -199,6 +203,7 @@
/**
* generate the list of packages/patterns for image
+ * FIXME generate from new map...
*/
map get_image_packages (map config, list packages, list patterns,list ignored)
{
@@ -222,6 +227,7 @@
"user" : true,
"source" : true,
"file" : true, // for drivers section
+ "profile" : true,
];
/**
@@ -235,7 +241,8 @@
integer i = 0;
while (i < level) {
i = i + 1;
- tab = tab + "\t";
+// tab = tab + "\t";
+ tab = tab + " ";
}
string key = descr["__key"]:"";
if (key == "") return "";
@@ -279,36 +286,13 @@
if (config == nil)
return ret;
map packages = config["packages"]:$[];
- // rest parts of "packages" are saved in product-creator map
- ret["ignore"] = maplist (map p,
- (list<map>)packages["image","ignore"]:[], ``(p["name"]:""));
- // value of "arch" is currently ignored...
- foreach (string section, [ "boot", "xen" ], {
- ret[section + "_packages"] = maplist (map p,
- (list<map>)packages[section, "package"]:[], ``(p["name"]:""));
- ret[section + "_patterns"] = maplist (map p,
- (list<map>)packages[section,"opensusePattern"]:[],``(p["name"]:""));
- ret[section + "_ignore"] = maplist (map p,
- (list<map>)packages[section, "ignore"]:[], ``(p["name"]:""));
- });
- // list of packages and patterns is needed for import, not for new image
- ret["addons"] = maplist (map p,
- (list<map>)packages["image","opensusePattern"]:[], ``(p["name"]:""));
- ret["packages"] = maplist (map p,
- (list<map>)packages["image","package"]:[], ``(p["name"]:""));
- if (haskey (packages, "delete"))
- {
- ret["delete_packages"] = maplist (map p,
- (list<map>)packages["delete", "package"]:[], ``(p["name"]:""));
- }
-
- if (packages["image","patternType"]:"" != "")
- ret["image_patternType"] = packages["image","patternType"]:"";
+ // FIXME these should be part of "packages" already...
if (packages["xen","disk"]:"" != "")
ret["xen_disk"] = packages["xen","disk"]:"";
if (packages["xen","memory"]:"" != "")
ret["xen_memory"] = tointeger (packages["xen","memory"]:"512");
+
foreach (string key, [ "author", "contact", "image_type", "specification",
"packagemanager", "version", "rpm-check-signatures", "rpm-force",
"sizeunit", "type", "name", "repository", "defaultdestination",
@@ -334,7 +318,16 @@
"group" : usermap["group"]:"",
"username" : user,
];
+ //FIXME save this, show in UI...
+ if (usermap["realname"]:"" != "")
+ ret["users",user,"realname"] = usermap["realname"]:"";
});
+
+ map anyxml = (map) SCR::Read (.anyxml, base_path + "/config.xml");
+ map image = anyxml["image",0]:$[];
+ ret["packages"] = image["packages"]:[];
+ ret["profiles"] = image["profiles"]:[];
+ ret["split"] = image["split"]:[];
return ret;
}
@@ -355,51 +348,10 @@
KiwiConfig["defaultroot"] = chroot_dir;
}
- list packages_list = [];
- list patterns_list = [];
- list ignored_list = [];
- list packages_boot_list = [];
- list patterns_boot_list = [];
- list ignored_boot_list = [];
-
list packages_xen_list = [];
list patterns_xen_list = [];
list ignored_xen_list = [];
- foreach (string package, (list<string>) KiwiConfig["packages"]:[], {
- packages_list = add (packages_list, $[
- "__key" : "package",
- "name" : package,
- ]);
- });
- foreach (string pattern, (list<string>) KiwiConfig["addons"]:[], {
- patterns_list = add (patterns_list, $[
- "__key" : "opensusePattern",
- "name" : pattern,
- ]);
- });
- foreach (string package, (list<string>) KiwiConfig["ignore"]:[], {
- ignored_list = add (ignored_list, $[
- "__key" : "ignore",
- "name" : package,
- ]);
- });
- list<string> boot_packages =
- KiwiConfig["boot_packages"]:["filesystem", "glibc-locale", "kernel-default", "devs" ];
- foreach (string package, boot_packages, {
- packages_boot_list = add (packages_boot_list, $[
- "__key" : "package",
- "name" : package,
- ]);
- });
- foreach (string ignore, KiwiConfig["boot_ignore"]:[], {
- ignored_boot_list = add (ignored_boot_list, $[
- "__key" : "ignore",
- "name" : ignore,
- ]);
- });
-
-
foreach (string package, KiwiConfig["xen_packages"]:[], {
packages_xen_list = add (packages_xen_list, $[
"__key" : "package",
@@ -451,10 +403,6 @@
"__key" : "rpm-force",
"__value" : KiwiConfig["rpm-force"]:"True",
],
- $[
- "__key" : "defaultdestination",
- "__value" : KiwiConfig["iso-directory"]:"",
- ],
],
];
// "type" goes to the first place
@@ -476,8 +424,6 @@
}
});
-
-
list write_list = [ $[
"__key" : "image",
"name" : KiwiConfig["name"]:"",
@@ -506,6 +452,16 @@
]];
if (KiwiConfig["inherit"]:"" != "")
write_list[0,"inherit"] = KiwiConfig["inherit"]:"";
+ if (haskey (KiwiConfig, "profiles"))
+ {
+ write_list[0,"__children"] = add (write_list[0,"__children"]:[], $[
+ "__key" : "profiles",
+ "__children" : maplist (
+ map profile, KiwiConfig["profiles",0,"profile"]:[], {
+ return union ($[ "__key" : "profile"], profile);
+ })
+ ]);
+ }
if (haskey (KiwiConfig, "users"))
{
map groups2users = $[];
@@ -521,14 +477,17 @@
write_list[0,"__children"] = add (write_list[0,"__children"]:[], $[
"__key" : "users",
"group" : group,
- "__children" : maplist (map usermap, (list<map>) userlist, ``(
- $[
+ "__children" : maplist (map usermap, (list<map>) userlist, {
+ map u = $[
"__key" : "user",
"name" : usermap["username"]:"",
"pwd" : (usermap["encrypted"]:false) ? usermap["pwd"]:"" : crypt_password (usermap["pwd"]:""),
"home" : usermap["home"]:"",
- ]
- ))
+ ];
+ if (usermap["realname"]:"" != "")
+ u["realname"] = usermap["realname"]:"";
+ return u;
+ })
]);
});
}
@@ -537,15 +496,64 @@
``(get_source_value (source, KiwiConfig))
)
);
- write_list[0,"__children"] = union (write_list[0,"__children"]:[], [
- get_image_packages (
- KiwiConfig, packages_list, patterns_list, ignored_list),
+ map image_packages = $[];
+ list<map> profiles_packages = []; // + FIXME XEN + delete are here?
+ map bootstrap_packages = $[];
+ foreach (map packagemap, KiwiConfig["packages"]:[], {
+ /* example of packagemap:
$[
- "__key" : "packages",
- "type" : "boot",
- "__children": union (union (packages_boot_list, patterns_boot_list), ignored_boot_list)
- ],
- ]);
+ "opensusePattern" : [
+ $[ "name":"base" ],
+ $[ "name":"x11" ]
+ ],
+ "package" : [ $[ "name":"zypper" ] ],
+ "type" : "image",
+ "profiles" : "KDE"
+ ]*/
+ map pmap = union (packagemap, $[
+ "__key" : "packages",
+ ]);
+ string type = pmap["type"]:"";
+ pmap["__children"] = maplist (map p, pmap["package"]:[], ``(
+ union (p, $[ "__key" : "package"]))
+ );
+ if (haskey (pmap, "package"))
+ pmap = remove (pmap,"package");
+ if (haskey (pmap, "ignore"))
+ {
+ pmap["__children"] = union (pmap["__children"]:[],
+ maplist (map p, pmap["ignore"]:[], ``(
+ union (p, $[ "__key" : "ignore"]))
+ )
+ );
+ pmap = remove (pmap, "ignore");
+ }
+ if (haskey (pmap, "opensusePattern"))
+ {
+ pmap["__children"] = union (pmap["__children"]:[],
+ maplist (map p, pmap["opensusePattern"]:[], ``(
+ union (p, $[ "__key" : "opensusePattern"]))
+ )
+ );
+ pmap = remove (pmap,"opensusePattern");
+ }
+ if (type == "bootstrap")
+ bootstrap_packages = pmap;
+ else if (type == "image" && pmap["profiles"]:"" == "")
+ image_packages = pmap;
+ else
+ profiles_packages = add (profiles_packages, pmap);
+ });
+ if (image_packages != $[])
+ write_list[0,"__children"] =
+ add (write_list[0,"__children"]:[], image_packages);
+ if (profiles_packages != [])
+ write_list[0,"__children"] =
+ union (write_list[0,"__children"]:[], profiles_packages);
+ if (bootstrap_packages != $[])
+ write_list[0,"__children"] =
+ add (write_list[0,"__children"]:[], bootstrap_packages);
+ /*
if (task == "xen")
{
write_list[0,"__children"] = add (write_list[0,"__children"]:[], $[
@@ -566,8 +574,24 @@
"__children": packages_delete_list
]);
}
+ */
+ if (haskey (KiwiConfig, "split"))
+ write_list[0,"__children"] = add (write_list[0,"__children"]:[], $[
+ "__key" : "split",
+ /* FIXME
+ "__children": maplist (map what, KiwiConfig["split"]:[], {
+ map ret = $[];
+ foreach (string k, list val, what, {
+ ret["__key"] = k;
+ ret
+ });
+ return ret;
+ });
+ */
+ ]);
- string write_string = Map2XML (write_list[0]:$[], 0);
+ string write_string = "<?xml version=\"1.0\"?>\n" +
+ Map2XML (write_list[0]:$[], 0);
config_dir = tmp_dir + "/" + KiwiConfig["name"]:"";
SCR::Execute (.target.mkdir, config_dir);
SCR::Write (.target.string, config_dir + "/config.xml", write_string);
@@ -693,6 +717,7 @@
UI::ChangeWidget (`id(`log), `LastLine, "\n");
cmd = sformat ("ZYPP_READONLY_HACK=1 kiwi --nocolor --create %1 -d %2 --logfile terminal", chroot_dir, out_dir);
y2milestone ("calling '%1'", cmd);
+// FIXME ask for profiles, than call with --add-profile <profile-name>
// label
UI::ReplaceWidget (`id (`rpl), `Left (`Label (_("Creating Image"))));
SCR::Execute (.background.run_output_err, cmd);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/src/routines.ycp new/yast2-product-creator-2.16.11/src/routines.ycp
--- old/yast2-product-creator-2.16.10/src/routines.ycp 2007-07-16 15:53:26.000000000 +0200
+++ new/yast2-product-creator-2.16.11/src/routines.ycp 2007-09-13 09:36:17.000000000 +0200
@@ -4,7 +4,7 @@
* Summary: Miscelanous functions for configuration of product-creator.
* Authors: Anas Nashif
*
- * $Id: routines.ycp 37838 2007-05-04 13:18:14Z lslezak $
+ * $Id: routines.ycp 38945 2007-06-21 12:19:17Z jsuchome $
*/
{
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/TODO new/yast2-product-creator-2.16.11/TODO
--- old/yast2-product-creator-2.16.10/TODO 2007-11-09 16:26:08.000000000 +0100
+++ new/yast2-product-creator-2.16.11/TODO 1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-Do the same for s390 and s390x:
-
-+ // ppc64 has /boot/ppc
-+ string boot_architecture = (arch == "ppc64") ? "ppc" : arch;
-+
-+ if (bootable_product && Config["code10"]:false)
- {
-- Exec(sformat("/bin/mkdir -p '%1/boot/%2'", String::Quote(skel_root), String::Quote(arch)));
-+ Exec(sformat("/bin/mkdir -p '%1/boot/%2'", String::Quote(skel_root), String::Quote(boot_architecture)));
- }
-
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-product-creator-2.16.10/VERSION new/yast2-product-creator-2.16.11/VERSION
--- old/yast2-product-creator-2.16.10/VERSION 2008-03-25 08:49:09.000000000 +0100
+++ new/yast2-product-creator-2.16.11/VERSION 2008-03-28 16:14:47.000000000 +0100
@@ -1 +1 @@
-2.16.10
+2.16.11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org