KDE Core/Platform 11/Developer Story

From KDE Community Wiki

Issues

  • Compiling KDE, getting dependencies is difficult
  • Setting up latest stuff is painfull (e.g. Plasma Active)
  • Getting trunk development is hard
  • Providing dependencies is a distribution's problem
  • kdesourcebuild is more and more required
  • Redmine should provide the dependencies
  • Guides for all distributions how to build KDE are outdated
  • Standard KDE way to access packages, using distribution-specific backends
  • Two problems: Getting packages, setting up development environment
  • Developing kioslaves or other stuff which needs to be installed is tricky, requires local environment paths setup or root to install modules
  • Two different target groups: People working on KDE itself, libraries, core applications, which need development versions of libraries. Second group: application developer who work with stable release versions of libraries, 3rd party developers
  • Documentation is hard to find
  • Qualitiy of kdelibs is not always great
  • Cross-platform can be an issue
  • People just don't need what's in kdelibs

Target groups

  • Newcomers
    • New applications, kioslaves, plasmoids
    • Modifiy existing applications and other componentns
  • Develop KDE platform
  • Develop KDE frameworks
  • Qt-only developers

Tools

  • Plasmate for Plasmoid development
  • KDevelop for C++ development
  • kde-examples git repo, integrate it with KDevelop, add metadata
  • New user dashboard in KDevelop, guiding user. Templates have to be maintained, examples, can't be adapted.
  • AbstractItemMode test from Qt examples
  • Tools for testing kioslaves, kded modules, Akonadi agents
  • CPAN for Qt, selection of independent Qt based libraries, start with collection of links, add metadata, provide tools to get packages, integrate with IDEs

Examples

Apple developer documentation

  • Front page: What do you want to develop? (Could be our Techbase start page)
  • Framework is not that easy, but documentation is very targeted and makes it easy (Qt documentation is still better)