FreeBSD GNOME 3 Fast Track

This article is dedicated to Abraham Joseph who recently asked me if I could make an article on how to configure GNOME 3 on FreeBSD 12.2. At the moment 12.2-RC3 version is available so that is what I used but it will be the same on FreeBSD 12.2-RELEASE (or 12-STABLE). All commands here are executed as root user.

Here is the Table of Contents for this article.

  • Install
  • Connection to Internet
    • LAN with DHCP
    • LAN with Static IP Address
    • WIFI
    • DNS
  • Packages
  • Settings
  • GNOME 3
  • Fix the Icons
  • Rest of the Setup
  • UPDATE 1 – GDM Icons Fixed


First you will have to install FreeBSD. You may use FreeBSD Handbook or one of my guides – Install FreeBSD 12 – available here.

Connection to Internet

Then after booting to new system you need to get connectivity to the Internet. If its LAN connection then its pretty fast. Its for em0 interface.


# ifconfig em0 up
# dhclient em0

… assuming that you are on the LAN network with DHCP enabled.

To make it permanent put below line to the /etc/rc.conf file.


LAN with Static IP Address

If not then execute these for static IPv4 connection on your em0 interface.

First add these two lines to the /etc/rc.conf file.

ifconfig_em0="inet up"

This is how you /etc/rc.conf file should look like now assuming that you want IP address and gateway.

# grep -A 1 ifconfig /etc/rc.conf
ifconfig_em0="inet up"

Then restart the netif and routing services.

# /etc/rc.d/netif restart
# /etc/rc.d/routing restart


If you want to use WiFi to connect to the Internet then its slightly more typing. On my system I have iwn0 wireless card so that is what I will use here. The SSID is the name of your WiFi network and PSK is password for that network.

# sysctl -n net.wlan.devices
# ifconfig wlan0 create wlandev iwn0
# wpa_passphrase SSID PSK >> /etc/wpa_supplicant.conf
# wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf
// wait for CONNECTED state and hit [CTRL]-[Z]
# bg
# dhclient wlan0

To make it permanent across reboots add these to /etc/rc.conf file. I assume that information about your network is already in the /etc/wpa_supplicant.conf file generated by the wpa_passphrase(8) command above.

ifconfig_wlan0="WPA SYNCDHCP"


Last but not least you also need DNS. Put your favorite here or just paste the one below.

# echo nameserver > /etc/resolv.conf


We will now switch to the latest branch or pkg(8) repository and install needed gnome3 and xorg packages.

# sed -i '' s/quarterly/latest/g /etc/pkg/FreeBSD.conf

# grep /latest /etc/pkg/FreeBSD.conf
  url: "pkg+${ABI}/latest",

# pkg install -y gnome3 xorg

# pkg stats | head -3
Local package database:
        Installed packages: 523
        Disk space occupied: 3 GiB


Now you need to add ‘yourself’ to wheel and video groups.

# pw groupmod video -m yourself

# pw groupmod wheel -m yourself

GNOME 3 can not live without the /proc filesystem.

# cat << EOF >> /etc/fstab
proc  /proc  procfs  rw  0  0

Enable needed services.

# sysrc dbus_enable=YES

# sysrc hald_enable=YES

# sysrc gdm_enable=YES

# sysrc gnome_enable=YES

Enable EVDEV support.

# cat << EOF >> /etc/sysctl.conf

Make the boot process faster and more clean.

# cat << EOF >> /boot/loader.conf

Done. Now you can reboot into your new GNOME 3 system on FreeBSD.

# reboot


Your GNOME 3 desktop is now ready and you can login. For the purpose of this article I used asd user.






The default font sizes on GNOME 3 are way too big for me so I tweaked them to 0.8 scale as shown on last screenshot. I also set the font in Terminal app to Monospaced.

Fix the Icons

As you probably saw on the screenshots above the buttons on the windows are broken. There is very simple fix for that. Like shown below on the screenshots first open the Tweak Tool. Then go to Appearance page. The 3rd item from top on the right panel (under the Themes sign) is Icons – please set it to Gnome.





Viola! Now all icons look properly now.

Rest of the Setup

Now there are some things that will need be addressed.

Like with the drawing below, you have just drawn the circles 🙂


Just kidding 🙂

Add your favorite applications with pkg(8) like LibreOffice or Firefox for example.

If you run GNOME 3 on a laptop, then I would suggest adding net-mgmt/networkmgr package to get Networkmgr networking manager from GhostBSD.

