<div dir="ltr">Hello There!<div><br></div><div>I don't know if any of you remember me - it's been many years since I made any contributions to KDE. However, I would like to change that! :D</div><div>Recently, I became the maintainer for a plasma applet called "Kargos": <a href="https://github.com/lipido/kargos" target="_blank">https://github.com/lipido/kargos</a></div><div>It's a Plasma port of Mac OSX's BitBar: <a href="https://github.com/matryer/bitbar" target="_blank">https://github.com/matryer/bitbar</a><br></div><div>(I tried to include a screenshot, but it looks like these mailing lists have a limit of 40KB)</div><div><br></div><div>Those github pages give a lot of detail about exactly what it does and how to use it, but the short version is that it runs a given script periodically and displays the stdout in a panel.</div><div>This has made Plasma applets much more accessible to anyone that knows programming (or even shell scripting), as they can simply instantiate this to watch something. (No need to worry about Ui/Layout logic or Qt/QML at all).</div><div><br></div><div>However, I believe this kind of functionality should be built into Plasma itself, rather than being a far-away applet users have to stumble upon. </div><div>(Kind of like how the earlier versions of Chrome included direct support for Firefox's Greasemonkey scripts without users having to install the Greasemonkey plugin ;-)</div><div><br></div><div>First of all, I would like the Plasma team's blessing before I start doing any significant amount of work on this.</div><div>Secondly, (assuming I have the first), I would like to hear your thoughts on the best architecture for it. </div><div><br></div><div>1. Should it be done by an self-contained applet, or by the containment?</div><div>2. If applet, should it be 100% QML?<br>    I think there are plasma data engines to watch the filesystem and execute programs, I can parse the output in JavaScript.</div><div>    Or should I put the core logic to execute scripts and parse output in Plasma frameworks somewhere?</div><div>3. If containment, how can they be registered/instantiated as applets? Will each script need its own metadata.desktop file?</div><div> <br></div><div>Looking forward to diving back in,</div><div>Lasath</div></div>