maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   SailfishOS (https://talk.maemo.org/forumdisplay.php?f=52)
-   -   Porting Sailfish to N9 (https://talk.maemo.org/showthread.php?t=90761)

flotron 2013-07-17 16:18

Porting Sailfish to N9
 
See this thread for discussion & help/tips about Sailfish for Android devices:
http://talk.maemo.org/showthread.php?t=92506

Nokia N9:
- Wiki Tutorial
- Firmware Images 1
- Firmware Images 2
- Issue Tracker
Before start: Your phone must be "factory unlocked"
Thanks: rzr, SourenAraya, vgrade, Nad, juiceme, mikecomputing, TMavica, krnlyng AND a lot more

___________________________________
ORIGINAL POST:

Hi, i want to share this post from a Jolla engineer giving tips to start porting Sailfish:

Quote:

I'm pretty sure I phrased it a bit different So, both the N900 and N9 have the problem of having binary blobs, which Jolla is not allowed to distribute, and almost certainly never will be. The N9 additionally has the problem of having an older kernel than the N900 -- old enough that it's starting to cause problems. That's the reason why I probably mentioned N900.

As for Nemo and N9, Nemo is a community followup project of MeeGo, and as such inherited basic N9 hardware adaptation, and the right to redistribute those binary blobs. So, if you as user take a Nemo image and put Jolla stuff in there it works -- but we as Jolla can't do that.

Another problem is that the old N9 adaptation is based on X11, while we are using Wayland. We do have a proof of concept Wayland stack up on N9 (available through Nemo as well), but it has its fair shair of problems.

That we're using Wayland makes your suggestion of porting Sailfish libraries to Harmattan hard as well: Harmattan is an X11 stack (same in the different direction: you can't use a Harmattan binary on Sailfish. If you have the source porting is trivial -- unless it's using meegotouch. But if you only have a binary it won't run. In theory something hacking with xwayland might be possible, but that's pretty crazy, and a sailfish port/rewrite would almost certainly be the better option)

So, it should be pretty clear by now that we will not do N9 images. What needs to happen for community to be able to do the port? Easy: Get involved in Nemo. I mentioned that several times, though so far nobody showed interest.

It's mainly 3 areas that need work:
- finish port to the 3.5 kernel we started. The required tasks are in Nemos Bugzilla: http://bit.ly/13jvXFH
- start fixing bugs in the Wayland proof-of-concept for N9
- reverse engineer hardware components where no driver exists, and do drivers (like GPS)

So, it's a hard task, but not impossible. The Nemo community and Jolla provided a very good starting point with Nemo, now it's up to community members to step up, and continue.
Quote:

"As I said before, it's just the Nemo adaptation. The demos we did on N950 last year were on X11 stack, Wayland stack on N9/N950 has a few issues making it not suitable for demos without some additional effort -> community effort needed on N9 Wayland stack in Nemo

The following assumes that you have a Nemo instance with Sailfish libraries installed (note that this is not a promise of us doing that, read the following paragraph as privat comment from me):

0) Nemo is most likely to switch to Wayland in the near future as well, though might support X11 a bit longer than Jolla
1) MeeGo apps will mostly run on Nemo. If you're using the Nemo X11 stack, some Harmattan binaries run, if they use more complex middleware they need some changes and recompilation. For Nemo/Wayland same, just that you need a Qt5-port (in most cases just a few hours more effort), and that you can't use libmeegotouch (note that we still provide compatibility layers for some of the libmeegotouch APIs, so for example if you're using lmt notifications your app will work after recompile)
2) If Sailfish libraries are available, and you're using Nemos Wayland stack, yes
3) Same as 2.

(if 2) does not use Silica Components, just middleware + custom QML it should work as well. We work on most of the Sailfish-middleware as opensource inside of Nemo. As a result, almost all middleware interfaces between Nemo and Sailfish share the same ABI)

The kernel 3.5 requirement is not because of Wayland. We're using features of newer kernels in layers below UI stack. The Wayland problem on N9 is related to using the slighly hacky way it's done.

There are instructions on how to get it running in the Mer wiki: https://wiki.merproject.org/wiki/Ada...9-N950/Wayland

