System theme Light theme Dark theme

Setting up GNOME

Getting the desktop

Installing packages

Simply install the GNOME metapackage:

sudo xbps-install gnome

This pulls the entire desktop, including many apps and other things. It can be trimmed down later.

Enabling the display manager

Enable the gdm service without automatic start:

sudo touch /etc/sv/gdm/down
sudo ln -s /etc/sv/gdm /var/service

Then reboot. After logging back in, you can test that gdm works correctly with:

sudo sv start gdm

On the desktop

You should've loaded into GNOME at this point. If you did, congratulations! You can go ahead and make gdm start automatically if so:

sudo rm /var/service/gdm/down

There's only one more thing to do, which is to generate the typical directories found in one's home (GNOME does not generate them by itself):

sudo xbps-install xdg-user-dirs-gtk && xdg-user-dirs-update && xdg-user-dirs-gtk-update

The rest of configurations here are all optional and subjective; see what you wish or don't wish to do/install.

Getting rid of GNOME packages

By default you will not be able to uninstall any of the apps installed by the gnome metapackage, like the default weather app, as they are listed as dependencies of it.

You can remove the metapackage, but this will leave all of the dependencies orphaned. That means that running xbps-remove -o (a command to clean up orphans) will uninstall the entire desktop!

The dependencies of the gnome metapackage must be switched to manual mode first, before being removed. Create file remove-meta anywhere with contents:

#!/bin/bash

packages=$(xbps-query -x gnome | grep -o '^[-a-zA-Z_0-9]*')

for package in "$packages"; do
    xbps-pkgdb -m manual $package
done

xbps-remove -y gnome

Run it with sudo bash remove-meta, after which you can just delete it with rm remove-meta.

To verify it worked, run xbps-query -O | grep gnome-tweaks; the command should not output anything.

You can now start removing those pesky apps you'll never use! Keep in mind some of the apps have a different package name and display name; e.g. the Videos app's package is actually called totem; xbps-query --search is your friend here.

Better terminal

The default console app in GNOME is quite lackluster and missing almost everything you'd want in a terminal application.

I recommend switching back to the old GNOME Terminal; install it with:

sudo xbps-install gnome-terminal nautilus-gnome-terminal-extension

You can remove the lackluster console with:

sudo xbps-remove -R gnome-console

Note: It can take a while to open the Preferences menu for the first time in the old GNOME terminal; if you experience this, your best comfort is that it only happens once per session.

Better font manager

The default fonts app for GNOME is rather lackluster too; it requires you to install new fonts one file at a time. Since most fonts will be composed of a lot of files, it gets rather tedious.

You could install them via command line instead, but for convenience's sake I recommend you use font-manager:

sudo xbps-install fontmanager

Simply open Font Manager, click the "+" icon, and select all the fonts you wish to install; they will all be installed at once.

Installing extensions

The desktop environment of GNOME can be further customized via extensions. To begin, install the gnome-browser-connector package:

sudo xbps-install gnome-browser-connector

Afterwards navigate to the extensions site. There will be a banner asking you to install an add-on for your choice of browser.

After doing so, simply go to any desired extension's page and press on the switch to turn the extension from "off" to "on", which will prompt you to install it.

I recommend you at least restore tray icons with this extension or one that serves the same purpose, as those are pretty significant.

Recommendations

These are some extensions I can personally recommend for GNOME.

Advanced configuration via dconf

The dconf-editor is a graphical editor that will let you edit more advanced application settings not exposed by the UI. For example, you can force the "Files" app to always display the full path to the current folder instead of the prettified version, as well as change the default visible columns.

Simply install the dconf-editor package:

sudo xbps-install dconf-editor

Below is some of the stuff that I personally always change.

Increasing the timeout limit

The "application is not responding" dialog appears rather prematurely on GNOME due to the default timeout setting being 5 seconds.

You can change this by navigating to /org/gnome/mutter and changing the check-alive-timeout setting. I set it to 30000 (30 seconds).

Changing file chooser behavior

File chooser settings can be found at /org/gtk/settings/file-chooser; for some reason these do not mirror your Nautilus settings.

Thus you may be interested in manually editing:

Creating custom color profiles

You can control color tint and temperature per-monitor via ICC profiles; you can see these as applied per monitor in Settings > Color. Unfortunately there's no built-in way in GNOME to edit these profiles.

Thankfully, there's already a Python script that can easily create and manipulate these profiles for us. Simply clone the repository and run the gnome-gamma-tool.py script contained within.

The following example increases the color temperature and gamma of the second display:

./gnome-gamma-tool.py -d1 -t13000 -g1.2

Next steps

You'll probably want to set up audio and screenshare next; Installing an audio and media server explains how to do that.

Table of Contents