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)