On 01.11.2016 17:06, Richard W.M. Jones wrote:
On Tue, Nov 01, 2016 at 03:10:51PM +0300, Pavel Butsykin wrote:
On 01.11.2016 13:11, Richard W.M. Jones wrote:
On Thu, Oct 27, 2016 at 08:22:30PM +0300, Pavel Butsykin wrote:
match typ with
| Grub1 ->
- if config_file = "/boot/efi/EFI/redhat/grub.conf" then
- g#aug_transform "grub" "/boot/efi/EFI/redhat/grub.conf";
-
+ (match inspect.i_firmware with
+ | I_BIOS -> ()
+ | I_UEFI _ -> g#aug_transform "grub" config_file
+ );
new bootloader_grub1 g inspect config_file
| Grub2 -> new bootloader_grub2 g config_file
I don't think this part of the patch is correct. We need to use the
Augeas transform only for a particular path which is missing from the
Augeas lens.
It is necessary for /EFI/redhat/, but no need for others?
I believe so, because the Augeas grub lens has:
(* View: filter *)
let filter = incl "/boot/grub/grub.conf"
. incl "/boot/grub/menu.lst"
. incl "/etc/grub.conf"
so it wouldn't normally be activated for a grub.conf found under
any other path.
We can have the following paths:
/boot/efi/EFI/centos/grub.conf
/boot/efi/EFI/fedora/grub.conf
/boot/efi/EFI/*/grub.conf
which also need to activate. The Augeas grub lens has filters which are
used only for the BIOS. So (if I understand correctly) we have to use
the Augeas transform for other EFI paths too.
What do you think of the attached version instead? It's smaller and
more efficient (only makes 2 libguestfs API calls in the normal case)?
Yeah, I agree. And in this version the code is easier to read :)
The slow tests passed, so I'll push this version shortly.
Thanks,
Rich.
_______________________________________________
Libguestfs mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libguestfs