|
|
(17 intermediate revisions by 8 users not shown) |
Line 1: |
Line 1: |
| = Getting Started =
| | #REDIRECT [[KDE PIM/Development]] |
| | |
| To get started, all you really need is a [[#Git - a Source Code Control System|git clone]]. After that, you can compile and run the latest-and-greatest (and maybe buggy) versions of the KDE PIM applications.
| |
| When you find a bug, you can fix it, create a patch, and send it to us! That's the way KDE PIM applications are continually improving. There is much more information available to begin with, though.
| |
| | |
| Here is a checklist of things to launch yourself into the world of KDE PIM development.
| |
| For lots of them, it is most important that you know they exist:
| |
| | |
| * Subscribe to the right [[#Mailing Lists|mailing lists]]. Read them regularly.
| |
| * Browse the information about the [[#Common KDE Developer information|development tools]], to choose one. Most KDE PIM hackers use kate, vi, or emacs as editor and just compile in a konsole window, though.
| |
| * Take a brief look at the [http://doc.trolltech.com/4.7 Qt documentation]. It is excellent, and you should know about QWidgets and QObjects a little before continuing.
| |
| * Take a brief look at the [http://api.kde.org/ KDE documentation]. It is a bit overwhelming.
| |
| * Spend some time over at the [http://www.kde.org/community/getinvolved/ KDE Community website].
| |
| * Get the [[#prerequisites|prerequisites]] for building KDE PIM master. Note that you really want to follow master to make a positive contribution to KDE PIM. <br />
| |
| If you work on or with the last released version, you're usually a month or four behind the times, and that makes a huge difference in KDE PIM. You can work with a stable system -- the latest released KDE libs and base -- and put (relatively) unstable PIM HEAD on it.
| |
| * Clone the relevant [[#Git - a Source Code Control System|Git repositories]].
| |
| * Compile it and install.
| |
| * Report bugs, wishes, fix bugs, get involved!
| |
| | |
| == Mailing Lists ==
| |
| | |
| Mailing lists are probably the ultimate source of development information. Follow discussions of KDE core and application developers and ask your questions. Unless you don't think about what you are saying, you will surely get an answer. Subscribe to the [http://mail.kde.org/mailman/listinfo/kdepim kde-pim mailing list]. It is for '''discussion about development'''. Please don't wildly post all your compilation problems there. Ask on [[#IRC (Chat)|IRC]] for such issues.
| |
| | |
| == IRC (Chat) ==
| |
| | |
| Most of the developers hang around in one development IRC channel or another. On [http://www.freenode.net/ freenode] (irc.kde.org), you can find:
| |
| | |
| * #KDE for the user questions.
| |
| * #akonadi for development discussion on Akonadi.
| |
| * #kontact for development discussion on Kontact and its components. Please don't post user-questions there.
| |
| | |
| There are a variety of IRC (Chat) programs available. KDE ships with [http://konversation.kde.org/ Konversation]. XChat is available in many installations as well.
| |
| | |
| == Common KDE Developer information ==
| |
| | |
| Visit the [http://techbase.kde.org KDE techbase site] for very detailed information about KDE development.
| |
| You'll find lots of stuff, e.g. documentation, tutorials, reference guides, etc.
| |
| | |
| http://techbase.kde.org/Projects/PIM has lots of informations you may read before starting contributing to KDE PIM.
| |
| | |
| http://userbase.kde.org/Kontact is the central place for user tips and tricks.
| |
| | |
| [http://www.kdevelop.org/ KDevelop] is an Integrated Development Environment for KDE.
| |
| | |
| For recent news about KDE development you may not miss the KDE news site at [http://dot.kde.org/ dot.kde.org].
| |
| | |
| == Prerequisites ==
| |
| | |
| the whole KDE PIM suite is composed of four modules. You're highly encouraged to checkout and build all of them:
| |
| * [http://www.akonadi-project.org/ Akonadi], The PIM Storage Service
| |
| * KDEPIMLIBS, the base libraries for all the PIM applications
| |
| * KDEPIM-RUNTIME, the Akonadi resources which are required at runtime to let the kdepim applications communicate with the Akonadi server
| |
| * KDEPIM, All the PIM applications
| |
| | |
| In order to build and use the KDEPIM modules, you may use the last released KDE version.
| |
| | |
| You might want to make a backup of your valuable data, though. Most of it lives in <small>.kde</small>, in your home directory; You may also backup your Akonadi server config files in <small>$HOME/.config/akonadi</small> and your kdepim applications data in <small>$HOME/.local/share</small>.
| |
| It may be easier to just create an additional user and give it a copy of your data, and run PIM HEAD there.
| |
| | |
| == Git - a Source Code Control System ==
| |
| | |
| The KDE PIM repositories can be visited via WWW at http://projects.kde.org or http://gitweb.kde.org.
| |
| | |
| == The really short guide ==
| |
| | |
| This short guide will explain how to build Akonadi, kdepim and kdepim-runtime checked out from Git.
| |
| | |
| You may use the following commands to check out the different repositories:
| |
| | |
| * Akonadi:
| |
| <code>
| |
| git clone http://anongit.kde.org/akonadi
| |
| </code>
| |
| | |
| * kdepimlibs:
| |
| <code>
| |
| svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs
| |
| </code>
| |
| | |
| * kdepim-runtime:
| |
| <code>
| |
| git clone http://anongit.kde.org/kdepim-runtime
| |
| </code>
| |
| | |
| * kdepim:
| |
| <code>
| |
| git clone http://anongit.kde.org/kdepim
| |
| </code>
| |
| | |
| You can now build the modules in the following order:
| |
| Akonadi > kdepimlibs > kdepim > kdepim-runtime Complete guides to build KDE modules can be found on http://techbase.kde.org.
| |