I would also suggest using some of the FreeBSD Desktop series articles for the completeness of your GNOME 3 setup. If you need to tweak X11 then check X11 Window System part. I would also suggest visiting Configuration – Fonts & Frameworks for fonts fine tuning. If you want to have automatic mounting of removable media (and you probably do) then check Configuration – Automount Media part. If its laptop then tuning the power management will give you extra battery time. Check the details at The Power to Serve – FreeBSD Power Management part. As you are using GNOME 3 you may want to check Dash to Dock plugin or use Plank described in the Configuration – Plank – Skippy-XD part. If you did not liked the net-mgmt/networkmgr package (Networkmgr from GhostBSD) you may want to try my solution – FreeBSD Network Management with – described here.

Not sure what else I can add here as I do not use GNOME 3 daily.

UPDATE 1 – GDM Icons Fixed

Thanks to Romain Tartiere from the icons in GDM are now also fixed. The package graphics/ligvrsvg2-rust is now preferred instead of the graphics/librsvg2 package which was used previously.

Here is how now the GDM login page looks like.



12 thoughts on “FreeBSD GNOME 3 Fast Track

  1. Pingback: FreeBSD Gnome 3 Fast Track - Your Cheer

  2. Abraham Joseph

    Thanks @vermaden for the HOWTO. Hope it reaches those who wants to use FreeBSD with a simple desktop.
    Some rough edges still – GDM login screen has distorted icons. Not yet fixed.
    Also, in my case I’m using sound from HDMI out. I have to manually add “hw.snd.default_unit=4” to /etc/sysctl.conf to default my audio output (pcm4: ). It seems like FreeBSD cannot auto-detect which audio output is used. In Devuan Linux and Ubuntu, it finds the sound output device used and auto-configured. For me, Gnome volume control doesn’t work. I use mixertui -> PCM to adjust sound volume. I hope all these small issues are ironed out soon. Anyways, grateful that you obliged to my request. Keep writing.


    1. vermaden Post author

      Some rough edges still – GDM login screen has distorted icons. Not yet fixed.

      I have wrote about that. Check Fix the Icons section in the above article.

      Also, in my case I’m using sound from HDMI out. I have to manually add “hw.snd.default_unit=4” to /etc/sysctl.conf to default my audio output (pcm4:).

      Yes, you need to select which audio device is the default on FreeBSD.

      Gnome volume control doesn’t work. I use mixertui -> PCM to adjust sound volume.

      Sorry to hear that. Please submit a BUG here:

      Anyways, grateful that you obliged to my request. Keep writing.

      Thanks 🙂


      1. Abraham Joseph

        I have wrote about that. Check Fix the Icons section in the above article.
        That fixes the issue inside gnome-shell environment. The GDM display manager has distorted icons and elements in radio buttons. Unfortunately, no fixes I am aware of. Of course, it is also the same svg icon issue. But, digging out the configuration or icon set in Gnome is pretty daunting.
        See the gdm screen:


  3. furybsd

    Może mi ktoś wytłumaczyć dlaczego w Gnome nie ma ustawień do edytowania już uruchomionych programów startowych? Tylko muszę ich szukać w plikach konfiguracyjnych autostartu? Jedynie co mogę to dodawać nowe programy do autostaru i to tylko wtedy gdy zainstaluje dodatek Gnome Tweaks. Jaki jest powód że nie ma opcji ustawień Gnome Session tak jak to jak w innych środowiskach graficznych?


      1. furybsd

        Mam takie skromne pytanie, zainstalowałem netbsd 9.0, a dziś pojawiła się wersja 9.1. Jak najlepiej to zaktualizować, poprzez pobranie nowego obrazu iso czy z konsoli przez sysupgrade auto
        Jednak przy tym poleceniu wyskakują mi błędy 404 not found. W sumie mogęp obrać i zainstalować od nowa, ale już zainstalowałem przeglądarkę, środowisko graficzne i go spolszczyłem.


      2. furybsd

        Chciałbym nabyć jakiś laptop, który wspiera wolne oprogramowanie i nie potrzeba pobierać nie wolnych sterowników. Zwłaszcza do wifi, gdzie Fedora, Debian, *BSD uruchomi mi sieć bezprzewodową bez szukania zamkniętych sterowników. Wpisuje w przeglądarkę open source notebook i wyskakuje mi jakiś Dell XPS, Purism Libre i sprzęt firmy System76. Czy istnieje jakaś strona która gromadzi spis takiego sprzętu działającego na w pełni wolnym oprogramowaniu?


  4. Pingback: FreeBSD 13.1 on ThinkPad W520 | 𝚟𝚎𝚛𝚖𝚊𝚍𝚎𝚗

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s