Bug 28374 - Mageia Live-distributions do not have "grub2" and "grub2-efi" installed
Summary: Mageia Live-distributions do not have "grub2" and "grub2-efi" installed
Status: RESOLVED INVALID
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: Cauldron
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: Mageia Bug Squad
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-02-18 15:43 CET by Alex Kotov
Modified: 2021-02-19 15:18 CET (History)
2 users (show)

See Also:
Source RPM:
CVE:
Status comment:


Attachments
screenshot (142.73 KB, image/png)
2021-02-18 15:44 CET, Alex Kotov
Details
bug-variant-2 (55.81 KB, application/x-xz)
2021-02-18 21:25 CET, Alex Kotov
Details
bug-variant-3 (50.70 KB, application/x-xz)
2021-02-18 21:25 CET, Alex Kotov
Details

Description Alex Kotov 2021-02-18 15:43:20 CET
Description of problem:
Hello. With all due respect, I do not really understand the moment with the final installation of the boot loader "grub2-efi" or "grub2" at the very end of the installation of Live distributions, for example - Mageia-8-rc-Live-Xfce-x86_64.iso.

The situation is such that if the network is not available (and it is not available in very many cases, for example, there is no wpa_supplicant (WiFi) in the system or there is simply no physical connection (Ethernet)), then the bootloader will not be installed. At the same time, the user has already formatted his disk. :)

Why not immediately include "grub2-efi" and "grub2" in the distribution package, so that in the absence of a network you do not go to external mirrors? It is assumed that the distribution should be completely self-contained and installed on any computer, even without a network connection. (?)

For experiments, I created a flash drive "MgaRemix" with the environment "Budgie-10.5.2 " (EN) with "grub2" and "grub2-efi" installed on it. I downloaded a VirtualBox virtual machine from a flash drive (with an additional, empty 10GB disk) and installed the system on this disk from a flash drive in EFI and without modes. In both cases, the system was installed without an additional request to download the "grub2-efi/grub" packages and loads perfectly.

To make sure, you can download the finished archive, unpack it to a USB flash drive (FAT32), make it bootable (cd /run/media/MyUSBDrive/boot/syslinux; BootInstall.bat) and repeat what I wrote above. If you previously put GRUB on the flash drive, you need to return it to its normal working state (as from the store) with the "gparted" program:
https://drive.google.com/drive/folders/18HEqXxOb5dTNArYy5vQA0HVZtYXgw9c5?usp=sharing

Q: why are "grub2-efi" and "grub" not installed in your Live builds?

Steps to Reproduce:
1. Download any Live distribution
2. Disable the network connection
3. Install the Live Distribution
Comment 1 Alex Kotov 2021-02-18 15:44:29 CET
Created attachment 12350 [details]
screenshot
Comment 2 Manuel Hiebel 2021-02-18 18:26:28 CET
Does your screenshot come from official live ?

grub2 is no installed in the livemode
But there is a local repository for needed package:
urpmq --sources grub2
/var/local/mga_rpms/core/grub2-2.04.0-29.mga8.x86_64.rpm

Draklive use and install needed packages from there.

see http://gitweb.mageia.org/software/build-system/draklive-config/tree/config/build.cfg#n174

Status: NEW => UNCONFIRMED
Ever confirmed: 1 => 0

Comment 3 Thomas Backlund 2021-02-18 18:36:35 CET
it should work without internet unless we have broken something...

adding martinw in cc

CC: (none) => mageia

Comment 4 Thomas Backlund 2021-02-18 18:41:09 CET
and if this is an external remix build then who-ever re-generates the isos need to ensure local rpm repo is added ->not really our bug
Comment 5 Martin Whitaker 2021-02-18 19:57:57 CET
Yes, there is a local repo on the Live ISO, so provided you haven't disabled it, you should be able to install grub2 or grub2-efi. I have just verified this works using the Mageia-8-rc-Live-Xfce-x86_64.iso in VirtualBox (not that I really needed to, as I test that every time I build a set of ISOs).

Please repeat your experiment, then when you get the error, open a terminal window and run the commands

  su -
  LC_ALL=C drakbug_report | xz > report.bug.xz

and attach the resulting report.bug.xz to this bug report.
Comment 6 Alex Kotov 2021-02-18 21:24:28 CET
In general, it looks like this...

