Customize GNOME from i3
Table of Contents
i3 has been my window manager of choice for a while and I really enjoy its simplicity and ease of use. I use plenty of gtk applications, such as Firefox and Evolution, and configuring them within i3 can be confusing.
This post covers a few methods to change configurations for GNOME and gtk applications from i3.
lxappearance #
Almost all of the gtk theming settings are available in lxappearance. You can change fonts, mouse cursors, icons, and colors. The application makes the changes easy to preview and you can install more icon sets if you wish.
Fedora already has lxappearance packaged and ready to go:
$ sudo dnf install lxappearance
$ lxappearance
Although style changes are immediately applied in lxappearance, you need to restart all gtk applications to see the style changes there.
lxappearance writes GTK 2.0 and GTK 3.0 configuration files:
- GTK 2.0:
~/.gtkrc-2.0
- GTK 3.0:
~/.config/gtk-3.0/settings.ini
gnome-control-center #
Recent versions of GNOME bundle all of the system settings into a single
application called gnome-control-center
. This normally starts right up in
GNOME, but i3 is a little trickier since it doesn’t have some of the same
environment variables set:
$ gnome-control-center
**
ERROR:../shell/cc-shell-model.c:458:cc_shell_model_set_panel_visibility: assertion failed: (valid)
[1] 837 abort (core dumped) gnome-control-center
The problem is a missing environment variable: XDG_CURRENT_DESKTOP
. We can
set that on the command line and everything works:
env XDG_CURRENT_DESKTOP=GNOME gnome-control-center
gnome-tweaks #
The gnome-tweaks
application has been around for a long time and it works
well from i3. Install it in Fedora and run it:
$ sudo dnf install gnome-tweaks
$ gnome-tweaks
Although many of the configurations inside gnome-tweaks match up with lxappearance, gnome-tweaks offers an added benefit: it changes the configuration inside GNOME’s key-based configuration system (dconf). This is required for some applications, such as Firefox.
You can also open up dconf-editor
and make these changes manually in
/org/gnome/desktop/interface
, but gnome-tweaks has a much more user-friendly
interface.