Thank you @Mister_Magister for technically dissecting the dreaded situation app developers are in due to Jolla not caring about backward compatibility for apps (by permanently breaking extant APIs, so apps cease to work on newer SailfishOS releases) and their crazy policies for the Jolla Store. I cannot think of anything relevant to add to the technical aspects @Mister_Magister so nicely depicted.
Though I want to extend on the political aspects, the consequences and solutions a bit:
At least one might expect that for Storeman and the SailfishOS:Chum GUI app, because they are needed for installing other apps easily. But more than the contrary: Years ago I discovered a commit to some component of the Sailfish-SDK, which omitted compiling Storeman from their release testing of that component (maybe mb2, I don’t remember), because I switched the default branch of Storeman’s git repository from master to devel, which regularly broke their release testing when devel was not compiling cleanly (that is the principal reason for having separated master and devel branches). When I asked the sailors involved, why they don’t simply switch to pulling from master in their configuration (instead of, from the default branch), this suggestion was dismissed with a “We do not want to use Storeman for test-compiling any longer.”. Not that they ever reported a new SailfishOS release breaking Storeman “upstream” (i.e. to the Storeman developers), although that happened a few times, but at least this ensured that they do not introduce a bug in their tooling (Sailfish-SDK) which prevents Storeman from compiling. At that point I understood that Jolla never cared much about software for SailfishOS which they do not develop themselves, beyond providing the Sailfish-SDK and some documentation.
But I have to admit that this situation has slightly and slowly been improving (and regressing sometimes, e.g. when @flypig left Jolla) in the past 5 years, though my impression is that this is not due to a change in company policies, but only due to the personal motivation of a few sailors (i.e. Jolla employees). I was really impressed when @pvuorela provided very helpful guidance at least twice in 2024 when changes in SailfishOS broke Storeman.
Nobody at jolla actually uses sfos apps.
Oh, that is one @Mister_Magister’s statements depicting the world in black and white, which is rarely providing a proper representation of reality. A bit more nuanced statement, which is much closer to reality, is:
Only a few at Jolla use native SailfishOS software which is not released by Jolla (especially not the ones at management level, apparently).
IMO this depicts the mindset / company culture at Jolla well, unfortunately. Consequently, the interaction with external contributors in the widest sense (app developers, technically well versed bug reporters etc.) always has been direly lacking. But exactly that (interaction with external contributors) is crucial when trying to evolve a software ecosystem for SailfishOS, even more so in the realm of Open Source Software. Hence I still believe that this is not a goal of Jolla (beyond publishing Sailfish-SDK & documentation, which they have to maintain for their own app development, anyway).
They are actively fighting developers
Although that was also my perception a few times in the past (actually, not any longer), I do not believe that “actively fighting developers” ever was done deliberately by either Jolla as a company or individual sailors. Still, aforementioned non-OSS company culture and sometimes attributes of individual sailors contribute to that impression. As stated, in my perception this point (“[sailors] actively fighting developers”) has been improved, lately.
and don’t allow their apps in their store.
The worst thing is that they do not provide an incentive for the efforts a developer has to invest to publish apps in the Jolla store: Originally it had the advantage of being the “official” app store, but that is long gone due to the dire state it is in. It is hard for me to assess, if the efforts of integrating a payment system (with all the external dependencies that brings, e.g. contracting a financial service provider) would result in sufficient momentum to revive the Jolla Sore, but cannot think of other reasonable measures except for relaxing the technical rules for submitting apps to the Jolla Store.
No wonder people just give up on developing apps with that attitude.
Ack. 100%!
Sorry had to get it off my chest and this place might be good enough for that
I appreciate anyone directly addressing these issues in an analytical and decent manner. I did the same a couple of times over the past years at similar places (deep down in some discussion threads at FSO and GitHub). I don’t think we significantly diverge in the assessment of the situation and the general approach (addressing it publicly; actually, for a good part due to the lack of other, proper communication channels), only the degree in which one chooses a confrontational language slight differs (even though I do not believe to be less confrontational in content and “between the lines”).
But I started to ask myself a while ago, how such discussions and assessments of the “state of the union” can be effective, beyond the psychological relief writing them temporarily provides.
“Absolutely not downloading something that is somehow harmful” is not a property the Jolla Store provides or can possibly provide: Even the big app stores (by Google, Apple, Huawei etc.) regularly have issues with malicious software being published by them, despite employing significant workforce for curating submitted apps. Jolla’s packaging and API testing script and the “smoke test” some sailor likely performs cannot prevent malicious software from becoming published in the Jolla Store, if the bad actor has acquired a little know-how about writing malware.
Thing is, in my ~10 years of porting sfos and developing apps, i’ve talked to multiple jolla employees and each one of them were super helpful and super nice people (rip sledges (he’s not dead he just left) rip James Noori the greatest sfos community manager to ever face the earth (also, he’s not actually dead) and many other awesome people that left (too many to mention).
That shows its not that developers at jolla are not willing, i’m sure they would do all the right things… if they were told to do them. And as you mentioned in upper management not a single soul cares about developers.
Which is insanely illogical and strange. Operating system is NOTHING and let me repeat that NOTHING without apps. You can do most wonderful os in the world, you got no apps, nobody is going to use it for anything else than display piece.
Now I know this will sound like massive brag but please bear with me, I had multiple independent people tell me that my apps are the only thing keeping them from leaving sfos. And jolla is like “who cares just use android”.
I’ve also seen many people using sfos as basically android app launcher (cough) and as someone who didn’t use waydroid, nor aliendalvik, nor sfdroid, nor apkenv in past 10 years (i bet you didn’t ever heard about 2 of them) i stand by my words that if you want to use android, go use android. You want to use sfos? use sfos apps. Support the developers who put their free time, MASSIVE AMOUNTS OF FREE TIME and resources into developing those apps. And please, don’t go into their group saying their apps sucks compared to that x alternative. Thank you.
Thing is, credit where credit is due, jolla store restrictions are there because they allow only those apis that they declared they’re not gonna break and will provide backwards compatibility. Thats why you can install any app from jolla store even if they haven’t been updated since 2015
Problem is that its WAY too restrictive. It doesn’t allow apis that are genuinely useful. Another issue is that if your app has plugins, tough luck, you can’t release them as an app. This issue was raised a VERY long time ago (forgotten to time) and not addressed to this day
Simple strategies exist, which would at least soften these issues of “permanently breaking and removing APIs not declared ‘stable’ by Jolla”, e.g. do not remove superseded (i.e. “deprecated by Jolla”) libraries etc., unless they causes issues. Yes, that means to maintain more software components, and I would fully concur with a policy of “deprecated components become removed when they cause issues which are not trivially resolvable”, but this effort would far outweigh the continuous destruction of the SailfishOS software ecosystem outside of the Jolla Store, if Jolla would care about such a ecosystem.
Which brings us back right to the start: It is almost comically idiotic by Jolla not to invest at least a little time and effort to consider how the larger SailfishOS software ecosystem works and what Jolla can contribute to let it flourish. Every minute invested by a sailor (especially in to structural improvements) is automatically multiplied to become many minutes being invested by outside developers (as long some remain).
Honestly if you just made a post, on forum, “yo, heads up, we’re gonna break this api, here are the changes, here is how you adapt” that would do 99.9999% of the work. Meanwhile i find out something broke when users with official devices (thankfully less and less since op6 release) install beta and inform me about that.
Or just do stuff like everyone does. Say its deprecated and will be removed in next release and like, BLOODY TELL US ABOUT IT
But jolla just proves again and again they don’t want 3rd party apps, they don’t care about them, they couldn’t care less. Oh 3rd party apps are life force of sfos? who cares!
As we discussed: Only for us, not for most of them!
In the sense that 3rd party apps for SailfishOS simply do not exist in the perception of most sailors, which is a part of the whole issue complex.
Also that nobody at Jolla seems to have substantial knowledge or experience and with OSS-policies (e.g. “how to develop and use OSS licensing schemes to ones own and the ecosystem’s advantage”) and OSS community management (which usually focusses on developers, not on beta-testing monkeys) is a huge issue.
Personally i don’t understand why anyone would want/need a separate YouTube app - or forum app for that matter. Don’t make apps for things that work well in the browser.
You wouldn’t use a desktop YouTube app, so how did this become the (mainstream) norm on mobile? This app-first mentality is a sickness of modern society - and here we are doing our best to feed it?
Sure; every once in a while i’d like to multi-task a bit with two things that happen to be browser based - but that’s not a reason to break one of those out into a separate app. It is a case for adding that to the browser.
It is more meant like an at the moment / “as is” statement. At the moment the target audience is small enough, that it is pretty unlikely to happen and since it is harder to add this kind of stuff to the jolla store (just because you have less possibilities than on OpenRepos or Chum), it can be considered a little less unsecure.
But yes of cause you should never assume something is totally secure and the Jolla store is NOT a fully secure source, but it is likely the most secure one there is.
As a developer I see a value when Jolla checks my app. Chum is good, I know the app is made from the known source. Chum deliveres the app for various SailfishOS versions. Though Chum does not have quality checks and you must rely on your own skills and own process not to brick the phone.
This old discussion about stores has one core for me. There are many very good developers around here and they want play with everything is possible. “Good” and “play” belongs together, both needed for making a good developer. So they needs a playground. On the other side the maintainance of an operating system requieres planing, caution and strict rules. Every professional in big software system know this. It’s topic of the science called software engineering.
That’s different worlds. So for me it is not a good idea to create a compromise store for all. And it is not needed for all. The Sailfish world has 3 wonderful stores, thats great!
edit: constructing maintainable big systems is not the opposite of “enthusiats”. Enthusiasm is needed of course. It’s more the different between “normies” and “profis”.
Point is that nobody does. But there are some stubborn people that only will install apps from jolla store, or some inexperienced people who don’t know about storeman/chum