variant -1
---
1. I disable the network adapter in VirtualBox (it is no longer in the system)
2. I boot from the Live-iso
3. I run draklive-install and it installs everything, including grub2 from the local repository. Everything works.

variant -2
---
1. I turn on the network adapter in VirtualBox (now it is part of the virtual machine)
2. Booting from Live-iso
3. I run draklive-install
4. Disconnecting the network connection
5. It installs everything EXCEPT grub2 (or grub2-efi) from the local repository. As a result, we get a screenshot that I have already published.

variant -3
---
1. I turn on the network adapter in VirtualBox (now it is part of the virtual machine)
2. Booting from Live-iso
3. Disconnecting the network connection
3. I run draklive-install
4. I get an error:
>[live@localhost ~]$ draklive-install
PID TTY TIME CMD
Ignore the following Glib::Object::Introspection & Gtk3 warnings
No protocol specified
Unable to init server: Could not connect: Connection refused
Cannot be run in console mode.

The behavior is very strange. It seems that the installer needs either a complete absence of a network card, or a reliable connection, the fact of which it determines at the very beginning of its own launch, and not at the stage when it really needs to install or not install packages from the local repository (that is, at the end). :)

Hello, Martin Whitaker.
Now I'm not sure if this is a bug, but on your recommendation I attach two reports:
report.bug2.xz -corresponds to variant -2 (from the test above)
report.bug3.xz -corresponds to variant -3 (from the test above)

Thank you all for your help. Now I will know where the local packages are located. :)

Sincerely,
Alex
Comment 7 Alex Kotov 2021-02-18 21:25:16 CET
Created attachment 12352 [details]
bug-variant-2
Comment 8 Alex Kotov 2021-02-18 21:25:39 CET
Created attachment 12353 [details]
bug-variant-3
Comment 9 Manuel Hiebel 2021-02-18 22:03:45 CET
You are using our iso, not a self made right ?

I tried to reproduce with virtualbox, but I can't yet

even with low memory to check change like http://gitweb.mageia.org/software/draklive-install/commit/?id=e4686b6185488e1e71fb9bbe2e25b3321b8e471b

if you run draklive-install from a terminal do you have more info ?
I have stuff like:

getting exclusive lock on rpm
getting lock on urpmi
examining synthesis file [/var/lib/urpmi/Live Core/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Live Nonfree/synthesis.hdlist.cz]
To satisfy dependencies, the following packages are going to be installed:
=> ok(auto)

installing grub2-common-2.04.0-29.mga8.x86_64.rpm console-setup-1.200-1.mga8.noarch.rpm grub2-2.04.0-29.mga8.x86_64.rpm from /var/local/mga_rpms/core
starting installing packages
created transaction for installing on / (remove=0, install=0, upgrade=3)
unlocking urpmi database
unlocking rpm database
getting exclusive lock on rpm
getting lock on urpmi
examining synthesis file [/var/lib/urpmi/Live Core/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Live Nonfree/synthesis.hdlist.cz]

installing grub2-mageia-theme-2.04.0-29.mga8.noarch.rpm from /var/local/mga_rpms/core
starting installing packages
created transaction for installing on / (remove=0, install=0, upgrade=1)
Generating grub configuration file ...
Found theme: /boot/grub2/themes/maggy/theme.txt
Found linux image: /boot/vmlinuz-5.10.16-desktop-1.mga8
Found initrd image: /boot/initrd-5.10.16-desktop-1.mga8.img
Comment 10 Martin Whitaker 2021-02-18 22:05:30 CET
@Alex, I think you've hit bug 28280. Try entering the command

  xhost +si:localuser:root

in a terminal (running as the "live" user, not as root) before you start draklive-install.

This will be fixed on the final Mageia 8 ISOs.
Comment 11 Manuel Hiebel 2021-02-18 22:08:04 CET
indeed I'm already on pre-release
Comment 12 Alex Kotov 2021-02-19 04:28:42 CET
Manuel Hiebel, yes, I use exactly your native Mageia ISO: Mageia-8-rc-Live-Xfce-x86_64.iso

My Builds (MgaRemix) I assemble exclusively in VirtualBox: what I put, I collect as a result. I have no problems connecting local repositories, since I put these packages at the stage of the normal installation of the VM itself. Then I convert the *.VDI to *.sqfs and throw it on a flash drive. That's why I noticed that some strange things happen in the original Mageia live-iso and decided to report it here. :)

