Garuda Linux 200817One of the more recent additions to the DistroWatch database is Garuda Linux, an Arch-based distribution that offers several enticing features. By default Garuda is intended to be run on the Btr file system, which offers all sorts of attractive features such as multi-disk storage volumes and snapshots. Btrfs has been paired with Timeshift on Garuda and the system is reported to take automatic snapshots before each package upgrade, making the system much easier to recover. I especially like the idea of having automated filesystem snapshots on a rolling release distribution such as Arch. The openSUSE Tumbleweed rolling release has offered automatic snapshots of the system prior to upgrades for a while now and it is nice to see this feature catching on in other projects.
The Garuda distribution ships with the Calamares system installer to make setting up the operating system easier. We are also given a desktop tool for managing drivers and Garuda's website mentions proprietary NVIDIA video drivers are optionally available. Rounding out some of the key features, Garuda ships with the Zen Linux kernel with the goal of providing better desktop performance.
The download page of the Garuda website offers many options. There are several desktop editions we can select, including Deepin, GNOME, i3, KDE Plasma, LXQt, and Xfce. These editions are further divided into Ultimate and Lite editions. The difference between Lite and Ultimate is explained:
Ultimate editions are made for having all the right tools needed to get gaming started on Linux, out of the box. For Ultimate editions we recommend a minimum of 6GB of RAM and 20GB of storage space. Lite editions are made for having only minimal packages preinstalled, out of the box. So you can customize it later how you want, the choice is yours to make. For Lite editions we recommend a minimum of 3GB of RAM and 10GB of storage space.
I decided to stick to the lighter side of things. I began by downloading the KDE Plasma Lite edition (a 2.2GB download) and later tried the LXQt Lite edition for comparison. The LXQt edition was a 2.0GB download.
The live media for the KDE Plasma edition boots to a graphical login screen where we can sign in as either a user called "garuda" or using a guest account. The password for the former is "garuda". The LXQt edition, in contrast, boots directly into a desktop session, skipping the login screen. Both editions display a panel across the top of the desktop, a launcher dock at the bottom, and a Conky status panel to the right of the screen. An icon on the desktop is available to launch the Calamares installer.
Shortly after the live session starts a welcome window appears. The welcome window provides several tabs for accessing information, adjusting features, and toggling items on/off. Most of the welcome window's options look to be best suited to fine-tuning an installed copy of the distribution. However, there are some launchers on the first tab for accessing on-line resources and support which may be helpful.
Garuda Linux 200817 -- The welcome window (full image size: 742kB, resolution: 1366x768 pixels)
While I was using the live LXQt edition, once I got signed in, a terminal window would appear on the desktop and display a series of package database errors before showing a prompt. The errors appear to indicate the package manager has not yet been synchronized with the distribution's software repositories.
Both editions of Garuda use the Calamares graphical installer to set up the operating system. Calamares does a good job of helping us select our language, keyboard layout, and time zone. The installer offers two basic partitioning options, assuming we are not setting up Garuda alongside another distribution. We can choose to manually partition the disk and are given a friendly, graphical partition editor to accomplish this. Alternatively we can take the guided partitioning approach which sets up Garuda on a Btrfs volume. We have three additional options when taking the guided option. We can set up the distribution without swap space, taking over the entire disk for the root filesystem. The other two options are "swap with hibernate" and "swap without hibernate". These set up a Btrfs volume and a swap partition. The former sets up a larger swap space to allow memory to be backed up to swap for laptop hibernation while the "without hibernate" still sets up swap space, just with a smaller partition.
The installer then asks us to make a user account and set an administrative password. Then Calamares unpacks its files and copies Garuda to our hard drive. I had good luck when doing this with the KDE Plasma edition, the installer completed both times without incident. The LXQt edition kept locking up. Three times Calamares locked up and twice took the desktop down with it, forcing a hard restart. The third time, after a few minutes, Calamares resumed its work, though stalled again a few minutes later for a period.
Both editions of the distribution booted to a graphical login screen. By default the login screen was set to sign me into the guest account rather than my regular user account. I'm not sure if this is because the guest account, which requires no password, gets preference or if it's a case of accounts being sorted in alphabetical order.
Garuda Linux 200817 -- The LXQt desktop, applications menu, and sample notification (full image size: 826kB, resolution: 1366x768 pixels)
While the LXQt desktop loaded in a reasonable amount of time, Plasma took about a minute to load and display the panel, Conky information, and dock. Sometimes, when running Plasma, the welcome window would be transparent which made it very difficult to read text in the window. I also noticed that sometimes the Plasma dock and top panel would disappear shortly after logging in, making it hard to navigate the desktop. Signing out and logging back into my account would correct this issue. These issues did not appear in the LXQt session.
Shortly after signing into my account a notification appeared letting me know software updates were available. Clicking the corresponding icon in the system tray will open the software manager, which I will discuss later, and display a list of available updates.
Garuda Linux 200817 -- Displaying available software updates (full image size: 95kB, resolution: 1366x768 pixels)
A few other programs load when we sign in, including the Xtreme Download Manager which appears to be a Java application. A drop-down virtual terminal also runs and is displayed at login. These, along with the Conky panel and a few notifications about connecting to available wireless networks made for a busy desktop.
The software installed for us varies a bit from one edition to the next. Firefox appears consistently across both editions, along with the Thunderbird e-mail client. Java is present on both editions, along with the GNU Compiler Collection and Timeshift. Both editions have some small utilities such as a text editor and terminal. The systemd suite provides init and both editions run version 5.8.1 of the Linux kernel.
Neither Lite edition ships with LibreOffice, while both offer a bittorrent client along with a settings panel. Apart from the above items, we also have access to a drop-down terminal that loads by default. The default shell is zsh instead of the more common bash.
Garuda Linux 200817 -- Setting up snapshots with Timeshift (full image size: 731kB, resolution: 1366x768 pixels)
I ran into a few quirks with the display of windows. Some windows, particularly the terminal, would display with transparent backgrounds. This makes it difficult to read text. A few windows also started with the "keep above others" attribute set, which makes it impossible to switch to another window and have it appear in front. This is easy to turn off, but I don't recall ever running into this as default behaviour before. There was also a weird effect where windows would sometimes maximize when moving them, even when not pushing them to the edge of the screen. Clicking the maximize/restore button had no effect meaning I had to manually shrink the window. This happened semi-regularly and made it hard to work with two windows side-by-side.
I began by playing with Garuda in a VirtualBox environment. This started out well, with the desktop resizing dynamically inside the host window. However, both editions of the distribution tended to be slow to respond, especially the Plasma edition. In the virtual machine the system was bogged down by visual effects, compositing, file search indexing, and extra start-up services. Disabling these many extras greatly improved the responsiveness of the desktops, though Plasma still lagged a little in the virtual machine. Unfortunately, disabling these extras caused the top panel (along with the application menu and system tray) to disappear. I had to manually re-add the panel after disabling the extra services and compositing.
On my laptop both desktops were noticeably more responsive. The LXQt session was pretty quick, even, though Plasma was still just providing average performance. Both editions used more than the usual amount of RAM. The Plasma edition used 1.1GB of memory according to the free command and 1.5GB according to Conky. The LXQt edition used 700MB according to free and 1.0GB according to Conky. I'm not sure why none of the stats displayed by Conky, apart from the total RAM available, matched what free was showing, but there were always large discrepancies. Regardless of which tool was used, this level of RAM consumption on the Lite editions was about double what I see when using these same desktop environments on other Linux distributions.
Garuda Linux 200817 -- The LXQt settings panel (full image size: 317kB, resolution: 1366x768 pixels)
More concerning was the failure of Garuda to boot sometimes. About one in every four boots would fail with the system giving up after the kernel loaded, but before systemd began launching services. Restarting the computer would work around the issue and bring me back to the login page. This is an unusual problem as I rarely find Linux distributions inconsistent in whether they boot. Some fail due to driver or start-up service issues, but those do so each time, while Garuda was unpredictable.
One thing in the distribution's favour, in my opinion, is that while it turns on a lot of bells and whistles, it mutes audio by default. I appreciate a quiet computer. The silence from my speakers made an unusual contrast to the many pop-up notifications, wobbly windows, and status updates on my screen.
Garuda uses a graphical software manager which is divided into three tabs. The first tab shows us categories of available software in the repositories. The second tab displays, and optionally removes, installed software. The final tab lists available software updates and gives us a chance to select which items we want to download. When we click the update notification icon in the system tray this software manager opens and displays the third tab.
Garuda Linux 200817 -- Trying to find new applications in the software centre (full image size: 39kB, resolution: 1366x768 pixels)
The update tab and the tab showing installed items worked for me without any problems. However, the first tab showing categories of available software, did not work at all. Clicking any of the categories displayed no available items. I tried refreshing the package database and confirmed I could see available updates, but no new items. I could also use the pacman command line package manager to install new software, but the graphical software manager was unable to show any available items.
Garuda Linux is a rare case where I like all of the items in the advertised feature list - Zen Linux kernel, Btrfs, automated snapshots, up to date software, Lite and more full-featured editions - while finding the implementation of the distribution entirely ill-suited to my particular needs. Things got off to a rocky start with the LXQt edition repeatedly failing to install and locking up the machine in the process. I did get it to work eventually, though not through any change in my approach, just through sheer stubbornness and trying repeatedly. The KDE Plasma edition thankfully did not have this problem. (I verified the checksums for the install media of both editions.)
Once they were up and running, I ran into a series of other problems. For one, the distribution occasionally failed to boot which is a serious issue. When it did boot, the KDE session often failed to load all of its desktop components. Desktop performance on physical hardware was a bit below average, mostly due to all the effects, compositing, and file indexing going on in the background. When run in a virtual machine the KDE Plasma edition was unusable for all practical purposes while the LXQt edition was slow, but functional.
Both editions, and I remind our gentle readers that I was running the Lite editions, used about twice as much RAM as the same desktops consume on virtually every other distribution I have tried. That is based on the statistics from free while Conky suggests Garuda is even heavier, which struck me as unfortunate given how much focus the project claims to give to performance and efficiency.
I liked that Garuda ships with Btrfs as the default filesystem and pairs this with Timeshift to take periodic snapshots. I think this is a good move forward and an especially useful tool to have when running a rolling release distribution where packages tend to change quickly. I give the developers full credit for taking this initiative where most distributions, openSUSE aside, have avoided this useful feature.
One final, major concern was with how busy the desktops of both editions were. The windows wobble when moved, some get stuck in maximized mode, the transparent terminals make them impractical for work. The Conky panel is constantly updating. About once every 30 seconds a notification would appear letting me know my network connection could not be detected, always immediately followed by another pop-up saying it was working. (Network traffic and web browsing never suffered from this reported drop and re-connect pattern.) All of these features can be removed, but it took about half an hour to strip away everything I did not want distracting me and bogging down the CPU. Again, I stress this was when using the Lite editions of Garuda.
To me it seems Garuda is appealing to people who want all of the new, shiny features. If you want the latest versions of packages, if you like desktop eye candy, if you want constant updates, and status reports, if you want every switch toggled to the "on" position, if you like transparency effects and wiggly windows, then Garuda is probably ideal. I found both editions too distracting and too slow, but for people who like to take advantage of the flashy effects and cutting edge options, then I think Garuda may be a good match.
* * * * *
Hardware used in this review
My physical test equipment for this review was a de-branded HP laptop with the followingspecifications:
Processor: Intel i3 2.5GHz CPU
Display: Intel integrated video
Storage: Western Digital 700GB hard drive
Memory: 6GB of RAM
Wired network device: Realtek RTL8101E/RTL8102E PCI Express Fast