Hello community,
here is the log from the commit of package yast2-live-installer
checked in at Thu Aug 2 22:13:39 CEST 2007.
--------
--- yast2-live-installer/yast2-live-installer.changes 2007-07-30 17:42:58.000000000 +0200
+++ /mounts/work_src_done/NOARCH/yast2-live-installer/yast2-live-installer.changes 2007-08-02 13:46:43.819060000 +0200
@@ -1,0 +2,8 @@
+Thu Aug 2 10:53:01 CEST 2007 - jsrain@suse.cz
+
+- even more simplified installation overview
+- report progress while copying to the system
+- reduced the steps
+- 2.15.3
+
+-------------------------------------------------------------------
Old:
----
yast2-live-installer-2.15.1.tar.bz2
New:
----
yast2-live-installer-2.15.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-live-installer.spec ++++++
--- /var/tmp/diff_new_pack.k24773/_old 2007-08-02 22:13:00.000000000 +0200
+++ /var/tmp/diff_new_pack.k24773/_new 2007-08-02 22:13:00.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-live-installer (Version 2.15.1)
+# spec file for package yast2-live-installer (Version 2.15.2)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -11,12 +11,12 @@
# norootforbuild
Name: yast2-live-installer
-Version: 2.15.1
+Version: 2.15.2
Release: 1
License: GPL v2 or later
Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-live-installer-2.15.1.tar.bz2
+Source0: yast2-live-installer-2.15.2.tar.bz2
prefix: /usr
Requires: yast2
BuildRequires: perl-XML-Writer update-desktop-files yast2 yast2-devtools yast2-testsuite
@@ -34,7 +34,7 @@
Jiri Srain
%prep
-%setup -n yast2-live-installer-2.15.1
+%setup -n yast2-live-installer-2.15.2
%build
%{prefix}/bin/y2tool y2autoconf
@@ -66,6 +66,11 @@
%doc %{prefix}/share/doc/packages/yast2-live-installer
%changelog
+* Thu Aug 02 2007 - jsrain@suse.cz
+- even more simplified installation overview
+- report progress while copying to the system
+- reduced the steps
+- 2.15.3
* Mon Jul 30 2007 - jsrain@suse.cz
- added simplified installation overview
- 2.15.1
++++++ yast2-live-installer-2.15.1.tar.bz2 -> yast2-live-installer-2.15.2.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-live-installer-2.15.1/configure new/yast2-live-installer-2.15.2/configure
--- old/yast2-live-installer-2.15.1/configure 2007-07-30 17:40:43.000000000 +0200
+++ new/yast2-live-installer-2.15.2/configure 2007-08-02 13:46:22.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.60 for yast2-live-installer 2.15.1.
+# Generated by GNU Autoconf 2.60 for yast2-live-installer 2.15.2.
#
# Report bugs to http://bugs.opensuse.org/.
#
@@ -559,8 +559,8 @@
# Identity of this package.
PACKAGE_NAME='yast2-live-installer'
PACKAGE_TARNAME='yast2-live-installer'
-PACKAGE_VERSION='2.15.1'
-PACKAGE_STRING='yast2-live-installer 2.15.1'
+PACKAGE_VERSION='2.15.2'
+PACKAGE_STRING='yast2-live-installer 2.15.2'
PACKAGE_BUGREPORT='http://bugs.opensuse.org/'
ac_unique_file="RPMNAME"
@@ -1183,7 +1183,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-live-installer 2.15.1 to adapt to many kinds of systems.
+\`configure' configures yast2-live-installer 2.15.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1254,7 +1254,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of yast2-live-installer 2.15.1:";;
+ short | recursive ) echo "Configuration of yast2-live-installer 2.15.2:";;
esac
cat <<\_ACEOF
@@ -1332,7 +1332,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-yast2-live-installer configure 2.15.1
+yast2-live-installer configure 2.15.2
generated by GNU Autoconf 2.60
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1346,7 +1346,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-live-installer $as_me 2.15.1, which was
+It was created by yast2-live-installer $as_me 2.15.2, which was
generated by GNU Autoconf 2.60. Invocation command line was
$ $0 $@
@@ -2147,7 +2147,7 @@
# Define the identity of the package.
PACKAGE='yast2-live-installer'
- VERSION='2.15.1'
+ VERSION='2.15.2'
cat >>confdefs.h <<_ACEOF
@@ -2374,7 +2374,7 @@
-VERSION="2.15.1"
+VERSION="2.15.2"
RPMNAME="yast2-live-installer"
MAINTAINER="Jiri Srain "
@@ -3356,7 +3356,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by yast2-live-installer $as_me 2.15.1, which was
+This file was extended by yast2-live-installer $as_me 2.15.2, which was
generated by GNU Autoconf 2.60. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -3399,7 +3399,7 @@
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-yast2-live-installer config.status 2.15.1
+yast2-live-installer config.status 2.15.2
configured by $0, generated by GNU Autoconf 2.60,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-live-installer-2.15.1/configure.in new/yast2-live-installer-2.15.2/configure.in
--- old/yast2-live-installer-2.15.1/configure.in 2007-07-30 17:40:39.000000000 +0200
+++ new/yast2-live-installer-2.15.2/configure.in 2007-08-02 13:46:19.000000000 +0200
@@ -3,7 +3,7 @@
dnl -- This file is generated by y2autoconf 2.15.1 - DO NOT EDIT! --
dnl (edit configure.in.in instead)
-AC_INIT(yast2-live-installer, 2.15.1, http://bugs.opensuse.org/, yast2-live-installer)
+AC_INIT(yast2-live-installer, 2.15.2, http://bugs.opensuse.org/, yast2-live-installer)
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.15.1"
+VERSION="2.15.2"
RPMNAME="yast2-live-installer"
MAINTAINER="Jiri Srain "
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-live-installer-2.15.1/src/control/live-install.xml new/yast2-live-installer-2.15.2/src/control/live-install.xml
--- old/yast2-live-installer-2.15.1/src/control/live-install.xml 2007-07-30 17:16:11.000000000 +0200
+++ new/yast2-live-installer-2.15.2/src/control/live-install.xml 2007-08-02 10:53:43.000000000 +0200
@@ -203,10 +203,6 @@
</module>
<module>
<label>Online Update</label>
- <name>inst_ask_net_test</name>
- </module>
- <module>
- <label>Online Update</label>
<name>inst_do_net_test</name>
</module>
- <module>
- <label>Clean Up</label>
- <name>suseconfig</name>
- no
- no
- </module>
<module>
<name>congratulate</name>
yes
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-live-installer-2.15.1/src/inst_live_doit.ycp new/yast2-live-installer-2.15.2/src/inst_live_doit.ycp
--- old/yast2-live-installer-2.15.1/src/inst_live_doit.ycp 2007-06-28 21:35:30.000000000 +0200
+++ new/yast2-live-installer-2.15.2/src/inst_live_doit.ycp 2007-08-01 18:24:08.000000000 +0200
@@ -18,30 +18,69 @@
* @param to string target directory
* @return boolean true on success
*/
-boolean FileSystemCopy (string from, string to) {
-/* string fromdir = "/";
- list<string> components = splitstring (from, "/");
- if (size (components) > 1)
+boolean FileSystemCopy (string from, string to,
+ integer progress_start,
+ integer progress_finish)
+{
+ string cmd = sformat ("du -x -B 1048576 -s %1", from);
+ y2milestone ("Executing %1", cmd);
+ map out = (map)SCR::Execute (.target.bash_output, cmd);
+ y2milestone ("Output: %1", out);
+ string total_str = out["stdout"]:"";
+ integer total_mb = tointeger (total_str);
+ if (total_mb == 0)
+ total_mb = 1024*1024*1024; // should be big enough
+
+ string tmp_pipe = (string)SCR::Read (.target.tmpdir) + "/system_clone_fifo";
+ // FIXME this does not copy pipes in filesystem (usually not an issue)
+ cmd = sformat (
+ "mkfifo %3 ; tar -C %1 -cSf - --one-file-system . | dd bs=1048576 of=%3 & echo $! >&2 ; tar -C %2 -xSf %3",
+ from, to, tmp_pipe);
+ y2milestone ("Executing %1", cmd);
+ SCR::Execute(.background.run_output_err, cmd);
+ string pid = "";
+ while((boolean)SCR::Read(.background.output_open_err) || (boolean)(SCR::Read(.background.newlines_err) > 0))
{
- from = components[size(components) - 1]:"";
- components[size(components) - 1] = "";
- fromdir = mergestring (components, "/");
+ string done = nil;
+ if ((integer)SCR::Read (.background.newlines_err) > 0)
+ {
+ list<string> lines = (list<string>)SCR::Read (.background.newerr);
+ while (pid == "" && size (lines) > 0)
+ {
+ pid = lines[0]:"";
+ lines[0] = nil;
+ lines = filter (string l, lines, { return l != nil; });
+ if (! regexpmatch (pid, "^[0-9]+$"))
+ pid = "";
+ else
+ y2milestone ("DD's pid: %1", pid);
+ }
+ foreach (string l, lines, {
+y2internal ("Line: %1", l);
+ if (regexpmatch (l, "^[0-9]+ "))
+ done = regexpsub (l, "^([0-9]+) ", "\\1");
+ });
+ y2internal ("Done: %1", done);
+ }
+ if (pid != "")
+ {
+ SCR::Execute (.target.bash, sformat ("/bin/kill -USR1 %1", pid));
+ }
+ sleep (100);
+ if (done != nil)
+ {
+ integer progress = progress_start + (progress_finish - progress_start) * tointeger (done) / total_mb / 1024 / 1024;
+ Progress::Step (progress);
+ y2milestone ("Setting progress to %1", progress);
+ }
}
- if (fromdir == "")
- fromdir = "/";
- if (from == "")
- from = "/";
- if (to == "")
- to = "/";
- y2milestone ("FromDir: %1, From: %2, To: %3",
- fromdir, from, to);
- string cmd = sformat (
- "(cd %1 ; tar clf - %2 ) | dd | (cd %3 ; tar -xf - )",
- fromdir, from, to);*/
- string cmd = sformat ("/bin/cp -avx %1 %2", from, to);
+ y2milestone ("Result: %1", SCR::Read (.background.status));
+ SCR::Execute (.target.remove, tmp_pipe);
+ cmd = sformat ("chown --reference=%1 %2; chmod --reference=%1 %2",
+ from, to);
y2milestone ("Executing %1", cmd);
- map out = (map)SCR::Execute (.target.bash_output, cmd);
-// y2milestone ("Result: %1", out);
+ out = (map)SCR::Execute (.target.bash_output, cmd);
+ y2milestone ("Result: %1", out);
return out["exit"]:-1 == 0;
}
@@ -93,8 +132,9 @@
* @param symlinks a map of resolved symlinks
* @return boolean true on success
*/
-boolean CopySymlinkedImage (map symlinks) {
+boolean CopySymlinkedImage (map symlinks, integer progress_start) {
integer index = 0;
+ integer progress_step = (100-progress_start) * index / size (symlinks);
foreach (string link, string target, symlinks, {
index = index + 1;
Progress::Title (sformat (_("Copying %1..."), link));
@@ -110,8 +150,10 @@
components[size(components) - 1] = "";
link = mergestring (components, "/");
*/
- FileSystemCopy ("/" + target, sformat ("%1/%2", Installation::destdir, link));
- Progress::Step (10 + (90 * index / size (symlinks)));
+ integer progress_done = progress_start + progress_step;
+ FileSystemCopy ("/" + target, sformat ("%1/%2", Installation::destdir, link), progress_start, progress_done);
+ progress_start = progress_done;
+ Progress::Step (progress_start);
});
return true;
}
@@ -120,10 +162,10 @@
* Copy root image to hard disk
* @return boolean true on success
*/
-boolean CopyRootImage () {
+boolean CopyRootImage (integer progress_start, integer progress_finish) {
string tmpdir = (string)SCR::Read (.target.tmpdir);
SCR::Execute (.target.bash, sformat ("/bin/cp -a %1/etc %2", Installation::destdir, tmpdir));
- FileSystemCopy ("/", Installation::destdir);
+ FileSystemCopy ("/", Installation::destdir, progress_start, progress_finish);
SCR::Execute (.target.bash, sformat ("/bin/cp -a %1/etc %2", tmpdir, Installation::destdir));
return true;
}
@@ -133,7 +175,7 @@
_("Copying the Live Image to Hard Disk"),
"", // Initial progress bar label - not empty (reserve space!)
100,
- [ _("Copy root filesystem"), _("Evaluate additional filesystems"), _("Copy additional filesystems") ],
+ [ _("Evaluate filesystems to copy"), _("Copy root filesystem"), _("Copy additional filesystems") ],
[],
"");
@@ -141,13 +183,17 @@
Wizard::DisableNextButton ();
Progress::NextStage ();
-Progress::Title (_("Copying root filesystem..."));
-CopyRootImage ();
-Progress::NextStageStep (5);
-Progress::Title (_("Evaluating additional filesystems..."));
+Progress::Title (_("Evaluating filesystems to copy..."));
map copy_map = LinksMap (LinksToCopyList ());
+Progress::NextStageStep (5);
+Progress::Title (_("Copying root filesystem..."));
+
+integer steps = size (copy_map) + 1;
+integer step_size = 95 / steps;
+
+CopyRootImage (5, 5 + step_size);
Progress::NextStageStep (10);
-CopySymlinkedImage (copy_map);
+CopySymlinkedImage (copy_map, 5 + step_size);
Progress::Finish();
Progress::Title (_("Finished."));
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-live-installer-2.15.1/src/inst_live_simple_proposal.ycp new/yast2-live-installer-2.15.2/src/inst_live_simple_proposal.ycp
--- old/yast2-live-installer-2.15.1/src/inst_live_simple_proposal.ycp 2007-07-30 17:20:44.000000000 +0200
+++ new/yast2-live-installer-2.15.2/src/inst_live_simple_proposal.ycp 2007-08-01 10:40:44.000000000 +0200
@@ -15,8 +15,10 @@
textdomain "live-installer";
Wizard::SetContents (
+ // dialog caption
_("Installation settings"),
- `Label (_("Analyzing the system")),
+ // label
+ `Label (_("Analyzing the system...")),
"",
false,
false
@@ -36,6 +38,8 @@
]
);
+term contents = `VBox ();
+
// partitioning summary
map tm = Storage::GetTargetMap ();
@@ -60,54 +64,46 @@
{
used = (100*used)/(used+free);
disks = add (disks, sformat (
- _("<li>Use %1%% of %2 for Linux</li>"), used, data["name"]:"disk"));
+ _("Use %1%% of disk %2 for Linux"), used, data["name"]:""));
}
else
{
- disks = add (disks, sformat (_("<li>Do not use %1</li>"), data["name"]:"disk"));
+ disks = add (disks, sformat (_("Do not use disk %1"), data["name"]:""));
}
});
-string partitioning = HTML::List (disks);
+contents = add (contents, `Left (`Heading (_("Partitioning"))));
+foreach (string disk, disks, {
+ contents = add (contents, `Left (`Label (disk)));
+});
// end of partitioning summary
-
// bootloader summary
-string booting = "booting";
-string lt = BootCommon::getLoaderType (false);
-string ln = BootCommon::getLoaderName (lt, `summary);
+string timeout = BootCommon::globals["timeout"]:"";
-list<string> locations = [];
-
-if (BootCommon::globals["boot_boot"]:"" == "true")
- locations = add(locations, BootCommon::BootPartitionDevice);
-if (BootCommon::globals["boot_root"]:"" == "true")
- locations = add(locations, BootCommon::RootPartitionDevice);
-if (BootCommon::globals["boot_mbr"]:"" == "true")
- locations = add(locations, BootCommon::mbrDisk);
-if (haskey (BootCommon::globals, "boot_custom"))
- locations = add(locations, BootCommon::globals["boot_custom"]:"");
-
-if (size (locations) == 0 || lt == "none")
- booting = _("Do not install bootloader");
-else
-{
- booting = sformat (_("Install %1 to %2"), ln, mergestring (locations, ", "));
-}
+boolean other = false;
+foreach (map s, BootCommon::sections, {
+ if (s["type"]:"" == "other")
+ other = true;
+});
-booting = HTML::List ([booting]);
+contents = add (contents, `VSpacing (2));
+contents = add (contents, `Left (`Heading (_("System start-up"))));
+contents = add (contents, `Left (`Label (other
+ ? _("Ask whether to boot Linux or existing system")
+ : _("Boot only Linux" ))));
+contents = add (contents, `Left (`Label (sformat (_("System start time-out: %1 seconds"), timeout))));
-// FIXME was copy-pasted from GRUB, adaptability on anything but GRUB or LILO may be problematic
// end of bootloader summary
-string summary = sformat (_("<h1>Partitioning</h1>%1<h1>Booting</h1>%2"),
- partitioning, booting);
-
-term contents = `VBox (
- // TRANSLATORS: progress message
- `RichText (summary),
- `PushButton (`id (`change), _("Change Installation Settings"))
+contents = `HBox (`HSpacing (2), contents, `HSpacing (2));
+contents = `VBox (
+ `VSpacing (1),
+ contents,
+ `VStretch (),
+ `PushButton (`id (`change), _("Change Installation Settings")),
+ `VSpacing (1)
);
Wizard::SetContents (
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-live-installer-2.15.1/src/inst_live_welcome.ycp new/yast2-live-installer-2.15.2/src/inst_live_welcome.ycp
--- old/yast2-live-installer-2.15.1/src/inst_live_welcome.ycp 2007-07-30 14:20:10.000000000 +0200
+++ new/yast2-live-installer-2.15.2/src/inst_live_welcome.ycp 2007-08-01 10:19:14.000000000 +0200
@@ -11,12 +11,12 @@
textdomain "live-installer";
Wizard::SetContents (
+ // dialog caption, %1 is product name (typically openSUSE)
sformat (_("Welcome to %1 installation"), Product::name),
- // TRANSLATORS: progress message
- `Label (sformat (_("YaST will install %1
-on your computer. You will be asked several
-questions before the installation will
-start."), Product::name)),
+ // wellcome label, %1 is product name
+ `Label (sformat (_("Your %1 will be installed quickly
+and easily in a few steps.
+You will only have to answer some questions."), Product::name)),
"",
GetInstArgs::enable_back(),
GetInstArgs::enable_next()
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-live-installer-2.15.1/VERSION new/yast2-live-installer-2.15.2/VERSION
--- old/yast2-live-installer-2.15.1/VERSION 2007-07-30 17:28:13.000000000 +0200
+++ new/yast2-live-installer-2.15.2/VERSION 2007-08-02 13:12:56.000000000 +0200
@@ -1 +1 @@
-2.15.1
+2.15.2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org