[lxc-users] Announcing public builds of LXC for Android

Stéphane Graber stgraber at ubuntu.com
Wed Dec 11 16:50:29 UTC 2013


On Wed, Dec 11, 2013 at 08:44:05AM -0800, Tony Su wrote:
> I don't know of a specific online build service that could do android
> builds for you but I know the technology exists...
> 
> eg If you know of Jenkins CI (Continuous Integration), it's a powerful open
> sourced and publicly licensed technology that integrates technologies like
> your choice of version control and your choice of build environments. The
> idea is that a team of coders can submit their contributions at any time
> and the system will automatically build and test against your choice of dev
> branch, either merging or maintaining a separate branch automatically
> without enforced milestones.
> 
> Off the top of my head, I don't remember that the Open Build Service (run
> by SUSE) builds for Android although it'll package your code for
> practically every distro in existence(with a manifest specifying
> distro-specific dependencies) with a few clicks.
> 
> The only online APK build services I know of only package HTML, Java or
> dotNET code and I wouldn't expect yours to be either of these of course.
> Assuming your code is C I can only think of building using a locally
> installed Eclipse with Android SDK installed(unless someone sets up
> something like Jenkins)

That's not what I meant, I'm not looking for an online service to
generate a .apk for me, I'm just looking for a way to locally build a
.apk from a standard autoconf project (not Android.mk) and have
arbitrary files in arbitrary locations in the resulting .apk.
As far as I could find when I last looked a few months ago, that's not
something that any existing tools let you do it for the simple reason
that you're not supposed to do that on Android (as in, the resulting
.apk would never be allowed in the store, which has always been a given
for LXC).

> But, if you're going so far as to modify the kernel (are you doing more
> than simply loading kernel modules?), are there Google licensing issues?

So far, all the Android kernels I've seen are missing a bunch of
features that are required for LXC. So you need to grab the source for
your device, grab the matching config, enable all the flags that
lxc-checkconfig detects as wrong and then rebuild the kernel and flash
it on your device.

That means that on any device which doesn't come with the right kernel
options, you need to root the device and unlock its bootloader before
you can use LXC on it (which for most devices means voiding the
waranty).

There really isn't anything I can do about this, short of having the
manufacturers provide a kernel with the right options, a rebuild is
required and you can't push a new kernel if your device isn't rooted and
the bootloader unlocked.

> 
> Tony
> 
> 
> 
> On Wed, Dec 11, 2013 at 8:26 AM, Stéphane Graber <stgraber at ubuntu.com>wrote:
> 
> > On Wed, Dec 11, 2013 at 08:11:13AM -0800, Tony Su wrote:
> > > Interesting.
> > > But, many existing Android Users will still have a problem
> > > running/installing a tarball.
> > >
> > > If you could take it one step further to package in an APK, you'll likely
> > > get far wider usage.
> > > Of course, with Android, it's also critical to fully document the system
> > > requirements, particularly which Android version the build is against.
> > >
> > > Tony
> >
> > If you could point me to an easy way to generate an APK from a project
> > which doesn't use the Android build system, needs to be deployed and
> > always ran as root and in non-standard location, I'd be interested.
> >
> > Considering the kernel requirements, I very much doubt we'll find users
> > who know how to build their own kernel and deploy them but don't know
> > how to unpack a tarball on their device :)
> >
> > >
> > >
> > > On Tue, Dec 10, 2013 at 2:07 PM, Stéphane Graber <stgraber at ubuntu.com
> > >wrote:
> > >
> > > > Hello,
> > > >
> > > > Some of you may have noticed the rather large amount of fixes I've been
> > > > working on for a while to get LXC to behave mostly fine on Android.
> > > >
> > > > With the recent rework of LXC's automated build system, I'm now happy
> > to
> > > > announce that every hour (provided there's a change in git master), a
> > > > new android tarball will be produced with binaries built against the
> > > > current version of the Android NDK.
> > > >
> > > > Resulting builds may be found at:
> > > > http://qa.linuxcontainers.org/master/current/android-armel/
> > > >
> > > > If you want to run those, you'll need an ARM based Android device with
> > a
> > > > compatible kernel (you'll likely need to hand-build one), then unpack
> > > > the tarball in /, unpack a container in /data/lxc/containers/ and
> > > > finally start it with "./run-lxc lxc-start -n <container>".
> > > >
> > > > I expect all the binaries command to work fine. The templates and all
> > > > other scripts currently don't due to the rather limited shell being
> > > > available on Android. I may try to resolve that in the near future.
> > > >
> > > > Have fun!
> > > >
> > > > --
> > > > Stéphane Graber
> > > > Ubuntu developer
> > > > http://www.ubuntu.com
> > > >
> > > > _______________________________________________
> > > > lxc-users mailing list
> > > > lxc-users at lists.linuxcontainers.org
> > > > http://lists.linuxcontainers.org/listinfo/lxc-users
> > > >
> >
> > > _______________________________________________
> > > lxc-users mailing list
> > > lxc-users at lists.linuxcontainers.org
> > > http://lists.linuxcontainers.org/listinfo/lxc-users
> >
> >
> > --
> > Stéphane Graber
> > Ubuntu developer
> > http://www.ubuntu.com
> >
> > _______________________________________________
> > lxc-users mailing list
> > lxc-users at lists.linuxcontainers.org
> > http://lists.linuxcontainers.org/listinfo/lxc-users
> >

> _______________________________________________
> lxc-users mailing list
> lxc-users at lists.linuxcontainers.org
> http://lists.linuxcontainers.org/listinfo/lxc-users


-- 
Stéphane Graber
Ubuntu developer
http://www.ubuntu.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.linuxcontainers.org/pipermail/lxc-users/attachments/20131211/73c716ec/attachment.pgp>


More information about the lxc-users mailing list