It’s a delicate balance that needs to be accomplished but it isn’t always straightforward to do so. Each OS has nuance that affects how you release software for it and what versions of the OS your app will support. Linux is easy to develop for, because the OS will satisfy dependencies for you, all you need to do is specify them. However that model stops working when your software requires libraries that are more recent than what the distribution provides. Some popular distributions, such as Debian and Linux Mint update their libraries once every two years, and when they do so they sometimes update to versions that aren’t recent. That’s what’s currently happening with the Qt framework and the KDE libraries that QPrompt depends on.
Then you may ask, why not stick to the old libraries until the new libraries are readily available on all popular distros? The answer is because porting takes time and it’s something I have to do in my spare time. I also had to write a new build pipeline because the old one kept breaking on all systems and I got tired of fixing it; that took away far more time than doing the port did. I did try to make the new build process work with both Qt 5 and 6. While I succeeded at this with a simpler application, that wasn’t the case with QPrompt. It would’ve required much duplicate code, which would’ve made the project unwieldy. Time is limited and I’ve had other things to take care of before releasing. At some point I decided to stop maintaining a Qt 5 branch and a Qt 6 branch to focus only on the Qt 6 codebase.
I should also add that Qt 5 is no longer supported by The Qt Company. That makes supporting Qt 5 software a lot more difficult, as some distribution options have become unavailable on other platforms. Linux distributions continuing to ship Qt 5 and Qt 5 version of KDE Frameworks as the primary versions of Qt and KDE software are doing a disservice to the Linux community.
I’m not worrying too much about QPrompt becoming inaccessible to Linux users (I am one of you) because this problem is only temporary. Temporary for Linux users, MacOS is a different story, which I will expand on in a few moments… Debian Trixie will probably release later this year and a new Linux Mint based on Ubuntu 26.04 will release in about a year from now. When they do, QPrompt will work on both of them, and will continue to do so for a very long time. I plan to continue developing QPrompt against the latest version of Qt; but I don’t plan on making any changes that would drop compatibility with Qt 6.8; not for as long as the popular distributions shipping that version of Qt continue to be within their regular support periods.
Certainly, there’s a one year gap, in which the Deb packages would not work in Linux Mint. That has a workaround, which is to ship the app in a universal package format, such as Snap, Flatpak or AppImage. The AppImage format isn’t working well with Qt 6, so that one is out of the picture for now. Flatpak should resolve the problem for Linux Mint users. Debian doesn’t include support for either format, but users should be able to install the dependencies for either one, Flatpak likely being the easier option to get up and running. Compared to Windows, and especially macOS, I’ve always had a good time making Snap and Flatpak packages. Due to this, I’ve left preparing them for last. In hindsight I should’ve made at least one of them sooner.
As for MacOS users, there the situation is a bit more complicated. Apple requires me to cryptographically sign binaries, or else they won’t launch. For the app to launch on most macOS versions, it must be build on the oldest macOS that apple still supports and that is a very narrow window of OSs compared to what people are using out there. To make matters worse, if I were to make builds for the AppStore, I’d be forced to use the latest XCode, leaving more users stranded. Lastly, Apple has announced that the next version of MacOS will be the last to support Intel’s CPU architecture. This will make a lot of hardware obsolete. When that version of MacOS goes out of support, I may be prevented from making QPrompt builds for Intel hardware; simply because of Apple’s code signing requirements. We’ll find out when the time comes.
So, when QPrompt v2.0 comes out, the vast majority of Linux users should be covered. I will do my best to also provide coverage to a decent range macOS users; tho I cannot promise as much to them.