Hello community, here is the log from the commit of package yast2-bootloader for openSUSE:Factory checked in at 2016-11-03 12:56:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-bootloader (Old) and /work/SRC/openSUSE:Factory/.yast2-bootloader.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-bootloader" Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-bootloader/yast2-bootloader.changes 2016-10-20 23:06:16.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.yast2-bootloader.new/yast2-bootloader.changes 2016-11-03 12:56:58.000000000 +0100 @@ -1,0 +2,13 @@ +Wed Nov 2 14:14:21 UTC 2016 - jreidin...@suse.com + +- set pmbr flag only on GPT disks (bsc#1008092) +- 3.2.6 + +------------------------------------------------------------------- +Tue Nov 1 11:49:05 UTC 2016 - jreidin...@suse.com + +- Use the system-wide locale (/etc/sysconfig/language:RC_LANG) when + generating the GRUB2 menu (bsc#998152) +- 3.2.5 + +------------------------------------------------------------------- Old: ---- yast2-bootloader-3.2.4.tar.bz2 New: ---- yast2-bootloader-3.2.6.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-bootloader.spec ++++++ --- /var/tmp/diff_new_pack.OT8s9c/_old 2016-11-03 12:56:59.000000000 +0100 +++ /var/tmp/diff_new_pack.OT8s9c/_new 2016-11-03 12:56:59.000000000 +0100 @@ -17,7 +17,7 @@ Name: yast2-bootloader -Version: 3.2.4 +Version: 3.2.6 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -28,6 +28,8 @@ BuildRequires: yast2-devtools >= 3.1.10 BuildRequires: yast2-ruby-bindings >= 1.0.0 BuildRequires: yast2-storage +# lenses needed also for tests +BuildRequires: augeas-lenses BuildRequires: rubygem(%rb_default_ruby_abi:cfa_grub2) >= 0.5.1 BuildRequires: rubygem(%rb_default_ruby_abi:rspec) BuildRequires: rubygem(%rb_default_ruby_abi:yast-rake) ++++++ yast2-bootloader-3.2.4.tar.bz2 -> yast2-bootloader-3.2.6.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/.travis.yml new/yast2-bootloader-3.2.6/.travis.yml --- old/yast2-bootloader-3.2.4/.travis.yml 2016-10-19 10:38:08.000000000 +0200 +++ new/yast2-bootloader-3.2.6/.travis.yml 2016-11-03 08:41:30.000000000 +0100 @@ -4,6 +4,11 @@ before_install: # disable rvm, use system Ruby - rvm reset + # install newer augeasget repo with newer augeas, otherwise ruby-augeas fails (see https://github.com/yast/yast-network/pull/454#issuecomment-253795507) + - sudo add-apt-repository -y ppa:raphink/augeas + - sudo apt-get update + - sudo apt-get install libaugeas-dev libxml2-dev + # end of augeas install - wget https://raw.githubusercontent.com/yast/yast-devtools/master/travis-tools/travis_setup.sh - sh ./travis_setup.sh -p "yast2-devtools yast2 yast2-storage rake ruby2.1-dev libaugeas-dev pkg-config" -g "gettext yast-rake yard rspec:3.3.0 simplecov coveralls rubocop:0.41.2 cfa_grub2 cheetah" script: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/package/yast2-bootloader.changes new/yast2-bootloader-3.2.6/package/yast2-bootloader.changes --- old/yast2-bootloader-3.2.4/package/yast2-bootloader.changes 2016-10-19 10:38:08.000000000 +0200 +++ new/yast2-bootloader-3.2.6/package/yast2-bootloader.changes 2016-11-03 08:41:31.000000000 +0100 @@ -1,4 +1,17 @@ ------------------------------------------------------------------- +Wed Nov 2 14:14:21 UTC 2016 - jreidin...@suse.com + +- set pmbr flag only on GPT disks (bsc#1008092) +- 3.2.6 + +------------------------------------------------------------------- +Tue Nov 1 11:49:05 UTC 2016 - jreidin...@suse.com + +- Use the system-wide locale (/etc/sysconfig/language:RC_LANG) when + generating the GRUB2 menu (bsc#998152) +- 3.2.5 + +------------------------------------------------------------------- Thu Oct 13 12:26:53 UTC 2016 - jreidin...@suse.com - Do not require syslinux on target system during installation diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/package/yast2-bootloader.spec new/yast2-bootloader-3.2.6/package/yast2-bootloader.spec --- old/yast2-bootloader-3.2.4/package/yast2-bootloader.spec 2016-10-19 10:38:08.000000000 +0200 +++ new/yast2-bootloader-3.2.6/package/yast2-bootloader.spec 2016-11-03 08:41:31.000000000 +0100 @@ -17,7 +17,7 @@ Name: yast2-bootloader -Version: 3.2.4 +Version: 3.2.6 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -28,6 +28,8 @@ BuildRequires: yast2-devtools >= 3.1.10 BuildRequires: yast2-ruby-bindings >= 1.0.0 BuildRequires: yast2-storage +# lenses needed also for tests +BuildRequires: augeas-lenses BuildRequires: rubygem(%rb_default_ruby_abi:cfa_grub2) >= 0.5.1 BuildRequires: rubygem(%rb_default_ruby_abi:rspec) BuildRequires: rubygem(%rb_default_ruby_abi:yast-rake) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/src/lib/bootloader/grub2.rb new/yast2-bootloader-3.2.6/src/lib/bootloader/grub2.rb --- old/yast2-bootloader-3.2.4/src/lib/bootloader/grub2.rb 2016-10-19 10:38:08.000000000 +0200 +++ new/yast2-bootloader-3.2.6/src/lib/bootloader/grub2.rb 2016-11-03 08:41:31.000000000 +0100 @@ -66,7 +66,8 @@ stage1.write # TODO: own class handling PBMR - pmbr_setup(*gpt_disks_devices) + # set it only for gpt disk bsc#1008092 + pmbr_setup(*gpt_disks_devices) if Yast::BootStorage.gpt_boot_disk? # powernv must not call grub2-install (bnc#970582) unless Yast::Arch.board_powernv diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/src/lib/bootloader/grub2_widgets.rb new/yast2-bootloader-3.2.6/src/lib/bootloader/grub2_widgets.rb --- old/yast2-bootloader-3.2.4/src/lib/bootloader/grub2_widgets.rb 2016-10-19 10:38:08.000000000 +0200 +++ new/yast2-bootloader-3.2.6/src/lib/bootloader/grub2_widgets.rb 2016-11-03 08:41:31.000000000 +0100 @@ -856,7 +856,7 @@ def pmbr_widget? (Yast::Arch.x86_64 || Yast::Arch.i386) && - (Yast::BootStorage.gpt_boot_disk? || grub2.name == "grub2-efi") + Yast::BootStorage.gpt_boot_disk? end def device_map_button? diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/src/lib/bootloader/grub2base.rb new/yast2-bootloader-3.2.6/src/lib/bootloader/grub2base.rb --- old/yast2-bootloader-3.2.4/src/lib/bootloader/grub2base.rb 2016-10-19 10:38:08.000000000 +0200 +++ new/yast2-bootloader-3.2.6/src/lib/bootloader/grub2base.rb 2016-11-03 08:41:31.000000000 +0100 @@ -7,6 +7,7 @@ require "bootloader/grub2pwd" require "bootloader/udev_mapping" require "bootloader/serial_console" +require "bootloader/language" require "cfa/grub2/default" require "cfa/grub2/grub_cfg" require "cfa/matcher" @@ -94,7 +95,8 @@ grub_default.save @sections.write @password.write - Yast::Execute.on_target("/usr/sbin/grub2-mkconfig", "-o", "/boot/grub2/grub.cfg") + Yast::Execute.on_target("/usr/sbin/grub2-mkconfig", "-o", "/boot/grub2/grub.cfg", + env: systemwide_locale) end def propose @@ -148,6 +150,27 @@ private + def systemwide_locale + begin + language = ::Bootloader::Language.new + language.load + rescue Errno::ENOENT + log.info "/etc/sysconfig/language does not exist. Using current locale" + return {} + end + + lang = language.rc_lang || "C" + + log.info "System language is #{lang}" + + { + "LC_MESSAGES" => nil, + "LC_ALL" => nil, + "LANGUAGE" => nil, + "LANG" => lang + } + end + def merge_pmbr_action(other) @pmbr_action = other.pmbr_action if other.pmbr_action end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/src/lib/bootloader/grub2efi.rb new/yast2-bootloader-3.2.6/src/lib/bootloader/grub2efi.rb --- old/yast2-bootloader-3.2.4/src/lib/bootloader/grub2efi.rb 2016-10-19 10:38:08.000000000 +0200 +++ new/yast2-bootloader-3.2.6/src/lib/bootloader/grub2efi.rb 2016-11-03 08:41:31.000000000 +0100 @@ -34,7 +34,7 @@ # super have to called as first as grub install require some config writen in ancestor super - if pmbr_action + if pmbr_action && Yast::BootStorage.gpt_boot_disk? efi_partition = Yast::Storage.GetEntryForMountpoint("/boot/efi")["device"] efi_partition ||= Yast::Storage.GetEntryForMountpoint("/boot")["device"] efi_partition ||= Yast::Storage.GetEntryForMountpoint("/")["device"] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/src/lib/bootloader/language.rb new/yast2-bootloader-3.2.6/src/lib/bootloader/language.rb --- old/yast2-bootloader-3.2.4/src/lib/bootloader/language.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-bootloader-3.2.6/src/lib/bootloader/language.rb 2016-11-03 08:41:31.000000000 +0100 @@ -0,0 +1,21 @@ +require "cfa/base_model" +require "cfa/augeas_parser" + +module Bootloader + # read only model to get system language from sysconfig + # Uses CFA base model with augeas parser + # @note If it is useful also in other places, then please consider to move + # this class Yast2 and rename to something like Sysconfig::Language + class Language < CFA::BaseModel + PARSER = CFA::AugeasParser.new("sysconfig.lns") + PATH = "/etc/sysconfig/language".freeze + + def initialize(file_handler: nil) + super(PARSER, PATH, file_handler: file_handler) + end + + def rc_lang + generic_get("RC_LANG") + end + end +end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/test/data/language new/yast2-bootloader-3.2.6/test/data/language --- old/yast2-bootloader-3.2.4/test/data/language 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-bootloader-3.2.6/test/data/language 2016-11-03 08:41:31.000000000 +0100 @@ -0,0 +1,120 @@ + +## Path: System/Environment/Language +## Type: string(ibus,fcitx,gcin,scim,scim-bridge,uim,kinput2,kinput2-canna,kinput2-wnn,nabi,wnn,atokx,xcin,none) +## Default: "" +# +# A default input method to be used in X11 can be selected here. +# If this variable is set and a script with the same name +# as the value of this variable exists in the directory /etc/X11/xim.d/ +# this script is sourced when X11 is started to start an input method. +# +# The special value "none" (/etc/X11/xim.d/none) means: +# Do not use any input method at all. +# +# For more details see the comments at the top of /etc/X11/xim. +# +INPUT_METHOD="" +## Path: System/Environment/Language +## Description: +## Type: string(POSIX,ca_ES.ISO-8859-1,ca_ES.UTF-8,cs_CZ.ISO-8859-2,cs_CZ.UTF-8,da_DE@euro,da_DK.ISO-8859-1,da_DK.UTF-8,de_DE@euro,de_DE.ISO-8859-1,de_DE.UTF-8,el_GR.ISO-8859-7,el_GR.UTF-8,en_GB.ISO-8859-1,en_GB.UTF-8,en_IE@euro,en_IE.ISO-8859-1,en_US.ISO-8859-1,es_ES@euro,es_ES.ISO-8859-1,es_ES.UTF-8,fr_FR@euro,fr_FR.ISO-8859-1,fr_FR.UTF-8,gl_ES@euro,gl_ES.ISO-8859-1,gl_ES.utf-8,hr_HR.ISO-8859-2,hu_HU.ISO-8859-2,hu_HU.UTF-8,it_IT@euro,it_IT.ISO-8859-1,it_IT.UTF-8,ja_JP.eucJP,ja_JP.UTF-8,lt_LT.ISO-8859-13,lt_LT.UTF-8,nl_NL@euro,nl_NL.ISO-8859-1,nl_NL.UTF-8,ru_RU.ISO-8859-5,ru_RU.KOI8-R,ru_RU.UTF-8,sk_SK.ISO-8859-2,sk_SK.UTF-8,tr_TR.ISO-8859-9,tr_TR.UTF-8,ko_KR.eucKR,ko_KR.UTF-8,zh_TW.Big5,zh_TW.UTF-8,zh_CN.GB2312,zh_CN.UTF-8) +## Default: "" +## Config: OpenOffice.org,groff,ispell,kde,kdm,profiles,susehelp,susewm,tetex,wdm +# +# +# Local users will get RC_LANG as their default language, i.e. the +# environment variable $LANG . $LANG is the default of all $LC_*-variables, +# as long as $LC_ALL is not set, which overrides all $LC_-variables. +# Root uses this variable only if ROOT_USES_LANG is set to "yes". +# +RC_LANG="en_US.UTF-8" + +## Type: string +## Default: "" +# +# This variable will override all LC-variables!! +# Again, ROOT_USES_LANG must be set to "yes", if an effect on the superuser +# account is desired. +# +RC_LC_ALL="" + +## Type: string +## Default: "" +# +# This defines the locale in which messages of programs and +# libraries with i18n-support should appear if a translated +# message catalog for the library or the program is installed. +# This also provides localized yes/no answers. +# +RC_LC_MESSAGES="" + +## Type: string +## Default: "" +# +# This defines the locale for character handling and classification. +# The libc uses this value in language dependent function calls, such +# as e.g. uppercase/lowercase mapping of foreign characters. +# +RC_LC_CTYPE="" + +## Type: string +## Default: "" +# +# This defines the locale for sorting strings and characters. +# It is used by the libc to obtain the alphabetical order of characters +# (e.g. for string comparisons). +# +RC_LC_COLLATE="" + +## Type: string +## Default: "" +# +# This defines the locale for date and time output formats. +# i.e.: 06/09/1999 vs. 09.06.1999 +# +RC_LC_TIME="" + +## Type: string +## Default: "" +# +# This defines the locale for formatting and reading numbers. +# i.e.: 1,234.56 vs. 1.234,56 +# +RC_LC_NUMERIC="" + +## Type: string +## Default: "" +# +# This defines the locale for formatting and reading money values. +# +RC_LC_MONETARY="" + +## Type: string +## Default: "" +# +# This defines the locale for format of paper. +# +RC_LC_PAPER="" + +## Type: string(ctype) +## Default: ctype +# +# This defines if the user "root" should use the locale settings +# which are defined here. +# Value "ctype" means that root uses just LC_CTYPE. +# +ROOT_USES_LANG="ctype" + +## Type: yesno +## Default: no +# +# Workaround for missing forward of LANG and LC variables +# of e.g. ssh login connections. +# +AUTO_DETECT_UTF8="no" + +## Type: string +## Default: "" +# +# List of installed language supports, use by YaST2 +# +INSTALLED_LANGUAGES="" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/test/grub2_efi_test.rb new/yast2-bootloader-3.2.6/test/grub2_efi_test.rb --- old/yast2-bootloader-3.2.4/test/grub2_efi_test.rb 2016-10-19 10:38:08.000000000 +0200 +++ new/yast2-bootloader-3.2.6/test/grub2_efi_test.rb 2016-11-03 08:41:31.000000000 +0100 @@ -25,6 +25,7 @@ describe "write" do it "setups protective mbr to real disks containing /boot/efi" do subject.pmbr_action = :add + allow(Yast::BootStorage).to receive(:gpt_boot_disk?).and_return(true) allow(Yast::Storage).to receive(:GetEntryForMountpoint) .with("/boot/efi").and_return("device" => "/dev/md1") allow(Bootloader::Stage1Device).to receive(:new) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/test/grub2_test.rb new/yast2-bootloader-3.2.6/test/grub2_test.rb --- old/yast2-bootloader-3.2.4/test/grub2_test.rb 2016-10-19 10:38:08.000000000 +0200 +++ new/yast2-bootloader-3.2.6/test/grub2_test.rb 2016-11-03 08:41:31.000000000 +0100 @@ -57,6 +57,7 @@ stage1 = double(Bootloader::Stage1, devices: ["/dev/sda", "/dev/sdb1"], generic_mbr?: false, write: nil) allow(Bootloader::Stage1).to receive(:new).and_return(stage1) + allow(Yast::BootStorage).to receive(:gpt_boot_disk?).and_return(true) allow(Yast::Storage).to receive(:GetDisk) do |_m, dev| case dev when "/dev/sda" then { "device" => "/dev/sda", "label" => "msdos" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.2.4/test/language_test.rb new/yast2-bootloader-3.2.6/test/language_test.rb --- old/yast2-bootloader-3.2.4/test/language_test.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-bootloader-3.2.6/test/language_test.rb 2016-11-03 08:41:31.000000000 +0100 @@ -0,0 +1,27 @@ +require_relative "test_helper" + +require "bootloader/language" +require "cfa/memory_file" + +describe Bootloader::Language do + describe "rc_lang" do + it "returns value from parsed tree" do + path = File.expand_path("../data/language", __FILE__) + file = CFA::MemoryFile.new(File.read(path)) + + language = described_class.new(file_handler: file) + language.load + + expect(language.rc_lang).to eq "en_US.UTF-8" + end + + it "returns nil if value missing in parsed tree" do + file = CFA::MemoryFile.new("") + + language = described_class.new(file_handler: file) + language.load + + expect(language.rc_lang).to eq nil + end + end +end