Hello community,
here is the log from the commit of package yast2-installation
checked in at Tue May 9 22:55:09 CEST 2006.
--------
--- yast2-installation/yast2-installation.changes 2006-05-09 11:32:33.000000000 +0200
+++ NOARCH/yast2-installation/yast2-installation.changes 2006-05-09 19:45:46.000000000 +0200
@@ -1,0 +2,16 @@
+Tue May 9 19:35:47 CEST 2006 - jdsl@suse.de
+
+- switched to Enterprise wording for inst_suse_register (#173970)
+- 2.13.103
+
+-------------------------------------------------------------------
+Tue May 9 19:30:47 CEST 2006 - mvidner@suse.cz
+
+- Save the update sources if registration is done later after the
+ installation (#172665).
+- When adding upate sources, do not add duplicates (check by the alias
+ passed by suse_register on SLE), delete the duplicate beforehand
+ (#168740#c3).
+- 2.13.102
+
+-------------------------------------------------------------------
Old:
----
yast2-installation-2.13.101.tar.bz2
New:
----
yast2-installation-2.13.103.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-installation.spec ++++++
--- /var/tmp/diff_new_pack.QcLbtw/_old 2006-05-09 22:55:00.000000000 +0200
+++ /var/tmp/diff_new_pack.QcLbtw/_new 2006-05-09 22:55:00.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-installation (Version 2.13.101)
+# spec file for package yast2-installation (Version 2.13.103)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -11,12 +11,12 @@
# norootforbuild
Name: yast2-installation
-Version: 2.13.101
-Release: 1
+Version: 2.13.103
+Release: 2
License: GPL
Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-installation-2.13.101.tar.bz2
+Source0: yast2-installation-2.13.103.tar.bz2
prefix: /usr
BuildRequires: docbook-xsl-stylesheets doxygen libxslt perl-XML-Writer sgml-skel update-desktop-files yast2 yast2-country yast2-devtools yast2-testsuite
Requires: yast2 yast2-update
@@ -48,7 +48,7 @@
Arvin Schnell
%prep
-%setup -n yast2-installation-2.13.101
+%setup -n yast2-installation-2.13.103
%build
%{prefix}/bin/y2tool y2autoconf
@@ -106,6 +106,16 @@
/usr/X11R6/share/fvwm/
%changelog -n yast2-installation
+* Tue May 09 2006 - jdsl@suse.de
+- switched to Enterprise wording for inst_suse_register (#173970)
+- 2.13.103
+* Tue May 09 2006 - mvidner@suse.cz
+- Save the update sources if registration is done later after the
+ installation (#172665).
+- When adding upate sources, do not add duplicates (check by the alias
+ passed by suse_register on SLE), delete the duplicate beforehand
+ (#168740#c3).
+- 2.13.102
* Tue May 09 2006 - mvidner@suse.cz
- Start the network also when doing a remote X11 installation (#165458,
hare).
++++++ yast2-installation-2.13.101.tar.bz2 -> yast2-installation-2.13.103.tar.bz2 ++++++
++++ 1945 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-installation-2.13.101/VERSION new/yast2-installation-2.13.103/VERSION
--- old/yast2-installation-2.13.101/VERSION 2006-05-09 11:31:35.000000000 +0200
+++ new/yast2-installation-2.13.103/VERSION 2006-05-09 19:35:39.000000000 +0200
@@ -1 +1 @@
-2.13.101
+2.13.103
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-installation-2.13.101/configure.in new/yast2-installation-2.13.103/configure.in
--- old/yast2-installation-2.13.101/configure.in 2006-05-09 11:32:58.000000000 +0200
+++ new/yast2-installation-2.13.103/configure.in 2006-05-09 19:38:51.000000000 +0200
@@ -1,9 +1,9 @@
dnl configure.in for yast2-installation
dnl
-dnl -- This file is generated by y2autoconf 2.13.17 - DO NOT EDIT! --
+dnl -- This file is generated by y2autoconf 2.13.18 - DO NOT EDIT! --
dnl (edit configure.in.in instead)
-AC_INIT(yast2-installation, 2.13.101, http://www.suse.de/feedback, yast2-installation)
+AC_INIT(yast2-installation, 2.13.103, http://bugs.opensuse.org/, yast2-installation)
dnl Check for presence of file 'RPMNAME'
AC_CONFIG_SRCDIR([RPMNAME])
@@ -17,7 +17,7 @@
AM_INIT_AUTOMAKE(tar-ustar) dnl searches for some needed programs
dnl Important YaST2 variables
-VERSION="2.13.101"
+VERSION="2.13.103"
RPMNAME="yast2-installation"
MAINTAINER="Jiri Srain "
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-installation-2.13.101/control/docs/control-doc.xml new/yast2-installation-2.13.103/control/docs/control-doc.xml
--- old/yast2-installation-2.13.101/control/docs/control-doc.xml 2005-04-19 15:34:02.000000000 +0200
+++ new/yast2-installation-2.13.103/control/docs/control-doc.xml 2006-05-08 18:36:40.000000000 +0200
@@ -28,7 +28,7 @@
0.1
</revnumber>
<date>
- $Date: 2004-10-27 16:25:24 +0200 (St, 27 říj 2004) $
+ $Date: 2004-10-27 16:25:24 +0200 (Wed, 27 Oct 2004) $
</date>
<revremark>Initial Release as PDF</revremark>
</revision>
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-installation-2.13.101/src/clients/inst_suse_register.ycp new/yast2-installation-2.13.103/src/clients/inst_suse_register.ycp
--- old/yast2-installation-2.13.101/src/clients/inst_suse_register.ycp 2006-05-09 11:30:48.000000000 +0200
+++ new/yast2-installation-2.13.103/src/clients/inst_suse_register.ycp 2006-05-09 19:34:31.000000000 +0200
@@ -30,6 +30,7 @@
import "Internet";
import "Register";
import "SourceManager";
+ import "PackageSystem";
// no network - no suse_register
if (!Mode::normal())
@@ -550,6 +551,13 @@
/* -------------------------------- PROGRAM LOGIC START ----------------------------------------------------------- */
+ if (Mode::normal ())
+ {
+ // #172665, make sure that the added sources have a safe home
+ // It also takes care of target for keys, shows busy popup
+ PackageSystem::EnsureSourceInit ();
+ }
+
// #170113, the lock is needed around everything that may end up in ZMD
SourceManager::Lock ();
@@ -802,7 +810,13 @@
// Register::finish mandatory as well - do not remove
Register::finish();
- if (Mode::normal()) Wizard::CloseDialog();
+ if (Mode::normal())
+ {
+ // #172665
+ Pkg::SourceFinishAll ();
+ Pkg::TargetFinish ();
+ Wizard::CloseDialog();
+ }
else
{
if (ret == `skip)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-installation-2.13.101/src/config/suse_register.desktop new/yast2-installation-2.13.103/src/config/suse_register.desktop
--- old/yast2-installation-2.13.101/src/config/suse_register.desktop 2006-04-25 17:11:20.000000000 +0200
+++ new/yast2-installation-2.13.103/src/config/suse_register.desktop 2006-05-09 19:34:26.000000000 +0200
@@ -13,5 +13,5 @@
Icon=yast-product-registration
Exec=/sbin/yast2 inst_suse_register
-Name=Online Update Configuration
-GenericName=Online Update Configuration
+Name=Novell Customer Center Configuration
+GenericName=Novell Customer Center Configuration
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-installation-2.13.101/src/modules/Register.ycp new/yast2-installation-2.13.103/src/modules/Register.ycp
--- old/yast2-installation-2.13.101/src/modules/Register.ycp 2006-05-09 11:30:49.000000000 +0200
+++ new/yast2-installation-2.13.103/src/modules/Register.ycp 2006-05-09 18:45:10.000000000 +0200
@@ -163,6 +163,42 @@
}
+/**
+ * Parse a URL query (already unescaped) to a map.
+ * If no equal sign, the value will be nil.
+ * @param query foo=bar&baz=qux
+ * @return $["foo": "bar", "baz": "qux"]
+ */
+map ParseUrlQuery (string query) {
+ list<string> q_items = splitstring (query, "&");
+ map q_map = listmap (string q_item, q_items, {
+ integer eqpos = search (q_item, "=");
+ if (eqpos == nil)
+ {
+ return $[ q_item: nil ];
+ }
+ else
+ {
+ string key = substring (q_item, 0, eqpos);
+ string val = substring (q_item, eqpos + 1);
+ return $[ key: val ];
+ }
+ });
+ return q_map;
+}
+
+/**
+ * @return For existing sources, get a mapping from the alias to the id
+ */
+map get_alias_to_id () {
+ list<integer> src_ids = Pkg::SourceGetCurrent (false /*enabled only?*/);
+ map a2i = listmap (integer src_id, src_ids, {
+ map gendata = Pkg::SourceGeneralData (src_id);
+ string alias = gendata["alias"]:"";
+ return $[ alias: src_id ];
+ });
+ return a2i;
+}
// ------------------------------------------------------------------
// END: Locally defined functions
@@ -317,10 +353,49 @@
if (!FileUtils::Exists (services_file))
return false;
+ // prepare for lookup of known aliases
+ map aliases = get_alias_to_id ();
+ y2milestone ("alias mapping: %1", aliases);
+
// filters out empty items (#165860#c12)
list<string> urls = String::NewlineItems (
(string)SCR::Read(.target.string, services_file));
+ // add the sources.
+ // but do not make duplicates (#168740)
+ // we detect them based on alias that suse_register gives us (#158850#c17)
+ /// (but only for SLE... :-/ )
+ /// Need to test what happens when we get two different update
+ /// servers for SL
+ /// Anyway that means only that #168740 remains unfixed for SL
foreach (string url, urls, {
+ y2milestone ("Should add an update source: %1", url);
+ // inst_addon_update_sources also calls Pkg::SourceCreate
+ // but it already skips duplicates
+
+ // plan: (log each step!)
+ // parse the URL
+ map parsed_url = URL::Parse (url);
+ y2milestone ("parsed: %1", parsed_url);
+ // (reassemble and warn if it differs)
+ string reassembled = URL::Build (parsed_url);
+ if (url != reassembled)
+ {
+ y2warning ("reassembled differs: %1", reassembled);
+ }
+ // get the alias
+ map q_map = ParseUrlQuery (parsed_url["query"]:"");
+ y2milestone ("query: %1", q_map);
+ string alias = q_map["alias"]:"";
+ // check if alias already there (empty: box safeguard)
+ // if yes, delete the old one
+ if (alias != "" && haskey (aliases, alias))
+ {
+ integer todel = aliases[alias]:-1;
+ y2milestone ("deleting the old copy, source %1", todel);
+ Pkg::SourceDelete (todel);
+ }
+ // then add the new one
+ y2milestone ("adding source");
Pkg::SourceCreate (url, "/");
});
return true;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...