Hello community,

here is the log from the commit of package yast2-installation for 
openSUSE:Factory checked in at 2019-02-04 16:10:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-installation (Old)
 and      /work/SRC/openSUSE:Factory/.yast2-installation.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yast2-installation"

Mon Feb  4 16:10:02 2019 rev:415 rq:670588 version:4.1.35

Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-installation/yast2-installation.changes    
2018-12-31 09:44:15.886321007 +0100
+++ 
/work/SRC/openSUSE:Factory/.yast2-installation.new.28833/yast2-installation.changes
 2019-02-04 16:10:03.929986002 +0100
@@ -1,0 +2,22 @@
+Fri Feb  1 13:13:31 CET 2019 - [email protected]
+
+- Copying SSH keys from a privious installation into the new one:
+  Set the right file permissions for the SSH deamon (bnc#1122303).
+- 4.1.35
+
+-------------------------------------------------------------------
+Thu Jan  3 10:51:28 UTC 2019 - [email protected]
+
+- remove no longer used SCR agents without replacement:
+  sysconfig.boot, sysconfig.fam, etc.passwd and
+  install_inf workarounds for aliases and options
+- remove no longer used clients:
+  - inst_ask_online_update replaced by registration for SLE and
+  online_repos for openSUSE.
+  - inst_check_autoinst_mode dropped without replacement. Floppy
+  support was dropped.
+  - inst_scenarios replaced by system roles.
+  - update_wizard_steps replaced by direct call of code without
+    client
+
+-------------------------------------------------------------------

Old:
----
  yast2-installation-4.1.34.tar.bz2

New:
----
  yast2-installation-4.1.35.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ yast2-installation.spec ++++++
--- /var/tmp/diff_new_pack.FUBzNa/_old  2019-02-04 16:10:04.517985636 +0100
+++ /var/tmp/diff_new_pack.FUBzNa/_new  2019-02-04 16:10:04.517985636 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package yast2-installation
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX 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:        4.1.34
+Version:        4.1.35
 Release:        0
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
@@ -233,13 +233,8 @@
 %{yast_libdir}/transfer
 
 # agents
-%{yast_scrconfdir}/etc_passwd.scr
-%{yast_scrconfdir}/cfg_boot.scr
 %{yast_scrconfdir}/cfg_windowmanager.scr
-%{yast_scrconfdir}/cfg_fam.scr
 %{yast_scrconfdir}/etc_install_inf.scr
-%{yast_scrconfdir}/etc_install_inf_alias.scr
-%{yast_scrconfdir}/etc_install_inf_options.scr
 %{yast_scrconfdir}/run_df.scr
 # fillup
 %{_fillupdir}/sysconfig.security-checksig

++++++ yast2-installation-4.1.34.tar.bz2 -> yast2-installation-4.1.35.tar.bz2 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-installation-4.1.34/doc/control-file.md 
new/yast2-installation-4.1.35/doc/control-file.md
--- old/yast2-installation-4.1.34/doc/control-file.md   2018-12-17 
16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/doc/control-file.md   2019-02-01 
15:06:41.000000000 +0100
@@ -727,7 +727,7 @@
 ```
 
 They were requested in FATE#317481 and they are an evolution of the earlier
-concept of Server Scenarios used in SLE 11.
+concept of Server Scenarios used in SLE 11. The server scenarios were dropped.
 
 Example:
 
@@ -807,107 +807,6 @@
 The *services* part currently only supports enabling additional services which
 is done by specifying *service* with its *name* as seen in the example.
 
-### System Scenarios
-
-System scenarios contain the definition of the *inst\_scenarios* dialog in the
-first stage installation. It offers several base scenarios, but only one
-of them can be selected.
-
-Example of configured scenarios:
-
-```xml
-    <productDefines  xmlns="http://www.suse.com/1.0/yast2ns";
-        xmlns:config="http://www.suse.com/1.0/configns";>
-        <software>
-
-            <!-- list of supported scenarios -->
-            <system_scenarios config:type="list">
-
-                <!-- one scenario -->
-                <system_scenario>
-                    <!-- 'id' matches the text 'scenario_game_server' -->
-                    <id>scenario_game_server</id>
-                    <!-- space-separated list of patterns -->
-                    <patterns>game_server-pattern high-load-server</patterns>
-                    <!--  plain icon filename (from the 32x32 directory) 
without suffix -->
-                    <icon>yast-system</icon>
-                </system_scenario>
-
-                <system_scenario>
-                    <id>scenario_web_server</id>
-                    <patterns>web_server-pattern</patterns>
-                    <icon>yast-http-server</icon>
-                </system_scenario>
-
-                <system_scenario>
-                    <id>scenario_nfs_server</id>
-                    <patterns>nfs_server-pattern</patterns>
-                    <icon>yast-nfs-server</icon>
-                </system_scenario>
-
-            </system_scenarios>
-
-            <!-- this scenario (id) is selected by default -->
-            
<default_system_scenario>scenario_nfs_server</default_system_scenario>
-
-        </software>
-
-        <texts>
-
-            <!-- dialog caption -->
-            <scenarios_caption><label>Server Base 
Scenario</label></scenarios_caption>
-            <!-- informative text between caption and listed scenarios -->
-            <scenarios_text><label>SUSE Linux Enterprise Server offers several 
base scenarios.
-    Choose the one that matches your server the best.</label></scenarios_text>
-
-            <!-- matches the 'id' of one 'system_scenario' -->
-            <scenario_game_server><label>Game 
Server</label></scenario_game_server>
-            <scenario_web_server><label>Web 
Server</label></scenario_web_server>
-            <scenario_nfs_server><label>NFS 
Server</label></scenario_nfs_server>
-
-        </texts>
-    </productDefines>
-```
-
-System scenarios are defined in the *software* section. The
-*system\_scenarios* section consists of several *system\_scenario* definitions.
-Each *system\_scenario* consists of:
-
--   *id* - unique identificator of a selection.
-
--   *patterns* - space-separated list of patterns covering the software
-    scenario.
-
--   *icon* - plain icon filename (from the 32x32 theme directory) without
-    suffix.
-
-Selection labels must be defined in the [texts](#control_texts) section.
-Scenarios *id*s are used as link identificators.
-
-```xml
-    <software>
-    <system_scenario>
-        <id></id>
-    </system_scenario>
-    </software>
-
-    <texts>
-    <><label>Some Label</label></>
-    </texts>
-```
-
-The *software* section can also contain an optional *default\_system\_scenario*
-that defines the id of the default scenario.
-
-There are some important texts that have to be defined for the dialog
-layout:
-
--   *scenarios\_caption* - used as a dialog caption for the "scenarios"
-    dialog.
-
--   *scenarios\_text* - used as an informative text describing the
-    available selections below.
-
 ### Partitioning
 
 > **Note:** this section describes the format implemented by yast2-storage
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/package/yast2-installation.changes 
new/yast2-installation-4.1.35/package/yast2-installation.changes
--- old/yast2-installation-4.1.34/package/yast2-installation.changes    
2018-12-17 16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/package/yast2-installation.changes    
2019-02-01 15:06:41.000000000 +0100
@@ -1,4 +1,26 @@
 -------------------------------------------------------------------
+Fri Feb  1 13:13:31 CET 2019 - [email protected]
+
+- Copying SSH keys from a privious installation into the new one:
+  Set the right file permissions for the SSH deamon (bnc#1122303).
+- 4.1.35
+
+-------------------------------------------------------------------
+Thu Jan  3 10:51:28 UTC 2019 - [email protected]
+
+- remove no longer used SCR agents without replacement:
+  sysconfig.boot, sysconfig.fam, etc.passwd and
+  install_inf workarounds for aliases and options
+- remove no longer used clients:
+  - inst_ask_online_update replaced by registration for SLE and
+  online_repos for openSUSE.
+  - inst_check_autoinst_mode dropped without replacement. Floppy
+  support was dropped.
+  - inst_scenarios replaced by system roles.
+  - update_wizard_steps replaced by direct call of code without
+    client
+
+-------------------------------------------------------------------
 Mon Dec 17 09:03:47 UTC 2018 - [email protected]
 
 - Hardening commands execution (part of bsc#1118291).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/package/yast2-installation.spec 
new/yast2-installation-4.1.35/package/yast2-installation.spec
--- old/yast2-installation-4.1.34/package/yast2-installation.spec       
2018-12-17 16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/package/yast2-installation.spec       
2019-02-01 15:06:41.000000000 +0100
@@ -16,7 +16,7 @@
 #
 
 Name:           yast2-installation
-Version:        4.1.34
+Version:        4.1.35
 Release:        0
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
@@ -232,13 +232,8 @@
 %{yast_libdir}/transfer
 
 # agents
-%{yast_scrconfdir}/etc_passwd.scr
-%{yast_scrconfdir}/cfg_boot.scr
 %{yast_scrconfdir}/cfg_windowmanager.scr
-%{yast_scrconfdir}/cfg_fam.scr
 %{yast_scrconfdir}/etc_install_inf.scr
-%{yast_scrconfdir}/etc_install_inf_alias.scr
-%{yast_scrconfdir}/etc_install_inf_options.scr
 %{yast_scrconfdir}/run_df.scr
 # fillup
 %{_fillupdir}/sysconfig.security-checksig
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/clients/inst_ask_online_update.rb 
new/yast2-installation-4.1.35/src/clients/inst_ask_online_update.rb
--- old/yast2-installation-4.1.34/src/clients/inst_ask_online_update.rb 
2018-12-17 16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/clients/inst_ask_online_update.rb 
1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-require "installation/clients/inst_ask_online_update"
-Yast::InstAskOnlineUpdateClient.new.main
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/clients/inst_check_autoinst_mode.rb 
new/yast2-installation-4.1.35/src/clients/inst_check_autoinst_mode.rb
--- old/yast2-installation-4.1.34/src/clients/inst_check_autoinst_mode.rb       
2018-12-17 16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/clients/inst_check_autoinst_mode.rb       
1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-require "installation/clients/inst_check_autoinst_mode"
-Yast::InstCheckAutoinstModeClient.new.main
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/clients/inst_scenarios.rb 
new/yast2-installation-4.1.35/src/clients/inst_scenarios.rb
--- old/yast2-installation-4.1.34/src/clients/inst_scenarios.rb 2018-12-17 
16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/clients/inst_scenarios.rb 1970-01-01 
01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-require "installation/clients/inst_scenarios"
-Yast::InstScenariosClient.new.main
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/clients/update_wizard_steps.rb 
new/yast2-installation-4.1.35/src/clients/update_wizard_steps.rb
--- old/yast2-installation-4.1.34/src/clients/update_wizard_steps.rb    
2018-12-17 16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/clients/update_wizard_steps.rb    
1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-require "installation/clients/update_wizard_steps"
-Yast::UpdateWizardStepsClient.new.main
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/lib/installation/clients/inst_ask_online_update.rb
 
new/yast2-installation-4.1.35/src/lib/installation/clients/inst_ask_online_update.rb
--- 
old/yast2-installation-4.1.34/src/lib/installation/clients/inst_ask_online_update.rb
        2018-12-17 16:18:09.000000000 +0100
+++ 
new/yast2-installation-4.1.35/src/lib/installation/clients/inst_ask_online_update.rb
        1970-01-01 01:00:00.000000000 +0100
@@ -1,160 +0,0 @@
-# encoding: utf-8
-
-# 
------------------------------------------------------------------------------
-# Copyright (c) 2006-2012 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.
-# 
------------------------------------------------------------------------------
-
-# File:        clients/inst_ask_online_update.ycp
-# Module:      Installation
-# Summary:     Ask if the user wants to run an online update during 
installation
-# Authors:     J. Daniel Schmidt <[email protected]>
-#
-# Ask if the user wants to run an online update during installation
-#
-# $Id: inst_ask_online_update.ycp 1 2006-02-17 13:20:02Z jdsn $
-module Yast
-  class InstAskOnlineUpdateClient < Client
-    def main
-      Yast.import "Pkg"
-      Yast.import "UI"
-      textdomain "installation"
-
-      # FIXME: move to yast2-registration later, it doesn't belog here
-
-      Yast.import "Wizard"
-      Yast.import "Popup"
-      Yast.import "GetInstArgs"
-      Yast.import "CustomDialogs"
-      Yast.import "Directory"
-      Yast.import "Language"
-      Yast.import "Mode"
-      Yast.import "String"
-      Yast.import "Label"
-      Yast.import "Internet"
-      Yast.import "Installation"
-      Yast.import "NetworkService"
-
-      # BNC #572734
-      if GetInstArgs.going_back
-        Builtins.y2milestone("going_back -> returning `auto")
-        return :auto
-      end
-
-      # BNC #450229
-      # There used to be >if (!Internet::do_you)<
-      if NetworkService.isNetworkRunning != true
-        Builtins.y2milestone("No network running, skipping online update...")
-        return :auto
-      end
-
-      @ui = UI.GetDisplayInfo
-
-      @argmap = GetInstArgs.argmap
-
-      #  strings for "ask for online update"-popup
-      @ask_update_run_btn = _("Run Update")
-      @ask_update_skip_btn = _("Skip Update")
-
-      @online_update = _("Online Update")
-      @ask_update_main = _("Run Online Update now?")
-
-      @help = _(
-        "Select whether to run an online update now.\nYou may skip this step 
and run an online update later.\n"
-      )
-
-      # vv   MAIN (WIZARD) LAYOUT  vv
-      @sr_layout = nil
-      @sr_layout = HVSquash(
-        VBox(
-          Left(Label(@ask_update_main)),
-          Left(
-            RadioButtonGroup(
-              Id(:run_update),
-              HBox(
-                HSpacing(1),
-                VBox(
-                  Left(RadioButton(Id(:update), @ask_update_run_btn, true)),
-                  Left(RadioButton(Id(:noupdate), @ask_update_skip_btn))
-                ),
-                HSpacing(1)
-              )
-            )
-          )
-        )
-      )
-
-      @contents = VBox(VSpacing(0.5), @sr_layout, VSpacing(0.5))
-      # ^^       END MAIN LAYOUT     ^^
-
-      # check if there are some patches available
-
-      # BNC #447080
-      Pkg.TargetInitialize(Installation.destdir)
-      Pkg.TargetLoad
-      Pkg.SourceStartManager(true)
-
-      # Patches need solver run to be selected
-      Pkg.PkgSolve(true)
-
-      @selected = Pkg.ResolvableCountPatches(:affects_pkg_manager)
-      Builtins.y2milestone(
-        "Available patches for pkg management: %1",
-        @selected
-      )
-      if Ops.less_than(@selected, 1)
-        @selected = Pkg.ResolvableCountPatches(:all)
-        Builtins.y2milestone("All available patches: %1", @selected)
-        if Ops.less_than(@selected, 1)
-          Builtins.y2milestone("No patch available, skiping offer to run YOU")
-          Internet.do_you = false
-          return :next
-        end
-      end
-
-      # check if we are in installation workflow or running independently (for 
development)
-      Wizard.CreateDialog if Mode.normal
-
-      Wizard.SetContents(
-        @online_update,
-        @contents,
-        @help,
-        GetInstArgs.enable_back,
-        GetInstArgs.enable_next
-      )
-
-      @ret = nil
-      loop do
-        @ret = Wizard.UserInput
-
-        if @ret == :abort
-          break if Mode.normal
-          break if Popup.ConfirmAbort(:incomplete)
-        elsif @ret == :help
-          Wizard.ShowHelp(@help)
-        elsif @ret == :next
-          # Skipping online update
-          # needed later BNC #450229
-          Internet.do_you = !UI.QueryWidget(Id(:noupdate), :Value)
-        end
-        break if [:next, :back].include?(@ret)
-      end
-
-      Convert.to_symbol(@ret)
-    end
-  end
-end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/lib/installation/clients/inst_check_autoinst_mode.rb
 
