The Right Dark Theme

Tue, Sep 15, 2020
7 min read

Discussing accessibility with a friend, I realized how difficult it can be for someone with a ‘normal’ eyesight to understand the importance of a good (dark) theme for users that do not have a ‘normal’ eyesight, and what a difference an apparently insignificant change in color can make.

Every single one of us will have his/her own idea of what is a ‘good theme’. I like simple designs, with no effects at all. You may like transparency a lot, with effects everywhere? I love pink and gray colors, do you? But defining a ‘good theme’ becomes much more complicated the moment you take accessibility into consideration.

For me, a good accessible theme is a theme I can… read, and there aren’t that many. Think about this for an instant: having to stop doing whatever you’re doing to stupidely squint at the screen, trying to guess where (and what) is a button and if it is pressed or not, or is that checkbox checked? Trying to move a slider that’s oh-so-pretty-but-so-damn-tiny that you can’t see or click it. Imagine failing to read a menu because of its colors being the wrong ones, or because its font is too small or too thin to be read. And so on. Now, imagine having to do that all the time, all day long. Not great, isn’t it?

Fonts are easy to customize under Linux. That’s one of the first things I immediately liked about it: not feeling like a second-grade citizen because of my bad eyesight and my inhability to fully appreciate a pretty design. Any font is too small or too thin for me? I will use another font, that’s all.

Another strength of Linux is the ability to change your desktop’s theme, no matter what version of Linux and what ‘desktop’ you are using, there are many themes available.

Many consider themes (dark themes being the latest fad in this trend) as something a little bit silly and useless that amuses some geeks and kids. Maybe it is, I don’t know and I don’t care, why would you? Everyone is free to have fun. For me, a dark theme is a necessity. Simply put: without the right dark theme, I can’t use a computer. At all.

Unfortunately, many of the themes I tried seem to have been built for their creator own personal enjoyment only. Don’t get me wrong: this is perfectly fine, obviously, and many of those themes are great looking. But since they seldom take accessibility into consideration, or not in a way that suits my specific needs (and since I could not find an easy way to tweak them, that would not involve me learning to create a theme from scratch), they’re not of much use to me.

Where it becomes more of a problem is that even the default dark themes that come with Manjaro and/or Fedora aren’t that well suited to my needs, either. Sure, I could use some high-contrast theme. That’s exactly what they’re made for: helping people with a bad eyesight like me. Problem solved, no reason to complain. Save that I’m not complaining, I’m explaining what I’m looking for and why. I can’t see well, ok, but I still can see well enough to appreciate a nice looking theme, and since I spend so much time in front of my screen I’d rather enjoy what I’m looking at. So, I’m always on the lookout for a ‘better’ dark theme — better as in ‘more accessible’ and ‘more to my liking’ ;)

And it happens I may have found one.

Obsidian 2 is developed for Gnome/Mint (gtk 3) and also supports Xfce. It offers an anthracite background with contrasted enough darker and lighter grays for every stuff in the foreground. Nothing too dark and nothing that will blind me either. I’ve been using it for around a week and, if it is not perfect, it’s really great. No more squinting at the screen, no more guessing if a button is pressed, or not.

As soon as I figure out how to make a one-time donation (not a recuring one, as what is put forward on the Gnome-look website), I’ll gladly thank its dev.

Installing a theme

It is slightly different under Gnome and Xfce. But it’s easy.

Download Obsidian2 here, and decompress it.

Under Manjaro (Xfce)

  1. Open Settings→Appearance and drag your obsidian folder on the list of themes, when you let go it will be added to the list, simple as that. If the list of themes disappears, don’t panic (its a known Xfce bug that has recently been corrected): just close and reopen the Appearance window.
  2. Select your theme in the list. Done? Almost, there is one last change to make.
  3. Click All Settings to get back to the settings and open Window Manager. Once again, select Obsidian-2 so all windows should now be using your theme’s titlebar. This will avoid some of your windows keeping on using the old title bar/buttons layout while others are using the new one:

Buttons inconsistancies You don’t want some windows using the old titlebar while others are using the new one.

Under Fedora (Gnome)

By default, Gnome is not about tweaking and personalizing it much. So, tyou’ll either need to use a command line or — that’s what I’d suggest — to install a small utility to be able to change its theme. It’s called Gnome-Tweaks and you’ll find it in your package manager, no matter which one you’re using.

  1. Decompress the downloaded theme in your ~/.themes folder. If the folder doesn’t exist, create it.
  2. Log out and log back in, to let Gnome detects your new theme.
  3. In Gnome-Tweaks, open the Appearance tab and change Applications value to Obsidian-2.


Is this the perfect theme?


I won’t bother with the few things I don’t like about Obsidian 2, there is way much more to like in it.

The only real problem I have is not related to Obsidian but to the way Linux works. Under Linux, there are multiple ways to ‘draw’ an app on the screen (aka, what you see on the screen) . One such method uses ‘Gtk’, while another uses ‘Qt’. Maybe there are others too, I don’t know and it doesn’t really matter. What matters is that a theme made for Gtk won’t apply to apps that use Qt, and vice-versa. So, in clear, Obsidian won’t work with any Qt app, ie with any KDE app. You will need to find an equivalent Qt theme, for those apps (I use kvMojave that comes preinstaleld with Manjaro, you’ll find it in Settings→Kvantum).

Also Snaps or flatpak apps won’t use it either, no matter if they’re Gtk or Qt based: because of the way they’re built, they can’t access your default theme. That’s a serious problem for me, and that’s one of the reasons I barely use Flatpaks (Snaps, I don’t use at all for the same reason as Flatpaks, and because I find theme even slower on my old laptop).

Force Inkscape to change its theme

I had an issue with Inkscape that would not use the new theme. Most certainly, I’m the only culprit here as I tweaked Inkscape a lot, in order to make it a bit less hard on my eyes.

In cas you need it, the solution is simple: open Inkscape’s settings and go to Interface→Theme. Make sure the Change Gtk theme list is set to Use system theme. If does not work, you can manually select your theme in this list. You’ll need to close and reopen Inkscape to validate the change.

Inkscape theme & appearence settings

Easy to see buttons and (slightly easier to see) windows in Inkscape. A dream come true :)

Mixing themes

I like Obsidian 2 a lot, but I’m not a fan of its huge title bar. It’s easy to use another theme just for the title bar, though.

  1. Go to Settings→Window Manager and select a theme whose title bar you want to use. Done.


Here, I’m using McMojave, in its dark variant, for the title bar, with Obsidian 2 for everything else.


There are a lot of possibilities in tweaking existing themes, that’s great. I’d love to find a tool that’d make it easy to create my theme, without having to learn to do it from scratch and by hand. If you have any suggestion…

Also, my biggest issue with Xfce remains: window’s borders are way to thin. I can’t see them and it’s a pain to move or resize a widow using the mouse (I know, there are keyboard shortcuts to do it). I’d love fatter and more visible borders. I don’t know how? Maybe with an optional thick colored border or with bigger and more visible shadows under each window? I really don’t know. What I know is that there is not a day I’m not feeling slowed down by Xfce’s windows, despite me liking this desktop environment so much.