On this topic, I can add the following. Let's go back to variant-2 testing...

variant -2
---
1. I turn on the network adapter in VirtualBox (now it is part of the virtual machine)
2. Booting from Live-iso
3. I run draklive-install
4. Disconnecting the network connection
5. It installs everything EXCEPT grub2 (or grub2-efi) from the local repository. As a result, we get a screenshot that I have already published.

Manuel Hiebel, I ran draklive-install from the terminal, and disconnected the network connection. I get the following...
...
...many, many unnecessary packages are removed here...
...
removing package lib64lo10k1_0-1.2.2-1.mga8.x86_64
    47/49: removing lib64lo10k1_0-1.2.2-1.mga8.x86_64
                                 ############################################################################
removing package wmctrl-1.07-14.mga8.x86_64
    48/49: removing wmctrl-1.07-14.mga8.x86_64
                                 ############################################################################
removing package lib64uring1-0.7-2.mga8.x86_64
    49/49: removing lib64uring1-0.7-2.mga8.x86_64
                                 ############################################################################

Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.

      If you want to list systemd services use 'systemctl list-unit-files'.
      To see services enabled on particular target use
      'systemctl list-dependencies [target]'.

Created symlink /etc/systemd/system/multi-user.target.wants/crond.service → /usr/lib/systemd/system/crond.service.

Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.

      If you want to list systemd services use 'systemctl list-unit-files'.
      To see services enabled on particular target use
      'systemctl list-dependencies [target]'.

msec.service is not a native service, redirecting to systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable msec
Creating: target|kernel|dracut args|basicmodules 
remove-boot-splash: Format of /boot/initrd-5.10.12-desktop-2.mga8.img not recognized
No protocol specified
Unable to init server: Could not connect: Connection refused

(gurpmi:10486): Gtk-WARNING **: 21:45:08.532: cannot open display: :0.0

...HERE in the draklive-install window, he wrote that "Could not install the grub2 package" (as in the screenshot)...


Now by the light of Martin Whitaker I open another terminal and a command line in it:
> xhost +si:localuser:root

...and in the draklive-install window, I click the "Ok" button again and a miracle happens! It INSTALLS GRUB2!!! Hurray!
...
getting exclusive lock on rpm
getting lock on urpmi
examining synthesis file [/var/lib/urpmi/Live Core/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Live Nonfree/synthesis.hdlist.cz]
To satisfy dependencies, the following packages are going to be installed:
=> ok(auto)


installing grub2-common-2.04.0-27.mga8.x86_64.rpm grub2-2.04.0-27.mga8.x86_64.rpm console-setup-1.200-1.mga8.noarch.rpm from /var/local/mga_rpms/core
starting installing packages
created transaction for installing on / (remove=0, install=0, upgrade=3)
unlocking urpmi database
unlocking rpm database
getting exclusive lock on rpm
getting lock on urpmi
examining synthesis file [/var/lib/urpmi/Live Core/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Live Nonfree/synthesis.hdlist.cz]


installing grub2-mageia-theme-2.04.0-27.mga8.noarch.rpm from /var/local/mga_rpms/core
starting installing packages
created transaction for installing on / (remove=0, install=0, upgrade=1)
Generating grub configuration file ...
Found theme: /boot/grub2/themes/maggy/theme.txt
Found linux image: /boot/vmlinuz-5.10.12-desktop-2.mga8
Found initrd image: /boot/initrd-5.10.12-desktop-2.mga8.img
done
unlocking urpmi database
unlocking rpm database


Result: It can't be called anything but a miracle. ))
Maybe that's what was written on top of Martin Whitaker (bug 280). Just an error popped up from another place.

I'll wait for the next release. Thanks. :)
Comment 13 Alex Kotov 2021-02-19 04:46:16 CET
Sorry, there's a typo in the last sentence. I have incorrectly copied the bug number from the translator window. Must be:

"Maybe that's what was written on top of Martin Whitaker (bug 28280). Just an error popped up from another place."
Comment 14 Aurelien Oudelet 2021-02-19 15:18:50 CET
This needs fix from Bug 28280.
Closing as per Comment 12.

CC: (none) => ouaurelien
Status: UNCONFIRMED => RESOLVED
Resolution: (none) => INVALID


Note You need to log in before you can comment on or make changes to this bug.