[announcement] ATTENTION PLASMA THEME, WIDGET, & ADD-ON DEVELOPERS

Christian kde at fuchsnet.ch
Sat Feb 24 21:41:44 GMT 2024


Hello Joseph, 

thank you very much for the e-mail, with my extension developer hat on: 

I am currently trying to port my hoppla plasmoid. And "trying" is a pretty 
good description. The documentation is unfortunately quite lacking in some 
parts and incomplete / outdated in others e.g. also the tool to convert the 
.desktop to json (desktoptojson) does not add lines that are required by 
plasma but not documented, and the only way to find that out is to either start 
plasma or a plasmoid viewer on a command line and look for stdout / stderr 
output.  (inb4 "then pull request a documentation fix" answers. I am already 
short on time as per below, so unfortunately I can't also, at least for now, 
write down all the obstracles I ran into and get them fixed, I am really 
sorry.)

Changes made to Qt6 also come into play, e.g. QtGraphicalEffects.
So you need multiple sources of documentation open at the same time, and e.g. 
the KDE API documentation (https://api.kde.org/ etc) seems to lack an easy 
option to switch between versions and the current docs linked there seem to be 
for plasma / frameworks / apps 5, not 6. 

Layouting / containers have undergone quite a lot of changes, and even when 
porting everything to the equivalent stuff in KF6, my plasmoid is completely 
unusable because controls end up out of view / too small / too big etc. 

And of course there are real time chats  (IRC, Matrix, Telegram, whathaveyou) 
and forums, but trying to get in touch with the right people at the right time 
is hard, and given that I work on KDE stuff in my spare time, the delay between 
when I need the information, when someone is around, gives the information, I 
can answer their questions etc.  is massive and there is no way my plasmoid 
will be even remotely ready in time.

So the best option is to look at existing code. Problem there is: even if you 
look at official, first party plasmoids, you find out that the very same thing is 
achieved quite differently between different plasmoids. Given there is very very 
very few actual deep documentation that covers more than the very basics, 
there is no way for me to know which way is proper. There are very few third 
party extensions available on the KDE store, and those that are are rather 
simple on the GUI end. I assume that quite some of the other third party 
extension developers are facing similar issues that I am, so it will take 
quite a while until more are available, both for users and fellow devs. 
(Not to mention that coding and testing is currently quite hard, I had to set 
up a VM so I don't have to install a distro that even has plasma 6 or dual 
boot all the time, both of which is also not easy)

tl;dr: the experience for third party developers is, at least in my opinion, 
sub par, the documenation far from sufficient and this can be quite frustrating.
I don't want to point fingers and I know that people doing all of this are 
volunteers, too. Just trying to give KDE developers an insight from a third 
party extension dev.

I hope that things will get better over time and with more people on plasma 6 
and more documentation available, and I will try my best to still be able to 
port my plasmoid over in a decent timeframe, definitely not ready for release 
though. And given I already started a while ago (given people asked on GitHub 
for me to port it), I assume other devs catching your e-mail now won't be even 
nearly ready for release.

That aside, I am looking forward to the plasma 6 release (I definitely won't 
switch myself before 6.1 / 6.2), and I wish us all great success and I want to 
send a huge thank you out to all developers, documentation writers, designers 
and all other helpful people whose work will make this big release possible.

Kind regards, 

Christian (Fuchs)

Am Freitag, 23. Februar 2024, 13:19:27 CET schrieb Joseph P. De Veaugh-Geiss:
> Apologies for the all caps, but now that I have your attention :)
> 
> With Plasma 6, various breaking changes affect existing Plasma
> look-and-feel themes, widgets, and ad-ons.
> 
> We love all your stuff, but you need to port it for it to work in Plasma
> 6. We have created some handy, easy-to-follow guides:
> 
>    https://develop.kde.org/docs/plasma/widget/porting_kf6/
> 
>    https://develop.kde.org/docs/plasma/theme/theme-porting-to-plasma6/
> 
> Porting is quite straightforward and should not take you long.
> 
> Keep our users happy! Port your stuff! :)
> 
> Cheers,
> Joseph
> 
> (H/t Paul Brown and Nate Graham for the above announcement)






More information about the kde-devel mailing list