Skip to content

Converting an install to Project Trident

Ken Moore edited this page Feb 14, 2020 · 3 revisions

Installing the Trident Repository

Project Trident hosts a small package repository for meta-packages and our base-system setup packages. This is an add-on repository without any architecture restrictions and does not replace the current Void repositories that you are already using.

Note: All of these commands need to be run with root permissions

Step 1 : Enable the repository

Project Trident provides a pre-assembled repository configuration file within the repository itself which can just be added to your local system.

cd /etc/xbps.d &&  wget

Step 1b : Set repo file permissions

In order to search the repositories with user permissions, you will need to set the new repository file as "readable" by everyone.

chmod 644 /etc/xbps.d/trident.conf

Step 2: Sync the repository

This will fetch all the information about the repository to your local system so that it can be used for browsing/installing packages later.

xbps-install -S

There will typically be a prompt about whether you want to accept/save the public key for the Project Trident repository. Just type "y" and hit enter to save the key. This key will automatically be used to verify the integrity of all the packages from the repository when you download them later.

Step 3: Install packages normally

The two primary packages are called "trident-core" and "trident-desktop". A quick description of these two packages is provided below for reference:

Description of Packages


This is the base-system setup and configuration package.

If you do not want to have a graphical desktop or if you want to build your own custom graphical environment for the system, then just install this package to get the basics of the system setup.

The trident-core packages sets up and/or enables the following subsystems:

And installs the following utilities:

  • jq (JSON object inspector)
  • nano (lightweight text editor)
  • Wireguard (secure VPN framework. Not enabled by default)
  • Git (version control system)
  • cifs-utils (everything needed for using Samba remote file shares)
  • trident-update (ZFS-aware system update utility)
  • trident-mkuser (ZFS-aware user creation utility)
  • trident-sysinit (script which performs the system setup: automatically run after package is installed)


This is the full graphical-desktop system setup package. It will automatically include the trident-core package for the base system setup, and will add the following tools/subsystems for graphical desktop usage:

  • Graphical subsystems (Xorg/X11)
    • mesa-dri is installed for enhanced graphics (OpenGL support) out of box
    • Custom graphics drivers will still need to be installed for your particular hardware.
    • fbdev driver is included as a last-ditch fallback for graphics support until a better driver is installed.
    • Common packages for graphics drivers: xf86-video-amdgpu, nvidia, nvidia390, nvidia340, bumblebee
  • Graphical Login Manager (sddm)
  • Desktop Environment (Lumina)
  • Fonts (noto, xorg)
  • Icons (trident-icons, hicolor-icon-theme)
  • Audio system setup (pulseaudio is primary - alsa and others setup to forward to pulseaudio as needed)
  • Graphical terminal (qterminal)
  • Graphical sudo (qsudo)
  • trident-login: Post-login, pre-desktop initialization framework with pre-logout hooks.
    • Used for many desktop setup routines before the desktop itself launches: localization, standards support, highDPI support, audio setup
  • trident-desktopinit (script which performs the system setup: automatically run after package is installed)
You can’t perform that action at this time.