I recommend you to read carefully to understand what is this all about.
Recently, I’ve complained about the fact Calamares was missing the “esp” flag, however, this is not even the tip of the iceberg, nor the real problem, I’ll explain deeply later.
I’ve tested another version of Manjaro, which is Manjaro Cinnamon (community flavor). I’ve taken this one because community versions tend to not follow exactly everything from the official versions, so I expected to not find the bug there and I was right. I’ll try to show you all issue and how to replicate it.
First off all, I booted Manjaro with proprietary drivers enabled since I’m on NVIDIA.
I also didn’t install Manjaro using the automatic installation as mostly do, I’ve chosen the manual one, so I’ve created this partitions as a test on a 240 GB SSD.
- The first partition is /boot/efi, I added 512 MiB (instead of 300 MiB), formated as fat32 and used the flag “boot”, the only one available since the “esp” was removed.
- The second partition is / or root, I added 70 GiB, formated as ext4 and used flag “root”.
- The last partition is /home, I added what’s left (or 153.1 GiB), formated as ext4, no flag was added for it.
PS: I haven’t added swap because I was planning on creating manually a swap file after install.
After the installation, I rebooted and I found strange that no message was shown, like it happened on Cinnamon. Messages like “reboot”, “disabling x, y”. So, I ignored and it just doesn’t reboot. It goes to the setup of my BIOS UEFI.
Then I tried to force reboot through the drive it was installed, but it goes back to setup and Manjaro doesn’t even appear as installed in the system, but it’s there, hidden, like the SSD was totally clean.
After that, I decided to use the same USB stick I used to install Manjaro KDE Plasma to boot into the live-usb environment. From there, I installed with sudo pacman -Sy gparted (I’m more used to this program than the KDE alternative). I used this command to avoid installation of the updates inside a live-usb environment. There was no need of doing that since I was using the live-usb just to check the problems in the system I’ve already installed. So, open GParted and… then I saw something weird. The partition for /boot/efi was showing warnings and with wrong flags added.
The file system was correct, fat32, the size as well, however the flags and label was wrong. I’ve never added the flags “legacy_boot and msftdata”, just “boot” as there was no “esp” there. Also, quite strange the label was “NO_LABEL” while for the other partitions this doesn’t appear. After that, I noticed something even more strange was happening. The /boot/efi partition had a warning, so I checked it and it said:
“Unable to read the contents of this file system!
Because of this some operations may be unavailable.
The cause might be a missing software package.
The following list of software packages is required for fat32 file system support: dosfstools, mtools.”
After this warning I searched for both packages, to see if they were installed, and only dosfstools was installed, the other one, mtools was missing. So I decided to install the missing one, mtools. No errors, everything worked. All of this in the live-usb, after that, the error on GParted is gone (after closing and opening again), however, the partition was still flagged wrongly with legacy_boot and msftdata instead of boot and esp (as it used to be in my past installations of Manjaro that worked). So, I decided to remove the wrong flags the installer has added (for no reason) and added the correct ones, boot and esp (the last one missing in the Calamares), also removed the NO_LABEL from the label part, after doing all of this, I saved the changes, closed GParted in the live-usb environment and rebooted the system with the USB key off expecting to boot normally in my fresh install of Manjaro KDE Plasma.
So, guess what? It booted flawlessly. No errors found during the boot. The OS started being detected both in the setup (BIOS UEFI setup) and from the F8 key. I noticed that both KDE Plasma and Cinnamon doesn’t have mtools installed. Not sure if this is a problems because, at least, Cinnamon worked without this package.
So, what I’ve found:
- For some reason, Calamares isn’t adding the correct flags in the manual installation of KDE Plasma and this might be the main problem some are facing.
- The missing of “esp” flag can also be a problem. Because, after I’ve added the correct flags through a live-usb environment using GParted, the installed system worked and booted normally.
- The missing mtools package in both installed system and live-usb environment was making GParted showing warning errors, but seems to not affect the install, just how GParted shows the partitions.
- The only partition with a strange label is the /boot/efi partition. The others have no label, totally blank.
It seems to be a problem related only to KDE Plasma. I still don’t know what exactly is but Cinnamon was installed without any issues and the flags were at least correct. I didn’t have time to check every ISO, but it should be checked by someone more competent and who knows what is doing. I just gave you clues of what might be the issue some are facing since 2020, now it’s up to you guys who have built the ISO.
INFO: I’ve tested all of this in UEFI-only environment with AHCI and GPT.
For me, the problem is with the flags being incorrectly wrong after install, even through you choose only “boot” in the Calamares, it defaults to “legacy_boot and msftdata” after install, making it impossible to boot. You can’t flag msftdata and boot or and esp all together. Due to all of that, the system doesn’t recognize this partition as a bootable partition, so the system doesn’t boot and neither is detected by the machine. To make it boot, you need to use the same live-usb you installed and use it to access the installed partition and remove the legacy_boot and msftdata flags from the /boot/efi partition and add the correct ones which are boot and esp. After that, the system boots and works normally.
Some screenshots: https://imgur.com/a/Jq8k6xQ
I hope all of my investigation helps people that are having problem.