KTp/Packaging Guide

From KDE Community Wiki
< KTp
Revision as of 11:10, 26 July 2011 by Gkiagia (talk | contribs) (Refactor components listing)

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

Two upstream packages are essential for KDE-Telepathy to work.

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.

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.

Should we recommend adding a "kde" somewhere in the names of the KDE-Telepathy packages to avoid confusion with upstream/non-KDE stuff?

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
telepathy-kde-accounts-kcm Account management KCM telepathy-qt4, data from telepathy-kde-contact-list (at runtime)
telepathy-kde-accounts-kcm-plugins Protocol plugins for the account management KCM. These provide a nicer GUI for some known protocols. telepathy-qt4, libkcmtelepathyaccounts (part of telepathy-kde-accounts-kcm)
telepathy-kde-approver KDED module that shows a notification when somebody starts a chat with you telepathy-qt4, data from telepathy-kde-contact-list (at runtime)
telepathy-kde-text-ui Text chat application telepathy-qt4, data from telepathy-kde-contact-list (at runtime)
telepathy-kde-contact-list Contact list application - Also provides icons and other data files that are shared among the other applications telepathy-qt4
telepathy-kde-presence-dataengine Plasma dataengine that provides telepathy data to plasmoids telepathy-qt4
telepathy-kde-presence-applet Plasma widget for setting your online presence - acts as the central system tray icon of traditional IM clients telepathy-kde-presence-dataengine (at runtime), data from telepathy-kde-contact-list (at runtime)
telepathy-kde-filetransfer-handler Background application for handling file tranfers telepathy-qt4
telepathy-kde-send-file Dolphin/konqueror context menu plugin for sending files easily to contacts telepathy-qt4, telepathy-kde-filetransfer-handler (at runtime), data from telepathy-kde-contact-list (at runtime)


Required components for basic functionality: telepathy-kde-accounts-kcm, telepathy-kde-contact-list, telepathy-kde-text-ui

Highly recommended components (should be installed by default): telepathy-kde-approver, telepathy-kde-accounts-kcm-plugins, telepathy-kde-presence-applet, telepathy-kde-presence-dataengine, telepathy-kde-filetransfer-handler

Optional components: telepathy-kde-send-file

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.

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://cgit.collabora.com/git/user/gkiagia (telepathy-kde* repos)
Ubuntu Michał Zając <[email protected]> Same as Debian, I will co-maintain it with George if neccessary