We recently changed packaging of some components to make things a bit easier (mostly to make the Wayland switch just a matter of installing a package, without need to edit configuration files). The proof-of-concept Wayland configuration package is on github (https://github.com/nemomobile/nemo-configs-n950-n9), I just didn't integrate it to Nemo yet as that'll require some work in cleaning up the complete N950 config, which I don't want to spend at the moment unless there's a real interest in starting to hack on it."
Join the discussion @Facebook

mikecomputing 2013-07-17 19:53

Re: Porting Sailfish to N9
 
Seriously this is WHY merproject need a forum.

Discussion on facebook is not a soultion for me.

I am willing setup a forum and paying the bills atleast some months depending on traffic.

We really need this to go forward.

Fuzzillogic 2013-07-17 20:02

Re: Porting Sailfish to N9
 
"Facebook Login
You must log in to see this page."

I don't have a facebook account, I will never have a facebook account. Quasi-open but very proprietary protocol, centralized service, profiling people and selling them to the highest bidder. Even for good causes like this, facebook is just never an option.

flotron 2013-07-17 20:14

Re: Porting Sailfish to N9
 
Sorry guys, but thats why i share that here (to start making something here)

bandora 2013-07-17 20:15

Re: Porting Sailfish to N9
 
He also just said:

"As I said before, it's just the Nemo adaptation. The demos we did on N950 last year were on X11 stack, Wayland stack on N9/N950 has a few issues making it not suitable for demos without some additional effort -> community effort needed on N9 Wayland stack in Nemo

The following assumes that you have a Nemo instance with Sailfish libraries installed (note that this is not a promise of us doing that, read the following paragraph as privat comment from me):

0) Nemo is most likely to switch to Wayland in the near future as well, though might support X11 a bit longer than Jolla
1) MeeGo apps will mostly run on Nemo. If you're using the Nemo X11 stack, some Harmattan binaries run, if they use more complex middleware they need some changes and recompilation. For Nemo/Wayland same, just that you need a Qt5-port (in most cases just a few hours more effort), and that you can't use libmeegotouch (note that we still provide compatibility layers for some of the libmeegotouch APIs, so for example if you're using lmt notifications your app will work after recompile)
2) If Sailfish libraries are available, and you're using Nemos Wayland stack, yes
3) Same as 2.

(if 2) does not use Silica Components, just middleware + custom QML it should work as well. We work on most of the Sailfish-middleware as opensource inside of Nemo. As a result, almost all middleware interfaces between Nemo and Sailfish share the same ABI)

The kernel 3.5 requirement is not because of Wayland. We're using features of newer kernels in layers below UI stack. The Wayland problem on N9 is related to using the slighly hacky way it's done.

There are instructions on how to get it running in the Mer wiki: https://wiki.merproject.org/wiki/Ada...9-N950/Wayland

We recently changed packaging of some components to make things a bit easier (mostly to make the Wayland switch just a matter of installing a package, without need to edit configuration files). The proof-of-concept Wayland configuration package is on github (https://github.com/nemomobile/nemo-configs-n950-n9), I just didn't integrate it to Nemo yet as that'll require some work in cleaning up the complete N950 config, which I don't want to spend at the moment unless there's a real interest in starting to hack on it."

shmerl 2013-07-17 21:18

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by mikecomputing (Post 1359680)
Seriously this is WHY merproject need a forum.

Discussion on facebook is not a soultion for me.

I am willing setup a forum and paying the bills atleast some months depending on traffic.

We really need this to go forward.

Please do it! Mer devs said they won't set up any forum, but community is free to do it. I'm all for such a thing, and you can invite Mer / Nemo and other derivatives developers to participate. You'll have to advertise such forum since it will be new.

There was such experiment before (opentablets.org) though it was a bit too focused on Plasma Active and didn't pick up because of that I think.

You'll have to convince Nemo and Mer developers to participate though. They might avoid it claiming that mailing list is enough (I don't agree).

jalyst 2013-07-18 08:46

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by mikecomputing (Post 1359680)
Seriously this is WHY merproject need a forum.

Discussion on facebook is not a soultion for me.

I am willing setup a forum and paying the bills atleast some months depending on traffic.

We really need this to go forward.

