Support for native code (the NDK) is something that was considered from very early on (at one point we were considering a C++/Java hybrid framework), but was put on the back burner due to time constraints and desire to get working products in the market first. There's really not some grand conspiracy at work around virtual runtimes.
And from the very beginning, the virtual machine was never seen as a security feature -- that's why apps have always run in their own processes, under their own user IDs.
And yeah, there's really no reason why just about any existing Linux userspace software can't be supported under the NDK -- which gives you a software or hardware display surface, input events, audio pipes, etc. I'm surprised there hasn't been more work to bring existing Linux software to stock Android devices -- there's a lot more users available there than on completely custom OS builds (though there are plenty of people who enjoy those too).
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 3:46 UTC (Wed) by shmerl (guest, #65921)
[Link]
The core problems are drivers incompatibility, and the fact that normal Linux stack is built around glibc. For example how do you propose to run KWin on Android hardware (if you for example want to run Plasma Active on any Android targeted device)? Existing drivers won't really help. And most manufacturers aren't making regular Linux drivers in addition. It's the biggest part of the problem.
There are projects like libhybris, but it's like applying a patch to a constantly leaking ship. It might work, but something was flawed from the beginning. Wouldn't be better to use a good ship without leaks right away?
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 7:01 UTC (Wed) by khim (subscriber, #9252)
[Link]
There are projects like libhybris, but it's like applying a patch to a constantly leaking ship. It might work, but something was flawed from the beginning. Wouldn't be better to use a good ship without leaks right away?
No. It's a race. The first seaworthy ship to leave the port wins. It does not matter if it needs dozen of pumps to keep it from sinking: it you can keep it from sinking at all then you are winner. The fact that years later you have built "a good ship without leaks" does not matter: the first mover advantage is too great.
Later (years, maybe decades later) you may have your chance (when the winning party will do a mistake), but till then... you'll need to keep your "good ship without leaks" in a working order without help from the most of developers or users. Very hard task indeed.
This explains in a nutshell why Android developers did what they did and this also explains why we are using Windows on PC and this is why we will use Android on mobile phones and tablets for the foreseeable future.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 8:22 UTC (Wed) by spaetz (subscriber, #32870)
[Link]
> The first seaworthy ship to leave the port wins. It does not matter if it needs dozen of pumps to keep it from sinking: it you can keep it from sinking at all then you are winner. The fact that years later you have built "a good ship without leaks" does not matter: the first mover advantage is too great.
Beg to disagree. This is NOT about first-mover advantage at all. It is not about the "first shop to leave the port". In this case, Maemo and not Android would be most popular now. Amazon would not exist (it was the 6th online book seller, not the first)...
This is about "network effects" NOT "first mover advantages".
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 16:33 UTC (Wed) by khim (subscriber, #9252)
[Link]
This is about "network effects" NOT "first mover advantages".
These are related things. Yes, OS market is market with strong network effects which makes first mover advantage all the more acute.
It is not about the "first shop to leave the port". In this case, Maemo and not Android would be most popular now.
Nope. Maemo shot itself in the foot repeatedly. Maemo was half-ready earlier but instead of moving to the sea they continued to tinker with it to make sure ship will not be just good, it'll be great. When you read maemo 4.0.x is not API compatible with earlier releases you know that people who created that thing still don't understand how platforms win or lose the game. Results are, sadly, predictable.
Amazon would not exist (it was the 6th online book seller, not the first)...
Please please the Wikipedia article, at least, will you? It specifically says about significant occupant of a market segment. It does not matter as much if you are first or second if there are dozens of competitors. But when one of them catches 10-20-30% of the market - it starts to affect the behavior of buyers. Especially in markets with network effects but even in markets where these are not observed.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 16:42 UTC (Wed) by shmerl (guest, #65921)
[Link]
Mobile market changes constantly. There is no point for Linux community to linger on inferior Android just because it's widespread now. Tomorrow it'll might not be. Remember Palm? It was widespread. RIM's OS was widespread too. Not they aren't. One should focus on innovation and doing the right thing, instead of being scared of network effects. That's why Mer is a good option - it's better than Android, it's more innovative and it it's built on collaboration with the global Linux technologies. I.e. it's community friendly.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 17:19 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
Just because Android "inferior" devices outnumber "good" Linux devices by about 100-to-1? LOL.
What innovations happen in "good" Linux that can't happen in Android-land, exactly?
You know, with an attitude like yours Linux would be doomed to be the next Plan-9 (you know, it's still around: http://plan9.bell-labs.com/plan9/index.html ). I.e. theoretically good but in practice an utter piece of excrement.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 17:23 UTC (Wed) by shmerl (guest, #65921)
[Link]
Bad analogy. Current Linux is not a theoretical system, but a mature industrial quality one. The fact that Android "jumped" first into the mobile sphere doesn't mean that it should be kept there despite its shortcoming or should be used as way forward. Surely someone will stick to it given its current popularity, but regular Linux will move into the mobile sphere as well, and since its efforts will be shared with the desktop - it'll server better purpose. Android will remain selfish and separate. At least so it seems.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 17:36 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
Linux on mobile is deeply theoretical. It's not even being shipped in any device accessible to general public anymore. Why should we-as-community work on crufty outdated Linux application stack instead of improving Android-based stack?
And you keep talking about "shortcomings" of Android without bothering to tell us about them. What are these "shortcomings", exactly?
Android can with little modifications run almost all of the "classic" Linux software that doesn't depend on X. With a little bit more tweaking it can even run a rootless X-server like OS X does.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 18:20 UTC (Wed) by shmerl (guest, #65921)
[Link]
> Linux on mobile is deeply theoretical. It's not even being shipped in any device accessible to general public anymore.
Not true. N9 is accessible. Jolla will release more devices soon (that's already for sure). Samsung might release something with Tizen (that's not so sure). Vivaldi PlasmaActive tablet is coming as well (that's not sure either, but hopefully).
The system is not theoretical. The lack of hardware is apparent, that's true. It it's not a system shortcoming, its the manufacturers issue. Jolla decided to solve it by manufacturing their own devices.
> Why should we-as-community work on crufty outdated Linux application stack instead of improving Android-based stack?
Regular Linux stack is not outdated - it's more up to date technologically than Android stack. I already answered the main reason why we-as-community should prefer it over Android - because it's sharing the effort with the desktop Linux and it's collaborative (important issue for the community). Android is selfish and not sharing anything (big minus for the community). If you don't care about these - why do you worry about community at all? It's commonly corporate (closed Apple/MS like) interests don't care about the community. But you seem to be interested in the open side of the issue.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 19:04 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
I can't buy N9 from here. So yes, it's theoretical.
>The system is not theoretical. The lack of hardware is apparent, that's true. It it's not a system shortcoming, its the manufacturers issue. Jolla decided to solve it by manufacturing their own devices.
Yeh. Do you want to buy my flying saucer? It has problems with missing hardware but other than that it's great.
>Regular Linux stack is not outdated - it's more up to date technologically than Android stack.
And how is it more up-to-date? You're stubbornly refusing to give actual examples of inadequacy of Android's stack. I can only conclude that you're simply trolling.
>Android is selfish and not sharing anything (big minus for the community). If you don't care about these - why do you worry about community at all?
Hm. /me goes to http://source.android.com/ - looks like they're sharing their source code. And they're actually working with kernel developers to get Android stuff upstream.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 19:41 UTC (Wed) by shmerl (guest, #65921)
[Link]
Sharing the code is meaningless, if architecture sets it apart. I already explained it above (about drivers in particular), so there is no point to be repetitive. You don't want to admit an obvious thing, so I conclude that community interests simply aren't your concern. That's understandable, if you are placed along common unfriendly corporate kind of thinkers. Fortunately there are projects and corporate groups which value community involvement, and Jolla is such example.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 19:51 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
No, you haven't explained anything. There was even an Android developer in the thread correcting you about NDK.
What EXACTLY is wrong with Android? List the technical examples of its inadequacy, please. The world wonders.
Yes, it's developed behind closed doors and that's a conscious decision. No, they work extensively with Linux developers and tried to do that from start. Android userspace is different from the regular glibc userspace, but so is uClibc. So what?
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 20:03 UTC (Wed) by shmerl (guest, #65921)
[Link]
The userspace divergence won't bother me as much, if drivers issues would be non existent. Alas, the drivers issue plagues the mobile scene. If and when it'll be solved and Android devices will become an available installation base for regular Linux system (such as Mer based), then I'd consider this deep divergence chapter mostly closed. However such resolution isn't in sight yet (if even coming at all).
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 20:15 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
Again, what's wrong with the drivers?
What is exactly different in the 'desktop' Linux that makes it so superior to Android in regard to driver infrastructure?
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 20:27 UTC (Wed) by dlang (✭ supporter ✭, #313)
[Link]
> Again, what's wrong with the drivers?
The fact that so many manufacturers have closed source drivers that are specific to their particular android release.
This makes it very difficult to compile a replacement kernel (let alone an upgraded kernel) to run on that hardware. This prevents compiling a new kernel that enables something that wasn't enabled on the 'stock' kernel, as well as being a large blocker to running anything other than the vendor provided image (including running newer versions of android).
Putting some of the drivers in userspace, but with a kernel interface that breaks from release to release, is just adding insult to injury.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:24 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
> The fact that so many manufacturers have closed source drivers that are specific to their particular android release.
These drivers are mostly for two things: video and wifi. Both are well problems in DESKTOP Linux. Most of other drivers are open source.
Besides, I dare say, the closed source drivers in Android are easy to work around. CyanogenMod has no problem building custom kernels, I also did this myself for my Samsung Galaxy S.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:37 UTC (Wed) by dlang (✭ supporter ✭, #313)
[Link]
As someone who owns one of the less popular devices, I can say that the closed drivers are not easy to work around.
CyanogenMod picks what devices they support in part based on how hard it is to deal with the drivers (with the bigger part being how popular the device is)
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 20:28 UTC (Wed) by shmerl (guest, #65921)
[Link]
I think I at least twice explained what's wrong with drivers and what's wrong with Android is in result of it.
Let's make it simpler. How do think is possible to take any regular (read not Android) mobile targeted Linux distro (such as Nemo Mobile), and install it on any common Android targeted mobile device, and get a usable system in result? From what I gathered - it won't be functional simply because of Android targeted drivers being mostly useless in such scenario. If you think it's not so, may be you can clarify what you mean?
Assuming its like I explained it, the result makes Android bad, because of the whole hardware manufacturers distraction effect.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:09 UTC (Wed) by swetland (subscriber, #63414)
[Link]
I disagree with you here.
Admittedly my knowledge is only based on seven years of working on Linux driver support for Android and working closely with a number of SoC vendors and on a number of lead (Nexus) devices, not reading about it online.
The quality of drivers and amount of non-open goop varies from SoC to SoC, from OEM to OEM, and from project to project, so it's difficult to make a blanket statement that in any way reflects reality.
What I will say is that for Google/Android lead devices, we've never shipped binary/proprietary kernel code -- only GPLv2 drivers, and we've never shipped binary userspace goop (opengl libraries, camera glue code, etc) where we could have shipped GPLv2 kernel drivers instead. In many cases we've written the necessary kernel drivers or worked closely with SoC and OEM partners to ensure that they get written.
We strongly prefer that drivers be open source and in the kernel. We do our best to achieve that goal, but it is not always possible.
I'm not sure that refusing to ship anything on an SoC until it has 100% Linux kernel support is a strategy that leads to overall success. I actually believe that overall success is much more about the user experience and app ecosystem than the specifics of the kernel and drivers.
Even so, there are a lot of folks working on Android who work hard to ensure we have as much open source kernel driver support as possible and strive to increase that coverage over time. Including pushing code to the mainline Linux, encouraging vendors to go for GPLv2 drivers, etc, etc.
Plenty of engineers at SoC vendors, OEMs, Linaro, etc, also work toward that goal.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:17 UTC (Wed) by shmerl (guest, #65921)
[Link]
I'm sure it's slowly can be improving, but in practice, people can't run for example Plasma Active let's say on Nexus tablet with any satisfactory results.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:04 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
You CAN run Plasma Active on Android.
In theory, I haven't tried it (since we're talking about imaginary systems, anyway).
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:12 UTC (Wed) by shmerl (guest, #65921)
[Link]
I'd be glad if you can list any device where it runs well enough without any weird hardware related issues. So far any options I saw are plagued by either the lack of video acceleration, or like you said power management issues and so on. If that could be so easy as you say, Vivaldi tablet would have been out long time ago already.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:45 UTC (Wed) by dlang (✭ supporter ✭, #313)
[Link]
Google does a good job with the lead (Nexus) devices, but the support elsewhere leaves a lot to be desired. Unfortunately the lead devices do not cover enough options (I'd _love_ to be able to buy a 10" tablet with a pixel qi screen that was fully open, but no such beast exists, and as far as I know, there isn't a 10" Nexus option at all)
some of this is the device manufacturers opting to not be open, a lot of it is the underlying chipset vendors opting to not be open (video chipset folks are especially bad here)
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:18 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
You CAN take a general-purpose mobile Linux distro and run it on most devices. Mostly.
You'll probably be missing video acceleration (because of closed-source video drivers) and have very shitty battery life (no suspend blockers in 'superior' desktop Linux). External firmware for WiFi drivers might also be required.
So no real difference from the desktop Linux here.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:26 UTC (Wed) by shmerl (guest, #65921)
[Link]
> You'll probably be missing video acceleration (because of closed-source
> video drivers) and have very shitty battery life (no suspend blockers in
>'superior' desktop Linux). External firmware for WiFi drivers might also be
> required.
This translates to unusable system. Q.E.D.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:36 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
And that is different from desktop Linux exactly how?
Do you remember the time when 'desktop' Linux was present on a multitude of cheap and small computers? You know, so called "netbooks"? Do you remember that most of them shipped with the crappy Poulsbo graphics? Android is no different from desktop Linux, it has exactly the same problems.
So your argument is basically: "My imaginary desktop-Linux-on-mobile is superior to Android because it would have all open-source drivers developed by community. Also, unicorns and world peace."
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:51 UTC (Wed) by shmerl (guest, #65921)
[Link]
> And that is different from desktop Linux exactly how?
Linux on the desktop is very easy to install on the wide variety of hardware to get a fully functional computer. It's nowhere that hard to how it's on the mobile devices (where options are almost non existent). If you don't see the difference - there is nothing really more to explain (it would be pointless).
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:00 UTC (Wed) by dlang (✭ supporter ✭, #313)
[Link]
to be fair, Linux on the desktop used to be as hard as Linux on mobile currently is. We've (mostly) won the battle about drivers in the desktop/server space, but we're in the "bad old days" in the mobile space.
People are working on it, but it's got a long way to go.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:10 UTC (Wed) by shmerl (guest, #65921)
[Link]
I didn't deny that Linux used to be hard on the desktop as well. I was pointing out, that Android's "diversion" in the mobile sphere naturally makes that progress there much slower.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:27 UTC (Wed) by swetland (subscriber, #63414)
[Link]
I still disagree. I believe that without a high-volume Linux based platform in mobile, gaining attention from OEMs, silicon vendors, users, hackers, Linux developers, etc, things would be moving much, much more slowly.
Based on my observations of how the SoC vendors and OEMs operate, I find it unlikely that a "more desktop linux like" mobile Linux, if it were successful, would result in things (regarding Linux kernel support for ARM SoCs and mobile devices) moving forward any faster than with Android.
The obstacles toward full GPLv2 kernel drivers for problematic components (like GPU) are not made easier to resolve by changing the userspace software stack.
Android, I feel, has gone further in some areas here -- we've worked with most all of the mobile GPU vendors and see GPLv2 drivers shipping for the memory/resource/queue management, even if userspace opengl libraries are closed -- ensuring that the critical bits touching hardware and system resources at least are open source and accessible. Desktop Linux has taken an all-or-nothing approach regarding open GPU drivers and we see things like entirely closed binary blobs linked into the kernel if you want decent hw 3d accel on the modern/popular video cards...
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:37 UTC (Wed) by shmerl (guest, #65921)
[Link]
Yes, there are positive aspects in it as well. But overall, I think the competing path slowed things down for regular Linux simply by dispersing resources and distracting manufacturers on Android exclusively. May be at some point it'll play out to the better, but not yet at least. Open drivers (like Lima and etc.) are coming slowly, so there is some hope.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 14:12 UTC (Thu) by raven667 (subscriber, #5198)
[Link]
I don't think Android took away any resources from desktop Linux, it's a strictly parallel development. It has already added many resources to kernel development. We should be happy and try to leverage the added effort for maximum positive, open source, effect.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 15:35 UTC (Thu) by shmerl (guest, #65921)
[Link]
I meant it took resources away from mobile (regular, non Android) Linux development.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:01 UTC (Wed) by mjg59 (subscriber, #23239)
[Link]
Jolla's going to be shipping with open graphics drivers? I certainly look forward to that.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:17 UTC (Wed) by shmerl (guest, #65921)
[Link]
I doubt it. I don't even expect such thing with the Vivaldi release. As Aaron Seigo pointed out, there are several milestones before that:
- milestone 0 is a "regular Linux" (read: not Android) device that works WELL.
- milestone 1 is that sort of device with ALL Free software [i.e. besides drivers]
...
- milestone N will be Free hardware.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:22 UTC (Wed) by mjg59 (subscriber, #23239)
[Link]
So... even "real" Linux gives you an unusable device?
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:32 UTC (Wed) by shmerl (guest, #65921)
[Link]
It's usable since drivers can be shared by many distros (even closed). Not too different from how closed drivers (let's say Nvidia's) are shared on the desktop now. In Android's case, close drivers are usually useless.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:37 UTC (Wed) by mjg59 (subscriber, #23239)
[Link]
That's not true at all. You've got a framebuffer and a GLES driver, which is what's always been the traditional graphics environment on embedded Linux.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:42 UTC (Wed) by shmerl (guest, #65921)
[Link]
I mean useless out of the box (as in the KWin example above). I.e. with some serious work it can get better, but this work is not yet done, so end user can't simply take the existing mobile hardware and use it with non Android Linux distro. That was the point of the discussion above - i.e. splitting/duplication of effort (instead of sharing it).
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:42 UTC (Wed) by swetland (subscriber, #63414)
[Link]
The biggest headache here is probably that the opengl library is linked against bionic instead of glibc, but there are a number of ways you could shim that (with some creative linker trickery), since the actual OpenGL API/ABI is not dependent on libc's data structures. That's assuming you can't convince your SoC/GPU vendor to provide a version linked against glibc or staticly.
I can see that being annoying, but it's certainly not insurmountable.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:48 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
So you're saying that classic desktop Linux is no better than Android?
Great, that's what we were talking all about.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 22:50 UTC (Wed) by shmerl (guest, #65921)
[Link]
> So you're saying that classic desktop Linux is no better than Android?
Much better, since distros are interchangeable, sharing the lower stack (even closed parts). They aren't interchangeable with Android in the mobile case.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 23:40 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
So we're talking about replacibility now? Then Android simply slaughters classic desktop Linux - there's only ONE version of Android (at a given time) that is API and ABI compatible across all devices.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 23:43 UTC (Wed) by shmerl (guest, #65921)
[Link]
> So we're talking about replacibility now
Did you follow the discussion really? We were talking about sharing the effort vs being selfish. Replaceability is part of the former. Incompatibility is part of the later.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 23:50 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
I've tried to follow you, but your line of reasoning meanders more than Romney's opinions.
We're now back at your purely subjective opinion of Android somehow "not sharing" and being "selfish".
Have you thought that the same could be said about KDE and Plasma Active? They could have helped GNOME developers instead of working on a competing system!
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 23:59 UTC (Wed) by shmerl (guest, #65921)
[Link]
KDE and Gnome do collaborate if you didn't know. And they both rely on the same shared lower architectures, unlike Android again.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 0:00 UTC (Thu) by shmerl (guest, #65921)
[Link]
Also, Gnome came later. If something it was early Gnome critique about diverging resources from KDE. However it pales in comparison to split on hardware level which is way more drastic.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 0:03 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)
[Link]
Excuses, excuses. KDE developers should have dropped everything and switched to GNOME the moment it become available.
Also: Fedora should have switched to DEB, Debian should have switched to RPM and dogs should have become cats.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 0:07 UTC (Thu) by shmerl (guest, #65921)
[Link]
> Excuses, excuses.
I don't think Android designers thought about excuses much. They designed a commercial system, without much community interests in mind. No point to deny it, since it was originally proprietary and closed. It got opened only later.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 0:11 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)
[Link]
Android was designed to be a mobile system from start. Of course, it was designed behind closed doors - that's a good strategy. And it was initially designed without input from community (and it turned out to be a good thing).
But that was 5 years ago. Since then Android developers work with kernel community to integrate Android features and fix ARM shortcomings (by using device trees, for example).
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 2:53 UTC (Thu) by shmerl (guest, #65921)
[Link]
> Of course, it was designed behind closed doors - that's a good strategy.
> And it was initially designed without input from community (and it turned
> out to be a good thing).
Very arguable. Open systems can rely on open development and community involvement. The model you described is a strong characteristic of proprietary systems. Not because it's better - because they are proprietary. And Android was designed in such way not because it was a good thing to do, but because it has no relation to any open development - it wasn't an open system. And I don't consider it a good thing, as it created a much bigger rift than it could, if the system would be developed with community interests in mind (and community input).
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 3:25 UTC (Thu) by swetland (subscriber, #63414)
[Link]
What community? Good for whom?
In the 5-6 years since Android has been public knowledge, I've heard a lot about how we should throw out what we've done in favor of working with "the community", all throughout the stack. I am unconvinced that this would have been a good idea at any point.
Android's goal has been to provide a competitive open source platform for mobile, as an alternative to closed platforms (Symbian and WinCE in the early days, iOS later on, etc) where there is a level playing field for application development, and OEMs have sufficient control over their destiny, and users have more choice, etc. I think it's been pretty successful at this by most measures.
It's not perfect, and not everyone is happy with everything about it, but I'm unconvinced that a more-like-desktop-linux approach would have been massively better at anything other than being more like desktop Linux. And don't get me wrong, I like desktop Linux -- use it at work and home and write a lot of code on it -- but I'm not convinced that it's the right thing for my phone.
What I hear is "you should have done it the way we want it done because that way is superior to the way that you did it", which forces me to wonder why the superior way isn't out there being superior and winning mindshare. Unless it's not actually *done* in which case I'm not sure why I, as someone building a mobile platform, should go work on your platform under your direction, instead of building my own... what do *I* gain out of this, other than a bunch of people telling me how to do my job?
Meanwhile, the code that's been written for Android, is out there, and under an incredibly permissive license, and you're welcome to take it and build anything you'd like with it -- which a number of folks have done.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 4:27 UTC (Thu) by mjg59 (subscriber, #23239)
[Link]
I wouldn't go quite that far - there are some cases where earlier involvement with the community would have resulted in a reduction of Google's maintenance load, and there are cases where Google's implementation is demonstrably technically inferior to existing Linux solutions. But the real question is whether any of this matters, and I think it's difficult to argue that any shortcomings in Android's adoption are down to the choice of C library. So we might quibble over "massively better", but you're probably right.
There's no real way to argue that Android is bad. It's the most successful smartphone platform, and the dominant user-visible Linux. Perhaps adopting some of the existing technologies would have made it *better*, but at this stage it's pretty clear that the people arguing that (such as me) should actually do the work and stop expecting that purely theoretical arguments will win out against a shipping product.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 6:46 UTC (Thu) by shmerl (guest, #65921)
[Link]
The point is that Jolla is not intimidated by the existing products or their dominance. Let Android be, if it wants to go on a different unrelated road - so be it. But regular Linux will enter the mobile scene for the benefit which Android failed to provide. Jolla is doing something important.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 11:48 UTC (Thu) by pboddie (subscriber, #50784)
[Link]
How does Jolla's proprietary user interface compare to Android in terms of community interaction? Jolla's approach sounds like a warming over of Nokia's Maemo strategy with company spokespeople wagging their finger and lecturing the community about not asking for too much (only this time also mimicking the "parent" by making vague patent threats), and contributing back to upstream projects because not doing so would either be a licence violation or involve an unaffordable maintenance burden.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 15:26 UTC (Thu) by shmerl (guest, #65921)
[Link]
As I explained already, the UI is the most upper level. Android's rift goes much deeper, up to hardware. Jolla takes the community openly governed core (Mer) for the whole lower stack and middleware. So their closed layer is a rather thin addition on top. It's better than Nokia approach which didn't use community governed core, and way better than Android which doesn't have open development at all and caused a huge split with a regular Linux stack.
Plus, there are fully open options like Nemo and Plasma Active, based on the same Mer core, which one will be able to use on the same devices. So Jolla is doing a very good thing, their closed UI part regardless.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 12, 2012 14:35 UTC (Fri) by pboddie (subscriber, #50784)
[Link]
We'll have to see how thin that UI layer is, but I don't think the importance of the UI layer can be emphasized enough. At the very least, proprietary user interfaces and applications still carry all the risks of planned obsolescence, lack of user control/insight, and all the accompanying privacy and maintenance concerns.
Linux can be made to run acceptably on lots of devices, and there's plenty of unfunded community activity already going on that can deliver quite a bit of the stack - you just have to see how QtMoko (the community-maintained variant of Qtopia) still manages to roll along, regardless of whether anyone thinks it is blazing new trails - but cultivating a community around applications is something that the likes of Nokia only did in order to get access to the bits they needed. As a result of all this, people pin a lot of hope on Plasma Mobile (or whatever it's called this week) because it at least gives them the possibility to define their own platform.
I wouldn't be at all surprised if there's a similar level of enthusiasm for Jolla's "open core" as there was for Nokia's efforts, where contributors merely get the satisfaction that their code is being used from the outside of a tamper-proof glass case. The difference between then and now is hopefully that more people are wise to the game being played.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 12, 2012 16:58 UTC (Fri) by boudewijn (subscriber, #14185)
[Link]
"Plasma Mobile (or whatever it's called this week)"
Plasma Active, and no, it has never been called anything else, so why the sneer?
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 3:39 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)
[Link]
Almost all successful projects begin behind closed doors or developed by a small tight-knit community.
Attempting to start a large project usually results in lots of bike-shedding and very little of actual work. There are exceptions, of course, but they are rare.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 23:44 UTC (Wed) by shmerl (guest, #65921)
[Link]
> Android simply slaughters classic desktop Linux
You said it. Why are you surprised that it's not considered friendly then? Something that doesn't respect the community (if you put it as above) won't be respected in return.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:27 UTC (Wed) by swetland (subscriber, #63414)
[Link]
Or, if you aren't insistent in scraping all of Android off of the device, it's certainly possible to make use of the HW OpenGL ES support and hardware composition provided by the SurfaceFlinger.
Yeah, running your own compositor and window manager / X server against the bare metal is challenging, but one could bolt this stuff on top of the facilities provided by Android, expose a suitable shared memory interface, and then run x/gtk/gl/etc apps with a connection to your bridge (either in a chroot'd container or just compiled standalone)
A little convoluted, sure, but something that could actually enable existing Linux desktop *applications* to run effectively as first class citizens in a stock Android environment (with 500M+ devices out there, that seems like an interesting target).
I haven't missed Linux desktop apps on my phone or tablet enough to dig into something like this, but if people believe that Android would be massively better if you could run a bunch of those apps, there are ways to do it (and get reasonable performance) without users having to "root" their phones, install custom builds, etc.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:45 UTC (Wed) by raven667 (subscriber, #5198)
[Link]
I'm no expert but it seems that there maybe an opportunity for some standardization between fundamental technologies like SurfaceFlinger/AudioFlinger and Wayland/Pulseaudio. If they could co-exist or if apps written against one API could be run on the other with a thin shim then you could more easily move apps back and forth between traditional desktop and mobile systems. One of the benefits of the Apple iOS/OSX ecosystem is that they share a lot of the same underlying infrastructure. Even better would be to standardize on one stack for A/V although it might still be sufficient if both stacks use the same underlying kernel support infrastructure.
If we end up with competing stacks with competing kernel drivers then that weakens traditional desktop linux much more than Android. If the systems can cooperate or standardize then they can add to each others strength in new ways, as demonstrated by Valve recently. If all the drivers were upstream in the kernel then the talent for optimizing them can be pooled and multiplied. If the A/V systems are standardized than that also provides a nice target for other distributions like Jolla, webOS, etc.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:56 UTC (Wed) by shmerl (guest, #65921)
[Link]
It already happened (Android made a competing stack). Whether something can be bridged - is a good thing to explore, but the way things will progress is that regular Linux (including mobile distros) and Android will go separate paths in the foreseeable future. That was the point of my dislike to Android design decisions expressed above.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 2:43 UTC (Thu) by daniels (subscriber, #16193)
[Link]
We had a good and really productive conversation about Wayland and how it relates to SurfaceFlinger, HWCompositor and WindowManager in the Android sessions at Plumbers. It's definitely possible for a Wayland compositor to reuse some of the smarts from there, but it's a fair bit of work.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 21:46 UTC (Wed) by shmerl (guest, #65921)
[Link]
That probably wouldn't be efficient enough given the mobile hardware performance restrictions to run let's say KWin with PlasmaActive on top of it, but I'm not sure if anyone tried that anyway.
Using the lowest layer without any further Android stack to run other Linux DEs might work with help of something like libhybris:
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 16:12 UTC (Wed) by shmerl (guest, #65921)
[Link]
> No. It's a race. The first seaworthy ship to leave the port wins.
No, it's a race of open against closed. Since Android tries to race against the rest of the Linux world without contributing back and collaborating - that's exactly what makes it bad and unworthy. As simple as that.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 16:42 UTC (Wed) by khim (subscriber, #9252)
[Link]
No, it's a race of open against closed.
To some degree, yes. Race where two or three platforms emerged as potential survivors: Android, iOS, and maybe, just maybe WP8+. I fail to see how you can say that iOS or WP8 is more open than Android.
Since Android tries to race against the rest of the Linux world without contributing back and collaborating - that's exactly what makes it bad and unworthy. As simple as that.
Unworthy, heh. You mean you prefer iOS? Or WP8? Really?
My own choice is the most open of the participants. And that is Android. If you don't like it - then that's your choice, as I've said, but don't pretend that "worthiness" will save your beloved Mer or webOS. Or maybe you prefer to work with 10'000 owners (if even that!) of GTA04? That, too, is possible, but I prefer to tinker with platforms which have clear future.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 16:46 UTC (Wed) by shmerl (guest, #65921)
[Link]
They don't need saving IMO. They are good on their own already.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 2:48 UTC (Thu) by daniels (subscriber, #16193)
[Link]
> No, it's a race of open against closed. Since Android tries to race against the rest of the Linux world without contributing back and collaborating - that's exactly what makes it bad and unworthy. As simple as that.
While we're talking about open and closed, while MeeGo did reuse almost the entire 'classic' Linux middleware stack (and often fund enormous parts of its development) such as GStreamer, PulseAudio, Telepathy, X11, etc, it wasn't an open system. Huge parts of its UI and even a bit of its middleware were completely closed. And that's without even going into the closed hardware enablement pieces such as the SGX GLES/EGL driver, the power regulator (without which you can't charge your phone), the telephony stack, etc etc etc.
Not to mention that while Nokia fulfilled all its obligations under the software licenses, and as I mentioned, sponsored a lot of amazing middleware development, every year a whole new OS would just be dumped on the outside world. The development was done entirely in-house, and the source was released after the fact; by the time the community got their hands on it, most of the developers had already moved on to the next iteration of the OS, for which everything had inevitably been rewritten. IOW, its development process was _exactly_ _the_ _same_ as Android's.
(FWIW, I worked full-time on ITOS/Maemo/MeeGo for 4.5 years.)
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 3:15 UTC (Thu) by shmerl (guest, #65921)
[Link]
Meego project had governance shortcomings (it was too corporate controlled), which eventually spelled its doom. (We are talking about Meego project, not about Nokia's Harmattan). That's why Mer project was created - to address those issues and to continue, building on the accumulated effort. It's good that Jolla decided to work with the community and to use Mer as their core, rather than reinventing the wheel and repeating Meego project problems.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 10, 2012 13:35 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
[Link]
You can use glibc on Android, that's not a problem at all. In fact, it has been done many times: http://androlinux.com/
There's no real advantage in glibc over bionic for most of software. Even OpenOffice has been ported to bionic without much fuss.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 2:52 UTC (Thu) by daniels (subscriber, #16193)
[Link]
> There's no real advantage in glibc over bionic for most of software. Even OpenOffice has been ported to bionic without much fuss.
Bionic's thread implementation (to the extent that it exists) is substantially inferior to glibc's, and it's also missing some really useful features like timerfd, CLOEXEC, epoll, etc.
Most of those can be worked around, at the cost of reduced functionality and your code becoming the same kind of #ifdef spaghetti you get with trying to support OpenBSD.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 3:23 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)
[Link]
Windows porting is still much more complicated.
But these missing pieces can be added later, it's not like they are fundamentally impossible.
MeeGo to return next month with Jolla phone launch (The H)
Posted Oct 11, 2012 4:00 UTC (Thu) by daniels (subscriber, #16193)
[Link]
Windows is a total red herring, since no-one's saying here that it's dead easy to run a full generic Linux stack (Wayland/X11, GStreamer, etc etc) on Windows. Which is good, because they'd be wrong if they did.
The missing pieces of Bionic aren't fundamentally impossible to add, but it's a very real barrier to using Bionic today. Fixing pthreads is really quite difficult, and the binary-only GLES/EGL drivers you tend to get rely on pthreads being the way they are today (i.e. crippled by design). Not to mention the matter of various pieces of missing pthread functionality.
Crucially though, the big problem is that upstream has no interest whatsoever in fixing either pthreads or the lack of other functionality such as timerfd, and has repeatedly stated this.
Some of the guys I work with at Collabora did a lot of work on integrating a generic Linux stack into an Android system; you can see the results at http://cgit.collabora.com/git/android/platform/external. You can see all the work that goes into every single part of the stack to make it even build on Bionic, followed by all the bending over backwards to integrate them into Android's build system, which is much more difficult.
Even then, all that's assuming that you've got a full AOSP port to work with. If all you have is the NDK, then your life is a lot more difficult, especially if you want to do things like run D-Bus services with cross-process messaging.