KDE/Generation5

From KDE Community Wiki
< KDE

KDE Generation 5

A radical proposal for re-structuring the KDE software projects in our version 5 release cycle. This is only a proposal from a KDE community member to prompt a discussion, and should not be taken as real. In particular, app and community status may not fairly or accurately reflect the real status! If you know something is wrong, please edit as appropriate.

Mostly the proposal is a re-branding exercise to break down the walls between Modules and Extragear, and a QA exercise to prepare a smaller, higher quality Generation 5 Applications release.

The primary points of the proposal are:

  • Abolish the Software Collection, Modules and Extragear, and replace them with Communities and Categories
  • Create a new Community and Category for Essential Applications
  • Review all applications currently in the Modules and SC release and deprecate all that are no longer required or good enough
  • Review all applications in Extragear and see what deserves to be in the main release.
  • Have a clearer split between Workspaces and Applications.


The eventual organisation may look something like:

KDE
  - Frameworks
    - Tier 1
    - Tier 2
    - Tier 3
    - Bindings
      - etc
    - SDK
      - Utils
      - Scripts
      - Templates
      - Examples
  - Workspaces
    - Plasma
      - Desktop
      - Netbook
      - Active
      - Add-ons
    - Razor
  - Applications
    - Essentials
    - Accessibility
    - Office
    - Edu
    - PIM
    - etc
    - KIO Slaves
    - Strigi Analyzers
    - Dolphin Plugins
    - Thumbnailers

KDE Metadata

A new file in every KDE repository storing the key metadata about the repo, from which the projects.xml, AppData and other metadata files can be automatically generated. Changes in the projects.xml would also be reflected back here. It is important that the metadata resides in the code repo so that people with clones and packagers know what the metadata is rather than having to know to look in projects.xml. It is important to have a central file to enable easy coordination, especially for the release process.

kde.ini

group=[frameworks|workspaces|applications]
categories=[games|education|multimedia|graphics|...]
maturity=[experimental|incubator|released|essential|deprecated|unmaintained]
release-cycle=[official|independent|unreleased]
stable-release=
stable-release-branch=
stable-release-date=
unstable-release=
unstable-release-branch=
unstable-release-date=
dev-branch=
maintainers=<git id>
name=
short-description=
description=
website=
forum=
user-mailing-list=
dev-mailing-list=
irc=
bugzilla-product=
bugzilla-component=
reviewboard-group=

Group

Frameworks

Workspaces

Applications

Essentials - Released apps that are deemed to be essential for everyday use and are guaranteed by the KDE community as a whole to be maintained to a high quality. (Is this a Group or Maturity level?).

Maturity

Experimental - What was Playground: experiments, new apps, WIP, etc. Has a fixed life-span, if no active work after 12 months then admins will move to unmaintained and contact the creator to discuss possible deletion.

Incubator - Similar to Review, but wider in scope. Covers those apps moving from Experimental to Released, but also covers mature apps coming from outside the KDE infrastructure that need to be reviewed for meeting KDE standards before going to Stable

Released / Stable / Maintained - Apps judged to be mature enough to move from Experimental or from outside, must have had a stable release, and that are being actively maintained in a releasable and usable state by a named individual or a community group.

Essential - Released apps that are deemed to be essential for everyday use and are guaranteed by the KDE community as a whole to be maintained to a high quality. (Is this a Group or Maturity level?).

Deprecated - Apps that are Released but may no longer be needing active maintenance or development due to decreased relevance, but that are still needing to be kept available for some part of the user base (e.g. KPPP). Best efforts will be made to keep compiling, but not guaranteed that will remain functional. May be stepping stone on way to Unmaintained.

Unmaintained - Apps that are no longer maintained or functional, and may no longer even compile.

Release Cycle

Official - Included in the official KDE Applications Release. Only Released maturity apps that are actively maintained and whose maintainers have guaranteed to abide by the release schedule and other KDE release standards may be included. The decision to include the app is made by concensus of the relevant community, or the wider KDE community, but is at the discretion of the KDE Release Team should they determine that the required KDE standards are not met.