I reckon here is fine, until such time as something sponsored by the relevant parties (hopefully the HFB/C can be a part of that) is set-up.
If it's still not completed by the time the device starts shipping, then we should proceed with something immediately...
In the meantime we should strongly press all relevant parties to do it ASAP, we simply haven't made our case strongly enough yet, it's well overdue.
And they shouldn't just stop at forum infrastructure for MeR and MeR derivatives....

nokiabot 2013-07-18 08:59

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by jalyst (Post 1359764)
I reckon here's fine, until such time as something sponsored by the relevant parties (hopefully the HFB/C can be a part of that) is set-up. If it's still not done by the time the device starts shipping, then we should proceed with something immediately... In the meantime we should strongly press all relevant parties to do this, we simply haven't made our case strongly enough yet, it's well overdue.

Yup the board shoud try it:) like talk.maemo.org there should be a effort on talk.jolla.org:)

jalyst 2013-07-18 09:08

Re: Porting Sailfish to N9
 
MeR being the meta-distro or "trunk", can be the central site/forum (xxxx.merproject.org) that links to all MeR-derived sites/infra/fori:

talk.sailfishos.org
talk.nemomobile.org
talk.plasma-active.org
etc.

Or if that's too cumbersome we could have:

sailfish.merproject.org
nemo.merproject.org
plasma.merproject.org

Or something like that...

_David_ 2013-07-18 09:48

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by jalyst (Post 1359764)
I reckon here is fine, until [...]

Jolla seem to need a lot of help disseminating info into both this (TMO) and the wider community.

We only got the above information because a 16 year old started a Jolla fan group on FB, a Jolla engineer joined and because I (N900 owner) mentioned and vaguely misrepresented him...!
(... because so much has changed in the ~5 months since his previous comments)

If I had to guess, we are individually getting disparate bits of information, but we are failing to...
  • organise it
  • put it into an easily accessible form
  • publicise it.

Furthermore, this Jolla engineer is clearly doing this in his spare time along with being one of very few people working on bringing Nemo to the N9.

He also sounds like he's on the verge of shelving the latter project because not enough N9 owners are helping out.

I know you guys rock so get involved. Instructions in this page:

http://merproject.org/

salahkhani 2013-07-18 10:05

Re: Porting Sailfish to N9
 
Thanks for the explanation,, I am a bit disappointed cause it will not be ported to N900 & N9.. Well hope the best for Jolla to see the upcoming device.

My hope is to port nemo project to N900 (Fully working OS) and not heavy like maemo 5

_David_ 2013-07-18 10:19

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by salahkhani (Post 1359786)
Thanks for the explanation,, I am a bit disappointed cause it will not be ported to N900 & N9.. Well hope the best for Jolla to see the upcoming device.

My hope is to port nemo project to N900 (Fully working OS) and not heavy like maemo 5

As well as development costs, Jolla would have to charge for Sailfish because of the licensed components.

But the Nemo team apparently has the rights to distribute them for free (MeeGo legacy).

There's no real reason why Nemo can't be better than Sailfish. Nemo can run Harmattan apps, Sailfish can't.

It's going to take some funky programming to get Harmattan (X11) and Silica apps (Wayland) working on the same phone, but it's surely doable in 1GB.

Morpog 2013-07-18 11:08

Re: Porting Sailfish to N9
 
I'm sure Nemo will go Wayland too. There is already a working prototype for N9 + wayland + Nemo.

Alecsandru 2013-07-18 11:19

Re: Porting Sailfish to N9
 
what about n900 and wayland ?

w00t 2013-07-18 12:18

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by salahkhani (Post 1359786)
Thanks for the explanation,, I am a bit disappointed cause it will not be ported to N900 & N9.. Well hope the best for Jolla to see the upcoming device.

My hope is to port nemo project to N900 (Fully working OS) and not heavy like maemo 5

Nemo already works on the N900. It lacks people helping to work on stabilising/fixing bugs in the hardware adaptation, though, so feel free to pitch in.

I'm not sure you'll realistically see much improvement in resource requirements. In particular, RAM is a bit tight.

w00t 2013-07-18 12:19

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by Alecsandru (Post 1359800)
what about n900 and wayland ?

