GNOME/GNOME without systemd



Brief instructions for using GNOME (3.14 or 3.16) under OpenRC (rather than systemd!) in Gentoo, via Dantrell B.'s patchset.

Introduction
Users of GNOME 3 on Gentoo have, until recently, been required either to use systemd as their init system, or else to use a 'shim' overlay to pull in Funtoo's patched version of GNOME (which supports OpenRC).

Now, however, Dantrell B., the primary author of the Funtoo GNOME patchset, has made his work available for Gentoo users directly.

To be clear, this means that you can now enjoy the full GNOME experience (including session tracking and power management), even on a PC running 'stable branch' (amd64) Gentoo, without systemd.

This brief guide leads you through the steps you need to take to get GNOME up and running under this patchset.

Prerequisites
It is assumed that:
 * having followed the vanilla "Installing Gentoo" process from the official Handbook, you are currently running a stock amd64 Gentoo system which has working internet access etc. (it is also fine to be on ~amd64)
 * you have at least one 'regular' (non-root) user set up;
 * you have prepared your kernel and file for X-server installation (VIDEO_CARDS and INPUT_DEVICES variables set), as described here. You do not have to have actually installed the X-server, however (although since X-related problems are some of the most commonly encountered when installing GNOME, it is recommended that you do);
 * you have a UTF-8 locale selected (as described here).

Setting Global USE Flags
First, if you have the bindist USE flag set in your file, it is recommended to unset it now, to avoid issues with,  and dependencies later.

Next, ensure everything is up-to-date on your current setup, before proceeding further:

Installing the Overlays
You now have two options: either install Dantrell B.'s overlays under layman, or add them directly (assuming you are using version >= 2.2.16 of ).

Option 1: Installation under layman
To install the overlays, first emerge and configure layman, as detailed here, with the git USE flag enabled (it is by default).

Then, edit the overlays</tt> stanza of so it reads:

Sync the overlay metadata, and add the 'generic' GNOME overlay:

Next, add the desired GNOME 'version' overlay(s); if using the 'stable' (amd64</tt>) branch, you should use at least the one which matches the current stable in Gentoo (3.14 at the time of writing).

For GNOME 3.14, issue:

For GNOME 3.16, issue:

Option 2: Direct Installation
Under modern (>= 2.2.16) versions of portage</tt>, it isn't necessary to use layman - you can add the overlays directly if you like.

Begin by ensuring the that you have a directory in place:

Check you have a file; if not, create it following the pattern below (adapt the sync-uri</tt> appropriately for your location):

Next, we need to create configuration files for Dantrell B.'s external overlays. At the time of writing there are three overlays: a 'common' one, and one for each of GNOME 3.14, and 3.16. Create the following files for these:

Next, if you haven't already got it on your system, install git:

Then sync everything:

Setting the Profile, and Updating
Dantrell's overlays provide a bundled set of profiles. By using one of these, you can conveniently set appropriate USE flags, masks etc., to ensure that installation proceeds smoothly.

Select an appropriate profile now (at the time of writing, users on the "stable" (amd64</tt>) branch should use the 3.14 profile; ~amd64</tt> users may use either):

(The numbering etc. on the list you see may well differ from the above.)

With the profile set, re-emerge @world</tt>, to pick up the new USE flags, default packages etc.

Now we need to install some prerequisites for GNOME without systemd</tt>. Two of these (dbus and consolekit) will have already been installed as part of the above @world update under the custom profile. However, we still need and, so emerge</tt> these now:

Make sure the various services will come up on boot, and start them:

Preparing USE Flags Prior to GNOME Emerge
If there are any additional applications you would like installed as part of the GNOME emerge, set their USE flags now. For example, to add the epiphany browser to the set of installed applications, do:

Emerging GNOME
Right, we are now ready to emerge</tt> GNOME! To do so, issue:

Assuming that completes successfully, you should still check that the necessary X11 drivers have been properly emerged: often, they will not have been, particularly if you had to run the emerge</tt> step more than once (due to build parallelism errors). To make sure, issue:

Configuring and Running GNOME
Once GNOME is emerged, you need to change the DISPLAYMANGER</tt> value in the xdm</tt> configuration file, so that the gdm display manager is used:

Then set xdm</tt> and NetworkManager</tt> to come up on boot, and disable dhcpcd</tt> if you are using it:

Check if your machine has a plugdev group, and, if it does, add any regular users to it:

Start up GNOME!

You should now have a GNOME login screen visible (and this will also come up automatically on boot). On some machines, you may need to move the mouse or press a key, for the login screen to appear.

Have fun!

Using GNOME
For more information about the GNOME interface (which is generally self-explanatory), see https://gnome.org. Some additional useful setup tips about GNOME may also be found here.

External resources

 * Dantrell B.'s project homepage on GitHub