We have moved to a new Sailfish OS Forum. Please start new discussions there.
22

Make Sailfish OS's front-end UI Open Source, but not the UI back-end

asked 2014-04-11 18:26:54 +0300

00prometheus gravatar image

updated 2014-04-13 21:47:56 +0300

I have edited this Question heavily to move clarifications and ideas previously presented in comments into the question itself.

Almost all of the Sailfish OS is Open Source. The exception is that Jolla has not made the UI portions of Sailfish and most of the core apps Open Source. This is understandable considering the ease with which manufacturers would be able to cut out Jolla completely otherwise. There are other revenue sources they could have used, such as consulting and contract development, however, the choice that Jolla made is understandable to me.

I would like to propose a small tweak of this strategy. Clearly, enough of the OS must be closed source so that phone makers can't just take it all and not pay Jolla anything. Unfortunately the current choice of what is closed source stifles Open Source growth tremendously:

  • No feature-addition that requires a UI change can be done without programming work from within the company Jolla itself; a very limited resource.
  • Community coders do it for fun, and many consider the most fun parts to be the ones where you see immediate results. That usually means UI changes.
  • When modifying an existing project, going in through the UI code is often one of the easiest ways to find the part of the code you are looking for. This is impossible without the UI source code.

I am hoping to find a way to remedy these problems, while still maintaining enough of Jolla's competitive barriers for business success.

I am suggesting that Jolla limit the closed source portions to only the UI back-end, such as widget implementations, and so on. That part of the UI changes relatively slowly, or at least its interfaces do. Then, the user interaction portions of the Sailfish UI and the core apps are moved to a fully open development process.

The exact border between closed source portions and open source portions of the Sailfish UI would need to be thought carefully about. The idea is to keep enough of the UI back-end closed, so that all Open Source development still needs heavy dependencies on the closed part, while giving enough freedom to allow development of Sailfish as Open Source.

edit retag flag offensive close delete

Comments

I believe this will come at some point but not as early as many people -including me- would like to. Jolla has to make money first, grow and be successful. So i don't see this coming in the next 2-3 years.

ApB ( 2014-04-11 19:44:32 +0300 )edit
1

The idea with my suggestion is that Jolla will be able to continue to make money just as well as now, but still enable almost full Open Source development. You can think of the UI back-end as a 'key', without which it is impossible to clone Sailfish OS for a commercial platform, but since it is quite stable it doesn't hurt so much from being closed source.

00prometheus ( 2014-04-11 19:47:39 +0300 )edit

No need to keep anything closed source, they could do like Qt and open source everything with a commercial license. Having everything open source would be the best for users privacy and transparency, no black code.

baptx ( 2019-04-28 16:33:10 +0300 )edit

2 Answers

Sort by » oldest newest most voted
0

answered 2014-05-06 21:17:16 +0300

00prometheus gravatar image

updated 2014-05-06 22:13:04 +0300

I had a quick chat with @Stskeeps, and he directed me to the following meeting log:

Mer Meeting Log 2014-04-22

The relevant portion is between 15:40:53 and 16:01:04. If the full log is too long, you can read the very condensed meeting minutes. In it, @Stskeeps (i.e. Carsten Munk, Chief Research Engineer at Jolla, and therefore I guess his pronouncements at these meetings are official) grants the right to release patches for non-commercial purposes on all QML files on your Jolla (15:48:56). They also mention (15:55:19 - 15:58:02) that if you need access to closed source APIs to do what you like, you can log a bug report for that here on tjc.

Jolla Care obviously get disconnected from you once you start messing with system QML-files :-)

In a sense, this grants my request: Much of the front-end portions of the UI are in QML, so this gives us permission to tinker about with them, and in fact this has been done to great effect, e.g. in Patchmanager.

On the other had, it isn't very hard for @Stskeeps to promise this. Essentially he is saying that you may distribute your own code even if you do it in the form of patches (well, duh!). Users may download those patches and use them to modify QML files on their own device (obviously, you are allowed to do whatever you like to any file on your own device, as long as you don't give copyrighted files to others, so Duh, again!). Jolla care gets disconnected once this happens (duh, third time!). You may not re-distribute any of Jolla's QML-files, so really @Stskeeps hasn't given anything at all away with this permission, though they do promise to consider requests for access to closed source APIs if the request is posted here on tjc.

At least @Stskeeps clears up a few murky spots. Patches sometimes like to have portions of the target file in them for alignment purposes. It would very likely be successfully argued that this is fair use and not copyright infringement, but now we are given explicit permission to do so from Jolla. Also, there have been licenses that attempt to forbid users from altering certain files on their own computer, though that has never been successfully prosecuted as far as I know (at least in non-USA). Anyway, we are free of that sort of murky stuff now!

edit flag offensive delete publish link more
6

answered 2014-04-11 23:28:24 +0300

Philippe De Swert gravatar image

Actually apart from some stuff we cannot open due to license agreements etc , and most core apps /UI layer everything is out there. So basically what you ask is already reality.

I agree it is not so easy to find and use things yet. But look at Mer and nemomobile and you should find virtually everything you're asking for there.

Now if I could just find where the nice clarification Stskeeps made is...

edit flag offensive delete publish link more

Comments

Can you then create a webpage with all the appropriate links to the projects so whoever wants to contribute will be able to do so more easily?

ApB ( 2014-04-11 23:48:28 +0300 )edit
3

@Philippe De Swert: Thank you for your answer. I realized my question is getting misunderstood, so I modified it to make it clearer. Please review and say what you think!

00prometheus ( 2014-04-13 21:50:41 +0300 )edit
2

@00prometheus: Well atm about the only thing that is kind of closed is the UI layer (and bits of third party software we have no control over). So your proposal/idea is not really applicable. It seems to me you don't really realize (like many others) how much of Sailfish is actually out there.

Also I disagree with your statement that reading the UI code is the fastest way to contribute. It all depends on what you want to do. I do agree that usually the thing people want to change is the most visible bit, thus the UI. It's the "whooo shiny" factor, that's why HW devs love blinking leds ;)

IMHO the biggest issue with growing the Sailfish platforms open source is people focussing and complaining about the closed bits instead of actually contributing and looking at what is actually all open. And even if it is open, like the browser we don't see that much contributions coming as people that are complaining about it being closed before.
Also we are starting to poke and work a bit more to get the Mer/Nemomobile base easier to contribute to, as (IMHO) it was too hard to contribute to.

I think ApB idea is not so bad to begin with but not very feasible in the short term. And nthn's link is exactly the one I was looking for, thanks for looking that one up.

And if there is something in your mind that you would actually want to contribute to I will gladly point you in the right direction. That is a lot more constructive than speculating.

Philippe De Swert ( 2014-04-14 12:59:08 +0300 )edit

@Philippe De Swert

Since you want people to contribute and you are open to this are you planning in getting in the OS all the translations, kb layouts and other stuff that are already ready??

ApB ( 2014-04-14 13:18:03 +0300 )edit
Login/Signup to Answer

Question tools

Follow
5 followers

Stats

Asked: 2014-04-11 18:26:54 +0300

Seen: 1,974 times

Last updated: May 06 '14