LabPlot can now be installed on Windows computers from the Microsoft store. We asked some questions to Stefan Gerlach who got it into the store about how this was done.
Jonathan Riddell: Can you tell us what LabPlot does?
Stefan Gerlach: LabPlot is a desktop application for interactive visualization and analysis of scientific data. We try to provide an alternative to commercial products like OriginLab Origin, SigmaPlot or IgorPro, but also use modern desktop features. There are some free applications with more or less overlapping goals like SciDAVis and kst and we collaborate with them.
LabPlot is a multi-platform KDE application. The current code base, named LabPlot2, started in 2006 when rewriting the old version LabPlot 1.6. Our main development platform is Linux, but most of our users are on Windows, so we are working hard to make everything work there too.
Jonathan: What about Cantor?
Stefan: Cantor is basically a frontend to several (mathematical) applications like Python, Octave, Sage or Julia with a nice worksheet interface.
Cantor-Worksheets can be used in LabPlot to do calculations and show the results. Two nice examples can be found at the Labplot gallery. I'm not a main developer of Cantor, but mainly work on porting it to Windows and macOS to make it available for LabPlot.
Jonathan: How was the Windows build of LabPlot made?
Stefan: We have been using the Binary Factory to build nightly and release builds for Windows for some time now. Before that we had a virtual machine running Windows with Craft installed to make our own packages. It was not easy to get everything built correctly on the Binary Factory, but, looking back, it was worth the effort.
Jonathan: What sort of QA have you done on the Windows build of LabPlot?
Stefan: Besides several unit tests that we have, most of the QA we do now is using new features on all platforms. We also get user responses from nightly builds when things are not working as expected. This helped a lot to find regressions and problems especially on Windows.
Jonathan: How easy was it to get access to the KDE account on the Microsoft Store?
Stefan: Very easy. I just had to open a sysadmin ticket :-)
I don't think that every application developer needs access to the KDE account. If a Windows package is well prepared and tested, the submit process can be easily done by any developer on the KDE Partner Center.
Jonathan: What sort of process did you have to go through to get it into the Microsoft Store?
Stefan: To get LabPlot in the Microsoft Store I used the excellent submission guide. Before that I followed the corresponding Phabricator ticket for requirements and prepared the Windows package on the Binary Factory. It took some time to do it the first time, but other application developers can surely find help if needed.
Jonathan: LabPlot is available at no cost, did you consider charging for it the same as Krita does?
Stefan: We are happy to provide a free software application for anyone to use. Any donation right now goes to KDE and we think this is well earned for providing such a great framework and infrastructure for developers.
We already talked internally about whether we should collect money for hiring developers but we decided that it probably won't pay off. We know that our target group is rather small and we don't have so many users as more popular KDE applications :-)
Jonathan: Do you have a process to keep the LabPlot version on the store up to date? Have you considered how you would handle security updates for example?
Stefan: Updating all packages is part of our release plan as far as we can support it. It normally takes a few days after the source is published but we are only a small team :-)
Security is normally not an issue for LabPlot. As far as i can remember there were never any security problems in our code. But in case there are any, we would fix it as soon as possible and update all packages.
Jonathan: Have you looked at other platforms and stores for LabPlot?
Stefan: Sure. Our third major platform is macOS, which is not as popular among our users, but it is gaining more and more popularity. Improving LabPlot on macOS with the help of our users is something we constantly work on.
With the latest release we started to look at more ways to make LabPlot available.
Besides for the Microsoft Store, we also created a flatpak with the help of the Binary Factory and added the latest release on Flathub.
There is also a FreeBSD build on build.kde.org so we can make sure that it at least compiles on other Unix-like platforms. Besides that, I'm not aware of anyone using LabPlot on anything else than Linux, Windows or macOS. But this should already be sufficient for most users :-)
We would be happy to use more stores and platforms like for ARM architectures, as well as AppImage or Apple Store when KDE has better support for it.
Jonathan: Thanks Stefan!