and once again... a better cvs structure, clearer dependancies, more logic :-) Was: Refactoring KCM technology
Alexander Neundorf
neundorf at kde.org
Mon Mar 22 17:26:01 GMT 2004
On Monday 22 March 2004 06:48, Cornelius Schumacher wrote:
[... skipped many good arguments, nothing to add]
All the following suggestions are intended for KDE 4, not 3.3, so here we go:
> Nothing, as well as you can't use another language as english,
> applications needing some kioslaves won't run (e.g. KMail or
> KHelpcenter), you can't configure aspects of the applications which
> need kcontrol modules from kdebase, etc.
>
> Face it: kdebase is required to run KDE applications.
Well, but it also features a lot of things not required to run other
applications: kicker, kwin & styles, kdm, kfind, kpager, kdesktop,
kappfinder, kdcop, klipper, kmenuedit, ksmserver, kscreensaver, ksplash,
ksysguard, kxkb, legacyimport, ksystraycmd, ktip
> If you try to move all the stuff which is needed to kdelibs you will
> effectively move half of kdebase which certainly is not what we want.
Actually: why is it not what we want ?
If stuff in kdebase is library-like framework, it might go into kdelibs.
Currently kdebase is a mixture of framework stuff (ioslaves, kdesu,
khelpcenter, kdialog), kde desktop apps (kicker, kwin and the ones listed
above) and some selected basic applications (konsole, kfind, konqueror,
kate).
Why is there so much resistance to clean this mixture and get some better
structure again ?
IMO better would be:
kdelibs: basically as it is now: something very stable, absolutely essential,
where it is not easy to change/add things, a module which *shall not* be
split, also not by packagers, which isn't bloated, which you can rely on if
you only want some basic kde integration for your (maybe even commercial) Qt
app or in a resource-constrained environment. Maybe new features should only
go into kdelibs after they have been for one minor release in the
kdeframework module and proven to be good/useful. It could even have a slower
release cycle then the rest (but this probably doesn't make sense with the
kde development style).
kdeframework: the apps discussed here, ioslaves, and e.g. libs like kabc
(currently in kdelibs), libkipi, taglib, maybe libkcddb, the ical stuff from
kdepim. This way more apps can benefit from the libraries which are currently
in the various modules. This would resolve most dependancy issues. This
module could/should be split by packagers into the various components.
Maybe it could also serve as a playground for new libraries or new features in
libraries, which might be explicitely marked as "experimental" and removed in
later versions if they turn out to suck, or move to kdelibs if the kick ass
and are of general use :-)
kdebase: a set of basic applications (konsole, kate, konqy, kfind, kpdf,
kghostview, an image viewer, kmix, ...)
kdedesktop: depending on kdebase, containing kicker, kwin and stuff (listed
above)
The other modules should basically stay as they are, maybe some things (libs)
can move to kdeframework, and some things can move to kdebase...
I think now, before the development for 4.0 starts, is the only chance for
such a change for the next maybe 3 to 5 or even more years.
So, the effort of recompiling a lot of things for many developers shouldn't be
the knock out for having a better structure for our monster pet project for
the next decade :-)
Bye
Alex
--
Work: alexander.neundorf at jenoptik.com - http://www.jenoptik-los.de
Home: neundorf at kde.org - http://www.kde.org
alex at neundorf.net - http://www.neundorf.net
More information about the kde-core-devel
mailing list