Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package yast2-bootloader for openSUSE:Factory checked in at 2021-07-04 22:10:13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-bootloader (Old) and /work/SRC/openSUSE:Factory/.yast2-bootloader.new.2625 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-bootloader" Sun Jul 4 22:10:13 2021 rev:309 rq:901413 version:4.4.4 Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-bootloader/yast2-bootloader.changes 2021-06-15 16:37:17.373688556 +0200 +++ /work/SRC/openSUSE:Factory/.yast2-bootloader.new.2625/yast2-bootloader.changes 2021-07-04 22:10:14.873458777 +0200 @@ -1,0 +2,7 @@ +Fri Jun 18 07:28:57 UTC 2021 - Dirk M??ller <dmuel...@suse.com> + +- add riscv64 support (jsc#PM-2612) + * done by Andreas Schwab <sch...@suse.de> +- 4.4.4 + +------------------------------------------------------------------- Old: ---- yast2-bootloader-4.4.3.tar.bz2 New: ---- yast2-bootloader-4.4.4.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-bootloader.spec ++++++ --- /var/tmp/diff_new_pack.PsjpYW/_old 2021-07-04 22:10:15.345455125 +0200 +++ /var/tmp/diff_new_pack.PsjpYW/_new 2021-07-04 22:10:15.349455094 +0200 @@ -17,13 +17,12 @@ Name: yast2-bootloader -Version: 4.4.3 +Version: 4.4.4 Release: 0 Summary: YaST2 - Bootloader Configuration License: GPL-2.0-or-later Group: System/YaST URL: https://github.com/yast/yast-bootloader - Source0: %{name}-%{version}.tar.bz2 BuildRequires: yast2 >= 4.3.41 ++++++ yast2-bootloader-4.4.3.tar.bz2 -> yast2-bootloader-4.4.4.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-4.4.3/package/yast2-bootloader.changes new/yast2-bootloader-4.4.4/package/yast2-bootloader.changes --- old/yast2-bootloader-4.4.3/package/yast2-bootloader.changes 2021-06-09 16:52:39.000000000 +0200 +++ new/yast2-bootloader-4.4.4/package/yast2-bootloader.changes 2021-06-23 08:29:45.000000000 +0200 @@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Fri Jun 18 07:28:57 UTC 2021 - Dirk M??ller <dmuel...@suse.com> + +- add riscv64 support (jsc#PM-2612) + * done by Andreas Schwab <sch...@suse.de> +- 4.4.4 + +------------------------------------------------------------------- Wed Jun 9 13:51:01 UTC 2021 - Guillaume GARDET <guillaume.gar...@opensuse.org> - Enable linuxefi/initrdefi on x86 only as grub does not understand diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-4.4.3/package/yast2-bootloader.spec new/yast2-bootloader-4.4.4/package/yast2-bootloader.spec --- old/yast2-bootloader-4.4.3/package/yast2-bootloader.spec 2021-06-09 16:52:39.000000000 +0200 +++ new/yast2-bootloader-4.4.4/package/yast2-bootloader.spec 2021-06-23 08:29:45.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package yast2-bootloader # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,13 +17,12 @@ Name: yast2-bootloader -Version: 4.4.3 +Version: 4.4.4 Release: 0 Summary: YaST2 - Bootloader Configuration License: GPL-2.0-or-later Group: System/YaST -Url: https://github.com/yast/yast-bootloader - +URL: https://github.com/yast/yast-bootloader Source0: %{name}-%{version}.tar.bz2 BuildRequires: yast2 >= 4.3.41 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-4.4.3/src/lib/bootloader/bootloader_factory.rb new/yast2-bootloader-4.4.4/src/lib/bootloader/bootloader_factory.rb --- old/yast2-bootloader-4.4.3/src/lib/bootloader/bootloader_factory.rb 2021-06-09 16:52:39.000000000 +0200 +++ new/yast2-bootloader-4.4.4/src/lib/bootloader/bootloader_factory.rb 2021-06-23 08:29:45.000000000 +0200 @@ -59,8 +59,9 @@ system_bl = nil end ret = system_bl ? [system.name] : [] # use current as first - ret << "grub2" unless Yast::Arch.aarch64 # grub2 everywhere except aarch64 - ret << "grub2-efi" if Yast::Arch.x86_64 || Yast::Arch.aarch64 + # grub2 everywhere except aarch64 or riscv64 + ret << "grub2" unless Systeminfo.efi_mandatory? + ret << "grub2-efi" if Systeminfo.efi_supported? ret << "none" # avoid double entry for selected one ret.uniq @@ -95,7 +96,7 @@ end def proposed_name - return "grub2-efi" if Yast::Arch.aarch64 || Yast::Arch.arm + return "grub2-efi" if Systeminfo.efi_mandatory? return "grub2-efi" if Yast::Arch.x86_64 && boot_efi? diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-4.4.3/src/lib/bootloader/grub2efi.rb new/yast2-bootloader-4.4.4/src/lib/bootloader/grub2efi.rb --- old/yast2-bootloader-4.4.3/src/lib/bootloader/grub2efi.rb 2021-06-09 16:52:39.000000000 +0200 +++ new/yast2-bootloader-4.4.4/src/lib/bootloader/grub2efi.rb 2021-06-23 08:29:45.000000000 +0200 @@ -103,6 +103,8 @@ when "aarch64" res << "grub2-arm64-efi" res << "shim" << "mokutil" if secure_boot + when "riscv64" + res << "grub2-riscv64-efi" else log.warn "Unknown architecture #{Yast::Arch.architecture} for EFI" end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-4.4.3/src/lib/bootloader/grub_install.rb new/yast2-bootloader-4.4.4/src/lib/bootloader/grub_install.rb --- old/yast2-bootloader-4.4.3/src/lib/bootloader/grub_install.rb 2021-06-09 16:52:39.000000000 +0200 +++ new/yast2-bootloader-4.4.4/src/lib/bootloader/grub_install.rb 2021-06-23 08:29:45.000000000 +0200 @@ -40,9 +40,8 @@ if no_device_install? Yast::Execute.on_target(cmd) - # workaround for arm on SLE15 SP2 (bsc#1167015) - # run grub2-install also non-removable if efi is there - if (Yast::Arch.aarch64 || Yast::Arch.arm) && Systeminfo.writable_efivars? + + if non_removable_efi? cmd.delete("--removable") Yast::Execute.on_target(cmd) end @@ -125,7 +124,15 @@ # point) or there is no efi variable exposed. Install grub in the # removable location there. # Workaround for SLE15 SP2 - run always as removable on arm (bsc#1167015) - Yast::Arch.aarch64 || Yast::Arch.arm || (efi && !Systeminfo.writable_efivars?) + Yast::Arch.aarch64 || Yast::Arch.arm || Yast::Arch.riscv64 || + (efi && !Systeminfo.writable_efivars?) + end + + def non_removable_efi? + # workaround for arm on SLE15 SP2 (bsc#1167015) + # run grub2-install also non-removable if efi is there + (Yast::Arch.aarch64 || Yast::Arch.arm || Yast::Arch.riscv64) && + Systeminfo.writable_efivars? end def no_device_install? @@ -145,7 +152,8 @@ "i386" => "i386-efi", "x86_64" => "x86_64-efi", "arm" => "arm-efi", - "aarch64" => "arm64-efi" + "aarch64" => "arm64-efi", + "riscv64" => "riscv64-efi" }.freeze def target return @target if @target diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-4.4.3/src/lib/bootloader/systeminfo.rb new/yast2-bootloader-4.4.4/src/lib/bootloader/systeminfo.rb --- old/yast2-bootloader-4.4.3/src/lib/bootloader/systeminfo.rb 2021-06-09 16:52:39.000000000 +0200 +++ new/yast2-bootloader-4.4.4/src/lib/bootloader/systeminfo.rb 2021-06-23 08:29:45.000000000 +0200 @@ -85,7 +85,13 @@ # # @return [Boolean] true if system can (in principle) boot via UEFI def efi_supported? - Yast::Arch.x86_64 || Yast::Arch.i386 || Yast::Arch.aarch64 || Yast::Arch.arm + Yast::Arch.x86_64 || Yast::Arch.i386 || efi_mandatory? + end + + # Check if EFI mandatory on this system. + # @return [Boolean] true if system must boot via EFI + def efi_mandatory? + Yast::Arch.aarch64 || Yast::Arch.arm || Yast::Arch.riscv64 end # Check if shim-install should be used instead of grub2-install. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-4.4.3/src/modules/BootArch.rb new/yast2-bootloader-4.4.4/src/modules/BootArch.rb --- old/yast2-bootloader-4.4.3/src/modules/BootArch.rb 2021-06-09 16:52:39.000000000 +0200 +++ new/yast2-bootloader-4.4.4/src/modules/BootArch.rb 2021-06-23 08:29:45.000000000 +0200 @@ -55,7 +55,7 @@ ) kernel_cmdline = Kernel.GetCmdLine.dup - if Arch.i386 || Arch.x86_64 || Arch.aarch64 || Arch.arm || Arch.ppc + if Arch.i386 || Arch.x86_64 || Arch.aarch64 || Arch.arm || Arch.ppc || Arch.riscv64 ret = kernel_cmdline ret << " resume=#{resume}" unless resume.empty? ret << " #{features}" unless features.empty? diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-4.4.3/src/modules/BootSupportCheck.rb new/yast2-bootloader-4.4.4/src/modules/BootSupportCheck.rb --- old/yast2-bootloader-4.4.3/src/modules/BootSupportCheck.rb 2021-06-09 16:52:39.000000000 +0200 +++ new/yast2-bootloader-4.4.4/src/modules/BootSupportCheck.rb 2021-06-23 08:29:45.000000000 +0200 @@ -79,11 +79,11 @@ return true if type == "none" # grub2 is sooo cool... - return true if type == "grub2" && !Arch.aarch64 && !Arch.arm + return true if type == "grub2" && !::Bootloader::Systeminfo.efi_mandatory? return true if (Arch.i386 || Arch.x86_64) && type == "grub2-efi" && efi? - return true if type == "grub2-efi" && (Arch.aarch64 || Arch.arm) + return true if type == "grub2-efi" && ::Bootloader::Systeminfo.efi_mandatory? log.error "Unsupported combination of hardware platform #{Arch.architecture} and bootloader #{type}" add_new_problem( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-4.4.3/test/grub2_efi_test.rb new/yast2-bootloader-4.4.4/test/grub2_efi_test.rb --- old/yast2-bootloader-4.4.3/test/grub2_efi_test.rb 2021-06-09 16:52:39.000000000 +0200 +++ new/yast2-bootloader-4.4.4/test/grub2_efi_test.rb 2021-06-23 08:29:45.000000000 +0200 @@ -109,6 +109,13 @@ expect(subject.secure_boot).to eq true end + + it "proposes to use secure boot for riscv64" do + allow(Yast::Arch).to receive(:architecture).and_return("riscv64") + subject.propose + + expect(subject.secure_boot).to eq true + end end describe "#packages" do @@ -136,6 +143,12 @@ expect(subject.packages).to include("grub2-x86_64-efi") end + it "adds to list grub2-riscv64-efi on riscv64" do + allow(Yast::Arch).to receive(:architecture).and_return("riscv64") + + expect(subject.packages).to include("grub2-riscv64-efi") + end + it "adds to list shim and mokutil on x86_64 with secure boot" do allow(Yast::Arch).to receive(:architecture).and_return("x86_64") subject.secure_boot = true diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-bootloader-4.4.3/test/grub_install_test.rb new/yast2-bootloader-4.4.4/test/grub_install_test.rb --- old/yast2-bootloader-4.4.3/test/grub_install_test.rb 2021-06-09 16:52:39.000000000 +0200 +++ new/yast2-bootloader-4.4.4/test/grub_install_test.rb 2021-06-23 08:29:45.000000000 +0200 @@ -84,6 +84,14 @@ subject.execute(devices: []) end + it "runs with target riscv64-efi on riscv64" do + stub_arch("riscv64") + stub_efivars(removable: true) + expect_grub2_install("riscv64-efi", removable: true) + + subject.execute(devices: []) + end + it "runs twice as removable and non removable on aarch64 with efi vars (bsc#1167015)" do stub_arch("aarch64") stub_efivars(removable: false)