Gnome Initial Setup Screen gnome-initial-setup

The first time you login into a Linux system running Gnome3 you get an Gnome Initial Setup screen. It allows you to set the language, keyboard layout, add your online accounts, etc. It is only a minor annoyance when you are setting up your own account since it only needs to be done once. But how about if you are setting up a kiosk, or other such system? Well, then you will want to disable Gnome initial setup.


I was building a check-in kiosk for a local Axe Throwing hall here in New Jersey. I was using the xguest package to create a non-privileged user who only had access to Firefox. The xguest creates a temporary file system for the user that is destroyed when they log out. Here is where the annoyance started. Every time the user logged into the system the Gnome initial setup started.

Luckily there are several ways to disable Gnome initial setup and welcome screen.

Disable Gnome Initial Setup for Single User

If you have a "normal" user (with a normal persistent home directory) then you can simply add a file to the /home/user/.config/ directory.

Let's say you just added a user named jadzia. Redirect the word yes into the gnome-initial-setup-done file in their .config directory like so:

mkdir /home/jadzia/.config
echo "yes" >> /home/jadzia/.config/gnome-initial-setup-done

Now when they log in for the first time they will not see the Gnome initial setup screen. They can also change the settings, add their online accounts, etc. via the settings panel.

Disable Gnome Initial Setup for All Users

If you want to disable Gnome initial setup for all current and future users, you have to edit the autostart file. In Red Hat, CentOS, and similar operating systems this is located at /etc/xdg/autostart/gnome-initial-setup-first-login.desktop. Simple open it with your favorite editor and add the following line.

X-GNOME-Autostart-enabled=false

Or you can use this handy one-liner (which I did across 8 different kiosks).

sudo bash -c 'echo "X-GNOME-Autostart-enabled=false" >> /etc/xdg/autostart/gnome-initial-setup-first-login.desktop'

Conclusion

I hope this helps someone, it took me longer than you would think to figure this out. That is why I decided to write it down. Good luck!