Should work. Hasn't been tested. May need a little bit of poking.

Khertan 2013-07-18 13:51

Re: Porting Sailfish to N9
 
About Nemo ... I ve tryed 5 days ago with last release on n950.

While the OS run well, they need help, the base apps aren't all features complete and stable ... (strange things happen in the email apps) ...

Some of my apps are already working for Nemo, was available on MeeGo COBS ... but as this one died, some dependancies died with it, like Pyside ...

Also nemo will problably switch soon to qt5 with wayland ... but PySide for Qt5 are far from being ready :(

Is there a community repo for Nemo Apps ? (feu apps.formeego.com) ?

_David_ 2013-07-18 14:46

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by w00t (Post 1359821)
Nemo already works on the N900. It lacks people helping to work on stabilising/fixing bugs in the hardware adaptation, though, so feel free to pitch in.

I'm not sure you'll realistically see much improvement in resource requirements. In particular, RAM is a bit tight.

Has anyone thought to build in RAM compression?

It was attempted on Maemo but given up on because it was more complicated than expected to exclude the cases where it was counterproductive.

It doesn't need to be written now but if it's possible in the future, that would be awesome.

Also, I imagine if the whole thing was built in Thumb2, that would help too.

Netweaver 2013-07-18 15:31

Re: Porting Sailfish to N9
 
I could think of a few things that would help performance on our poor N900 : Thumb2, using the swap on the eMMC instead of the uSD card (aka flopswap), gcc 4.8 compiler.

But the first and last are difficult, as the whole build infrastructure set-up needs to support it:

Thumb2 looks to be difficult as the N900 is claimed to be not performant enough to run fluid GUIs, of 50-60 fps, when using the SoC thumb erratas that are provided by Pali and other in their uboot/kernel/glibc combination. This due to the now slower context switches. Also the QEMU VM based build infrastructure seems to have a bug when trying to compile Thumb for N900. Btw, these are stskeeps words, not mine.

The latest gcc is also not implemented yet (as far as I know).

So yes, optimizations are still possible but the number of N900 users is falling. And priorities are not always there to for the N900, as expected. Jolla / Sailfish / General Mer is most important now on the infra side, together with the x86 HW adaptations. N9xx HW adaptations were v interesting when there were no devices available but since June there should be at least some Jolla prototypes. Also there was not enough community support testing/developing for Nemo. Think of the whole X11 -> Wayland transition and -related- the Qt4 to Qt5 transition and the new Glacier GUI transition. Everything is in transition :)

Anyway, there are still plenty of Jolla people willing to help Nemo progress on the N9xx, by promising to help out with the new Nemo Glacier UI and other things.
So it's certainly not dead! But they need help, all they can get! Install, test, raise bugs, help fixing.

Just my 2 cents.

jalyst 2013-07-18 16:01

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by Khertan (Post 1359837)
Is there a community repo for Nemo Apps ? (feu apps.formeego.com) ?

Maybe Custodian can prioritise that for openrepos, make it 2nd in line after Harmattan (which he's focussing on now):
http://talk.maemo.org/showthread.php?t=90672

mikecomputing 2013-07-19 06:34

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by flotron (Post 1359688)
Sorry guys, but thats why i share that here (to start making something here)

nothing wrong with your post :) I just wanted to point out that we need a community forum for it. Several devs has leaved TMO so would not hurt with something fresh :)

mikecomputing 2013-07-19 06:37

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by Alecsandru (Post 1359800)
what about n900 and wayland ?

hmm as AFAIK n900 has same gpu as n9? But as always with n900 lack of ram could be an issue...

marmistrz 2013-07-19 09:42

Re: Porting Sailfish to N9
 
If we could reuse the binary drivers from harmattan...

_David_ 2013-07-19 10:03

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by marmistrz (Post 1360063)
If we could reuse the binary drivers from harmattan...

I think the engineer is saying that you can.

Dave999 2013-07-19 10:18

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by mikecomputing (Post 1360039)
nothing wrong with your post :) I just wanted to point out that we need a community forum for it. Several devs has leaved TMO so would not hurt with something fresh :)

The grass is not greener on the other side.

marmistrz 2013-07-19 10:36

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by _David_ (Post 1360067)
I think the engineer is saying that you can.

