[maemo-developers] Maemo & Linux mainstream again (was Re: Projects Nokia should support (yours?))
From: Carsten V. Munk cvm at cs.au.dkDate: Sun Oct 26 00:12:29 EEST 2008
- Previous message: What category should network filesystems like OpenAFS go under?
- Next message: Maemo & Linux mainstream again (was Re: Projects Nokia should support (yours?))
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Quim Gil wrote: > The strategy taken for Maemo is different, promoting the direct > collaboration with the relevant upstream projects and going as far as > possible with the open source way of working. Maemo is mostly based of > open source components. Any manufacturer could take that code base and > add their own hardware adaptation and find/develop the set of > applications to offer. As for today Nokia is not interested building a > business out of that. The Maemo team rather invests the money aligning > more and better with the mainstream Linux. From a system/OS developers point of view, Maemo platform developer and a Nokia tablet lover, I have given some thought to what would help some of the frustrations I've had regarding Maemo as a system and as a platform. Some of these frustrations deal with the difficulty of porting applications for the platform, but I also have respect for Maemo being the best user friendly (and quite open) OS around for embedded devices targeted towards users. And obviously that adds to the interest in having applications you write for Maemo would be able to be easily ported to other tablet/portable "less powerful than desktop" devices - but I'm not confident about the statement of "taking that code base" and being able to construct a sane Maemo-like platform - as we've tried to take fairly standard Maemo platform applications and put them on let's say later versions of Debian, with Hildon, with quite a lot of hardships caused by this. What I would love to see in Maemo 5 would be, - not focusing on the user interface or hardware items, but on the Maemo platform itself, under the surface: Reconstruct Maemo - take the latest packages from Debian or Ubuntu, stay consistent in package naming, it's been a long while since you forked. - sure, build them with device specific optimizations, but keep up when there's new releases. Sure, customize with busybox and such, but, in the process of rebuilding the base system platform, release scripts for bootstrapping a Maemo image, keep the system development open (public SVN like with Hildon) - which would make developers happy in terms of knowing how the base system is going to change - and adapt to them before new OS releases come out. Stay out of making closed source solutions for the basic simple UNIX system setup - for hardware, sure, binary blobs are alright, just don't let them block kernel updates and such. For power savings, - you've mentioned using HAL, Upstart and OHM - make closed plugins for OHM, HAL, sure - they're for the hardware interfacing, - the software and OS architecture is what people are interested in, because compared to many other embedded linux, it works quite well, has very little power consumption and probably has the envy of platform makers. See where I'm going with this? People would with this setup take the base of Maemo, port them on to their new tech, giving back to the open source community a platform that can be quickly adapted to new devices. When new devices come out, the applications of those device communities will directly port to Nokia's tablet, leaving Nokia to be able to compete on quality, hardware interfacing, having good karma with the open source community, and specialize in tablet specific differentiations - with people interested in developing their underlying system platform as it benefits them. Just see Windows Mobile - there's -tons- of applications for these devices, due to the pervasiveness of the OS. Nokia/Maemo -could- put themselves in the same position by simply working with upstream, doing some small changes, working with the community, and poof, you have a general platform for tablets - the devices this runs on don't need to be power hungry netbooks, they'll be just fine with a low-power ARM processor at 400mhz. And in connection with the idea of Pervasive Computing, this is a wonderful thing. Low cost, low powered tablets with low power consumption. And this is where the open source community is missing out - proper OS'es for these devices. Moving up to user interface - if you're going to do break API, use seperate directories for the standard API and the embedded API (GTK, GTKMM for instance). Ship embedded API in the FIASCO image, sure, - but use tricks like pkg-config maemo-gtk to make applications "able" to use the embedded extensions (and use launchers to load the specific embedded libraries), and don't make the embedded and standard API be mutually exclusive. For instance, try running Maemo GTK on a window manager that isn't matchbox - it doesn't work well. This would make "porting" easier, and help bringing Maemo GTK vs GTK deltas down as you conciously have to consider if you want to use traditional hildon + GTK or hildon + Maemo GTK. Let's say we want a partition editor for our tablets. It'd be a matter of a recompile, maybe helping a bit along with hildon extensions, but you don't run into the issues of no vfuncs for instance, which breaks the compilation, easily :P Use Xorg+omapfb driver (non-kdrive), as you're planning already and have hildon desktop on top - but don't force the system to run a hildon desktop. Work with open source community to provide a more seamless API for connectivity instead of stuff like libconic (which depends on icd). Sure, seamless connectivity is closed, but why really? It also keeps the users from being able to investigate what is wrong when their university network fails to let then log on. There's wpa_supplicant, linux wireless extensions and other possibilities. Things like applications relying on icd behaviour/API from libconic makes them locked to the Nokia tablet+Maemo combination. Beyond the level of Hildon? Do what you want, it's differentation, - interface with your hardware but standardize your interfaces (HAL battery info, GPS connectivity, etc), so you don't lock Maemo apps to the Nokia tablet+Maemo combination. This would give you benefits in terms of getting apps from other devices too, add Nokia tablet specific services, but keep the platform open and keep the development open. You may find it benefits you in terms of people actively working and contributing to the underlying system. Even if it means a possible explosion in tablet devices, - Nokia has the brand, quality and the know-how of the platform, and knows how to polish it for the users. Not saying Nokia should make a business out of it, but they would benefit from this move of having a open underlying software platform/OS infrastructure. For good measure, these thoughts are not blame or complaint or to flame. They're hopes for a better Maemo platfom for tablets, which I'd love to see, as a developer and as a user. Regards, Stskeeps/Carsten Munk (this post does not reflect my employers view, and only reflects my own personal views)
- Previous message: What category should network filesystems like OpenAFS go under?
- Next message: Maemo & Linux mainstream again (was Re: Projects Nokia should support (yours?))
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]