It is now 1:45 AM. I couldn’t sleep thinking about this. So I decided to get this down on paper so to speak.
There are 7 DEs and 3 WMs supported by EndeavourOS. In my testing, I used both an Odroid N2+ aarch64 (64 bit) computer and a Raspberry Pi 4 armv7h (32 bit) computer.
On the Odroid N2+, all 7 DEs and 3 WMs installed and worked well that’s 10 out of 10
On the RPi4, 5 DEs and 3 WMs installed and worked well. 2 DEs installed OK but failed to operate properly. Those two DEs were Gnome 40 and Budgie-desktop.
Gnome 40 and Budgie are essentially the same thing with different shells, Gnome uses gnome-shell and Budgie uses budgie-shell. I’m guessing fixing one will fix the other.
As for the installation procedure. The 7 DEs are all installed the same. The 3 WMs are handled silightly differently, so let’s throw out the WMs for consistency and concentrate on the 7 DEs.
All package lists were pulled from the endeavouros-team github site from the netinstall.yaml file. In the netinstall.yaml file, there is a section named “Base-devel + Common packages” This package list was used for all 14 installs to establish a base install. So all fourteen of those were indentical. Then the installer refers to the same netinstall.yaml file and uses the individual DE package lists. These were duplicates between say gnome Odroid N2 and gnome raspberry Pi 4 and so forth for the other 6 DEs.
The same packages were installed for all test installs EXCEPT for
Odroid N2 used @jonathon 's kernel 5.11.2-zen-1-ODROID kernel,
RPi 4 used kernel 5.10.31-ARCH
Odroid N2 used linux-firmware
RPi4 used linux-firmware AND raspberrypi-firmware
That’s all I can think of at the moment.
But even with these differences RPi4 still had 5 DEs that worked fine.
The symptom was the OS boots up until GDM or Lightdm attempts to start and the white page with “Oh, no. Something bad has happened. Yada Yada” appears. This is a sign that the graphical part of the OS is not working.
Next clue is courtesy of @codic12. Thank you BTW. Which was try starting an X session from the terminal. In a tty Console window did a startx. Failed because no xterm. installed xterm and ended up in twm with three tiled xterm windows. From the xterm windows I was able to manually type in commands to launch Firefox, gedit, and hardinfo (System Profiler & Benchmarks) and other apps. So this proves the underlying graphics system is in place and working.
Startx uses twm for the window manager and Gnome uses mutter for the window manager. twm works, mutter not so much.
Now back to the RPi4 5 DEs that worked. KDE and LXQT definately don’t use mutter. I don’t think xfce4 or Mate uses mutter. Cinnamon uses a version of mutter. Hardinfo lists the Cinnamon version’s name immediately followed by (mutter). Even if it is the same as mutter, knowing Cinnamon I doubt they are using the latest version mutter.
So the thing that the failing RPi4 DEs have in common is mutter.
The things that are different between the Odroid Gnome which works and the RPi4 Gnome which doesn’t work is different versions of the kernel and an additional firmware package for RPi4. I doubt it is the firmware package, so I’m looking at mutter.
So the question is:
Is there something in the 5.11.2-zen-ODROID kernel that the latest version of mutter needs that is not present in the older 5.10.31-ARCH kernel?
Now back to bed to think some more…errr sleep some more.