During the past week, since the authentication library is working pretty good with the plasma widget explorer1 (although it still need to be polished and refined), I decided to get a little break with it and starting on improving PlasMate. As you should know, showing the trust level of a scripted plasmoid in the widget explorer is only one part of my whole GSoC: the goal is to provide a simple way to sign plasmoids, upload them with their signature via GHNS, retrieve them from the web (again, with GHNS), show their trust level before being downloaded, and finally display their trustlevel when browsing the plasma widget explorer.
Therefore, this week was PlasMate turn 🙂 . In the screenshot below, you can see how the Publish widget looks now:
The interface is pretty simple and intuitive: to enable the plasmoid signing option, simply click on the corresponding checkbox. Then, you have to select one PGP private key from the list below, and that’s all. Every time the user clicks Export/Install/Publish, a new signature file will be calculated, and a dialog will popup and ask for the key password.
The widget has also two buttons used to create or delete the keys used for signing; however they’re disabled for now because the creation of a new pgp key pair is not implemented in the qca api and I have to manage it on my own(so, this time, everything is good 😛 ), but the delete button is disabled because, yet an other bug™, the removeEntry() method calls the wrong command line switches, and I’m waiting for the fix2.
I’ve also managed to solve a serious bug which made PlasMate constantly crash whenever pressing the export, install or publish button. Seems like this bug affected PlasMate since alpha2, but I discovered it only few days ago when I started using these features. However, now it works like a charm 😀
Stay tuned for further updates, cheers !
2: No, I’m not kidding you. I’ve even told the author why the actual command line fails, and a sensible way to fix it. And, after five days, I’m still waiting for this trivial fix…↑