new/yast2-installation-4.1.35/src/lib/installation/clients/inst_check_autoinst_mode.rb
--- 
old/yast2-installation-4.1.34/src/lib/installation/clients/inst_check_autoinst_mode.rb
      2018-12-17 16:18:09.000000000 +0100
+++ 
new/yast2-installation-4.1.35/src/lib/installation/clients/inst_check_autoinst_mode.rb
      1970-01-01 01:00:00.000000000 +0100
@@ -1,77 +0,0 @@
-# encoding: utf-8
-
-# 
------------------------------------------------------------------------------
-# Copyright (c) 2006-2012 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.
-# 
------------------------------------------------------------------------------
-
-# File:        clients/inst_check_autoinst_mode.ycp
-# Package:     Installation
-# Summary:     Installation mode selection, checking for autoinst.xml on floppy
-# Authors:     Lukas Ocilka <[email protected]>
-#
-# $Id$
-#
-module Yast
-  class InstCheckAutoinstModeClient < Client
-    def main
-      textdomain "installation"
-
-# storage-ng
-# rubocop:disable Style/BlockComments
-=begin
-      Yast.import "StorageDevices"
-=end
-      Yast.import "Mode"
-
-      Builtins.y2milestone("Checking for autoinst.xml on floppy...")
-
-# storage-ng
-=begin
-      # do we have a floppy drive attached ?
-      if StorageDevices.FloppyReady
-        # Try to load settings from disk, if a floppy is present
-        SCR.Execute(
-          path(".target.mount"),
-          [StorageDevices.FloppyDevice, "/media/floppy"],
-          "-t auto"
-        )
-
-        # Check for autoinst.xml. if available
-        # set mode to autoinst. Later, the file is parsed and installation
-        # is performed automatically.
-
-        if Ops.greater_than(
-          SCR.Read(path(".target.size"), "/media/floppy/autoinst.xml"),
-          0
-        )
-          Builtins.y2milestone("Found control file, switching to autoinst 
mode")
-          Mode.SetMode("autoinstallation")
-          # initialize Report behavior
-          # Default in autoinst mode is showing messages and warnings with 
timeout of 10 sec.
-          # Errors are shown without timeout.
-        end
-        SCR.Execute(path(".target.umount"), "/media/floppy")
-      end
-=end
-
-      true
-
-      # EOF
-    end
-  end
-end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/lib/installation/clients/inst_scenarios.rb 
new/yast2-installation-4.1.35/src/lib/installation/clients/inst_scenarios.rb
--- 
old/yast2-installation-4.1.34/src/lib/installation/clients/inst_scenarios.rb    
    2018-12-17 16:18:09.000000000 +0100
+++ 
new/yast2-installation-4.1.35/src/lib/installation/clients/inst_scenarios.rb    
    1970-01-01 01:00:00.000000000 +0100
@@ -1,308 +0,0 @@
-# encoding: utf-8
-
-# 
------------------------------------------------------------------------------
-# Copyright (c) 2006-2012 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.
-# 
------------------------------------------------------------------------------
-
-# File:        clients/inst_scenarios.ycp
-# Package:     Installation (First Stage)
-# Summary:     Server/Desktop Scenarios
-# Authors:     Lukas Ocilka <[email protected]>
-#
-# $Id$
-module Yast
-  class InstScenariosClient < Client
-    def main
-      Yast.import "UI"
-      Yast.import "Pkg"
-      # See FATE: #304373: Align installation process to use scenarios for 
Server in early stage
-
-      textdomain "installation"
-
-      Yast.import "Arch"
-      Yast.import "ProductControl"
-      Yast.import "ProductFeatures"
-      Yast.import "Wizard"
-      Yast.import "Icon"
-      Yast.import "Installation"
-      Yast.import "Popup"
-      Yast.import "PackageCallbacks"
-      Yast.import "Report"
-      Yast.import "Packages"
-      Yast.import "DefaultDesktop"
-      Yast.import "PackagesProposal"
-
-      @test_mode = false
-
-      if Ops.greater_than(Builtins.size(WFM.Args), 0) &&
-          Ops.is_string?(WFM.Args(0))
-        Builtins.y2milestone("Args: %1", WFM.Args)
-        @test_mode = true if WFM.Args(0) == "test"
-      end
-
-      # load supported scenarios from control file
-      @any_scenarios = ProductFeatures.GetFeature(
-        "software",
-        "system_scenarios"
-      )
-
-      if @any_scenarios.nil? || @any_scenarios == "" || @any_scenarios == []
-        Builtins.y2error("Undefined software->system_scenarios")
-        return :auto
-      end
-
-      @system_scenarios = Convert.convert(
-        @any_scenarios,
-        from: "any",
-        to:   "list <map <string, string>>"
-      )
-
-      # Remove Xen/KVM Virtualization Host Server Installation for non-x86_64 
(bnc#702103, bnc#795067)
-      @system_scenarios = Builtins.filter(@system_scenarios) do |one_scenario|
-        if Builtins.issubstring(
-          Ops.get(one_scenario, "id", "---"),
-          "virtualization_host"
-        ) &&
-            !Arch.x86_64
-          Builtins.y2milestone("removing Xen Virtualization Host Server 
option")
-          next false
-        end
-        true
-      end
-
-      @packages_proposal_ID = "inst_scenarios"
-
-      # adjusting test mode - not used in installation
-      if @test_mode
-        Wizard.CreateDialog
-        Pkg.TargetInit(Installation.destdir, true)
-        Pkg.SourceStartManager(true)
-        # pre-select
-        Builtins.foreach(
-          Builtins.splitstring(
-            Ops.get(@system_scenarios, [0, "patterns"], ""),
-            " \t"
-          )
-        ) { |one_pattern| Pkg.ResolvableInstall(one_pattern, :pattern) }
-        Pkg.PkgSolve(true)
-      end
-
-      Builtins.y2milestone("Supported scenarios: %1", @system_scenarios)
-
-      # TRANSLATORS: help text
-      @dialog_help = _(
-        "<p>Select the scenario that meets your needs best.\nAdditional 
software can be selected later in software proposal.</p>\n"
-      )
-
-      # Adjust dialog
-      Wizard.SetContents(
-        ProductControl.GetTranslatedText("scenarios_caption"),
-        GetDialogContents(),
-        @dialog_help,
-        true,
-        true
-      )
-
-      SelectAppropriateRadioButton()
-
-      @user_input = nil
-      @ret = :auto
-
-      # Handle user input
-      loop do
-        @user_input = UI.UserInput
-
-        if @user_input == :next
-          @chosen_selection = Convert.to_string(
-            UI.QueryWidget(Id(:scenarios), :CurrentButton)
-          )
-
-          if @chosen_selection.nil? || @chosen_selection == ""
-            # TRANSLATORS: pop-up message
-            Report.Message(_("Choose one scenario, please."))
-          else
-            SelectPatterns(@chosen_selection)
-            @ret = :next
-            break
-          end
-        elsif @user_input == :back
-          @ret = :back
-          break
-        elsif @user_input == :abort || @user_input == :cancel
-          if Popup.ConfirmAbort(:painless)
-            @ret = :abort
-            break
-          end
-        else
-          Builtins.y2error("Unexpected ret: %1", @user_input)
-        end
-      end
-
-      # test mode - not used in installation
-      Wizard.CloseDialog if @test_mode
-
-      Builtins.y2milestone("Returning: %1", @ret)
-      @ret
-      # EOF
-    end
-
-    # Adjusts UI - selected radio button
-    def SelectAppropriateRadioButton
-      patterns = Pkg.ResolvableProperties("", :pattern, "")
-
-      selected_id = nil
-
-      # check all scenarios
-      Builtins.foreach(@system_scenarios) do |one_scenario|
-        patterns_required = Builtins.splitstring(
-          Ops.get(one_scenario, "patterns", ""),
-          " \t"
-        )
-        matching_patterns = 0
-        Builtins.foreach(patterns) do |one_pattern|
-          if Builtins.contains(
-            patterns_required,
-            Ops.get_string(one_pattern, "name", "")
-          ) &&
-              (Ops.get_symbol(one_pattern, "status", :a) == :installed ||
-                Ops.get_symbol(one_pattern, "status", :a) == :selected)
-            matching_patterns = Ops.add(matching_patterns, 1)
-          end
-        end
-        # there are some matching patterns
-        # they match required patterns
-        if Ops.greater_than(matching_patterns, 0) &&
-            Ops.greater_or_equal(
-              matching_patterns,
-              Builtins.size(patterns_required)
-            )
-          Builtins.y2milestone(
-            "Matching: %1 (%2)",
-            Ops.get(one_scenario, "id", ""),
-            Ops.get(one_scenario, "patterns", "")
-          )
-          if selected_id.nil?
-            selected_id = Ops.get(one_scenario, "id", "")
-          else
-            Builtins.y2warning("Scenario %1 already selected", selected_id)
-          end
-        end
-      end
-
-      # matching patterns found
-      if !selected_id.nil?
-        UI.ChangeWidget(Id(:scenarios), :CurrentButton, selected_id)
-
-        # using fallback from control file
-      else
-        default_selection = ProductFeatures.GetStringFeature(
-          "software",
-          "default_system_scenario"
-        )
-
-        if default_selection.nil? || default_selection == ""
-          Builtins.y2warning("No default selection defined")
-        else
-          Builtins.y2milestone("Pre-selecting default selection")
-          if UI.WidgetExists(Id(default_selection))
-            UI.ChangeWidget(Id(:scenarios), :CurrentButton, default_selection)
-          else
-            Builtins.y2error("No such selection: %1", default_selection)
-          end
-        end
-      end
-
-      nil
-    end
-
-    def SelectPatterns(chosen_selection)
-      Builtins.y2milestone("User selected: %1", chosen_selection)
-
-      # select newly selected patterns for installation
-      Builtins.foreach(@system_scenarios) do |one_scenario|
-        if Ops.get(one_scenario, "id", "---") == chosen_selection
-          patterns_to_install = Builtins.splitstring(
-            Ops.get(one_scenario, "patterns", ""),
-            " \t"
-          )
-          # Select new list of patterns
-          PackagesProposal.SetResolvables(
-            @packages_proposal_ID,
-            :pattern,
-            patterns_to_install
-          )
-          raise Break
-        end
-      end
-
-      # conflicts with the default desktop feature, thus it removes
-      # the resolvables that the DefaultDesktop could require
-      Builtins.y2warning("Removing all default_desktop related resolvables...")
-      DefaultDesktop.SetDesktop(nil)
-
-      nil
-    end
-
-    def GetDialogContents
-      dialog_content = VBox()
-
-      Builtins.foreach(@system_scenarios) do |one_scenario|
-        dialog_content = Builtins.add(
-          dialog_content,
-          HBox(
-            HWeight(
-              1,
-              if Ops.get(one_scenario, "icon", "") == ""
-                Empty()
-              else
-                HBox(
-                  Image(Icon.IconPath(Ops.get(one_scenario, "icon", "")), ""),
-                  HSpacing(2)
-                )
-              end
-            ),
-            Left(
-              RadioButton(
-                Id(Ops.get(one_scenario, "id", "")),
-                ProductControl.GetTranslatedText(
-                  Ops.get(one_scenario, "id", "")
-                )
-              )
-            ),
-            HStretch()
-          )
-        )
-        dialog_content = Builtins.add(dialog_content, VSpacing(0.8))
-      end
-
-      dialog_content = VBox(
-        Label(ProductControl.GetTranslatedText("scenarios_text")),
-        VSpacing(2),
-        HSquash(
-          Frame(
-            # TRANSLATORS: frame label
-            _("Choose Scenario"),
-            RadioButtonGroup(Id(:scenarios), MarginBox(2, 1.3, dialog_content))
-          )
-        )
-      )
-
-      deep_copy(dialog_content)
-    end
-  end
-end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/lib/installation/clients/inst_worker_initial.rb
 
new/yast2-installation-4.1.35/src/lib/installation/clients/inst_worker_initial.rb
--- 
old/yast2-installation-4.1.34/src/lib/installation/clients/inst_worker_initial.rb
   2018-12-17 16:18:09.000000000 +0100
+++ 
new/yast2-installation-4.1.35/src/lib/installation/clients/inst_worker_initial.rb
   2019-02-01 15:06:41.000000000 +0100
@@ -94,11 +94,6 @@
       # Shows fallback message if running in textmode (if used as fallback)
       ShowTextFallbackMessage()
 
-      # First stage
-      if !Mode.screen_shot && !Stage.firstboot
-        WFM.CallFunction("inst_check_autoinst_mode", [])
-      end
-
       @ret = nil
 
       # --- Runing the installation workflow ---
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/lib/installation/clients/umount_finish.rb 
new/yast2-installation-4.1.35/src/lib/installation/clients/umount_finish.rb
--- old/yast2-installation-4.1.34/src/lib/installation/clients/umount_finish.rb 
2018-12-17 16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/lib/installation/clients/umount_finish.rb 
2019-02-01 15:06:41.000000000 +0100
@@ -44,11 +44,8 @@
 
       Yast.import "Installation"
       Yast.import "Hotplug"
-      Yast.import "Vendor"
       Yast.import "String"
-      Yast.import "Internet"
       Yast.import "FileUtils"
-      Yast.import "ProductFeatures"
 
       @ret = nil
       @func = ""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/lib/installation/clients/update_wizard_steps.rb
 
new/yast2-installation-4.1.35/src/lib/installation/clients/update_wizard_steps.rb
--- 
old/yast2-installation-4.1.34/src/lib/installation/clients/update_wizard_steps.rb
   2018-12-17 16:18:09.000000000 +0100
+++ 
new/yast2-installation-4.1.35/src/lib/installation/clients/update_wizard_steps.rb
   1970-01-01 01:00:00.000000000 +0100
@@ -1,53 +0,0 @@
-# encoding: utf-8
-
-# 
------------------------------------------------------------------------------
-# Copyright (c) 2006-2012 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.
-# 
------------------------------------------------------------------------------
-
-# File:
-#      update_wizard_steps.ycp
-#
-# Module:
-#      Installation
-#
-# Authors:
-#      Lukas Ocilka <[email protected]>
-#
-# Summary:
-#      Script can be called from another installation modules.
-#      It has been designed just to redraw the installation
-#      steps. Call it only if needed.
-#      WFM::call ("update_wizard_steps")
-#
-# $Id$
-#
-module Yast
-  class UpdateWizardStepsClient < Client
-    def main
-      Yast.import "UI"
-      textdomain "installation"
-
-      Yast.include self, "installation/misc.rb"
-
-      Builtins.y2milestone("Updating/redrawing wizard steps...")
-      UpdateWizardSteps()
-
-      :auto
-    end
-  end
-end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/lib/installation/ssh_key.rb 
new/yast2-installation-4.1.35/src/lib/installation/ssh_key.rb
--- old/yast2-installation-4.1.34/src/lib/installation/ssh_key.rb       
2018-12-17 16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/lib/installation/ssh_key.rb       
2019-02-01 15:06:41.000000000 +0100
@@ -47,7 +47,16 @@
       files.each do |file|
         path = File.join(dir, file.filename)
         IO.write(path, file.content)
-        File.chmod(file.permissions, path)
+        if file.filename =~ /^ssh_host_.*key$/
+          # ssh deamon accepts only private keys with restricted
+          # file permissions.
+          log.info("Set permissions of #{file.filename} to 0o600")
+          File.chmod(0o600, path)
+        else
+          # Taking already given permissions
+          log.info("Set permissions of #{file.filename} to 
0o#{file.permissions.to_s(8)}")
+          File.chmod(file.permissions, path)
+        end
       end
     end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-installation-4.1.34/src/scrconf/cfg_boot.scr 
new/yast2-installation-4.1.35/src/scrconf/cfg_boot.scr
--- old/yast2-installation-4.1.34/src/scrconf/cfg_boot.scr      2018-12-17 
16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/scrconf/cfg_boot.scr      1970-01-01 
01:00:00.000000000 +0100
@@ -1,15 +0,0 @@
-/**
- * File:
- *   cfg_boot.scr
- * Summary:
- *   SCR Agent for reading/writing /etc/sysconfig/boot
- *   using the sysconfig-agent
- *
- * Read/Sets the values defined in <tt>/etc/sysconfig/boot</tt>
- * in an easy manner.
- */
-.sysconfig.boot
-
-`ag_ini(
-    `SysConfigFile("/etc/sysconfig/boot")
-)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-installation-4.1.34/src/scrconf/cfg_fam.scr 
new/yast2-installation-4.1.35/src/scrconf/cfg_fam.scr
--- old/yast2-installation-4.1.34/src/scrconf/cfg_fam.scr       2018-12-17 
16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/scrconf/cfg_fam.scr       1970-01-01 
01:00:00.000000000 +0100
@@ -1,16 +0,0 @@
-/**
- * File:
- *   cfg_windowmanager.scr
- * Summary:
- *   SCR Agent for reading/writing /etc/sysconfig/windowmanager
- *   using the sysconfig-agent
- * $Id$
- *
- * Read/Sets the values defined in <tt>/etc/sysconfig/windowmanager</tt>
- * in an easy manner.
- */
-.sysconfig.fam
-
-`ag_ini(
-    `SysConfigFile("/etc/sysconfig/fam")
-)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/scrconf/etc_install_inf.scr 
new/yast2-installation-4.1.35/src/scrconf/etc_install_inf.scr
--- old/yast2-installation-4.1.34/src/scrconf/etc_install_inf.scr       
2018-12-17 16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/scrconf/etc_install_inf.scr       
2019-02-01 15:06:41.000000000 +0100
@@ -15,7 +15,7 @@
  *   (true)
  *
  * WARNING! Ini agent cannot handle multiple entries with the same name,
- * such as Alias in install.inf. Use .etc.install_inf_alias instead.
+ * such as Alias in install.inf.
  *
  * $Id$
  */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/scrconf/etc_install_inf_alias.scr 
new/yast2-installation-4.1.35/src/scrconf/etc_install_inf_alias.scr
--- old/yast2-installation-4.1.34/src/scrconf/etc_install_inf_alias.scr 
2018-12-17 16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/scrconf/etc_install_inf_alias.scr 
1970-01-01 01:00:00.000000000 +0100
@@ -1,39 +0,0 @@
-/**
- * File:       etc_install_inf_alias.scr
- * Summary:    Agent for reading/writing module aliases in /etc/install.inf
- * Access:     read only
- * Author:     Martin Vidner <[email protected]>
- *
- * Bug #24836: ini agent cannot handle multiple Alias entries.
- *
- * Example:
- *   Dir(.etc.install_inf_alias)
- *   (["eth0", "eth1"])
- **
- *   Read(.etc.install_inf_alias.eth0)
- *   ("pcnet32")
- *
- * $Id$
- */
-.etc.install_inf_alias
-
-`ag_ini(
-    `IniAgent( "/etc/install.inf",
-       $[
-           "options" : [ "read_only", "global_values", "flat" ],
-           // Everything except the pattern in "params" is a comment.
-           // I love negated regexps.
-           "comments" : [
-               "^[ \t]*[^A].*",
-               "^[ \t]*A[^l].*",
-               "^[ \t]*Al[^i].*",
-               "^[ \t]*Ali[^a].*",
-               "^[ \t]*Alia[^s].*",
-               "^[ \t]*Alias[^ \t:].*", 
-               ],
-           "params" : [
-               $[ "match" : [ "^[ \t]*Alias[ \t]*:[ \t]*(.*)[ \t]+(.*)[ 
\t]*$", "Alias: %s %s" ] ]
-           ]
-       ]
-    )
-)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.1.34/src/scrconf/etc_install_inf_options.scr 
new/yast2-installation-4.1.35/src/scrconf/etc_install_inf_options.scr
--- old/yast2-installation-4.1.34/src/scrconf/etc_install_inf_options.scr       
2018-12-17 16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/scrconf/etc_install_inf_options.scr       
1970-01-01 01:00:00.000000000 +0100
@@ -1,39 +0,0 @@
-/**
- * File:       etc_install_inf_options.scr
- * Summary:    Agent for reading/writing module options in /etc/install.inf
- * Access:     read only
- * Author:     Martin Vidner <[email protected]>
- *
- * Example:
- *   Dir(.etc.install_inf_options)
- *   (["3c59x"])
- **
- *   Read(.etc.install_inf_options.eth0)
- *   ("debug=6")
- *
- * $Id$
- */
-.etc.install_inf_options
-
-`ag_ini(
-    `IniAgent( "/etc/install.inf",
-       $[
-           "options" : [ "read_only", "global_values", "flat" ],
-           // Everything except the pattern in "params" is a comment.
-           // I love negated regexps.
-           "comments" : [
-               "^[ \t]*[^O].*",
-               "^[ \t]*O[^p].*",
-               "^[ \t]*Op[^t].*",
-               "^[ \t]*Opt[^i].*",
-               "^[ \t]*Opti[^o].*",
-               "^[ \t]*Optio[^n].*",
-               "^[ \t]*Option[^s].*",
-               "^[ \t]*Options[^ \t:].*", 
-               ],
-           "params" : [
-                $[ "match" : [ "^[ \t]*Options[ \t]*:[ \t]*([^ \t]*)[ 
\t]+(.*)$", "Options: %s %s" ] ]
-           ]
-       ]
-    )
-)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-installation-4.1.34/src/scrconf/etc_passwd.scr 
new/yast2-installation-4.1.35/src/scrconf/etc_passwd.scr
--- old/yast2-installation-4.1.34/src/scrconf/etc_passwd.scr    2018-12-17 
16:18:09.000000000 +0100
+++ new/yast2-installation-4.1.35/src/scrconf/etc_passwd.scr    1970-01-01 
01:00:00.000000000 +0100
@@ -1,73 +0,0 @@
-/**
- * File:
- *   etc_passwd.scr
- * Summary:
- *   SCR Agent for reading /etc/passwd
- * Access:
- *   read-only
- * Authors:
- *   Unknown <[email protected]>
- * See:
- *   anyagent
- *   libscr
- *   man passwd(5)
- * Example:
- *   Read(.etc.passwd)
- *   ([$["fullname":"root", "gid":0, "home":"/root", "password":"x",
- *       "shell":"/bin/bash", "uid":0, "username":"root"], 
- *     $["fullname":"bin", "gid":1, "home":"/bin", "password":"x",
- *       "shell":"/bin/bash", "uid":1, "username":"bin"],
- *     $["fullname":"daemon", "gid":2,"home":"/sbin", "password":"x",
- *     ... 
- *   ])
- * 
- * $Id$
- *
- * Returns a <b>list of maps</b>. Each map (list-entry) corresponds 
- * with one user. 
- * Keys for the maps are: "username", "password", "uid", "gid", "fullname", 
"home" and "shell". 
- */
-.etc.passwd
-
-`ag_anyagent(
-  `Description (
-      (`File("/etc/passwd")),  // real filename
-      "#",                     // Comment
-      true,
-      (`List (
-       `Or (
-         `Tuple (
-         `username (`String("+")),
-         ":",
-         `password (`String ("")),
-         ":",
-         `uid (`String ("")),
-         ":",
-         `gid (`String ("")),
-         ":",
-         `fullname (`String ("")),
-         ":",
-         `home (`String ("")),
-         ":",
-         `shell (`String (""))
-       ),
-
-       `Tuple (
-         `username (`String ("^:")),
-         ":",
-         `password (`Or (`String ("^:"), "")),
-         ":",
-         `uid (`Number ()),
-         ":",
-         `gid (`Number ()),
-         ":",
-         `fullname (`Or (`String ("^:"), "")),
-         ":",
-         `home (`String ("^:")),
-         ":",
-         `shell (`String ("^\n"))
-       )),
-       "\n"
-      ))
-    )
-)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-installation-4.1.34/test/ssh_key_test.rb 
new/yast2-installation-4.1.35/test/ssh_key_test.rb
--- old/yast2-installation-4.1.34/test/ssh_key_test.rb  1970-01-01 
01:00:00.000000000 +0100
+++ new/yast2-installation-4.1.35/test/ssh_key_test.rb  2019-02-01 
15:06:41.000000000 +0100
@@ -0,0 +1,23 @@
+#! /usr/bin/env rspec
+
+require_relative "./test_helper"
+require "installation/ssh_key"
+
+describe Installation::SshKey do
+  subject(:sshkey) { Installation::SshKey.new("ssh_host_ed25519_key") }
+
+  describe "#write_files" do
+    before do
+      sshkey.read_files(FIXTURES_DIR.join("root2/etc/ssh", subject.name).to_s)
+    end
+
+    it "writes ssh keys with the right permissions" do
+      expect(IO).to receive(:write).twice
+      expect(File).to receive(:chmod).with(0o600,
+        "/mnt/etc/ssh/ssh_host_ed25519_key")
+      expect(File).to receive(:chmod).with(sshkey.files[1].permissions,
+        "/mnt/etc/ssh/#{sshkey.files[1].filename}")
+      sshkey.write_files("/mnt/etc/ssh")
+    end
+  end
+end


Reply via email to