Yes, but "Android phones" and "Android" are not the same thing, thus my question. Android is an OS, Android phones are hardware devices. Or is Ubuntu Touch running on top of Android? If that's the case, I don't see the point on having another display server running on top of it.
Originally Posted by MrTheSoulz
"How is Ubuntu Touch connected to Android?
Originally Posted by mrugiero
The independent open source project CyanogenMod which is based on Android and tries to improve and extend the existing Android Basis has been taken by the developers as a kind of underlaying basis for Ubuntu Touch. The kernel and a few low level drivers for network, video, audio and some other hardware features are taken, all the higher level parts have been taken out. On top of this the whole Ubuntu is started in an chroot environment.
Does that mean that only Android Devices are able to run Ubuntu Touch?
No. For the Ubuntu Touch developer preview canonical developer had obviously focused on only very few well supported models. In order to enable easy support of all existing closed source drivers the decision has been taken to use lower level parts of android. This does not mean that only android devices will be able to run Ubuntu Touch in the future. It might be equally possible to replace the android low level part and boot directly with the kernel into the Ubuntu environment.
Did you consider using some of the android components (eg surfaceflinger) instead of writing Mir?
Yes we did. We found that:
Surfaceflinger is very tied to the android system and would take a large amount of porting work to run inside of Ubuntu Touch.
Surfaceflinger is currently focused on a simplistic z-order based compositing, we needed something that can support the full Unity experience you expect on a desktop. The complex “launchers” you use in android are not part of surfaceflinger.
Finally, adapting surfaceflinger to use mesa/gbm drivers is a ton of work (and probably not possible). We love the free stack drivers and need to support them for the desktop.
Do Mir clients care what platform (Android or mesa/GBM) they are running on?
Nope! A mir client will be able to run on a mesa/gbm platform or an android platform. We took great care to make sure that the clients are agnostic to the underlying OpenGLES driver model. There is no recompilation and no platform detection needed."
And then, we have what I originally said, that Android and Android drivers are not the same thing. Android is different from any other Linux mostly because of the blobs and SurfaceFlinger, so taking SurfaceFlinger, the only noticeable difference are the drivers. As I already said. Thanks for clarifying.
Originally Posted by DDF420