KDE3 apps running in a KDE4-modified environment

Mauricio Piacentini mauricio at tabuleiro.com
Wed Apr 18 19:35:26 BST 2007


 >>For KDE 3 and 4 to co-exist, anything with the same name must be 
 >>backwards
 >>compatible, or must be renamed (like we did to kdeinit, kde-config, 
 >>etc.).

It is not ideal, but one approach I considered was to change the group 
or key name for the incompatible entries in the rc file. And from now 
on, add better validation of data in the KDE4 version, so that the same 
problem does not resurface in the KDE5 transition. So for example in 
kmahjonggrc there is currently:

[General]
Background_file=/somefilepath/background.png
Tileset_file=/somefilepath/tileset.png

The problem is that the new KDE4 version does not take a .png directly, 
it uses a background description file, with localization info, and a 
pointer to the SVG. As we know, the new code can handle this older 
entries and will upgrade them automatically to the new defaults. But the 
old code will choke when it runs into an upgraded file. The possible 
solution would be to make the new version look for a different key, like:

[General]
Background=/somefilepath/backgrounds/default.desktop
Tileset=/somefilepath/tilesets/default.desktop

Of course, this change can be a nightmare for very complex apps, but 
maybe in this case the group could be changed if sharing the same config 
is desireable, and the current versions are not prepared to deal with 
unexpected configuration values.
We may even consider this behavior of crashing with updated values to be 
a bug in some of the current applications, don't you agree? The apps 
should ideally not crash when they are fed inconsistent config values, 
they should just revert to using sane defaults. Maybe something to look 
for in the future.

Regards,
Mauricio Piacentini




More information about the kde-core-devel mailing list