Difference between revisions of "Trinity"

From ArchWiki
Jump to: navigation, search
(PKGBUILDS for Trinity Current Code (3.5.13))
(PKGBUILDS for Trinity - Current GIT Code)
Line 26: Line 26:
Any problems should be reported immediately.
Any problems should be reported immediately.
==== PKGBUILDS for Trinity - Current GIT Code ====
===== PKGBUILDS for Trinity - Current GIT Code =====
For a snapshot of PKGBUILD sources for building against the current GIT tree, see: http://www.3111skyline.com/dl/dt/tde/src (R14) and http://www.3111skyline.com/dl/dt/tde/src3513 (3.5.13-sru), '''AND READ''' http://www.3111skyline.com/dl/dt/tde/src/README-building.txt
For a snapshot of PKGBUILD sources for building against the current GIT tree, see: http://www.3111skyline.com/dl/dt/tde/src (R14) and http://www.3111skyline.com/dl/dt/tde/src3513 (3.5.13-sru), '''AND READ''' http://www.3111skyline.com/dl/dt/tde/src/README-building.txt

Revision as of 21:59, 7 August 2012

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary end

Trinity Desktop Environment is a fork of KDE3 developed by Timothy Pearson (trinitydesktop.org). This project aims to keep the KDE3.5 computing style alive, as well as polish off any rough edges that were present as of KDE 3.5.10. Along the way, new useful features have be added to keep the environment up-to-date. The current stable release of TDE (3.5.13) was released Nov 1st 2011. Current development is on 14.0.0. Both 3.5.13(sru) and 14.0.0 build on Arch with all current libraries. 14.0.0 contains the first prototype of media:/ kioslave as a replacement for HAL. The versioning change from 3.5.13 to 14.0.0 signifies that backwards compatibility with 3.5.X has been dropped as of the upcoming release to allow TDE/TQt to install along side Qt4 without confict. 14.0.0 will continue to rely on HAL, but subsequent releases will do away with that dependency. 3.5.13 continues backwards compatibility with KDE 3.5.10 and provides an alternative choice for those that prefer.

Note: gcc 4.7 and libpng15 build issues are FIXED! for Trinity builds for Archlinux building from the GIT tree. k9copy is the only package remaining needing updates for ffmpeg 0.11-1

Currently the remaining TQt name changes are being implemented after which a tentative code 'freeze' is anticipated to allow user testing and bug identification and correction before release of 14.0.0. 14.0.0 will be a true TDE release with all branding, artwork, and graphics changed and updated for this project rather than using the holdover KDE3 stock images. All in all, the desktop functions beautifully on current graphics libs, systemd-tools, libusbx, udisk2 and other newly implemented hardware paradigms.

Trinity Packages for Arch

Currently development packages for Arch Linux are available for both 3.5.13-sru and 14.0.0. If server space is available for hosting, binaries can be provided for testing for both i686 and x86_64.

PKGBUILDS in AUR are Out of Date

The PKGBUILDs available in the AUR are old and outdated and will likely not build. Current PKGBUILDs are available for both R14 and 3.5.13-sru. The PKGBUILD files in AUR will be updated after all backports of patches from the 14.0.0 branch have been backported to 3.5.13.


Any problems should be reported immediately.

PKGBUILDS for Trinity - Current GIT Code

For a snapshot of PKGBUILD sources for building against the current GIT tree, see: http://www.3111skyline.com/dl/dt/tde/src (R14) and http://www.3111skyline.com/dl/dt/tde/src3513 (3.5.13-sru), AND READ http://www.3111skyline.com/dl/dt/tde/src/README-building.txt

Note: Final PKGBUILD source files will be moved to the tdepackaging GIT tree after 14.0.0 is released.

Binary Packages - From Trinity Old Stable Code (3.5.12)

