Nokia N9

Nokia N9 is a relatively FLOSS friendly phone running on top of Linux + freedesktop.org + Qt stack, with partially open UI or "User eXperience" layer.

A lot of progress on free OS for Nokia N9 (and its developer sibling Nokia N950) has been made in the hardware adaptation and UX project formerly known as MeeGo CE, now "Nemo Mobile" running on top of Mer core (continuation of MeeGo).

Hardware adaptation

Hardware adaptation for Nokia N9 and N950 is mostly done in upstream Linux kernel for the TI OMAP3 support, and the most complete adaptation including various sensors et cetera is available in source (where available) and binary forms at the Nemo Mobile repositories:

It was successfully used as part of Nemo Mobile (formerly MeeGo CE) release, so it should be possible to bring to Debian. Also, Debian user space should boot with Nemo kernel.

Among else phone calls work with oFono.

Appendix: UI layers and Apps

Not directly related to hardware, but the MeeGo Touch Framework used also in the partially proprietary shipping software on Nokia N9 is/was free software, although without future plans as Qt5/QML are taking its place. It was however productized and is used as part of Nemo. It is located (repository/source package wise) at http://repo.merproject.org/obs/nemo:/devel:/mw/ (middleware, including libmeegotouch) and http://repo.merproject.org/obs/nemo:/devel:/ux/ (control panel among else). Some of the Nemo MW/UX work is nowadays not MTF based anymore, ie works with normal Qt5, but some remain non-ported as requiring the whole MTF stack.

A kickstart file used in the RPM world is attached to this page, explaining all the repositories and packages that are used for a functional software image. It should be guiding in getting Debian support as well.

Crude hacking of Debian based rootfs

It should be possible to get a Debian booting with Nemo's kernel without big issues. That means unpacking Nemo's kernel & kernel modules on top of a Debian rootfs (debootstrap armhf, chroot in and expand, or use a ready made rootfs from somewhere). Anything extra besides a black screen and possibly configured SSH + USB network will be a matter of either copying files from inside Nemo rpm:s and/or recompiling them from sources when available. The following is a list of packages in Nemo that should be interesting for hacking some hardware functionality in on top of Debian rootfs on N9: