Garuda Linux "Bateleur Eagle" (210809)

Hello everyone! :grin:

Here we go again, its time for another major iso release! This time the major part of the changes happened mostly under the hood even though there are also some new features which help with the day to day usage of our favorite distro! One example for this is our new "Garuda System Maintenance" tool - more on this later. Let's start diving deeper into some topics.

Under the hood

As pointed out already a lot of changes happened under the hood focusing on reducing technical debt and keeping up with Linux standards. In order, our distro specific configuration files have been moved from usually user managed locations such as /etc/ to /usr/share/* - this way it is easy to ship distro defaults for applications while enabling the user to override the settings in /etc/*. Previously, modifications would have been overwritten with every package upgrade. Another part which received an overhaul and clean up are our Garuda related hooks - eg. mkinitpcio is only called when necessary rather than twice at times. This reduces the time spent updating if a kernel update or similar action happens. We also went back to employing bash as login shell while keeping our beloved fish in graphical terminals to keep applications like Flatpak working without any workarounds.

Another, already announced change is the revamp of our garuda-common-settings & its daemons - this makes not universally applicable daemons optdepends & incorporates zram-generator as recommended replacement for systemd-swap.

Furthermore, Garuda received some graphical enhancements such as Micro using a transparent color scheme, Calamares looking more integrated or BeautyLine supporting more icons.

Garuda System Maintenance tool

Already mentioned earlier was our "Garuda System Maintenance" tool which is the answer to recent keyring issues people were experiencing. Having an up to date keyring is vital for being able to install packages on Arch and while the fix is actually pretty easy we noticed a lot of people seem to struggle with it. To fight this, the tool is able to automatically update keyrings in the background while also being able to prompt for updating the "garuda-hotfixes" package. It is strictly meant to be a tool for rolling out fixes for system breaking changes and explicitly needs the users consent to be executed. Also note that all of the features of GSM can be toggled in its settings easily.


Initially caused by the Pacman 6 update & the resulting broken Pamac, all dependencies on it have been removed from our applications. While Pamac offers a convenient way to install and remove packages we don't want to rely on it for our applications anymore. Instead, Alacritty will be used to execute the installation.

At this point we would like to mention that the preferred way of updating is via the terminal - we created a nice little wrapper called "update" which will conditionally take care of pre- and post-update operations such as updating the mlocate index or fish autocompletions. There is also a flag for this command called "update remote" which will fetch an always updated "I'm too lazy to fix it myself all in one" script from our GitLab in case of serious system breakages. It must not be used for regular updates as it resets some system configurations to safe defaults but might come in handy in special cases.

Tweaks and fixes

Some other changes include little fixes throughout the system, e.g. the dragon emoji in dr460nized editions top bar will no longer vanish after installing printer-support, BTRFS checks are no longer enabled in /etc/fstab or MangoHUD will no longer show up in Vulkan applications by default. Furthermore our Garuda Assistant and Garuda Boot Repair also received some fixes. The initial driver installation notice by MHWD in live CD mode also got reworded to be more useful for inexperienced users. Its also worth mentioning that some applications previously included in the installed system became choices in Garuda Setup Assistant, along with a generally wider range of offered package choices.

Edition-specific changes

There are also some edition-specific changes that are mostly directed at providing a more pleasant experience in general.

Starting with dr460nized editions: we now feature a new popup behavior of the start menu and system tray recently introduced in latte-dock-git. All configuration files get cleaned up to only contain non-default settings and the Latte top bar is now being colored in the color of window top bars, making it look much more integrated. The gaming edition now features Anbox working out of the box, no more setup needs to be done - just start using it right away! The GNOME editions dotfiles got a cleanup as well. LXQt & Qtile both received some theming changes, the first switching to Dracula colors while the latter features a new terminal theme and Ant-Dark SDDM theme.

Introducing MATE as community edition

Starting with this update we are happy to announce that the MATE edition is back to our iso offerings. This edition features a beautiful, refreshing look for MATE achieved by using the well known Sweet theme combined with the Papirus icons pack. You can find some screenshots in this thread. This edition is maintained by @zoeruda and is treated as community edition. That doesn't mean it's not as good as our other editions though - make sure to check it out! :grin: The download is available below, website will be updated with the new edition soon!


While changes to our infrastructure are not directly related to the desktop experience its still worth mentioning that we have setup scheduled, automated iso builds setup now! These will happen weekly, using the iso-profiles master branch as source. Possibly breaking changes won't be pushed there to keep things stable. Along with the weekly builds we setup a daily (nightly) build of the regular dr460nized edition.


About a month ago we announced the possibility of supporting Garuda via donations, at this point we want to thank everyone who contributed something to help keeping it up! So far, we were able to pay our yearly domain costs with those donations - further actions will be done once we built up sufficient funds to sustain eventual monthly costs. One thing we are looking at is getting a dedicated, new mirror for India as its the 3. most user rich country which does only have one mirror right now.

The last months were a really interesting time as Garuda as a whole feels a lot more mature than it was before - we hope you enjoy the direction the development takes right now as much we do! :dragon:

BTW - if you are curious how a Bateleur looks like, this is one of them:

Downloads are available below or using the links at our download page.


And finally, the usual exhaustive changelogs for interested people :P

Edition changes:

  • All editions:
    • Added custom bashrc
    • Added support for rtw89 wifi driver ootb
    • Added update command which takes care of updating keyrings before actual update if needed + common post update tasks if a certain app is installed
    • Added a "remote" flag to the update command which takes care of fixing the most common system issues
    • Created garuda-system-maintenance
      • Replaces garuda-settings-manager-notifier
      • Updates keyrings in the background if an update is found
      • Prompts to update the garuda-hotfixes packages which will serve as way to push pre-update fixes
    • Disabled fsck checking for BTRFS partitions in /etc/fstab as BTRFS does not need it
    • Fixed infinite MWHD loading on VMware
    • Micro uses a transparent colorscheme
    • Moved Calamares modules to its package
    • Moved configuration files (eg. sysctl.d) to /usr/ rather than /etc/ to keep up with standarts
    • Switching to bash as login shell while keeping fish in terminals (keep things like Flatpak compatible while enjoying fish)
    • Revamp of garuda-hooks: only run mkinitpcio when really needed
      • Lots of cleanup done
    • Revamp of running daemons for the better:
      • Made ananicy, irqbalance & uresourced optdepends: no suitable for everyone
      • Replaced system-swap with zram-generator, adjusted swappiness to use ZRAM (new recommended way to setup ZRAM)
    • Reworded the MHWD driver installers notice on LiveCD startup to explain better what it does & that it might take some time to finish
    • Removed MangoHUD & vkbasalt envvars - no more automatic overlay on Vulkan
    • Updated the installer looks to look more integrated (colors & logos)
    • Use user systemctl to enable libinput-gestures
  • Dr460nized:
    • Added new popup behaviour introduced by latte-dock-git
    • Added support for more by default enabled touchpads
    • Added support for more themed icons
    • Correctly apply Fira Sans to window titles
    • Enable Latte coloring top bar using touching window colors
    • Fix custom SDDM settings getting overwritten on settings package update
    • Move theming to dedicated packages for more timely updates
    • Removed a lot of configs which reflect default settings anyway
    • Updated Latte preset & theming
  • Dr460nized-blackarch:
    • BlackArch settings now shipped in dedicated garuda-blackarch package
  • Dr460nized-gaming:
    • Added additional kde servicemenus
    • Added working Anbox support out of the box
  • GNOME:
    • Moved some theming to dedicated packages for timely updates
    • Removed a lot of configs which reflect default settings anyway
    • Themed more icons
  • i3wm:
    • Added dex autostart
  • LXQt-Kwin:
    • Terminal font changed to Source Code Pro
    • Use Dracula colors
  • Qtile:
    • Add new terminal theme
    • Use Ant-Dark SDDM theme

Application & settings changes:

  • General changes to packaging:
    • Improved some PKGBUILDs
  • Beautyline:
    • Added a lot more themed icons
  • Garuda-assistant:
    • Added options to configure the removed daemons from garuda-common-settings for specific use cases
    • Change update command to new "update"
    • Fix misleading description
    • Fixed shell switcher
    • Removed dependency on Pamac
  • Garuda-browser-settings:
    • Added support for more browsers
    • Settings are put into /etc/garuda rather than just /etc
  • Garuda-boot-repair:
    • Stop checkAndMountPart from assuming every partition is BTRFS
  • Garuda-fish-config:
    • Added .fish_profile sourcing
    • Replaced with tealdeer
    • Updated fish done function
  • Garuda-gamer:
    • Added more apps & icons
    • Removed dependency on Pamac
  • Garuda-hooks:
    • Added a hook to re-enable os-prober which got suddenly disabled by Arch
    • Added fixing of Pacman 6 introduced pacman.conf issues
  • Garuda-setup-assistant:
    • Added Anbox choice (working ootb)
    • Added config to Virtualbox choice which lets Virtualbox work after reboots
    • Added Linux-cacule to kernels
    • Added a fix for suddenly disappearing emoji in dr460nized top bar after installing printer-support
    • Follow some application pkgname changes
    • Improve some strings
    • Reword 'upgrade to ultimate' to 'Post-installation wizard'
  • Garuda-tools:
    • Got rid of old, uneeded code (also the live-mirrors hook)
  • Garuda-wallpapers:
    • Removed duplicates, keeping the high res ones
  • Garuda-welcome:
    • Fixed missing icons on some editions
    • Removed dependency on Pamac
  • Virt-manager-meta:
    • Needed fix to be able to initialize a firewall backend on with virt-manager (Arch bug)

Server & infrastructure changes:

  • Servers:
    • Server setup done via Ansible now

Version updates:
- Calamares
- GNOME 40.3
- Linux 5.13.8
- Plasma 5.22.4


Links on the website have now been updated!