[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Poll: Do I need to blacklist your app
From:       "A.J. Venter" <aj.venter () datacash ! co ! za>
Date:       2008-07-22 22:48:15
Message-ID: 200807230048.15275.aj.venter () datacash ! co ! za
[Download RAW message or body]

Hi guys,
Last night I began hacking on kde3to4 version 0.0.2, the major changes are a 
switch to kioclient as the library backend and the one I am writing about.

Working on plugins, it quickly became apparent that barring a very small 
number of exceptions, you can migrate almost anything by copying 
$KDE3DIR/share/apps/$APP and $KDE3DIR/share/config/$APPrc to the same 
locations in $KDE4DIR,
Of course, kioclient support means things like "should I overwrite" and such 
are handled very gracefully now so this becomes a very feasable way of 
handling a very large part of the task.

So I implemented a plugin that does just that for every app it can find in 
your KDE3 installation. There is a catch though - I DO need to make every 
effort to protect users against breakage in those cases where this is NOT a 
working way. 
I put in place three levels of protection. The first is that the all apps 
plugin is always the FIRST plugin to run. This means you can use it, or skip 
it, and still access those things with their own plugins.
The second is that it will automatically ignore anything with an existing 
plugin - so that we can code for edge-cases without difficulty.
Finally, there is an internal blacklist of apps that should be ignored anyway.

Taking one example: amarok. 
The above method works very well if you are still using amarok1.x even on 
KDE4 - but won't work if you have upgraded to amarok2 (as mentioned to me on 
this list). So what I did with amarok is two-fold.
1) Amarok is blacklisted in all apps. This means that whatever version you are 
using, this plugin will ignore it completely.
2) There is a separate plugin for amarok1.4 that migrates that successfully. 

Thus when the amarok2 migration tool is finished, if possible I can code in a 
wrapper to it as an amarok2 plugin - and the user merely needs to say yes to 
the one and no to the other. Not ideal, but a pretty huge improvement (next 
step will be to determine which version of amarok you have automatically and 
then ignore the other plugin).

The real question now is: which other apps should be blacklisted ? Hence I 
thought I would ask here as I can get a big sample of the app developers in 
one place - if this approach will break your app, please let me know so that 
I can blacklist it before the final 0.0.2 release. 
If you can tell me how a plugin SHOULD work for your app, or maybe even write 
me one (just grab kde3to4 0.0.1 and read the SCRIPTHOWTO) that would be a 
huge bonus. 

The all-apps plugin is marked and clearly indicated to the user as 
experimental, and will remain that way until I am fairly certain that I have 
probably gotten all the edgecases either blacklisted or handled in outside 
plugins. It is my goal to continue to stabilize this code and improve it's 
functionality to the point where it may be considered for possible inclusion 
with KDE4.2 so I am making a serious effort to write a useful, usable and 
stable program.

TIA
A.J. Venter
-- 
AJ Venter
Linux System Administrator
DataCash

Tel (direct): +44 (0)20 7421 4520
Mobile: +27 (0)83 455 9978

DataCash Ltd, Descartes House,
8 Gate Street, London, WC2A 3HP, United Kingdom.

Tel:  +44 (0)870 7274 761
Fax: +44 (0)870 7274 781

www.datacash.com 

DISCLAIMER: This email and any files transmitted with it are confidential to 
DataCash Group plc and its group companies. It is intended only for the 
person to whom it is addressed. If you have received this email in error, 
please forward it to info@datacash.com with the subject line "Received in 
Error". If you are not the intended recipient you must not use, disclose, 
copy, print, distribute or rely on this email or any transmitted files. 
DataCash Ltd is registered in England and Wales no. 3430157. DataCash Ltd is 
part of the DataCash Group plc. DataCash Group plc is registered in England 
and Wales no. 3168091. DataCash Ltd and DataCash Group plc registered address 
is Descartes House, 8 Gate Street, London, WC2A 3HP, United Kingdom. 

Save a tree...Please only print this page if essential

 
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic