KTp/Packaging Guide: Difference between revisions

From KDE Community Wiki
< KTp
m (→‎Distributions: Update information about Chakra)
(60 intermediate revisions by 20 users not shown)
Line 1: Line 1:
{{:KTp/Header}}
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.
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==
==Upstream Packages==
Two upstream packages are essential for KDE-Telepathy to work.
Several upstream packages are essential for KDE-Telepathy to work. These are the ones encountered as dependencies in a normal compilation:
* [http://telepathy.freedesktop.org/releases/telepathy-qt4/ telepathy-qt4] >= 0.7.1 (Build and Runtime Dependency)
* [http://telepathy.freedesktop.org/releases/telepathy-qt/ telepathy-qt4] >= LATEST (currently 0.9.2.1, Build and Runtime Dependency)
* [http://telepathy.freedesktop.org/releases/telepathy-mission-control/ telepathy-mission-control] >= 5.7.9 (Runtime Dependency)
* [http://telepathy.freedesktop.org/releases/telepathy-mission-control/ telepathy-mission-control] >= 5.7.9 (Runtime Dependency)
* [http://qjson.sourceforge.net QJson]  build dependency for ktp-auth-handler.
* [http://gstreamer.freedesktop.org/modules/qt-gstreamer.html qt-gstreamer] for building ktp-call-ui.
* [http://telepathy.freedesktop.org/releases/telepathy-logger/ telepathy-logger] if you ware going to compile telepathy-logger-qt.
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.
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.


* [http://telepathy.freedesktop.org/releases/telepathy-gabble/ telepathy-gabble] (for Jabber support, including Google Talk and Facebook)
* [http://telepathy.freedesktop.org/releases/telepathy-gabble/ telepathy-gabble 0.13.7] (for Jabber support, including Google Talk and Facebook, might very probably crash with earlier versions)
* [http://telepathy.freedesktop.org/releases/telepathy-butterfly/ telepathy-butterfly] (for MSN/Windows Live support)
* [http://telepathy.freedesktop.org/releases/telepathy-haze/ telepathy-haze] (for all the other protocols, as supported by libpurple).
* [http://telepathy.freedesktop.org/releases/telepathy-haze/ telepathy-haze] (for all the other protocols, as supported by libpurple).
* It seems like [http://telepathy.freedesktop.org/releases/telepathy-farstream/ telepathy-farstream] should be compiled '''before''' telepathy-qt for compilation of ktp-call-ui to proceed.


==KDE-Telepathy Packages==
==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.
The different components of KDE-Telepathy are housed in separate git repositories on quickgit.kde.org. Some of these components are currently recommended to use. Others are not yet ready to be installed by users.


===Ready Components===
===Ready Components===
Line 21: Line 28:
! Name !! Description !! Dependencies
! Name !! Description !! Dependencies
|-
|-
| [https://projects.kde.org/projects/playground/network/telepathy/telepathy-accounts-kcm telepathy-kde-accounts-kcm] || Account management KCM || telepathy-qt4, data from telepathy-kde-contact-list (at runtime)
| [https://quickgit.kde.org/?p=ktp-common-internals.git ktp-common-internals] || Internal library || telepathy-qt
|-
| [https://quickgit.kde.org/?p=ktp-accounts-kcm.git ktp-accounts-kcm] || Account management KCM || ktp-common-internals
|-
| [https://quickgit.kde.org/?p=ktp-approver.git ktp-approver] || KDED module that shows a notification when somebody starts a chat with you || ktp-common-internals
|-
| [https://quickgit.kde.org/?p=ktp-text-ui.git ktp-text-ui] || Text chat application || ktp-common-internals
|-
| [https://quickgit.kde.org/?p=ktp-contact-list.git ktp-contact-list] || Contact list application - Also provides icons and other data files that are shared among the other applications || ktp-common-internals
|-
|-
| [https://projects.kde.org/projects/playground/network/telepathy/telepathy-approver 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)
| [https://quickgit.kde.org/?p=ktp-kded-module.git 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
|-
|-
| [https://projects.kde.org/projects/playground/network/telepathy/telepathy-chat-handler telepathy-kde-text-ui] || Text chat application || telepathy-qt4, data from telepathy-kde-contact-list (at runtime)
| [https://quickgit.kde.org/?p=ktp-desktop-applets.git ktp-desktop-applets] || Plasma widgets (presence applet which acts as the central system tray icon of traditional IM clients, a simplified contact list, an applet which represents a single contact and can be used to trigger actions like "send mail", "initiate conversation", …) || ktp-common-internals
|-
|-
| [https://projects.kde.org/projects/playground/network/telepathy/telepathy-contact-list telepathy-kde-contact-list] || Contact list application - Also provides icons and other data files that are shared among the other applications || telepathy-qt4
| [https://projects.kde.org/projects/extragear/network/telepathy/ktp-filetransfer-handler ktp-filetransfer-handler] || Background application for handling file tranfers || ktp-common-internals
|-
|-
| [https://projects.kde.org/projects/playground/network/telepathy/telepathy-presence-dataengine telepathy-kde-presence-dataengine] || Plasma dataengine that provides telepathy data to plasmoids || telepathy-qt4
| [https://quickgit.kde.org/?p=ktp-auth-handler.git ktp-auth-handler] || Background application for handling passwords and ssl certificates || ktp-common-internals
|-
|-
| [https://projects.kde.org/projects/playground/network/telepathy/telepathy-presence-applet 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)
| [https://projects.kde.org/projects/extragear/network/telepathy/ktp-send-file ktp-send-file] || Dolphin/konqueror context menu plugin for sending files easily to contacts || ktp-common-internals, ktp-filetransfer-handler (at runtime)
|-
|-
| [https://projects.kde.org/projects/playground/network/telepathy/telepathy-filetransfer-handler telepathy-kde-filetransfer-handler] || Background application for handling file tranfers || telepathy-qt4
| [https://quickgit.kde.org/?p=ktp-call-ui.git ktp-call-ui] || Voice and Video chat with contacts || ktp-common-internals
|-
|-
| [https://projects.kde.org/projects/playground/network/telepathy/telepathy-auth-handler telepathy-kde-auth-handler] || Background application for handling passwords and ssl certificates || telepathy-qt4
| [https://projects.kde.org/projects/extragear/network/telepathy/ktp-contact-runner ktp-contact-runner] || Show contact in KRunner || ktp-common-internals
|-
|-
| [https://projects.kde.org/projects/playground/network/telepathy/telepathy-send-file 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)
| [https://quickgit.kde.org/?p=telepathy-logger-qt.git 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


'''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):''' ktp-approver, ktp-desktop-applets, ktp-call-ui, ktp-filetransfer-handler, telepathy-logger-qt, ktp-contact-runner
 
'''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
'''Optional components:''' ktp-send-file


===Experimental Components===
===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.
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==
==Release Tarballs==
The latest release is the 0.1.0 Technical Preview release. As its name suggests, this is a technical preview and is by no means considered a proper stable release.
The latest release is the 0.7.0


Tarballs can be found at the KDE ftp mirrors:  
Tarballs can be found at the KDE ftp mirrors:  
http://download.kde.org/download.php?url=unstable/telepathy-kde/0.1.0/src/
http://download.kde.org/stable/kde-telepathy/0.7.0/src/


==Distributions==
==Distributions==
Line 64: Line 81:
! Distro !! Packager !! Links
! Distro !! Packager !! Links
|-
|-
| Debian || George Kiagiadakis <[email protected]> || http://anonscm.debian.org/gitweb/ (users/gkiagia-guest/telepathy-kde* repos)
| Debian || George Kiagiadakis <[email protected]> || http://anonscm.debian.org/gitweb/ (pkg-kde/kde-extras/kde-telepathy/* repos)
|-
|-
|-
|-
Line 72: Line 89:
|-
|-
|-
|-
| openSUSE || Christophe Giboudeaux (krop on irc #opensuse-kde) || http://download.opensuse.org/repositories/KDE:/Unstable:/Playground/
| openSUSE || The openSUSE Community (opensuse-kde@opensuse.org) || http://download.opensuse.org/repositories/KDE:/Extra (repository).
|-
| Arch Linux || Andrea Scarpino (ilpianista) <[email protected]> ||
https://www.archlinux.org/groups/x86_64/kde-telepathy/
|-
| Gentoo || KDE Herd <[email protected]> ||
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-im/kde-telepathy-meta/
|-
| Chakra || AlmAck <[email protected]> ||
http://www.chakralinux.org/packages/index.php?act=search&searchpattern=telepathy
|-
| FreeBSD || Alberto Villa (avilla) <[email protected]> ||
http://area51.pcbsd.org/trunk/area51/PORTS/net-im (repository)<br />
http://FreeBSD.kde.org/area51.php (instructions)
|-
|-
| Arch Linux || Andrea Scarpino (bash) <andrea@archlinux.org> ||
| Fedora || Jan Grulich (jgrulich) <jgrulich@redhat.com> ||
https://www.archlinux.org/groups/x86_64/telepathy-kde/
https://admin.fedoraproject.org/pkgdb/acls/list/ktp-*
|-
|-
|}
|}

Revision as of 18:31, 13 July 2016

Project logo Welcome to the
KDE Telepathy Development Wiki
Current Version: 23.07.70

Open Hub project report for KDE Telepathy

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:

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 quickgit.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-desktop-applets Plasma widgets (presence applet which acts as the central system tray icon of traditional IM clients, a simplified contact list, an applet which represents a single contact and can be used to trigger actions like "send mail", "initiate conversation", …) 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-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-desktop-applets, ktp-call-ui, ktp-filetransfer-handler, telepathy-logger-qt, ktp-contact-runner

Optional components: ktp-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.

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.7.0

Tarballs can be found at the KDE ftp mirrors: http://download.kde.org/stable/kde-telepathy/0.7.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)
Binaries: https://launchpad.net/~telepathy-kde/+archive/daily-builds (latest)

openSUSE The openSUSE Community ([email protected]) http://download.opensuse.org/repositories/KDE:/Extra (repository).
Arch Linux Andrea Scarpino (ilpianista) <[email protected]>

https://www.archlinux.org/groups/x86_64/kde-telepathy/

Gentoo KDE Herd <[email protected]>

http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-im/kde-telepathy-meta/

Chakra AlmAck <[email protected]>

http://www.chakralinux.org/packages/index.php?act=search&searchpattern=telepathy

FreeBSD Alberto Villa (avilla) <[email protected]>

http://area51.pcbsd.org/trunk/area51/PORTS/net-im (repository)
http://FreeBSD.kde.org/area51.php (instructions)

Fedora Jan Grulich (jgrulich) <[email protected]>

https://admin.fedoraproject.org/pkgdb/acls/list/ktp-*