FreeBSD Trinity Installation Instructions
This is a step-by-step guide to installing the Trinity Desktop Environment on FreeBSD 13 and onward. This includes tips to make the process as painless as possible.
- 1 Prerequisites
- 2 Building the port
- 3 Post-installation
Installing the latest versions of the FreeBSD base system and Ports Collection
This could very possibly help with some issues by ensuring you are using the latest ports and base system packages. Follow the next step if you want to mix ports and packages.
# portsnap auto && freebsd-update fetch install
Ports + packages: Switching to "latest" package branch
Make sure you do this if you are going to install anything via pkg beforehand, or are installing TDE in a non-clean environment.
To avoid building some things that would be much quicker to avoid, we can use pkg to fetch and install core dependencies instead of compiling every dependency as a port. As of 2 May 2022, some package libraries from the "quarterly" branch are older than what some TDE applications are looking for. devel/icu is a notable example. Therefore, it is recommended that we use the latest repository which has the same versions as the Ports Collection. If you haven't, you can do this the following way:
# mkdir -p /usr/local/etc/pkg/repos && cp /etc/pkg/FreeBSD.conf /usr/local/etc/pkg/repos
You then need to edit the original /etc/pkg/FreeBSD.conf in your favorite text editor (as root) and make sure its disabled by setting enabled: yes to enabled: no
After editing that, edit /usr/local/etc/pkg/repos/FreeBSD.conf and change the
You can now run pkg update which will re-generate the list with the latest branch of packages. If you are in a non-clean environment (i.e you already have another wm/desktop environment and were using quarterly), please run pkg upgrade before proceeding with the next step.
Installing git and other core dependencies
After making sure we are on the latest branch of packages, we will need to install git to obtain the files from the Trinity Gitea Workspace as well as some other core dependencies to avoid building them later:
# pkg install git libtool gettext findutils gsed bash automake cmake gmake ninja
Cloning the repo
Now that we have git, we can go ahead and clone the r14.0.x branch:
$ git clone --single-branch --branch r14.0.x https://mirror.git.trinitydesktop.org/gitea/TDE/tde-packaging.git
Keep in mind this will install the complete repository, which includes build scripts for Linux. The only directory you need in this repo is the freebsd one.
Building the port
To build the complete desktop environment with build prompts along the way do the following:
$ cd ~/tde-packaging/freebsd && sudo make install clean
- sudo is used because if this is performed entirely as root then "cd" will go into root's home directory. You could also use doas or enter the directory first then switch to root using su.
- If you are okay with the default build options or have an /etc/make.conf file and don't want to be prompted, you can add
NO_DIALOG=yesto the make command.
Choosing packages manually
Advanced users may not want everything included in the port. You can choose what you want by commenting out sections of a Makefile. As an example, if you don't want Dolphin, you could do the following:
$ ee ~/tde-packaging/freebsd/applications/system/Makefile
And then comment out (add a #) the entry for Dolphin:
This can be applied to any of the other Makefiles, but it's best to not touch essentials (i.e anything in the "dependencies" directory") unless absolutely necessary.
You may run into a snag during the build process. Even if you fix it yourself, it would be great to write a bug report to TGW here. This will help improve the quality of the port by locating and indicating the severity of a bug so it doesn't happen again in the future. This section should cover known issues.
As of R14.0.12, the imlib issue (#110) has been fixed.
After finishing the build process, you may want to enable Trinity's display manager (TDM). To do this, we will replace the XDM entry with TDM in /etc/ttys:
# ee /etc/ttys
Where the yellow cursor is will be the line that will contain /usr/local/bin/xdm. You want to replace this line with /opt/trinity/bin/tdm like in the image and change off to on.
If all is done correctly, you should be greeted with TDM once you reboot. You can then enter your newly installed Trinity Desktop Environment. Enjoy!