Hello community, here is the log from the commit of package yast2-bootloader for openSUSE:Factory checked in at 2014-07-11 20:05:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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 2014-07-02 15:04:07.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.yast2-bootloader.new/yast2-bootloader.changes 2014-07-11 20:05:36.000000000 +0200 @@ -1,0 +2,38 @@ +Fri Jul 11 08:17:54 UTC 2014 - jreidin...@suse.com + +- fix writing sysconfig for grub1 (bnc#885634) +- 3.1.66 + +------------------------------------------------------------------- +Fri Jul 11 07:11:41 UTC 2014 - mch...@suse.com + +- fix secure boot widget did not function from installed system + because bootloader not get re-installed (bnc#882124) +- 3.1.65 + +------------------------------------------------------------------- +Wed Jul 9 09:49:21 UTC 2014 - jreidin...@suse.com + +- add check for combination of MBR, GPT, btrfs and missing + bios_grub partitition (bnc#886143) +- 3.1.64 + +------------------------------------------------------------------- +Tue Jul 8 11:08:06 UTC 2014 - jreidin...@suse.com + +- warn user if no location chosen for stage 1 (bnc#885208) +- 3.1.63 + +------------------------------------------------------------------- +Mon Jul 7 13:33:19 UTC 2014 - jreidin...@suse.com + +- use only simple device map on s390 (bnc#884798, bnc#885984) +- 3.1.62 + +------------------------------------------------------------------- +Thu Jul 3 07:33:51 UTC 2014 - jreidin...@suse.com + +- add perl-Bootloader-YAML to needed packages (BNC#885496) +- 3.1.61 + +------------------------------------------------------------------- Old: ---- yast2-bootloader-3.1.60.tar.bz2 New: ---- yast2-bootloader-3.1.66.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-bootloader.spec ++++++ --- /var/tmp/diff_new_pack.6nGahM/_old 2014-07-11 20:05:37.000000000 +0200 +++ /var/tmp/diff_new_pack.6nGahM/_new 2014-07-11 20:05:37.000000000 +0200 @@ -17,7 +17,7 @@ Name: yast2-bootloader -Version: 3.1.60 +Version: 3.1.66 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ yast2-bootloader-3.1.60.tar.bz2 -> yast2-bootloader-3.1.66.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.1.60/package/yast2-bootloader.changes new/yast2-bootloader-3.1.66/package/yast2-bootloader.changes --- old/yast2-bootloader-3.1.60/package/yast2-bootloader.changes 2014-07-01 08:11:44.000000000 +0200 +++ new/yast2-bootloader-3.1.66/package/yast2-bootloader.changes 2014-07-11 10:08:30.000000000 +0200 @@ -1,8 +1,46 @@ ------------------------------------------------------------------- +Fri Jul 11 08:17:54 UTC 2014 - jreidin...@suse.com + +- fix writing sysconfig for grub1 (bnc#885634) +- 3.1.66 + +------------------------------------------------------------------- +Fri Jul 11 07:11:41 UTC 2014 - mch...@suse.com + +- fix secure boot widget did not function from installed system + because bootloader not get re-installed (bnc#882124) +- 3.1.65 + +------------------------------------------------------------------- +Wed Jul 9 09:49:21 UTC 2014 - jreidin...@suse.com + +- add check for combination of MBR, GPT, btrfs and missing + bios_grub partitition (bnc#886143) +- 3.1.64 + +------------------------------------------------------------------- +Tue Jul 8 11:08:06 UTC 2014 - jreidin...@suse.com + +- warn user if no location chosen for stage 1 (bnc#885208) +- 3.1.63 + +------------------------------------------------------------------- +Mon Jul 7 13:33:19 UTC 2014 - jreidin...@suse.com + +- use only simple device map on s390 (bnc#884798, bnc#885984) +- 3.1.62 + +------------------------------------------------------------------- +Thu Jul 3 07:33:51 UTC 2014 - jreidin...@suse.com + +- add perl-Bootloader-YAML to needed packages (BNC#885496) +- 3.1.61 + +------------------------------------------------------------------- Fri Jun 27 13:31:01 UTC 2014 - jreidin...@suse.com - do not allow to install to partition with xfs otherwise fs can be - broken due to missing reserved space in xfs(bnc#884255) + broken due to missing reserved space in xfs(bnc#884255) - 3.1.60 ------------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.1.60/package/yast2-bootloader.spec new/yast2-bootloader-3.1.66/package/yast2-bootloader.spec --- old/yast2-bootloader-3.1.60/package/yast2-bootloader.spec 2014-07-01 08:11:44.000000000 +0200 +++ new/yast2-bootloader-3.1.66/package/yast2-bootloader.spec 2014-07-11 10:08:30.000000000 +0200 @@ -17,7 +17,7 @@ Name: yast2-bootloader -Version: 3.1.60 +Version: 3.1.66 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.1.60/src/include/bootloader/routines/misc.rb new/yast2-bootloader-3.1.66/src/include/bootloader/routines/misc.rb --- old/yast2-bootloader-3.1.60/src/include/bootloader/routines/misc.rb 2014-07-01 08:11:44.000000000 +0200 +++ new/yast2-bootloader-3.1.66/src/include/bootloader/routines/misc.rb 2014-07-11 10:08:30.000000000 +0200 @@ -1235,7 +1235,7 @@ comment ) - grub1_extended_sysconfig(sys_agent) if lt == "grub" + grub1_extended_sysconfig(inst_bootloader, sys_agent) if lt == "grub" nil end @@ -1243,7 +1243,7 @@ # extended sysconfig options to be used only for grub1 as grub2 store it # in its config (bnc#870890) # @note remove when grub1 support will be removed - def grub1_extended_sysconfig(sys_agent) + def grub1_extended_sysconfig(inst_bootloader, sys_agent) default_boot_section_name = "" # fix for bnc #440125 - default boot section with failsafe args # it is not possible create exact algoritmus but I hope it helps in diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.1.60/src/modules/BootCommon.rb new/yast2-bootloader-3.1.66/src/modules/BootCommon.rb --- old/yast2-bootloader-3.1.60/src/modules/BootCommon.rb 2014-07-01 08:11:44.000000000 +0200 +++ new/yast2-bootloader-3.1.66/src/modules/BootCommon.rb 2014-07-11 10:08:30.000000000 +0200 @@ -865,26 +865,22 @@ # replace grub with trustedgrub if Ops.get(@globals, "trusted_grub", "") == "true" - if Builtins.contains(bootloader_packages, "grub") - bootloader_packages = Builtins.filter(bootloader_packages) do |key| - key != "grub" - end - end - - bootloader_packages = Builtins.add(bootloader_packages, "trustedgrub") + bootloader_packages.delete("grub") + bootloader_packages << "trustedgrub" end + # we need perl-Bootloader-YAML API to communicate with pbl + bootloader_packages << "perl-Bootloader-YAML" + Builtins.y2milestone("Bootloader packages: %1", bootloader_packages) # don't configure package manager during autoinstallation preparing if Mode.normal && !(Mode.config || Mode.repair) PackageSystem.InstallAll(bootloader_packages) elsif Stage.initial - pkg_added = false - Builtins.foreach(bootloader_packages) do |p| + bootloader_packages.each do |p| Builtins.y2milestone("Select bootloader package: %1", p) PackagesProposal.AddResolvables("yast2-bootloader", :package, [p]) - pkg_added = true end end elsif !Mode.test @@ -933,7 +929,7 @@ def setSystemSecureBootStatus(enable) Builtins.y2milestone("Set secure boot: %2 => %1", enable, @secure_boot) - location_changed = true if @secure_boot != enable # secure boot require reinstall of stage 1 + @location_changed = true if @secure_boot != enable # secure boot require reinstall of stage 1 @secure_boot = enable nil diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.1.60/src/modules/BootGRUB2.rb new/yast2-bootloader-3.1.66/src/modules/BootGRUB2.rb --- old/yast2-bootloader-3.1.60/src/modules/BootGRUB2.rb 2014-07-01 08:11:44.000000000 +0200 +++ new/yast2-bootloader-3.1.66/src/modules/BootGRUB2.rb 2014-07-11 10:08:30.000000000 +0200 @@ -25,6 +25,7 @@ import "Arch" import "Storage" import "BootCommon" + import "HTML" class BootGRUB2Class < GRUB2Base def main @@ -224,6 +225,13 @@ line << "</li>" end + if ["boot_root", "boot_boot", "boot_mbr"].none? { |loc| BootCommon.globals[loc] == "true" } + # no location chosen, so warn user that it is problem unless he is sure + msg = _("Warning: No location for bootloader stage1 selected." \ + "Unless you know what you are doing please select above location.") + line << "<li>" << HTML.Colorize(msg, "red") << "</li>" + end + line << "</ul>" # TRANSLATORS: title for list of location proposals @@ -321,7 +329,8 @@ BootCommon.bootloader_attribs, "grub2", { - "required_packages" => ["grub2"], + # we need syslinux to have generic mbr bnc#885496 + "required_packages" => ["grub2", "syslinux"], "loader_name" => "GRUB2", "initializer" => fun_ref(method(:Initializer), "void ()") } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.1.60/src/modules/BootStorage.rb new/yast2-bootloader-3.1.66/src/modules/BootStorage.rb --- old/yast2-bootloader-3.1.60/src/modules/BootStorage.rb 2014-07-01 08:11:44.000000000 +0200 +++ new/yast2-bootloader-3.1.66/src/modules/BootStorage.rb 2014-07-11 10:08:30.000000000 +0200 @@ -894,6 +894,27 @@ ret end + def propose_s390_device_map + # s390 have some special requirements for device map. Keep it short and simple (bnc#884798) + # TODO device map is not needed at all for s390, so if we get rid of perl-Bootloader translations + # we can keep it empty + # TODO yes, I know it is typo, but it is everywhere, so fix it when we have time to fix all problems + @bois_id_missing = false + + boot_part = Storage.GetEntryForMountpoint("/boot/zipl") + boot_part = Storage.GetEntryForMountpoint("/boot") if boot_part.empty? + boot_part = Storage.GetEntryForMountpoint("/") if boot_part.empty? + + raise "Cannot find boot partition" if boot_part.empty? + + disk = Storage.GetDiskPartition(boot_part["device"])["disk"] + + @device_mapping = { "hd0" => disk } + + Builtins.y2milestone("Detected device mapping: %1", @device_mapping) + + nil + end #** helper functions END ** @@ -915,13 +936,16 @@ # if usbDiskDevice == hd0 && BootDevice != usbDiskDevice: # change order of disks in device_mappings to have BootDevice as hd0 # FIXME: remove that function from here, as it is grub only - # NOTE: there is a local copy in routines/grub/misc.ycp now def ProposeDeviceMap - usb_disks = [] # contains those usb removable disks - @device_mapping = {} @multipath_mapping = {} + if Arch.s390 + return propose_s390_device_map + end + + usb_disks = [] # contains usb removable disks as it can affect BIOS order of disks + targetMap = {} if Mode.config Builtins.y2milestone("Skipping device map proposing in Config mode") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-3.1.60/src/modules/BootSupportCheck.rb new/yast2-bootloader-3.1.66/src/modules/BootSupportCheck.rb --- old/yast2-bootloader-3.1.60/src/modules/BootSupportCheck.rb 2014-07-01 08:11:44.000000000 +0200 +++ new/yast2-bootloader-3.1.66/src/modules/BootSupportCheck.rb 2014-07-11 10:08:30.000000000 +0200 @@ -25,6 +25,7 @@ Yast.import "Bootloader" Yast.import "Arch" Yast.import "Storage" + Yast.import "Partitions" Yast.import "Region" Yast.import "BootCommon" Yast.import "BootStorage" @@ -134,6 +135,26 @@ ret end + # when grub2 is used and install stage1 to MBR, target /boot is btrfs, label is gpt-like + # then there must be special partition to install core.img, otherwise grub2-install failed + def check_gpt_reserved_partition + return true if BootCommon.globals["boot_mbr"] != "true" + + devices = Storage.GetTargetMap + mbr_disk = Storage.GetDisk(devices, BootCommon.FindMBRDisk) + boot_device = Storage.GetPartition(devices, BootCommon.getBootPartition) + return true if mbr_disk["label"] != "gpt" + return true if boot_device["used_fs"] != :btrfs + return true if mbr_disk["partitions"].any? {|p| p["fsid"] == Partitions.fsid_bios_grub } + + Builtins.y2error("Used together boot from MBR, gpt, btrfs and without bios_grub partition.") + # TRANSLATORS: description of technical problem. Do not translate technical terms unless native language have well known translation. + AddNewProblem(_( + "Boot from MBR does not work together with btrfs filesystem and GPT disk label without bios_grub partition." \ + "To fix this issue, create bios_grub partition or use any ext filesystem for boot partition or do not install stage 1 to MBR." + )) + return false + end # Check if boot partition exist # check if not on raid0 @@ -266,6 +287,7 @@ ret = GRUB() # ensure that s390 have ext* partition for booting (bnc#873951) ret &&= check_zipl_part if Arch.s390 + ret &&= check_gpt_reserved_partition if Arch.x86_64 end # GRUB2EFI-related check -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org