RPi Linux Desktop Environment Alternatives
These are some notes regarding lightweight desktop environments and their suitability for running on Raspberry Pi. By light weight, I mean they don't use a lot of memory etc.
PIXEL is very good and well-tuned for Raspberry Pi and there's little reason to look for anything else. My preference of the alternates listed below is Xfce.
LXDE | LXQt | Xfce | KDE Plasma | others
LXDE
LXDE is a light weight desktop environment, so it's quite good for running on a RPi.
-
One of the four most popular desktop environments, LXDE has the smallest memory requirements of the four.
-
Up to and including Ubuntu 18.04 LXDE was the default desktop environment bundled with Lubuntu; the default is now LXQt.
-
Wikipedia: The PIXEL desktop environment of Raspbian (the official Raspberry Pi operating system) is a highly modified version of LXDE.
LXQt
LXQt.
-
From Ubuntu 18.10 onward, LXQt will be the default desktop environment bundled with Lubuntu; the default used to be LXDE.
-
Lubuntu is simply Ubuntu bundled with LXDE or LXQt. There is a version of Lubuntu 16.04 for RPi; the URL is a Magnet download protocol link.
-
https://lubuntu.me/downloads/
Xfce
Xfce is a light weight desktop environment, so it's pretty good for the task.
-
One of the four most popular desktop environments, a bit higher memory requirements than LXDE.
-
It is highly customisable, as evidenced by allowing me to set a shell scripts to have single-click launcher icons (unlike PIXEL).
-
It seems to work well on Raspberry Pi, apart from when a big disk read is needed there is no apparent response for a bit (eg, when opening a video).
-
Xfce is the desktop environment used in Ubuntu Studio up to 20.04 and 20.04 LTS, the latter being my present Linux of choice for my desktop system. (From 20.10 onward Ubuntu Studio by default uses KDE Plasma.) Xfce seems to work well except for a strange delay when I open a window in the desktop environment; considering the speed of the drive, I cannot explain it at all.
-
Xfce is also used in Armbian.
KDE Plasma
When I first looked into KDE Plasma I came to the conclusion that it was not suitable as a light weight desktop environment because it was a memory hog, hence unsuitable for a 1 GB Raspberry Pi. It seems that has changed.
In this video Christopher Barnatt reviews a 64 bit Linux version called Manjaro for the Raspberry Pi 4 which uses KDE Plasma. Chris says "I'm really very impressed with this, it's a superb operating system to use on a Pi." He shows it uses as little as 377.3 MB of 3.7 GB available memory.
From 20.10 onward Ubuntu Studio uses KDE Plasma as its default desktop environment. Some of the reasoning behind the change from Xfce is mentioned in the 20.04 release notes under The Future of Ubuntu Studio / Desktop Environment. Emphasis added:
Plasma has proven to have better tools for graphics artists and photographers, as can be seen in Gwenview, Krita, and even the file manager Dolphin.
...
A known resource hog from KDE, the Akonadi server in the KDE Personal Information manager, will not be included by default (Kubuntu currently does not use KDE PIM, but Thunderbird as do we). The Plasma desktop environment has, without Akonadi, become just as light in resource usage as Xfce, perhaps even lighter.
Leaving out Akonadi seems very sensible.
KDE Plasma also has an Android app which can be used to remotely control your computer – very nice.
Others
MATE is a reasonably light weight desktop environment that is (was?) becoming more popular. (I'm not sure why.)
-
About the same memory requirements as Xfce.
-
I've tried Ubuntu MATE on Raspberry Pi and did not like it very much. It was a bit buggy, seemed sluggish, and I couldn't set up the application bars the way I wanted, in the positions I wanted. (Indeed, it very much liked to crash when I tried.) I was not impressed with it. Others have reported it's not very user friendly.
-
Also, I'm not a millenial, and the jargonistic pronunciation of the "Maa-tey" name is putting on airs.
-
Also, it's not an acronym; it doesn't need to be in capital letters. (Is it only because GNOME is in capitals?)
Cinnamon, GNOME, and Unity.
-
All these have high memory usage. They are not lightweight, and are thus not suitable for a Raspberry Pi with 1 GB RAM.
-
Update: In his July 2020 Linux Mint 20 video Chris says Cinnamon uses more resources than Mate (sic) does, and that Cinnamon is less stable, but it has more features. (He then says Xfce desktop environment is the most stable version of Linux Mint and thinks it is "great on low-end hardware".)
-
GNOME was originally an acronym (GNU Network Object Model Environment) but the project no longer uses it as an acronym.
-
Gnome 3.28.2 is the default desktop environment used with the Jetson Nano (4 GB RAM). Quite frankly, it's more than a bit weird, with (for example) no direct access to applications. Even to just get a Terminal window I have to do a search. Every time! With Gnome, while doing nothing the Jetson Nano had only 2.53 GB (63%) free memory. Replacing it with Xfce gave 3.28 GB (82%) free memory, a gain of 750 MB available RAM. That's a very significant difference when it has 4 GB total RAM.
-
According to Wikipedia Gnome 3 has "move[d] away from the traditional menu bar and taskbar, [which] has caused considerable controversy in the GNU and Linux community. ... Debian, a Linux distribution that had historically used Gnome 2, switched to Xfce when Gnome 3 was released but readopted Gnome 3 in time for the release of Debian 8 “Jessie”."
Keyboards and character input
Related to desktop environments is the way we input information with keyboards – part of the interface which can make a huge difference to the feel of the interaction with the computer.
Compose key
Typing symbols that don't naturally appear on keyboards can be a problem. Apple Macs have had easy access to a range of useful symbols for decades by pressing the option key at the same time as another key.
Linux also has a way of doing it, using a "compose" key to get them (also called Multi-key). This is not a particular key, but often Right-Alt is used. The compose key is pressed (and released), then followed by a series of other keys, which are generally very intuitive to type. Some examples:
- <compose> <c> <o> (or any variation of order and capitalisation) gives ©
- <compose> <m> <u> (or <compose> </> <u>) gives µ
- <compose> <o> <o> gives °
- <compose> <t> <m> gives ™
- <compose> <1> <2> gives ½
- <compose> <5> <6> gives ⅚
- <compose> <?> <?> gives ¿
- <compose> <:> <-> gives ÷
- <compose> <x> <x> gives × (multiplication sign)
- <compose> <p> <o> <o> gives a stinking – or steaming – pile of poo symbol (on some computers only).
And so many more. That last one is particularly interesting, not for scatological reasons, but because almost all of the codes are two letters, and that example shows that longer codes can be used.
But there are a couple of important symbols missing, π and Ω (which on my Mac laptop are option-p and option-z, since Ω is the last letter of the Greek alphabet). To get them working on Linux, create a file with the compose key settings.
- sudo nano ~/.XCompose
- sudo reboot
Alternate keyboard layouts
Alternate keyboard layouts can be set using the Keyboard settings panel. This is something I very much like, because I primarily use a Dvorak keyboard layout on my laptop. To change between layout options set a way of doing it in the Layout tab. I use both ALT keys together.
FWIW I bought an inexpensive ($29) mechanical gaming keyboard from Kmart. It's noisy, only has 61 keys so it's lacking dedicated arrow keys, and the LEDs are only certain colours in certain locations, but the keycaps can be swapped easily. Sadly, the keycaps are different shapes and heights on the different rows, so the resulting Dvorak keyboard is a bit uneven, but I haven't seen a way of getting a Dvorak keyboard for less, and without risking breaking stuff.
I use the Dvorak layout with the U and I keys swapped – it's the only change which can make a significant (but small) improvement to the Dvorak layout's efficiency. When wanting to make key changes, first find out what the keys think they're doing.
- xev
- Press keys and note what is reported.
- The I key is keycode 41. The U key is keycode 42.
- Quit xev by closing the small window showing a black square on a white background.
Now create a file with the key remappings.
- sudo nano ~/.Xmodmap
- xmodmap .Xmodmap
Should now be good to go.
|