Note: The 3.5.12 binaries continue to work excellently on Arch, but you will need to make sure you have the following (audiofile 0.3.2-1, shadow (needed for kdm3, updated for current util-linux and glibc 2.16), hal 0.5.14-14 (AUR). 3.5.12 should be considered End Of Life, but with a little effort is still fantastic.

The following repository holds binary packages from the Trinity Old Stable (KDE 3.5.12) code base. Albert Vaca built the binaries to work as updated kdemod3 packages. I cannot say enough good about this version of kdemod3 -- it's that good. See this ArchBBS thread for additional links The repositories for the binaries are:

# Trinity 3.5.12
Server = http://vgafib.upc.es/kdemod3/$arch

After adding the repository to /etc/pacman.conf, the packages can be installed using the kdemod3-complete package group. Example:

pacman -Syu

or if that fails to trigger the update, then use

pacman -Sy kdemod3-complete
pacman -Su
Warning: iceauth error -- If you update arch and receive the following error (~/.xsession-errors), make sure xorg-xdm is installed
dcopserver: 'iceauth' not found in path, aborting.
DCOPServer self-test failed.
sh: iceauth: command not found
kdeinit: DCOPServer could not be started, aborting.


At present, the Trinity project for Arch Linux is just beginning. Interest in the project and the list of contributors is growing. Anyone wanting to help can simply join in. Please email Calvin Morrison.


  • Calvin Morrison: Trinity and Arch a/k/a "mutantturkey", PKGBUILD development and collaboration.
  • Kaiting Chen: Arch Linux - server space for testing Trinity binaries in the past.
  • Albert Vaca: kdemod3 updated based on Trinity Stable codebase.
  • David C. Rankin: 14.0.0 (3.5.14) Development & Packaging


  • Timothy Pearson: Project administrator, Primary developer, Build farm administrator, Debian/Ubuntu packaging maintainer.
  • Darrell Anderson: 3.5.13 -> 14.0.0 Development and rebranding.
  • Slavek Blanko: 3.5.13 update and backporting.
  • Serghei Amelian: General functionality enhancements, CMake build system developer/maintainer.
  • "Woodsman": Vanilla build testing, Slackware packaging maintainer.
  • Francois Andriot: Redhat/Fedora packaging maintainer.

Content Distribution

  • University of Idaho: Mirror 1 [United States]
  • Jens Dunzweiler: Mirror 2 [Germany]
  • Inga Muste: Kubuntu LiveCD mirror

Web Team

  • Calvin Morrison: Website design.
  • Inga Muste: Website design.

Trinity Resources

The Trinity site has a number of good resources available. As with any rapidly developing project, the documentation is somewhat sparse, but it does provide a good basic road-map to follow here. The mailing list has approximately the same volume as the arch-user list, so it will not overwhelm your inbox. If you want to help with this project, it is strongly recommended that you also join the trinity-user mailing list. All of the following links are available from the Trinity project site. A quick list of helpful links to the project follows:

Trinity Build Order

The required build order is specified in the Trinity-HowToBuild. After building kdebase, you can start the desktop.

Warning: Trinity should be built from a clean build environment without KDE4 or kdemod3 present. Using an Arch chroot (archroot) is the proper way to build. See: DeveloperWiki:Building in a Clean Chroot for details.
 (1) 'sudo mkarchroot -u $CHROOT/root'  # update the chroot
 (2) 'sudo makechrootpkg -c -r $CHROOT' # build first package with the -c option
 (3) 'sudo makechrootpkg -r $CHROOT'    # build remaining packages without update 

Trinity Build Issues

Build in a new Arch chroot
Warning: Trinity on Arch must be built in a clean environment.

Set up your chroot for building by referencing DeveloperWiki:Building in a Clean Chroot. Make sure you configure your 'local' repository in $CHROOT/root/repo and add each package built to the repository as outlined in the DeveloperWiki.


To standardize the build and install of Trinity, the following PKGBUILD options are used:


  • trinity-extras - for any extra packages related to trinity, trinity-kpowersave, trinity-amarok, etc
  • trinity - for base Trinity packages, tqtinterface, trinity-kdebase trinity-kdelibs etc.


  • Don't use options=(!libtool)
I have had the best success with options=('libtool' '!strip').

Trinity Build Dependency PKGBUILDs

The following PKGUILDS are complete and provide working packages for both i686 and x86_64 architectures. They can always be improved and if you notice a missing depends, please feel free to update it. These PKGBUILDs for Trinity have been developed in a clean, minimal Virtualbox build environment, so the depends array should be complete.

Standard CMake Flags For Building Trinity Components

For all Trinity packages (including tqtinterface), you will need to specify the /opt/trinity prefix to get packages installed in the correct location. The following cmake options have been successful:

cmake ../ \
-DQTDIR=/opt/qt \
-DQT_LIBRARY_DIRS=/opt/qt/lib \
make VERBOSE=1

# for debugging info, add -DCMAKE_CXX_FLAGS=-g
Warning: RPATH argument ‘-DCMAKE_SKIP_RPATH=ON’ cannot be used with the kdelibs build

Trinity PKGBUILD Standards

To standardize the build and install of Trinity, the following PKGBUILD options are used:


  • trinity-


The current work is centered on determining how best to organize the PKGBUILD structure to make building from the existing Trinity svn tree doable. A majority of the Trinity svn build has been ported to cmake.

Cannot find qt-mt.so

For some reason sometimes qt3 cannot be found. A quick hack is to add qt to your LD_PRELOAD:

export LD_PRELOAD="/opt/qt/lib/libqt-mt.so
archroot - trinity-arts - qtobject.h not found

It first appeared that cmake environment was not respecting CMAKE_INCLUDE_PATH resulting an an tqobject.h include failure. However, Baho has been successful with the build and has not encountered this error. There have been many improvements with the CMake files in Trinity during the past few weeks, so hopefully this is no longer an issue.

Starting and Running Trinity on Arch

Currently Trinity runs fine if KDE4 or kdemod3 are not installed on the computer. It will run along side kde4, but the kde4 autostart scripts in /usr/share/autostart will load akonadi, nepomuk and the kde4 plasma-panel on top of Trinity. The Trinity developers are currently looking at how to make Trinity ignore the kde4 autostart scripts. Trinity will not run along side another kde3 install due to the conflict with the kde system config cache store in /var/tmp/kdecache-$USER. (Trinity will load, but window decorations, etc. will not appear due to incorrect path information in the existing cache). So currently, if you want to run Trinity -- run it in a clean environment.

Configuring Trinity to work with startx

Trinity provides a normal ‘startkde’ in /opt/trinity/bin. The easiest way to start Trinity is to simply create the symlink /usr/bin/starttrinity pointing to /opt/trinity/bin/startkde and then just add the ‘starttrinity’ entry at the end of ~/.xinitrc. (the symlink simply ensures that starttrinty is in your existing $PATH) Then from the command line, just type ‘startx’

Configuring Trinity kdm Greeter

Trinity provides a great looking kdm interface. The trinity-kdebase PKGBUILD has been updated to install the trinity.desktop file in /etc/X11/sessions; update /opt/trinity/share/config/kdm/kdmrc and /opt/trinity/share/config/kdm/Xsession. In order to use the Trinity kdm, all that is needed is to update /etc/inittab and change the runlevel 5 x startup to:

x:5:respawn:/opt/trinity/bin/kdm -nodaemon

If you experiment with other display managers (slim, etc..) please drop a quick howto here.

Trinity kdm Changes Summary

There are currently issues with the default Xsession file. (genkdmconf probably hasn't been looked at in years. Work is underway to get this fixed.) Updated files are provided in the trinity-kdebase package that fix this on Arch. The updated Xsession file provided by the trinity-kdebase PKGBUILD contains the following:

case $session in
   exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session."
   exec xterm -geometry 80x24-0-0
   exec $HOME/.xsession
   exec /opt/trinity/bin/startkde
   eval exec "$session"
exec xmessage -center -buttons OK:0 -default OK "Sorry, cannot execute $session. Check $DESKTOP_SESSION.desktop."
Warning: The trinity-kdebase install will install a default kdmrc each time the package is installed. The original annotated kdmrd is installed as kdmrc.orig. A fix is in work use the existing kdmrc if present.

The trinity-kdebase install also does the following:

creates the trinity.desktop file above in /etc/X11/sessions/trinity.desktop
updates /opt/trinity/share/config/kdm/kdmrc to set:
  • SessionsDirs=/etc/X11/sessions
  • TerminateServer=true

To use the Trinity chooser, all you need to do is:

  1. edit /etc/inittab and set x:5:respawn:/opt/trinity/bin/kdm -nodaemon
  2. sudo telinit Q or sudo /opt/trinity/bin/kdm &

14.0.0 Development Status

The following packages have been successfully built from the TDE GIT tree for the upcoming 3.5.14 release.

Required AUR Packages

 hal 0.5.14-14
 hal-info 0.20091130-7
 libutempter 1.1.5-8
 wv2 (dependency for koffice)

Completed Packages - 14.0.0_dev (on gcc 4.7.1 + libpng15)


Packages Requiring Fixes (libpng15)

The following is a list of packages that need code fixes to build with current libraries. If you can help with the project and code updates then please join us on the trinity-devel list (trinity-devel@lists.pearsoncomputing.net). Visit http://www.trinitydesktop.org/mailinglist.php for more information.

 koffice  (wv2 & libpng15)