Mageia Bugzilla – Attachment 6706 Details for
Bug 16059
default entry set by drakboot isn't enforced by grub2
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
New Account
|
Forgot Password
[patch]
set default grub2 entry in /etc/default/grub
16059.diff (text/plain), 2.06 KB, created by
Thierry Vignaud
on 2015-06-05 14:58:40 CEST
(
hide
)
Description:
set default grub2 entry in /etc/default/grub
Filename:
MIME Type:
Creator:
Thierry Vignaud
Created:
2015-06-05 14:58:40 CEST
Size:
2.06 KB
patch
obsolete
>commit 18f38bba7de68cec85e5db719cb0a0ae3aa93888 >Author: Thierry Vignaud <thierry.vignaud@gmail.com> >Date: Fri Jun 5 08:53:28 2015 -0400 > > set default grub2 entry in /etc/default/grub > >diff --git a/perl-install/bootloader.pm b/perl-install/bootloader.pm >index 08872ec..4dd96ba 100644 >--- a/perl-install/bootloader.pm >+++ b/perl-install/bootloader.pm >@@ -298,6 +298,7 @@ sub read_grub2() { > return if is_empty_hash_ref(\%bootloader) & !-s "$::prefix/boot/grub2/grub.cfg"; > my %h = getVarsFromSh("$::prefix/etc/default/grub"); > $bootloader{timeout} = $h{GRUB_TIMEOUT}; >+ $bootloader{default} = $h{GRUB_DEFAULT}; > $bootloader{entries} = []; > my $entry; > foreach (cat_utf8("$::prefix/boot/grub2/grub.cfg")) { >@@ -318,11 +319,6 @@ sub read_grub2() { > } > } > >- # get default entry: >- foreach (run_program::rooted_get_stdout($::prefix, qw(grub2-editenv list))) { >- $bootloader{default} = $1 if /saved_entry=(.*)/; >- } >- > $bootloader{method} = 'grub2'; > \%bootloader; > } >@@ -1805,6 +1801,7 @@ sub write_grub2 { > $conf{GRUB_CMDLINE_LINUX_DEFAULT} = get_grub2_append($bootloader); > $conf{GRUB_GFXPAYLOAD_LINUX} = 'auto' if is_uefi(); > $conf{GRUB_DISABLE_RECOVERY} = 'false'; # for 'failsafe' entry >+ $conf{GRUB_DEFAULT} = $bootloader->{default}; # default entry > $conf{GRUB_TIMEOUT} = $bootloader->{timeout}; > renamef($f, $f . ($o_backup_extension || '.old')); > setVarsInSh($f, \%conf); >@@ -1814,15 +1811,6 @@ sub write_grub2 { > run_program::rooted($::prefix, 'update-grub2', '2>', \$error) or die "update-grub2 failed: $error"; > log::l("update-grub2 logs: $error"); > >- # set default entry: >- eval { >- my $f2 = "$::prefix/boot/grub2/grubenv"; >- cp_af($f2, $f2 . ($o_backup_extension || '.old')); >- run_program::rooted($::prefix, 'grub2-set-default', '2>', \$error, $bootloader->{default}) or die "grub2-set-default failed: $error"; >- }; >- if (my $err = $@) { >- log::l("error while running grub2-set-default: $err"); >- } > check_enough_space(); > write_grub2_install_sh($bootloader, $o_backup_extension); > }
commit 18f38bba7de68cec85e5db719cb0a0ae3aa93888 Author: Thierry Vignaud <thierry.vignaud@gmail.com> Date: Fri Jun 5 08:53:28 2015 -0400 set default grub2 entry in /etc/default/grub diff --git a/perl-install/bootloader.pm b/perl-install/bootloader.pm index 08872ec..4dd96ba 100644 --- a/perl-install/bootloader.pm +++ b/perl-install/bootloader.pm @@ -298,6 +298,7 @@ sub read_grub2() { return if is_empty_hash_ref(\%bootloader) & !-s "$::prefix/boot/grub2/grub.cfg"; my %h = getVarsFromSh("$::prefix/etc/default/grub"); $bootloader{timeout} = $h{GRUB_TIMEOUT}; + $bootloader{default} = $h{GRUB_DEFAULT}; $bootloader{entries} = []; my $entry; foreach (cat_utf8("$::prefix/boot/grub2/grub.cfg")) { @@ -318,11 +319,6 @@ sub read_grub2() { } } - # get default entry: - foreach (run_program::rooted_get_stdout($::prefix, qw(grub2-editenv list))) { - $bootloader{default} = $1 if /saved_entry=(.*)/; - } - $bootloader{method} = 'grub2'; \%bootloader; } @@ -1805,6 +1801,7 @@ sub write_grub2 { $conf{GRUB_CMDLINE_LINUX_DEFAULT} = get_grub2_append($bootloader); $conf{GRUB_GFXPAYLOAD_LINUX} = 'auto' if is_uefi(); $conf{GRUB_DISABLE_RECOVERY} = 'false'; # for 'failsafe' entry + $conf{GRUB_DEFAULT} = $bootloader->{default}; # default entry $conf{GRUB_TIMEOUT} = $bootloader->{timeout}; renamef($f, $f . ($o_backup_extension || '.old')); setVarsInSh($f, \%conf); @@ -1814,15 +1811,6 @@ sub write_grub2 { run_program::rooted($::prefix, 'update-grub2', '2>', \$error) or die "update-grub2 failed: $error"; log::l("update-grub2 logs: $error"); - # set default entry: - eval { - my $f2 = "$::prefix/boot/grub2/grubenv"; - cp_af($f2, $f2 . ($o_backup_extension || '.old')); - run_program::rooted($::prefix, 'grub2-set-default', '2>', \$error, $bootloader->{default}) or die "grub2-set-default failed: $error"; - }; - if (my $err = $@) { - log::l("error while running grub2-set-default: $err"); - } check_enough_space(); write_grub2_install_sh($bootloader, $o_backup_extension); }
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 16059
: 6706 |
6707