Independent - A KDE Application that is not part of the official release. Note that apps in Experimental or Incubator may make alpha and beta releases and so may have this status, as may Unmaintained apps.

Unreleased - Apps that have never released.

Status

These statuses are highly speculative, I don't know the real status for most things and would appreciate people in the know to fill them in. Please check git logs and community mailing lists, if in any doubt leave as a question mark.

Where a Group, Maturity or Release box has been left blank it means no change to the app status, I've only filled in where I think they should change to make it easier to see. Default value is thus Applications / Released / Official.

Accessibility

Maintainer: ?

Status: Fairly actively maintained, and a must-have collection of apps. Need to consider if these should stay as apps, or if some are better replaced with plasmoids, or integrated into the workspace or frameworks?

Extragear has other useful tools like Simon.

App Maintainer Status Group Maturity Release Categories Notes
jovie ? active Accessibility
kaccessible ? active Accessibility
kmag ? active Accessibility
kmousetool ? active Accessibility
kmouth ? active Accessibility

Admin

Maintainer: ?

Status: Not much activity, apps appear stable and semi-useful, but not really a must have in the main release? Close module and remove from main release, but keep as released. Investigate working closer with distro's like Kubuntu to produce system admin tools inside KDE repos?

App Maintainer Status Group Maturity Release Categories Notes
kcron ? inactive? Independent System
ksystemlog ? inactive? Independent System
kuser ? inactive? Independent System

Base Applications

Maintainer: ?

Status: Very well maintained, will form basis of Essential Apps. Need to split up kde-baseapps repo, make Dolphin separate, deprecate Konqueror, maybe move other bits to Frameworks?

App Maintainer Status Group Maturity Release Categories Notes
kate ? active Essential Utilities
konsole ? active Essential Utilities
kde-baseapps ? active Essential / Deprecated Official / Independent Utilities Needs to be split up into Dolphin, Konqi, etc

Bindings

Maintainer: ?

Status: Fairly active? Depends on binding? Move to Frameworks / SDK / ???. Will we need to split the bindings up, e.g. by Framework library, otherwise is a monolithic dependency again?

App Maintainer Status Group Maturity Release Categories Notes
csharp ? active? Frameworks? Bindings
kross-interpreters ? active? Frameworks? Bindings
perl ? active? Frameworks? Bindings
pykde4 ? active? Frameworks? Bindings
ruby ? active? Frameworks? Bindings
smoke ? active? Frameworks? Bindings

Edu

Maintainer: ?

Status: Very well maintained, has strong community identity. All to Applications, Released, Official, Educational.

Examples

Maintainer: ?

Status: Actively maintained, contains examples for all KDE software offerings, not just Frameworks. Make part of proper SDK?

Games

Maintainer: ?

Status: Very well maintained, has strong community identity. All to Applications, Released, Official, Games.

Graphics

Maintainer: ?

Status: Not sure how active is as a community? Has some very well maintained apps, move some to Essentials, some to Frameworks, some to Utilities, System, etc?

Extragear has Digikam and a number of other useful apps that share libraries.

App Maintainer Status Group Maturity Release Categories Notes
svgpart ? ? Frameworks? Graphics?
libkdcraw ? active Frameworks? Graphics
libkexiv2 ? active Frameworks? Graphics
libkipi ? active Frameworks? Graphics
libksane ? active Frameworks? Graphics
ksaneplugin ? active Frameworks? ???
gwenview ? active Essential Graphics
okular ? active Essential Utilities
ksnapshot ? active Essential? Utilities
kcolorchooser ? active? Utilities
kruler ? active? Utilities
kgamma ? active? System
kolourpaint ? active Graphics
kdegraphics-mobipocket ? active Graphics Maybe split into library, Okular, strigi, thumbnailer?
kamera ? active? KIOSlaves / System Split over kioslaves and config?
kdegraphics-strigi-analyzer ? active? Strigi-Analyzers
kdegraphics-thumbnailers ? active? Thumbnailers

