Hello community,

here is the log from the commit of package yast2-bootloader for 
openSUSE:Factory checked in at 2014-07-02 15:04:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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-01 07:05:24.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-bootloader.new/yast2-bootloader.changes   
2014-07-02 15:04:07.000000000 +0200
@@ -1,0 +2,7 @@
+Fri Jun 27 13:31:01 UTC 2014 - [email protected]
+
+- do not allow to install to partition with xfs otherwise fs can be
+  broken due to missing reserved space in xfs(bnc#884255) 
+- 3.1.60
+
+-------------------------------------------------------------------

Old:
----
  yast2-bootloader-3.1.59.tar.bz2

New:
----
  yast2-bootloader-3.1.60.tar.bz2

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

Other differences:
------------------
++++++ yast2-bootloader.spec ++++++
--- /var/tmp/diff_new_pack.wa0YLK/_old  2014-07-02 15:04:08.000000000 +0200
+++ /var/tmp/diff_new_pack.wa0YLK/_new  2014-07-02 15:04:08.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-bootloader
-Version:        3.1.59
+Version:        3.1.60
 Release:        0
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build

++++++ yast2-bootloader-3.1.59.tar.bz2 -> yast2-bootloader-3.1.60.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-bootloader-3.1.59/package/yast2-bootloader.changes 
new/yast2-bootloader-3.1.60/package/yast2-bootloader.changes
--- old/yast2-bootloader-3.1.59/package/yast2-bootloader.changes        
2014-06-27 14:38:21.000000000 +0200
+++ new/yast2-bootloader-3.1.60/package/yast2-bootloader.changes        
2014-07-01 08:11:44.000000000 +0200
@@ -1,4 +1,11 @@
 -------------------------------------------------------------------
+Fri Jun 27 13:31:01 UTC 2014 - [email protected]
+
+- do not allow to install to partition with xfs otherwise fs can be
+  broken due to missing reserved space in xfs(bnc#884255) 
+- 3.1.60
+
+-------------------------------------------------------------------
 Fri Jun 27 12:27:05 UTC 2014 - [email protected]
 
 - properly install needed packages in autoinstallation
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-bootloader-3.1.59/package/yast2-bootloader.spec 
new/yast2-bootloader-3.1.60/package/yast2-bootloader.spec
--- old/yast2-bootloader-3.1.59/package/yast2-bootloader.spec   2014-06-27 
14:38:21.000000000 +0200
+++ new/yast2-bootloader-3.1.60/package/yast2-bootloader.spec   2014-07-01 
08:11:44.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-bootloader
-Version:        3.1.59
+Version:        3.1.60
 Release:        0
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-bootloader-3.1.59/src/include/bootloader/grub/options.rb 
new/yast2-bootloader-3.1.60/src/include/bootloader/grub/options.rb
--- old/yast2-bootloader-3.1.59/src/include/bootloader/grub/options.rb  
2014-06-27 14:38:21.000000000 +0200
+++ new/yast2-bootloader-3.1.60/src/include/bootloader/grub/options.rb  
2014-07-01 08:11:44.000000000 +0200
@@ -735,6 +735,14 @@
     # @return [Yast::Term] with widgets
 
     def grubBootLoaderLocationWidget
+      if BootStorage.can_boot_from_partition
+        partition_boot = BootStorage.BootPartitionDevice == 
BootStorage.RootPartitionDevice ?
+          Left(CheckBox(Id("boot_root"), _("Boot from &Root Partition"))) :
+          Left(CheckBox(Id("boot_boot"), _("Boo&t from Boot Partition")))
+      else
+        partition_boot = Empty()
+      end
+
       contents = VBox(
         VSpacing(1),
         Frame(
@@ -746,9 +754,7 @@
                 Left(
                   CheckBox(Id("boot_mbr"), _("Boot from &Master Boot Record"))
                 ),
-                BootStorage.BootPartitionDevice == 
BootStorage.RootPartitionDevice ?
-                  Left(CheckBox(Id("boot_root"), _("Boot from &Root 
Partition"))) :
-                  Left(CheckBox(Id("boot_boot"), _("Boo&t from Boot 
Partition"))),
+                partition_boot,
                 BootStorage.ExtendedPartitionDevice ?
                   Left(
                     CheckBox(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-bootloader-3.1.59/src/include/bootloader/grub2/misc.rb 
new/yast2-bootloader-3.1.60/src/include/bootloader/grub2/misc.rb
--- old/yast2-bootloader-3.1.59/src/include/bootloader/grub2/misc.rb    
2014-06-27 14:38:21.000000000 +0200
+++ new/yast2-bootloader-3.1.60/src/include/bootloader/grub2/misc.rb    
2014-07-01 08:11:44.000000000 +0200
@@ -26,6 +26,7 @@
       Yast.import "StorageDevices"
       Yast.import "Mode"
       Yast.import "BootCommon"
+      Yast.import "BootStorage"
       Yast.import "PackageSystem"
       Yast.import "Map"
       Yast.import "Arch"
@@ -695,6 +696,11 @@
         selected_location = :mbr
       end
 
+      if !BootStorage.can_boot_from_partition
+        Builtins.y2milestone("/boot cannot be used to install stage1")
+        selected_location = :mbr
+      end
+
       SetBootloaderDevice(selected_location)
       if !Builtins.contains(
           BootStorage.getPartitionList(:boot, "grub"),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-bootloader-3.1.59/src/modules/BootGRUB2.rb 
new/yast2-bootloader-3.1.60/src/modules/BootGRUB2.rb
--- old/yast2-bootloader-3.1.59/src/modules/BootGRUB2.rb        2014-06-27 
14:38:21.000000000 +0200
+++ new/yast2-bootloader-3.1.60/src/modules/BootGRUB2.rb        2014-07-01 
08:11:44.000000000 +0200
@@ -183,7 +183,6 @@
     def urlLocationSummary
       Builtins.y2milestone("Prepare url summary for GRUB2")
       # FIXME identical code in BootGRUB module
-      locations = []
       line = "<ul>\n<li>"
       if BootCommon.globals["boot_mbr"] == "true"
         line << _(
@@ -195,36 +194,40 @@
         )
       end
       line << "</li>\n"
-      locations << line
 
-      line = "<li>"
+      # do not allow to switch on boot from partition that do not support it
+      if BootStorage.can_boot_from_partition
+        line << "<li>"
 
-      # check for separated boot partition, use root otherwise
-      if BootStorage.BootPartitionDevice != BootStorage.RootPartitionDevice
-        if BootCommon.globals["boot_boot"] == "true"
-          line << _(
-            "Install bootcode into /boot partition (<a 
href=\"disable_boot_boot\">do not install</a>)"
-          )
+        # check for separated boot partition, use root otherwise
+        if BootStorage.BootPartitionDevice != BootStorage.RootPartitionDevice
+          if BootCommon.globals["boot_boot"] == "true"
+            line << _(
+              "Install bootcode into /boot partition (<a 
href=\"disable_boot_boot\">do not install</a>)"
+            )
+          else
+            line << _(
+              "Do not install bootcode into /boot partition (<a 
href=\"enable_boot_boot\">install</a>)"
+            )
+          end
         else
-          line << _(
-            "Do not install bootcode into /boot partition (<a 
href=\"enable_boot_boot\">install</a>)"
-          )
-        end
-      else
-        if BootCommon.globals["boot_root"] == "true"
-          line << _(
-            "Install bootcode into \"/\" partition (<a 
href=\"disable_boot_root\">do not install</a>)"
-          )
-        else
-          line << _(
-            "Do not install bootcode into \"/\" partition (<a 
href=\"enable_boot_root\">install</a>)"
-          )
+          if BootCommon.globals["boot_root"] == "true"
+            line << _(
+              "Install bootcode into \"/\" partition (<a 
href=\"disable_boot_root\">do not install</a>)"
+            )
+          else
+            line << _(
+              "Do not install bootcode into \"/\" partition (<a 
href=\"enable_boot_root\">install</a>)"
+            )
+          end
         end
+        line << "</li>"
       end
-      line << "</li></ul>"
-      locations << line
 
-      return _("Change Location: %s") % locations.join(" ")
+      line << "</ul>"
+
+      # TRANSLATORS: title for list of location proposals
+      return _("Change Location: %s") % line
     end
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-bootloader-3.1.59/src/modules/BootStorage.rb 
new/yast2-bootloader-3.1.60/src/modules/BootStorage.rb
--- old/yast2-bootloader-3.1.59/src/modules/BootStorage.rb      2014-06-27 
14:38:21.000000000 +0200
+++ new/yast2-bootloader-3.1.60/src/modules/BootStorage.rb      2014-07-01 
08:11:44.000000000 +0200
@@ -1412,6 +1412,23 @@
       ret
     end
 
+    def can_boot_from_partition
+      tm = Storage.GetTargetMap
+      partition = @BootPartitionDevice || @RootPartitionDevice
+
+      part = Storage.GetPartition(tm, partition)
+
+      if !part
+        Builtins.y2error("cannot find partition #{partition}")
+        return false
+      end
+
+      fs = part["used_fs"]
+      Builtins.y2milestone("FS for boot partition #{fs}")
+
+      # cannot install stage one to xfs as it doesn't have reserved space 
(bnc#884255)
+      return fs != :xfs
+    end
 
     # FATE#305008: Failover boot configurations for md arrays with redundancy
     # Function check partitions and set redundancy available if

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to