he talks about re, and I'm talking about reusing the existing builds as they are

F2thaK 2013-07-19 11:26

Re: Porting Sailfish to N9
 
Sailfish on the N9 would be a stunner! Just came back from the epic fail that is WP8 (Lumia 920 specificly.........)

chemist 2013-07-19 11:33

Re: Porting Sailfish to N9
 
Invite all developers to join us here at maemo.org, this is not Nokia anymore but a thriving phablet community already.

Android_808 2013-07-19 11:42

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by mikecomputing (Post 1360041)
hmm as AFAIK n900 has same gpu as n9? But as always with n900 lack of ram could be an issue...

IIRC correctly it's an updated part with slightly better specs and a few net features, 65nm vs 45mn, pin and software compatible. N900 runs a 3430 while N9 has a 3630.

http://armdevices.net/2010/02/23/tex...45nm-omap3630/

abun880007 2013-07-19 11:49

Re: Porting Sailfish to N9
 
It is a shame that Jolla wont give us a copy of the latest N950 developer image they have of Sailfish. I bet that would help this process out a lot.

Jolla please help devs of N9.

Regards
abun880007

Alecsandru 2013-07-19 11:56

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by Android_808 (Post 1360086)
IIRC correctly it's an updated part with slightly better specs and a few net features, 65nm vs 45mn, pin and software compatible. N900 runs a 3430 while N9 has a 3630.

http://armdevices.net/2010/02/23/tex...45nm-omap3630/

so n9 cpu will work on n900 ?

jalyst 2013-07-19 12:30

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by chemist (Post 1360081)
...this is not Nokia anymore but a thriving phablet community already.

Phablet? No thanks.

n0x 2013-07-19 13:58

Re: Porting Sailfish to N9
 
Best I can do guys, is to be a beta tester (as much as I want to delve into the deeper parts of Nemo and whatnot).

Hit me up whenever anything happens.

flotron 2013-07-19 14:36

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by mikecomputing (Post 1360039)
nothing wrong with your post :) I just wanted to point out that we need a community forum for it. Several devs has leaved TMO so would not hurt with something fresh :)

What is the reason they leave TMO?

Android_808 2013-07-19 15:09

Re: Porting Sailfish to N9
 
depends on what new cpu features they're using. already know n900 support armel and armhf, the later used for meego ce. building for one (n9/n900) will help the other.

it was the whole idea behind hardware adaptation team in meego. sailfish will have a set of features that are harware specific, thats what needs targetting. don't forget cpu is only one device. cellular modem, gps, bluetooth all need drivers which may be different. we already know we can use dsp codecs from n9 on n900, so thats one question answered.

thedead1440 2013-07-19 15:43

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by jalyst (Post 1360104)
Phablet? No thanks.


Phablet as in the Nokia Internet Tablets as well as the N9 and others like Jolla...

jalyst 2013-07-19 17:47

Re: Porting Sailfish to N9
 
Yeah, I already figured that... :)
Just not a huge fan of the term -outside- of the context in which it's used here.

mikecomputing 2013-07-19 17:55

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by abun880007 (Post 1360091)
It is a shame that Jolla wont give us a copy of the latest N950 developer image they have of Sailfish. I bet that would help this process out a lot.

Jolla please help devs of N9.

Regards
abun880007

I have a feeling it WILL be there closer to the release. But DO NOT expect stuff to work like GPS, GSM, Camera or whatever thats upto the community but thjey probadly will share silicaUI and homeui.

mikecomputing 2013-07-19 17:59

Re: Porting Sailfish to N9
 
Quote:

Originally Posted by chemist (Post 1360081)
Invite all developers to join us here at maemo.org, this is not Nokia anymore but a thriving phablet community already.

Valid point but as stated already the forum is broken and to much hate. Rename it and make a better modern forum IMHO :cool:

We need something fresh that does not scare away devs...

jalyst 2013-07-19 18:11

Re: Porting Sailfish to N9
 
http://talk.maemo.org/showthread.php...64#post1359764
http://talk.maemo.org/showthread.php...67#post1359767
:)


All times are GMT. The time now is 09:42.

vBulletin® Version 3.8.8