Multimedia

Maintainer: ?

Status: Doesn't seem very active as a module or community, close module and move to other areas?

App Maintainer Status Group Maturity Release Categories Notes
libkcddb ? ? Frameworks? Multimedia
libkcompactdisc ? ? Frameworks? Multimedia
kmix ? active Workspace Multimedia
juk ? active Multimedia
audiocd-kio ? ? KIOSlaves
ffmpegthumbs ? ? Independent? Thumbnailers
mplayerthumbs ? ? Independent? Thumbnailers
dragon ? ? Deprecated? Independent? Multimedia
kscd ? inactive? Deprecated Independent Multimedia

Network

Maintainer: ?

Status: No apparent community, not sure how well maintained or if many still useful? Close module and move most apps to Deprecated?

App Maintainer Status Group Maturity Release Categories Notes
kget ? ? Essential? Utilities
kdenetwork-strigi-analyzers ? ? Strigi-Analyzers
kdenetwork-filesharing ? ? ? ? Network
krdc ? ? Released? Official? System
krfb ? active Released? Official? System
kdnssd ? inactive? Deprecated? Independent? Utilities
kppp ? inactive Deprecated Independent Utilities
kopete ? active Deprecated Independent Communication Replaced by KTP

PIM

Maintainer: ?

Status: Very well maintained, has strong community identity. Some to Frameworks, some to Applications, Released, Official, PIM.

Utils

Maintainer: ?

Status: No apparent community? Close module and move apps under different areas, mostly Essentials or Utilities.

App Maintainer Status Group Maturity Release Categories Notes
ark ? active? Essential? Utilities
kcalc ? active? Workspace or Essential? Utilities
print-manager ? active Admin
filelight ? active? Utilities
kcharselect ? active? Utilities
kdiskfree ? active? Utilities
kgpg ? active? Utilities
kremotecontrol ? active? Utilities
sweeper ? active Utilities
ktimer ? active? Deprecated? Independent? Utilities replace with plasmoid?
kfloppy ? inactive Deprecated or Unmaintained? Independent Utilities
kwallet ? active Deprecated or Unmaintained? Independent Utilities To be replaced with SecretsService in Essentials
superkaramba ? inactive? Deprecated or Unmaintained? Independent Utilities

kdesdk

Maintainer: ?

Change concept, develop a proper SDK containing utils, scripts, templates, examples etc that are released with Frameworks? Apps can move to Developer Apps?

App Maintainer Status Group Maturity Release Categories Notes
kde-dev-utils ? active Frameworks SDK Merge utils, scripts, templates as one SDK repo?
kde-dev-scripts ? active Frameworks SDK Merge utils, scripts, templates as one SDK repo?
kapptemplate ? active Frameworks SDK Merge utils, scripts, templates as one SDK repo?
libkomparediff2 ? active Frameworks? Development
kdesdk-thumbnailers ? active Thumbnailers
kdesdk-strigi-analyzers ? active Strigi-Analyzers
kdesdk-kioslaves ? active KIOSlaves
dolphin-plugins ? active Dolphin-Plugins
umbrello ? active Development
poxml ? active Development
okteta ? active Development
localize ? active Development
kompare ? active Development
kcachegrind ? active Development
cervisia ? inactive? Deprecated? Independent? Development A good Git replacement would be nice

Toys

Maintainer: ?

Status: Almost empty, no real activity? Close module entirely. Do we keep in official release or move to independent release? Or deprecate entirely?

App Maintainer Status Group Maturity Release Categories Notes
amor ? ? Released? Official? Games
kteatime ? ? Released? Official? Utilities Could replace with a plasmoid or KAlarm?
ktux ? ? Released Official Screensavers

Plasma Addons

Maintainer: ?

Status: Actively maintained as part of Plasma community. Very monolithic build? Not sure what to do with? Assume will be released as part of Workspaces/Plasma release cycle rather than Applications release cycle? Would these be better downloaded via Bodega rather than installed via packages?