- 1 Trinity Desktop on Arch Linux
- 1.1 Introducing the Trinity Desktop
- 1.2 Current Status
- 1.3 Contributors
- 1.4 Trinity Resources
- 1.5 Building Trinity on Arch Linux
- 1.6 Trinity PKGBUILD Status
- 1.7 Contributions - Advice, Tips and Tricks
Trinity Desktop on Arch Linux
Introducing the Trinity Desktop
The Trinity Project is a fork of KDE3 developed by Timothy Pearson (trinity.pearsoncomputing.net). The project provides the Trinity Desktop updated and built against current libraries. The current release (3.5.12) provides binary packages available for Debian (Lenny & Squeeze), Ubuntu (Karmic, Lucid & Maverick) and Slackware 12.2. The desktop is actively developed and provides subversion checkout. The latest emphasis on development is moving to a cmake build environment and port to Qt4 by way of the Trinity Qt Interface (tqtinterface). The goal here is to develop a set of PKGBUILD scripts that will allow Trinity to be built and made available for Arch Linux using the Trinity svn code. The purpose of this page is the capture the information necessary to build Trinity on Arch and facilitate collaboration for that effort.
The current effort to provide a set of PKGBUILDs on Arch began January 21, 2011. The basic build requirements on Arch have been determined and preliminary PKGBUILDs have been created for several of the Trinity svn dependencies (See Completed PKGBUILDs below). As with any large desktop build, a bit of trial and error will be required to determine how best to design a working set of build scripts to work efficiently with the Trinity svn tree. Any thoughts, help or advise that can be provided will speed the development and maturity of this project and will be much appreciated.
At present, the project is just beginning. Hopefully, interest in the project and the list of contributors will grow in the near future. Anyone wanting to help can simply join in. Regardless of your experience level building packages for Arch, your thoughts and comments are welcome and any technical expertise or experience you can lend (especially with cmake or determining build dependencies) will help. The current project of listed members is comprised of:
- David Rankin
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. All pages are available from the main project site. A quick list of helpful links to the project follows:
- Main Project Site: http://trinity.pearsoncomputing.net
- Developers Web: http://trinity.pearsoncomputing.net/wiki/bin/view/Developers/WebHome
- How To Build: http://trinity.pearsoncomputing.net/wiki/bin/view/Developers/HowToBuild
- Bug Reporting: http://bugs.pearsoncomputing.net
- SVN Web Access: http://websvn.kde.org/branches/trinity/
- Mailing Lists: http://trinity.pearsoncomputing.net/mailing_lists
Getting the Code
The Trinity source is available as a stable release and via svn checkout. For purposes of building Trinity on Arch, the project is focused on using the svn code. The total size of the current svn checkout is approximately 3.8G. The code is available via anonymous svn checkout from kde.org:
Building Trinity on Arch Linux
Required Packages on Arch
Before jumping into the Trinity source, you will need to install the Arch base-devel packages, cmake, python2-sip, pyqt3, pykde3 and qt3-3.3.8c (patched for the Trinity Qt interface). Arch already provides packages for everything except pykde3 and qt3-3.3.8c. Current PKGBUILDs for pykde3 and qt3-3.3.8c are provided below.
Trinity Build Order
The required build order is specified in the Trinity-HowToBuild. In summary, the order is to build the tqinterface and arts (in trinity/dependencies) before proceeding with the remaining modules. A current issue under investigation is whether kdemod3 must be removed prior to building Trinity or when in the process it must be removed (See Build Issues below)
Trinity Build Issues
There are reports that building against older versions of the KDE3 dcopobject.h will cause the Trinity build to fail at later stages. The difficulty is building pykde3 without having an existing KDE3 (kdemod3) installed. The current approach taken is to patch and build Qt3-3.3.8c, install as qt3-enhanced with your existing kdemod3 install and then build pykde3 against the existing dcopobject.h in /opt/kde/include. This assumes a rebuild of pykde3 against the updated dcopobject.h provided by trinity/kdelibs once the build has progressed to that point. Where in the build order that happens is yet to be determined. This approach allows for the successful build of tqtinterface.
Trinity PKGBUILD Status
New PKGBUILD files will be added as they are developed from working through the Trinity build order. If you are familiar with KDE3 packaging, complex PKGBUILD structures, or in determining package dependencies for individual applications, your help is needed. We are currently looking at the structure of the KDE4 build system and with build structure of packages like mesa to deduce a good approach to build Trinity. If you have thoughts on how best to do this, please lend a hand.
qt3-3.3.8c - The source containes two PKGBUILD files (PKGBUILD and PKGBUILD-qt3-enhanced) The original simply builds qt3 with the Trinity tqtinterface patch. PKGBUILD-qt3-enhanced will build an updated qt3-enhanced with the Trinity patch that will work with the existing kdemod3 install.
pykde3 - builds the pykde3 package.
tqtinterface - builds trinity/dependencies/tqtinterface. The PKGBUILD currently retrieves the source from svn before building. It is currently being reworked to use the existing source in the svn tree. (See PKGBUILD Issues below)