![]() |
[Fremantle] Android inside chroot
This thread is continuation from brainstorming about chrooted-Android in this thread. So:
what?: the idea is the same (well, maybe a little different but still quite simmilar :)) as what easy-debian is doing with Debian, just with Android. tl;dr: Android apps on Maemo! why?: in order to run Android apps (.APKs) in the same way easy-debian is "emulating" (this is not emulation at all) apps from it's repos. tl;dr: Because of Android apps? how?: first of all we need chrooted (or "LXCded") Android (NITDroid probably, or some "cropped" version of it). Steps (aka TODO):
So far, everything up to here, was done by thp. Also, liar has made some progress in this area (on Harmattan, as thp). Chroid is simmilar project for WebOS. Most promising is ParallelDroid by pakesson. -- GitHub. (Thanks Hurrian for mentioning this!) Progress:
I will update continually this thread / post with more info. Expect lot of problems, bugs & glitches soon! :) Also feel free to ask, answer and share your thoughts. (If you want to test - there is nothing to test as of now, but if you want to develop, install scratchbox & grab a copy of NITDroid. And Go!) |
Re: [Fremantle] Android inside chroot
doesn't android require a not-really-linux kernel? (or am I still living in the past?)
if so, this would require adapting fremantle first to run on android kernels. |
Re: [Fremantle] Android inside chroot
Wow, how much I've missed NITDroid... If this will work it will be really cool! :)
|
Re: [Fremantle] Android inside chroot
Quote:
In easy-debian, the Maemo kernel is still used & so is in chrooted-BackTrack etc. Also thp's procedure isn't saying anything about kernel-moding. Is Dalvik somehow connected to specific features of Android kernel? |
Re: [Fremantle] Android inside chroot
Quote:
(hint: power management in Android is so FUBAR that they actually need this kernel "tweaks"). Quote:
Android is not a Linux distribution. Quote:
But if you're initiating this project, perhaps you should investigate this :) |
Re: [Fremantle] Android inside chroot
Maybe it's better to run it inside VM. I heard that Xen got ARM support.
|
Re: [Fremantle] Android inside chroot
Quote:
|
Re: [Fremantle] Android inside chroot
This is exactly what you want to do.
Some talking points:
|
Re: [Fremantle] Android inside chroot
Yes!
I've seen a comment about paralleldroid by thp on his blog. Thanks! |
Re: [Fremantle] Android inside chroot
Quote:
You say there is an "Android kernel adaptation for N900". I take that to mean you can run Android on the N900 natively (Nitdroid, I guess). However the goal of this project is Android running inside Fremantle. Neither Fremantle will run on Android kernel nor Android will run on Fremantle kernel. I think that sorta sums it up good enough. |
Re: [Fremantle] Android inside chroot
Note:
This (http://whiteboard.ping.se/Android/Debian) = running Android system on a Debian chroot itself running on Android kernel might be something cool to do on our N900s (or a laptop, or whatever). |
Re: [Fremantle] Android inside chroot
http://logs.nslu2-linux.org/livelogs...o.20131109.txt
< list of Android drivers needed anyone / anywhere? Including them in kernel-power is no-go, but what about hybrid of nitdroid-kernel and kp. nitdroid-kernel is on Gitorious. From here: binder, ashmem, pmem, logger, wakelocks, oom handling? |
Re: [Fremantle] Android inside chroot
If you need an Android-kernel on which no Linux will run, then how can you run Android apps on Jolla?
|
Re: [Fremantle] Android inside chroot
Quote:
Quote:
Quote:
Quote:
Quote:
|
Re: [Fremantle] Android inside chroot
Supposed there is static pm missing, what would happen while trying to run an Android app? //edit: Can't our Linux kernel take care of whole power management and our Dalvik app just let be controlled?
|
Re: [Fremantle] Android inside chroot
Is it possible to give access to hardware components (e.g. accelerometer, GPU, etc) to something in a LXC container? If so, could the nested Android have hardware acceleration? It makes Android apps so much more usable on the N900.
|
Re: [Fremantle] Android inside chroot
Quote:
Here is some stuff about direct rendering (simillar). |
Re: [Fremantle] Android inside chroot
So basically we need to load android drivers in maemo chroot and use the maemo for chroot ,easy to tell , hard to do.
But how do you start the android kernel in chroot? Asumed you have done that do you need to bind maemo to the android kernel&dalvik vm for installing and running the apps ? or do you need to use the full chroot , run full android and apps in that chroot? |
Re: [Fremantle] Android inside chroot
AIUI, LXC containers share the same kernel still - see Oracle documentation on LXC
In that case your now looking at patching host kernel to enable Android, which I dare say is going to break a few things a long the way. If that's the case I'd start looking at a Sailfish approach by running libhybris, if only for the possibility of detaching MCE and co from N900 specifics to allow porting to other devices. Problem is how much RAM and performance loss your going to see. |
Re: [Fremantle] Android inside chroot
If the container has the same kernel, does that mean it has to load two sets of drivers for everything? Or are the android drivers only loaded inside the LXC container?
|
Re: [Fremantle] Android inside chroot
and why the drivers (the camera one and others ) were patched to work in android(jolla) if they share the same kernel , i don°t think they share the same drivers , the layer + adaptation between them we need , there are more chances to make that available to n900 than to run maemo on other hardware , by the way why alien dalvik won°t run on kernels prior to 3.x.x (jolla , leaving qualcomm s**t aside) , from what I remember it was demoed on n900 , that phone was with a updated kernel? or our kernel was patched?
|
Re: [Fremantle] Android inside chroot
This is very cool - looking forward to this hack! :D
I'll be glad to test something if you will need more people. |
Re: [Fremantle] Android inside chroot
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
|
Re: [Fremantle] Android inside chroot
Quote:
And the same situation in reverse - on my Android device, I can stop Zygote, take control of the framebuffer, and start Xorg with the GNU Userland from a terminal. Quote:
|
Re: [Fremantle] Android inside chroot
so , let"s start with kernel , what patches and how to compile them without breaking maemo?
|
Re: [Fremantle] Android inside chroot
Quote:
|
Re: [Fremantle] Android inside chroot
I'd say help freemangordon, pali, et al. to run maemo on 3.x kernels, then go from there.
Win-win for everyone. |
Re: [Fremantle] Android inside chroot
Well, I was trying to compile LXC and when generating configure by running ./autogen.sh I'm getting:
aclocal: configure.ac: 205: macro `AM_COND_IF' not found in library aclocal: configure.ac: 219: macro `AM_COND_IF' not found in library aclocal: configure.ac: 234: macro `AM_COND_IF' not found in library aclocal: configure.ac: 252: macro `AM_COND_IF' not found in library aclocal: configure.ac: 269: macro `AM_COND_IF' not found in library aclocal: configure.ac: 304: macro `AM_COND_IF' not found in library aclocal: configure.ac: 315: macro `AM_COND_IF' not found in library aclocal: configure.ac: 377: macro `AM_COND_IF' not found in library That's probably related to old version of autoconf used in scratchox. Will update & report. <- solved by downloading .tar.gz tarball & running configure directly. Another error log, when running make: In file included from lxc_attach.c:37: utils.h:56: error: static declaration of 'setns' follows non-static declaration /usr/include/bits/sched.h:91: error: previous declaration of 'setns' was here Ideas? <- caused by broken version of libc6 from previous projects. Reinstalling whole scratchbox, will let you know soon :) #lexik |
Re: [Fremantle] Android inside chroot
Quote:
|
Re: [Fremantle] Android inside chroot
Quote:
|
Re: [Fremantle] Android inside chroot
The first thing you’ll need if you want to do this is get your machine to run an Android kernel, you’ll need to have any modules needed by Android built and loaded before you can start the container.
The Android kernel, is not necessary, if we will have the kernel modules (.ko) compiled & loaded, I guess. I'm going to test it first on my x86 machine. |
Re: [Fremantle] Android inside chroot
the nitdroid modules need to be recompiled(or the maemo kernel) , you can°t load maemo modules in nitdroid kernel (tried that) , loading nitdroid modules in maemo i didn°t try yet
|
Re: [Fremantle] Android inside chroot
loading nitdroid modules in maemo i didn°t try yet
That's what I want to try :) What's the specific problem in loading fremantle modules & drivers into Nitdroid? |
Re: [Fremantle] Android inside chroot
i didn°t remember the output , that was long time ago, install nitdroid and try to load modules , replacing or renaming them
|
Re: [Fremantle] Android inside chroot
Why do we need those Android kernel modules, if our dynamic pm can rule supreme?
|
Re: [Fremantle] Android inside chroot
we need that for dalvik , not all of them , pm-power management?
or maybe libdvm.so for maemo + other changes ?:confused: |
Re: [Fremantle] Android inside chroot
Quote:
Yes, pm = power management. |
Re: [Fremantle] Android inside chroot
if you show-me a complex app runed by thp I will agree with you
|
Re: [Fremantle] Android inside chroot
I can't point such an app :)
Won't an error message be shown if a kernel module is missing? |
Re: [Fremantle] Android inside chroot
compiling a module for each app isn°t the road ,and the games runned by apkenv aren°t dalvik apps , even those are using nitdroid modules , not maemo ones
|
All times are GMT. The time now is 05:34. |
vBulletin® Version 3.8.8