Hello community,
here is the log from the commit of package yast2-installation for
openSUSE:Factory checked in at 2014-01-09 17:26:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-installation (Old)
and /work/SRC/openSUSE:Factory/.yast2-installation.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-installation"
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-installation/yast2-installation.changes
2013-12-19 12:38:26.000000000 +0100
+++
/work/SRC/openSUSE:Factory/.yast2-installation.new/yast2-installation.changes
2014-01-09 17:26:58.000000000 +0100
@@ -1,0 +2,12 @@
+Wed Jan 8 12:46:34 UTC 2014 - [email protected]
+
+- added capability to install OEM images (fate#316326)
+- added handling Release Notes button (fate#314695)
+
+-------------------------------------------------------------------
+Fri Dec 20 09:32:08 UTC 2013 - [email protected]
+
+- Add abort and fail hooks for installation
+- 3.1.18
+
+-------------------------------------------------------------------
Old:
----
yast2-installation-3.1.17.tar.bz2
New:
----
yast2-installation-3.1.18.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-installation.spec ++++++
--- /var/tmp/diff_new_pack.PCrqMj/_old 2014-01-09 17:26:59.000000000 +0100
+++ /var/tmp/diff_new_pack.PCrqMj/_new 2014-01-09 17:26:59.000000000 +0100
@@ -1,7 +1,7 @@
#
# spec file for package yast2-installation
#
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: yast2-installation
-Version: 3.1.17
+Version: 3.1.18
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
++++++ yast2-installation-3.1.17.tar.bz2 -> yast2-installation-3.1.18.tar.bz2
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/doc/features/examples/control.oem-image.xml.example
new/yast2-installation-3.1.18/doc/features/examples/control.oem-image.xml.example
---
old/yast2-installation-3.1.17/doc/features/examples/control.oem-image.xml.example
1970-01-01 01:00:00.000000000 +0100
+++
new/yast2-installation-3.1.18/doc/features/examples/control.oem-image.xml.example
2014-01-08 15:45:47.000000000 +0100
@@ -0,0 +1,543 @@
+<?xml version="1.0"?>
+<productDefines xmlns="http://www.suse.com/1.0/yast2ns"
+ xmlns:config="http://www.suse.com/1.0/configns">
+
+<!--
+This is an example of a control file, which deploys an OEM image instead of
+installing system from packages
+
+Important changes to standard control file:
+- removed all stuff related to package installation (package selection,
rpmcopy)
+- removed configuration of stuff which is already in the image
+- added oem_image variable to globals section
+
+Workflow consists of
+- installation preparation (language, EULA, network, disk activation)
+- selecting full disk for deployment
+- preparing progress
+- deployment of the image
+- inst_finish steps are set to empty (to reuse reboot time-out)
+-->
+
+<!--
+Work around for the text domain
+textdomain="control"
+-->
+
+ <textdomain>control</textdomain>
+
+ <globals>
+ <!-- OEM image to be bare deployed to the system -->
+ <oem_image>/image.raw</oem_image>
+
+ <additional_kernel_parameters></additional_kernel_parameters>
+ <enable_autologin config:type="boolean">true</enable_autologin>
+ <enable_firewall config:type="boolean">true</enable_firewall>
+ <firewall_enable_ssh config:type="boolean">false</firewall_enable_ssh>
+
+ <!-- FATE #303875, see
/etc/sysconfig/network/dhcp:WRITE_HOSTNAME_TO_HOSTS -->
+ <write_hostname_to_hosts
config:type="boolean">false</write_hostname_to_hosts>
+ <!-- FATE #307555, see /etc/sysconfig/boot:RUN_PARALLEL -->
+ <run_init_scripts_in_parallel
config:type="boolean">true</run_init_scripts_in_parallel>
+
+ <incomplete_translation_treshold>95</incomplete_translation_treshold>
+ <inform_about_suboptimal_distribution
config:type="boolean">true</inform_about_suboptimal_distribution>
+ <skip_language_dialog config:type="boolean">true</skip_language_dialog>
+ <ui_mode>simple</ui_mode>
+ <enable_clone config:type="boolean">false</enable_clone>
+ <enable_register_hwdata
config:type="boolean">true</enable_register_hwdata>
+ <enable_register_optional
config:type="boolean">true</enable_register_optional>
+ <display_register_forcereg
config:type="boolean">true</display_register_forcereg>
+ <disable_register_w3m config:type="boolean">true</disable_register_w3m>
+ <register_monthly config:type="boolean">false</register_monthly>
+ <manual_online_update config:type="boolean">true</manual_online_update>
+
+ <!-- bnc #359115 comment #14 -->
+ <root_password_as_first_user
config:type="boolean">true</root_password_as_first_user>
+ <root_password_ca_check
config:type="boolean">false</root_password_ca_check>
+
+ <!-- Offer online repositories feature in the installation -->
+ <show_online_repositories
config:type="boolean">true</show_online_repositories>
+ <online_repositories_default
config:type="boolean">true</online_repositories_default>
+
+ <!-- Guide user to drivers.suse.com if HW was not found
(FATE#312875)-->
+ <show_drivers_info config:type="boolean">false</show_drivers_info>
+
+ <!-- Offer add-ons in the installation -->
+ <show_addons config:type="boolean">true</show_addons>
+ <addons_default config:type="boolean">false</addons_default>
+
+ <!-- FATE #301937, Save /root content from the installation system to
the installed system -->
+ <save_instsys_content config:type="list">
+ <save_instsys_item>
+ <instsys_directory>/root/</instsys_directory>
+ <system_directory>/root/inst-sys/</system_directory>
+ </save_instsys_item>
+ </save_instsys_content>
+
+ <!-- FATE #305019: configure the files to copy from a previous
installation -->
+ <copy_to_system config:type="list">
+ <!-- FATE #300421: Import ssh keys from previous installations -->
+ <copy_to_system_item>
+ <id>import_ssh_keys</id>
+ <copy_to_dir>/</copy_to_dir>
+ <!-- Files that must be all present on the previous system -->
+ <mandatory_files config:type="list">
+ <file_item>/etc/ssh/ssh_host_key</file_item>
+ <file_item>/etc/ssh/ssh_host_key.pub</file_item>
+ </mandatory_files>
+ <!-- Files thay may be present -->
+ <optional_files config:type="list">
+ <file_item>/etc/ssh/ssh_host_dsa_key</file_item>
+ <file_item>/etc/ssh/ssh_host_dsa_key.pub</file_item>
+ <file_item>/etc/ssh/ssh_host_rsa_key</file_item>
+ <file_item>/etc/ssh/ssh_host_rsa_key.pub</file_item>
+ <file_item>/etc/ssh/ssh_host_ecdsa_key</file_item>
+ <file_item>/etc/ssh/ssh_host_ecdsa_key.pub</file_item>
+ </optional_files>
+ </copy_to_system_item>
+
+ <!-- FATE #120103: Import Users From Existing Partition -->
+ <copy_to_system_item>
+ <id>import_users</id>
+ <copy_to_dir>/var/lib/YaST2/imported/userdata/</copy_to_dir>
+ <!-- Files that must be all present on the previous system -->
+ <mandatory_files config:type="list">
+ <file_item>/etc/shadow</file_item>
+ <file_item>/etc/passwd</file_item>
+ <file_item>/etc/login.defs</file_item>
+ <file_item>/etc/group</file_item>
+ </mandatory_files>
+ </copy_to_system_item>
+ </copy_to_system>
+
+ <!-- FATE #303395, Kexec instead of reboot (default 'false') -->
+ <kexec_reboot config:type="boolean">true</kexec_reboot>
+
+ <!--
+ BNC #487565, Some AC steps might create their own UI (rpmcopy, for
instance)
+ and AC should just recreate its UI without reporting an error.
+ Each ac_item here matches inst_* resp. *_proposal from
automatic_configuration->ac_item
+ -->
+ <ac_redraw_and_ignore config:type="list">
+ <ac_item>inst_rpmcopy_secondstage</ac_item>
+ </ac_redraw_and_ignore>
+
+ <!-- Configuration for inst_automatic_configuration script -->
+ <automatic_configuration config:type="list">
+ <!--
+ Adding inst_hostname client here, needed to generate random
+ hostname in automatic config (and for 127.0.0.2 hack) (#383336)
+ Must be called before inst_netprobe however, it cannot override
it later on
+ -->
+ <ac_step>
+ <unique_id>ac_1</unique_id>
+ <text_id>ac_1</text_id>
+ <icon>yast-sw_single</icon>
+ <type>scripts</type>
+ <ac_items config:type="list">
+ <ac_item>initialization</ac_item>
+ <ac_item>hostname</ac_item>
+ <ac_item>netprobe</ac_item>
+ <ac_item>rpmcopy_secondstage</ac_item>
+ </ac_items>
+ </ac_step>
+ <!-- network proposal -->
+ <ac_step>
+ <unique_id>ac_2</unique_id>
+ <text_id>ac_2</text_id>
+ <icon>yast-network</icon>
+ <type>proposals</type>
+ <ac_items config:type="list">
+ <ac_item>lan</ac_item>
+ <ac_item>general</ac_item>
+ <ac_item>isdn</ac_item>
+ <ac_item>remote</ac_item>
+ <ac_item>firewall</ac_item>
+ </ac_items>
+ </ac_step>
+ <!-- hardware proposal -->
+ <ac_step>
+ <unique_id>ac_3</unique_id>
+ <text_id>ac_3</text_id>
+ <icon>yast-hwinfo</icon>
+ <type>proposals</type>
+ <ac_items config:type="list">
+ <!-- <ac_item>x11</ac_item> (bnc#441404) -->
+ <ac_item>printer</ac_item>
+ <ac_item>sound</ac_item>
+ <ac_item>tv</ac_item>
+ </ac_items>
+ </ac_step>
+ <!-- finishing configuration -->
+ <ac_step>
+ <unique_id>ac_4</unique_id>
+ <text_id>ac_4</text_id>
+ <icon>yast-sysconfig</icon>
+ <type>scripts</type>
+ <ac_items config:type="list">
+ <ac_item>addon_update_sources</ac_item>
+ <ac_item>extrasources</ac_item>
+ <ac_item>save_hardware_status</ac_item>
+ </ac_items>
+ </ac_step>
+ </automatic_configuration>
+
+ <!-- FATE: #304865: Enhance YaST Modules to cooperate better handling
the product licenses -->
+
<base_product_license_directory>/etc/YaST2/licenses/base/</base_product_license_directory>
+
+ <!-- #303798: YaST2 runlevel editor: offer easy enablement and
configuration of runlevel 4 -->
+ <rle_offer_rulevel_4 config:type="boolean">false</rle_offer_rulevel_4>
+
+ <!-- bnc #431259 -->
+ <default_ntp_setup config:type="boolean">true</default_ntp_setup>
+
+ <!-- FATE: #303893, #305588: Default to enabled kdump -->
+ <enable_kdump config:type="boolean">true</enable_kdump>
+
+ <!-- to debug deploying, set to 'true' -->
+ <debug_deploying config:type="boolean">false</debug_deploying>
+ </globals>
+
+ <software>
+ <delete_old_packages config:type="boolean">true</delete_old_packages>
+ <selection_type config:type="symbol">auto</selection_type>
+
+ <!-- Bugzilla #327791, if not set, default is true -->
+ <online_repos_preselected
config:type="boolean">false</online_repos_preselected>
+
+ <!-- FATE #300898, List of external sources accesible during the
installation time -->
+
<external_sources_link>http://download.opensuse.org/YaST/Repos/openSUSE_131_Servers.xml</external_sources_link>
+
+ <dropped_packages></dropped_packages>
+ <extra_urls config:type="list">
+ <!-- Default update repository, bnc #381360 -->
+ <extra_url>
+ <baseurl>http://download.opensuse.org/update/13.1/</baseurl>
+ <alias>repo-update</alias>
+ <name>openSUSE-13.1-Update</name>
+ <prod_dir>/</prod_dir>
+ <enabled config:type="boolean">true</enabled>
+ <autorefresh config:type="boolean">true</autorefresh>
+ <priority config:type="integer">99</priority>
+ </extra_url>
+ <extra_url>
+
<baseurl>http://download.opensuse.org/update/13.1-non-oss/</baseurl>
+ <alias>repo-update-non-oss</alias>
+ <name>openSUSE-13.1-Update-Non-Oss</name>
+ <prod_dir>/</prod_dir>
+ <enabled config:type="boolean">true</enabled>
+ <autorefresh config:type="boolean">true</autorefresh>
+ <priority config:type="integer">99</priority>
+ </extra_url>
+
+ <!-- Replacement for EXTRAURLS and OPTIONALURLS -->
+ <extra_url>
+
<baseurl>http://download.opensuse.org/distribution/13.1/repo/oss/</baseurl>
+ <alias>repo-oss</alias>
+ <name>openSUSE-13.1-Oss</name>
+ <prod_dir>/</prod_dir>
+ <enabled config:type="boolean">true</enabled>
+ <autorefresh config:type="boolean">true</autorefresh>
+ <priority config:type="integer">99</priority>
+ </extra_url>
+ <extra_url>
+
<baseurl>http://download.opensuse.org/distribution/13.1/repo/non-oss/</baseurl>
+ <alias>repo-non-oss</alias>
+ <name>openSUSE-13.1-Non-Oss</name>
+ <prod_dir>/</prod_dir>
+ <enabled config:type="boolean">true</enabled>
+ <autorefresh config:type="boolean">true</autorefresh>
+ <priority config:type="integer">99</priority>
+ </extra_url>
+ <extra_url>
+
<baseurl>http://download.opensuse.org/debug/distribution/13.1/repo/oss/</baseurl>
+ <alias>repo-debug</alias>
+ <name>openSUSE-13.1-Debug</name>
+ <prod_dir>/</prod_dir>
+ <enabled config:type="boolean">false</enabled>
+ <autorefresh config:type="boolean">true</autorefresh>
+ <priority config:type="integer">99</priority>
+ </extra_url>
+ <extra_url>
+
<baseurl>http://download.opensuse.org/debug/update/13.1/</baseurl>
+ <alias>repo-debug-update</alias>
+ <name>openSUSE-13.1-Update-Debug</name>
+ <prod_dir>/</prod_dir>
+ <enabled config:type="boolean">false</enabled>
+ <autorefresh config:type="boolean">true</autorefresh>
+ <priority config:type="integer">99</priority>
+ </extra_url>
+ <extra_url>
+
<baseurl>http://download.opensuse.org/debug/update/13.1-non-oss/</baseurl>
+ <alias>repo-debug-update-non-oss</alias>
+ <name>openSUSE-13.1-Update-Debug-Non-Oss</name>
+ <prod_dir>/</prod_dir>
+ <enabled config:type="boolean">false</enabled>
+ <autorefresh config:type="boolean">true</autorefresh>
+ <priority config:type="integer">99</priority>
+ </extra_url>
+
+
+ <extra_url>
+
<baseurl>http://download.opensuse.org/source/distribution/13.1/repo/oss/</baseurl>
+ <alias>repo-source</alias>
+ <name>openSUSE-13.1-Source</name>
+ <prod_dir>/</prod_dir>
+ <enabled config:type="boolean">false</enabled>
+ <autorefresh config:type="boolean">true</autorefresh>
+ <priority config:type="integer">99</priority>
+ </extra_url>
+ </extra_urls>
+
+ <!-- BNC #424678, Definition of supported desktops -->
+ <supported_desktops config:type="list">
+
+ <one_supported_desktop>
+ <name>gnome</name>
+ <desktop>gnome</desktop>
+ <label_id>desktop_gnome</label_id>
+ <logon>gdm</logon>
+ <cursor>DMZ</cursor>
+ <packages>gdm branding-openSUSE</packages>
+ <order config:type="integer">1</order>
+ <patterns>gnome x11 base</patterns>
+ <icon>pattern-gnome</icon>
+ </one_supported_desktop>
+
+ <one_supported_desktop>
+ <name>kde</name>
+ <!-- BNC #381821, BNC #438212, BNC #667408, BNC #763142 -->
+ <desktop>kde-plasma</desktop>
+ <label_id>desktop_kde</label_id>
+ <logon>kdm</logon>
+ <cursor>DMZ</cursor>
+ <packages>kdm branding-openSUSE</packages>
+ <order config:type="integer">1</order>
+ <patterns>kde x11 base</patterns>
+ <icon>pattern-kde4</icon>
+ </one_supported_desktop>
+
+ <one_supported_desktop>
+ <name>xfce</name>
+ <!-- BNC #667408 -->
+ <desktop>xfce</desktop>
+ <label_id>desktop_xfce</label_id>
+ <logon>lightdm</logon>
+ <cursor>DMZ</cursor>
+ <packages>lightdm branding-openSUSE</packages>
+ <order config:type="integer">4</order>
+ <patterns>xfce x11 base</patterns>
+ <icon>pattern-xfce</icon>
+ </one_supported_desktop>
+
+ <!-- FaTE #307729 LXDE -->
+ <one_supported_desktop>
+ <name>lxde</name>
+ <!-- BNC #667408 -->
+ <desktop>lxde</desktop>
+ <label_id>desktop_lxde</label_id>
+ <logon>lxdm</logon>
+ <cursor>DMZ</cursor>
+ <packages>lxde-common branding-openSUSE</packages>
+ <order config:type="integer">5</order>
+ <patterns>lxde x11 base</patterns>
+ <icon>pattern-lxde</icon>
+ </one_supported_desktop>
+
+ <one_supported_desktop>
+ <name>min_x</name>
+ <desktop>twm</desktop>
+ <label_id>desktop_min_x</label_id>
+ <logon>xdm</logon>
+ <cursor>DMZ</cursor>
+ <packages>xorg-x11-server branding-openSUSE</packages>
+ <order config:type="integer">6</order>
+ <patterns>x11 base</patterns>
+ <icon>yast-x11</icon>
+ </one_supported_desktop>
+
+ <one_supported_desktop>
+ <name>e17</name>
+ <desktop>e17</desktop>
+ <label_id>desktop_e17</label_id>
+ <logon>lightdm</logon>
+ <cursor>DMZ</cursor>
+ <packages>lightdm branding-openSUSE</packages>
+ <order config:type="integer">7</order>
+ <patterns>e17 x11 base</patterns>
+ <icon>pattern-e17</icon>
+ </one_supported_desktop>
+
+ <one_supported_desktop>
+ <name>textmode</name>
+ <desktop>twm</desktop>
+ <label_id>desktop_textmode</label_id>
+ <logon>xdm</logon>
+ <cursor>DMZ</cursor>
+ <packages>branding-openSUSE</packages>
+ <order config:type="integer">8</order>
+ <patterns>minimal_base minimal_base-conflicts</patterns>
+ <icon>yast-sshd</icon>
+ </one_supported_desktop>
+
+ </supported_desktops>
+
+ <!-- FaTE #306967 KDE is preselected desktop -->
+ <default_desktop>kde</default_desktop>
+
+ </software>
+
+ <partitioning>
+ <try_separate_home config:type="boolean">true</try_separate_home>
+ <limit_try_home>7GB</limit_try_home>
+ <root_space_percent>40</root_space_percent>
+ <root_base_size>5GB</root_base_size>
+ <root_max_size>20GB</root_max_size>
+ <proposal_lvm config:type="boolean">false</proposal_lvm>
+ <vm_keep_unpartitioned_region
config:type="boolean">false</vm_keep_unpartitioned_region>
+ <vm_desired_size>15GB</vm_desired_size>
+ <vm_home_max_size>25GB</vm_home_max_size>
+ <btrfs_increase_percentage
config:type="integer">100</btrfs_increase_percentage>
+ </partitioning>
+
+ <network>
+ <force_static_ip config:type="boolean">false</force_static_ip>
+ <network_manager>laptop</network_manager>
+ <startmode>ifplugd</startmode>
+ </network>
+
+ <clone_modules config:type="list">
+ <clone_module>language</clone_module>
+ <clone_module>keyboard</clone_module>
+ <clone_module>timezone</clone_module>
+ <clone_module>users</clone_module>
+ <clone_module>networking</clone_module>
+ <clone_module>firewall</clone_module>
+ <clone_module>host</clone_module>
+ <clone_module>routing</clone_module>
+ <clone_module>proxy</clone_module>
+ <clone_module>runlevel</clone_module>
+ <!-- <clone_module>x11</clone_module> (bnc#441404) -->
+ <clone_module>nis</clone_module>
+ <clone_module>ldap</clone_module>
+ <clone_module>printer</clone_module>
+ <clone_module>add-on</clone_module>
+ <clone_module>iscsi-client</clone_module>
+ <clone_module>software</clone_module>
+ <clone_module>partitioning</clone_module>
+ <clone_module>bootloader</clone_module>
+ <clone_module>kdump</clone_module>
+ <clone_module>ntp-client</clone_module>
+ </clone_modules>
+
+ <texts>
+ <congratulate>
+ <label>
+<p><b>Congratulations!</b></p>
+<p>The installation of openSUSE on your machine is complete.
+After clicking <b>Finish</b>, you can log in to the
system.</p>
+<p>Visit us at %1.</p>
+<p>Have a lot of fun!<br>Your openSUSE Development Team</p>
+ </label>
+ </congratulate>
+
+ <ac_1><label>Initialization...</label></ac_1>
+ <ac_2><label>Configuring network...</label></ac_2>
+ <ac_3><label>Configuring hardware...</label></ac_3>
+ <ac_4><label>Finishing configuration...</label></ac_4>
+
+ <!--
+ Desktop dialog label. It should not be wider than 75 characters.
+ Please try to keep the same number of lines, if possible
+ -->
+ <desktop_dialog><label>The desktop environment on your computer
provides the graphical user
+interface for your computer, as well as a suite of applications for
+email, Web browsing, office productivity, games, and utilities to
+manage your computer.
+
+openSUSE offers a choice of desktop environments. The most widely
+used desktop environments are GNOME and KDE, and they are equally
+supported under openSUSE. Both desktop environments are easy to use,
+highly integrated, and have an attractive look and feel. Each desktop
+environment has a distinct style, so personal taste determines which
+is the most appropriate desktop for you.</label></desktop_dialog>
+
+ <!-- Desktop dialog: desktop names -->
+ <desktop_gnome><label>GNOME Desktop</label></desktop_gnome>
+ <desktop_kde><label>KDE Desktop</label></desktop_kde>
+ <desktop_xfce><label>XFCE Desktop</label></desktop_xfce>
+ <desktop_lxde><label>LXDE Desktop</label></desktop_lxde>
+ <desktop_min_x><label>Minimal X Window</label></desktop_min_x>
+ <desktop_e17><label>Enlightenment Desktop</label></desktop_e17>
+ <desktop_textmode><label>Minimal Server Selection (Text
Mode)</label></desktop_textmode>
+
+ </texts>
+ <workflows config:type="list">
+
+ <!-- Stage: Initial, Mode: Installation -->
+ <workflow>
+ <defaults>
+ <archs>all</archs>
+ <enable_back>yes</enable_back>
+ <enable_next>yes</enable_next>
+ </defaults>
+ <label>Preparation</label>
+ <mode>installation</mode>
+ <stage>initial</stage>
+ <modules config:type="list">
+ <module>
+ <label>Welcome</label>
+ <name>complex_welcome</name>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ <arguments>
+ <first_run>yes</first_run>
+ </arguments>
+ <retranslate config:type="boolean">true</retranslate>
+ </module>
+ <module>
+ <label>Network Activation</label>
+ <name>lan</name>
+ </module>
+ <module>
+ <label>Disk Activation</label>
+ <name>disks_activate</name>
+ </module>
+ <module>
+ <label>System Analysis</label>
+ <name>system_analysis</name>
+ </module>
+ <module>
+ <label>Disk</label>
+ <name>disk_for_image</name>
+ <enable_back>yes</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ <!-- FATE #303860: Provide consistent progress during
installation -->
+ <module>
+ <label>Perform Installation</label>
+ <name>prepareprogress</name>
+ </module>
+ <!-- Installation from images -->
+ <module>
+ <label>Perform Installation</label>
+ <name>deploy_image</name>
+ </module>
+ <module>
+ <label>Perform Installation</label>
+ <name>finish</name>
+ </module>
+ </modules>
+ </workflow>
+ </workflows>
+
+ <!-- must be non-empty in order to be used -->
+ <inst_finish_stages config:type="list">
+ <inst_finish_stage>
+ <label>Reboot...</label>
+ <steps config:type="list">
+ </steps>
+ </inst_finish_stage>
+ </inst_finish_stages>
+</productDefines>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/package/yast2-installation.changes
new/yast2-installation-3.1.18/package/yast2-installation.changes
--- old/yast2-installation-3.1.17/package/yast2-installation.changes
2013-12-18 16:05:32.000000000 +0100
+++ new/yast2-installation-3.1.18/package/yast2-installation.changes
2014-01-08 15:45:47.000000000 +0100
@@ -1,4 +1,16 @@
-------------------------------------------------------------------
+Wed Jan 8 12:46:34 UTC 2014 - [email protected]
+
+- added capability to install OEM images (fate#316326)
+- added handling Release Notes button (fate#314695)
+
+-------------------------------------------------------------------
+Fri Dec 20 09:32:08 UTC 2013 - [email protected]
+
+- Add abort and fail hooks for installation
+- 3.1.18
+
+-------------------------------------------------------------------
Thu Dec 12 14:50:32 UTC 2013 - [email protected]
- control files have been moved to a separate package/git repo
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/package/yast2-installation.spec
new/yast2-installation-3.1.18/package/yast2-installation.spec
--- old/yast2-installation-3.1.17/package/yast2-installation.spec
2013-12-18 16:05:32.000000000 +0100
+++ new/yast2-installation-3.1.18/package/yast2-installation.spec
2014-01-08 15:45:47.000000000 +0100
@@ -17,7 +17,7 @@
Name: yast2-installation
-Version: 3.1.17
+Version: 3.1.18
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/src/clients/inst_deploy_image.rb
new/yast2-installation-3.1.18/src/clients/inst_deploy_image.rb
--- old/yast2-installation-3.1.17/src/clients/inst_deploy_image.rb
2013-12-18 16:05:32.000000000 +0100
+++ new/yast2-installation-3.1.18/src/clients/inst_deploy_image.rb
2014-01-08 15:45:47.000000000 +0100
@@ -33,16 +33,26 @@
Yast.import "Report"
Yast.import "ProductFeatures"
Yast.import "PackagesUI"
+ Yast.import "Misc"
textdomain "installation"
- # There is nothing to do
- if !Installation.image_installation
- Builtins.y2milestone("No images have been selected")
- # bnc #395030
- # Use less memory
- ImageInstallation.FreeInternalVariables
- return :auto
+ # OEM image if target disk is defined
+ oem_image = !InstData.image_target_disk.nil?
+
+ if oem_image
+ path = ProductFeatures.GetStringFeature("globals", "oem_image")
+ ImageInstallation.PrepareOEMImage(path)
+ Misc.boot_msg = _("The system will reboot now...")
+ else
+ # There is nothing to do
+ if !Installation.image_installation
+ Builtins.y2milestone("No images have been selected")
+ # bnc #395030
+ # Use less memory
+ ImageInstallation.FreeInternalVariables
+ return :auto
+ end
end
Builtins.y2milestone("Deploying images")
@@ -139,15 +149,15 @@
Wizard.SetTitleIcon("yast-inst-mode")
- # Set where the images will be downloaded
- SourceManager.InstInitSourceMoveDownloadArea
-
- # Deploy the images
- @dep_ret = ImageInstallation.DeployImages(
- @images,
- Installation.destdir,
- nil
- )
+ # in case of OEM image deployment, there is no disk available
+ if oem_image
+ target = InstData.image_target_disk
+ else
+ # Set where the images will be downloaded
+ SourceManager.InstInitSourceMoveDownloadArea
+ target = Installation.destdir
+ end
+ @dep_ret = ImageInstallation.DeployImages(@images, target, nil)
Builtins.y2milestone("DeployImages returned: %1", @dep_ret)
# BNC #444209
@@ -168,9 +178,13 @@
# Load the libzypp state from the system (with images deployed)
PackageCallbacks.RegisterEmptyProgressCallbacks
- Pkg.TargetInitialize(Installation.destdir)
- Pkg.TargetLoad
- PackageCallbacks.RestorePreviousProgressCallbacks
+ if oem_image
+ #TODO later when adding more functionality: mount the deployed image
for inst_finish
+ else
+ Pkg.TargetInitialize(Installation.destdir)
+ Pkg.TargetLoad
+ PackageCallbacks.RestorePreviousProgressCallbacks
+ end
# Restore the states stored by StoreAllChanges()
if ImageInstallation.RestoreAllChanges != true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/src/clients/inst_disk_for_image.rb
new/yast2-installation-3.1.18/src/clients/inst_disk_for_image.rb
--- old/yast2-installation-3.1.17/src/clients/inst_disk_for_image.rb
1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-installation-3.1.18/src/clients/inst_disk_for_image.rb
2014-01-08 15:45:47.000000000 +0100
@@ -0,0 +1,110 @@
+# encoding: utf-8
+
+#
------------------------------------------------------------------------------
+# Copyright (c) 2013 Novell, Inc. All Rights Reserved.
+#
+#
+# This program is free software; you can redistribute it and/or modify it under
+# the terms of version 2 of the GNU General Public License 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; if not, contact Novell, Inc.
+#
+# To contact Novell about this file by physical or electronic mail, you may
find
+# current contact information at www.novell.com.
+#
------------------------------------------------------------------------------
+#
+# Summary: Ask for disk to deploy image to
+#
+
+module Yast
+ # Asks for disk to deploy an image to.
+ # Useful for OEM image installation (replacing contents of the full disk),
+ # not for regular installation process
+ class InstDiskForImageClient < Client
+ def main
+ Yast.import "UI"
+
+ textdomain "installation"
+
+ Yast.import "Popup"
+ Yast.import "GetInstArgs"
+ Yast.import "Wizard"
+ Yast.import "Storage"
+ Yast.import "InstData"
+
+ @test_mode = WFM.Args.include?("test")
+
+ show_disk_for_image_dialog
+
+ ret = nil
+ disk = nil
+
+ continue_buttons = [:next, :back, :close, :abort]
+ while !continue_buttons.include?(ret) do
+ ret = UI.UserInput
+
+ if ret == :next
+ disk = UI.QueryWidget(Id(:disk), :Value)
+ ret = WFM.CallFunction("inst_doit", [])
+ if ret == :next
+ InstData.image_target_disk = disk
+ else
+ ret = nil
+ end
+ elsif ret == :abort
+ ret = nil unless Popup.ConfirmAbort(:painless)
+ end
+ end
+
+ return ret
+ end
+
+
+ private
+
+ def disks_to_use
+ target_map = Storage.GetTargetMap
+ Builtins.y2milestone("TM: %1", target_map)
+ # FIXME: move blacklist to Storage
+ used_by_blacklist = [ :CT_DMRAID, :CT_DMMULTIPATH, :CT_MDPART ]
+ target_map.select { | key, value |
+ Storage.IsDiskType(value["type"]) && (! used_by_blacklist.include?
value["used_by"])
+ }.keys
+ end
+
+ def disk_for_image_dialog
+ MarginBox(1, 0.5,
+ VBox(
+ Left(Label(_("Select the disk to deploy the image to."))),
+ Left(Label(_("All data on the disk will be destroyed!!!"))),
+ VSpacing(0.5),
+ SelectionBox(Id(:disk), _("&Disk to Use"), disks_to_use)
+ )
+ )
+ end
+
+ def disk_for_image_help_text
+ _("Select the disk, which the image will be deployed to. " +
+ "All data on the disk will be destroyed and the disk will be " +
+ "partitioned as defined in the image.")
+ end
+
+ def show_disk_for_image_dialog
+ Wizard.SetContents(
+ _("Hard Disk for Image Deployment"),
+ disk_for_image_dialog,
+ disk_for_image_help_text,
+ GetInstArgs.enable_back || @test_mode,
+ GetInstArgs.enable_next || @test_mode
+ )
+ end
+ end
+end
+
+Yast::InstDiskForImageClient.new.main
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/src/clients/inst_prepareprogress.rb
new/yast2-installation-3.1.18/src/clients/inst_prepareprogress.rb
--- old/yast2-installation-3.1.17/src/clients/inst_prepareprogress.rb
2013-12-18 16:05:32.000000000 +0100
+++ new/yast2-installation-3.1.18/src/clients/inst_prepareprogress.rb
2014-01-08 15:45:47.000000000 +0100
@@ -126,6 +126,26 @@
}
]
+ # own workflow for OEM image deployment
+ if InstData.image_target_disk
+ @stages = [
+ {
+ "name" => "images",
+ "description" => _("Deploying Images..."),
+ "value" => 300000, # just make it longer than inst_finish,
TODO: better value later
+ "units" => :kb
+ },
+ {
+ "name" => "finish",
+ "description" => _("Finishing Basic Installation"),
+ # fixed value
+ "value" => 100,
+ "units" => :sec
+ }
+ ]
+
+ end
+
SlideShow.Setup(@stages)
@ret_val = :auto
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/src/clients/inst_proposal.rb
new/yast2-installation-3.1.18/src/clients/inst_proposal.rb
--- old/yast2-installation-3.1.17/src/clients/inst_proposal.rb 2013-12-18
16:05:32.000000000 +0100
+++ new/yast2-installation-3.1.18/src/clients/inst_proposal.rb 2014-01-08
15:45:47.000000000 +0100
@@ -1081,10 +1081,6 @@
Builtins.y2milestone("Not using CWM tabs...")
end
end
- if Stage.stage == "initial"
- # push button
- Wizard.ShowReleaseNotesButton(_("&Show Release Notes"), "rel_notes")
- end
nil
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/src/clients/inst_system_analysis.rb
new/yast2-installation-3.1.18/src/clients/inst_system_analysis.rb
--- old/yast2-installation-3.1.17/src/clients/inst_system_analysis.rb
2013-12-18 16:05:32.000000000 +0100
+++ new/yast2-installation-3.1.18/src/clients/inst_system_analysis.rb
2014-01-08 15:45:47.000000000 +0100
@@ -54,6 +54,7 @@
Yast.include self, "installation/misc.rb"
Yast.include self, "packager/storage_include.rb"
+ Yast.include self, "packager/load_release_notes.rb"
if Mode.autoinst || Mode.autoupgrade
Report.Import(
@@ -493,6 +494,13 @@
else
@packager_initialized = true
Packages.InitializeAddOnProducts
+ if load_release_notes(Packages.GetBaseSourceID)
+ # push button
+ Wizard.ShowReleaseNotesButton(_("Re&lease Notes..."), "rel_notes")
+ UI::SetReleaseNotes( { Product.name => @media_text } )
+ end
+
+
end
# reregister callbacks
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/src/clients/inst_worker_initial.rb
new/yast2-installation-3.1.18/src/clients/inst_worker_initial.rb
--- old/yast2-installation-3.1.17/src/clients/inst_worker_initial.rb
2013-12-18 16:05:32.000000000 +0100
+++ new/yast2-installation-3.1.18/src/clients/inst_worker_initial.rb
2014-01-08 15:45:47.000000000 +0100
@@ -101,9 +101,6 @@
WFM.CallFunction("inst_check_autoinst_mode", [])
end
- # Show the "Release Notes" button
- Wizard.ShowReleaseNotesButton(_("Re&lease Notes..."),
"show_release_notes")
-
@ret = nil
# --- Runing the installation workflow ---
@@ -117,6 +114,7 @@
# Installation has been aborted
if @ret == :abort
+ Hooks.run 'installation_aborted'
# tell linuxrc that we aborted
Linuxrc.WriteYaSTInf({ "Aborted" => "1" })
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/src/clients/installation.rb
new/yast2-installation-3.1.18/src/clients/installation.rb
--- old/yast2-installation-3.1.17/src/clients/installation.rb 2013-12-18
16:05:32.000000000 +0100
+++ new/yast2-installation-3.1.18/src/clients/installation.rb 2014-01-08
15:45:47.000000000 +0100
@@ -82,6 +82,8 @@
Report.Error(_("No workflow defined for this kind of installation."))
end
+ Hooks.run 'installation_failure' if @ret == false
+
Builtins.y2milestone("Installation ret: %1", @ret)
Builtins.y2milestone("=== installation ===")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-installation-3.1.17/src/modules/ImageInstallation.rb
new/yast2-installation-3.1.18/src/modules/ImageInstallation.rb
--- old/yast2-installation-3.1.17/src/modules/ImageInstallation.rb
2013-12-18 16:05:32.000000000 +0100
+++ new/yast2-installation-3.1.18/src/modules/ImageInstallation.rb
2014-01-08 15:45:47.000000000 +0100
@@ -472,6 +472,31 @@
# FIXME error checking
end
+ def DeployDiskImage(id, target)
+ InitRepo()
+
+ file = Ops.get_string(@_images, [id, "file"], "")
+ Builtins.y2milestone("Deploying disk image %1 (%2) on %3", id, file,
target)
+ file = Builtins.sformat("%1/%2", @_image_path, file)
+ # BNC #409927
+ # Checking files for signatures
+ image = Pkg.SourceProvideDigestedFile(@_repo, 1, file, false)
+
+ if image.nil?
+ Builtins.y2error("File %1 not found on media", file)
+ return false
+ end
+
+ Builtins.y2milestone("Copying the image")
+ cmd = Builtins.sformat("dd bs=1048576 if=%1 of=%2", image, target) #1MB
of block size
+ out = SCR.Execute(path(".target.bash_output"), cmd)
+ Builtins.y2milestone("Executing %1 returned %2", cmd, out)
+
+ RemoveTemporaryImage(image)
+
+ out["exit"] == 0
+ end
+
# Mount an image of the filesystem type
# Does not integrate to the system, mounts on target
# @param [String] id string the id of the image
@@ -579,6 +604,8 @@
return temporary ? MountFsImage(id, target) : DeployFsImage(id, target)
elsif type == "tar"
return DeployTarImage(id, target)
+ elsif type == "raw"
+ return DeployDiskImage(id, target)
end
Builtins.y2error("Unknown type of image: %1", type)
@@ -768,6 +795,13 @@
Ops.greater_or_equal(matching_patterns, patterns_in_imagesets)
end
+ def PrepareOEMImage(path)
+ AddImage(
+ "OEM", path, "raw"
+ )
+ @_image_order = [ path ]
+ end
+
# Find a set of images which suites selected patterns
# @param [Array<String>] patterns a list of patterns which are selected
# @return [Boolean] true on success or when media does not contain any
images
@@ -1482,6 +1516,7 @@
publish :function => :StoreAllChanges, :type => "void ()"
publish :function => :RestoreAllChanges, :type => "boolean ()"
publish :function => :FreeInternalVariables, :type => "void ()"
+ publish :function => :PrepareOEMImage, :type => "void ()"
end
ImageInstallation = ImageInstallationClass.new
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/yast2-installation-3.1.17/src/modules/InstData.rb
new/yast2-installation-3.1.18/src/modules/InstData.rb
--- old/yast2-installation-3.1.17/src/modules/InstData.rb 2013-12-18
16:05:32.000000000 +0100
+++ new/yast2-installation-3.1.18/src/modules/InstData.rb 2014-01-08
15:45:47.000000000 +0100
@@ -88,6 +88,11 @@
# <-- copy files -- config
+ # variables for OEM image installation
+
+ # disk to use for OEM image
+ @image_target_disk = nil
+
# EOF
end
@@ -104,6 +109,7 @@
publish :variable => :localDisabledProposals, :type => "list <string>"
publish :variable => :copy_files_use_control_file, :type => "boolean"
publish :variable => :additional_copy_files, :type => "list <map>"
+ publish :variable => :image_target_disk, :type => "string"
end
InstData = InstDataClass.new
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]