KTp/Packaging Guide
Packaging KDE-Telepathy is complicated for two reasons: firstly, due to the modular nature of Telepathy, there are several distinct components in separate git repositories. Secondly, there are large numbers of runtime interdependencies to worry about. This page attempts to ease packaging KDE-Telepathy in a useful way by explaining these issues.
Upstream Packages
Several upstream packages are essential for KDE-Telepathy to work. These are the ones encountered as dependencies in a normal compilation:
- telepathy-qt4 >= LATEST (currently 0.9, Build and Runtime Dependency)
- telepathy-mission-control >= 5.7.9 (Runtime Dependency)
- QJson build dependency for ktp-auth-handler.
- qt-gstreamer for building ktp-call-ui.
We're also using some bits from kdelibs 4.7.0 (Build and Runtime Dependency).
The IM networks that KDE-Telepathy can connect to are decided by which Telepathy Connection Managers are installed. These are runtime only dependencies, but which ones are installed will decide what IM networks KDE-Telepathy supports. The following are the ones we recommend - whether they are installed optionally or required is, of course, up to you.
- telepathy-gabble 0.13.7 (for Jabber support, including Google Talk and Facebook, might very probably crash with earlier versions)
- telepathy-haze (for all the other protocols, as supported by libpurple).
- It seems like telepathy-farstream should be compiled before telepathy-qt for compilation of ktp-call-ui to proceed.
KDE-Telepathy Packages
The different components of KDE-Telepathy are housed in separate git repositories on projects.kde.org. Some of these components are currently recommended to use. Others are not yet ready to be installed by users.
Ready Components
These components have reached a level of maturity where they are interesting to users. We recommend providing these components at the current time.
Name | Description | Dependencies |
---|---|---|
ktp-common-internals | Internal library | telepathy-qt |
ktp-accounts-kcm | Account management KCM | ktp-common-internals |
ktp-approver | KDED module that shows a notification when somebody starts a chat with you | ktp-common-internals |
ktp-text-ui | Text chat application | ktp-common-internals |
ktp-contact-list | Contact list application - Also provides icons and other data files that are shared among the other applications | ktp-common-internals |
ktp-kded-integration-module | Workspace integration module - provides several plugins like auto-away, the infamous 'Now listening to...' and also an error handler (important!!) | ktp-common-internals |
ktp-presence-applet | Plasma widget for setting your online presence - acts as the central system tray icon of traditional IM clients | ktp-common-internals |
ktp-filetransfer-handler | Background application for handling file tranfers | ktp-common-internals |
ktp-auth-handler | Background application for handling passwords and ssl certificates | ktp-common-internals |
ktp-send-file | Dolphin/konqueror context menu plugin for sending files easily to contacts | ktp-common-internals, ktp-filetransfer-handler (at runtime) |
ktp-contact-applet | Plasma applet for displaying contacts | ktp-common-internals |
ktp-call-ui | Voice and Video chat with contacts | ktp-common-internals |
ktp-contact-runner | Show contact in KRunner | ktp-common-internals |
telepathy-logger-qt | Provides support for loading saved message logs | ktp-common-internals, telepathy-logger, qt-glib |
Required components for basic functionality: ktp-accounts-kcm, ktp-contact-list, ktp-text-ui, ktp-auth-handler, ktp-kded-integration-module
Highly recommended components (should be installed by default): ktp-approver, ktp-presence-applet, ktp-call-ui, ktp-filetransfer-handler, telepathy-logger-qt, ktp-contact-runner
Optional components: ktp-send-file, ktp-contact-applet
Experimental Components
We have several other components under development, however, unless they are listed above we do not recommend packaging them. This is because they are subject to major changes/removal at any time, and are not ready for end users yet.
Note about accounts-kcm-plugins
Our 0.1.0 release had an extra package called telepathy-kde-accounts-kcm-plugins. These plugins have now been merged to the main telepathy-kde-accounts-kcm package and are no longer shipped separately.
Release Tarballs
The latest release is the 0.4.0 beta release.
Tarballs can be found at the KDE ftp mirrors: http://download.kde.org/download.php?url=unstable/kde-telepathy/0.4.0/src/
Distributions
Here is a list of known packaging efforst for various distributions. If you are also doing packages for a distribution, add your information here.
Distro | Packager | Links |
---|---|---|
Debian | George Kiagiadakis <[email protected]> | http://anonscm.debian.org/gitweb/ (pkg-kde/kde-extras/kde-telepathy/* repos) |
Ubuntu | Michał Zając <[email protected]> | Source: same as debian
Binaries: https://launchpad.net/~telepathy-kde/+archive/ppa (stable) |
openSUSE | Christophe Giboudeaux (krop on irc #opensuse-kde) | http://download.opensuse.org/repositories/KDE:/Unstable:/Playground:/Telepathy/ |
Arch Linux | Andrea Scarpino (bash) <[email protected]> | |
Gentoo | KDE Herd <[email protected]> | |
Chakra | Anke Boersma (abveritas) <[email protected]> |
http://www.chakra-project.org/packages/index.php?act=search&searchpattern=telepathy |
FreeBSD | Alberto Villa (avilla) <[email protected]> |
http://area51.pcbsd.org/trunk/area51/PORTS/net-im (repository) |