[buildd-tools-devel] Bug#604268: Bug#604268: Bug#604268: Bug#604268: Bug#604268: Bug#604268: QEMU linux-user support

Roger Leigh rleigh at codelibre.net
Mon May 28 23:20:42 UTC 2012


On Wed, Jul 27, 2011 at 08:01:13PM +0200, Julian Andres Klode wrote:
> On Tue, Jun 14, 2011 at 01:25:42PM +0200, Julian Andres Klode wrote:
> > On Tue, Jan 25, 2011 at 03:44:29PM +0100, Loïc Minier wrote:
> > > On Mon, Jan 24, 2011, Loïc Minier wrote:
> > > >  While we could try parsing binfmt-support's format or binfmt_misc's
> > > >  format, I think the best thing here would be to check with the
> > > >  binfmt-support maintainer.  I wonder whether binfmt-support is
> > > >  Debian/Ubuntu specific.  If it is, then poking the kernel format or
> > > >  trying to run a binary might be best.  If it's also used on other
> > > >  distros, perhaps we can get some command which tells us what the
> > > >  interpreter is for a specific binary.  If that makes sense to you, I
> > > >  can poke Colin about it, and perhaps open a bug report for the
> > > >  binfmt-support changes.
> > > 
> > >  I've asked Colin about this, and he implemented support for that in
> > >  trunk!  :-)   (I tested it, there was an issue in the original version
> > >  but r109 fixed it)
> > > 
> > >  (bzr+ssh://bzr.debian.org/bzr/binfmt-support/trunk or
> > >  http://bzr.debian.org/binfmt-support/trunk)
> > > 
> > >     % sudo apt-get build-dep binfmt-support
> > >     % ./configure && make
> > >     % src/update-binfmts --find $chroot/bin/true
> > >     /usr/bin/qemu-arm-static
> > > 
> > >  Note that the --find might return multiple interpreters; in this case,
> > >  the kernel tries them one by one.
> > > 
> > >  Perhaps we should do something like find the first static interpreter,
> > >  or always copy the first interpreter and warn if there is more than
> > >  one?
> > > 
> > Attaching my solution for this.
> > 
> Updated as per IRC comments. Changes since v1:
> 
>     * Run in setup-recover as well
>     * Reindent in accordance to other schroot scripts
>     * Simply touch the emulator if it does not exist yet instead of
>       trying to write a script there.

Hello,

I've now moved this script from the "contrib" directory to
/etc/schroot/setup.d/15binfmt (reordered so later scripts can make
use of this to e.g. start services and run programs inside).

I'd appreciate it if you could possibly give this a check over
to make sure it works the way you want.  I've put a snapshot at
http://people.debian.org/~rleigh/schroot/
which is just a packaged version of the current git repo.  It
would be good to know if the script is working correctly, and
if you're happy with the breaks/suggests for schroot.

I've left out all the C++ code previously mentioned in the report,
since this script makes it all completely self-configuring, and
just gets enabled transparently when needed.  We can easily add
support for tweakable options if needed; in fact, for this
version of schroot, it no longer even requires writing any C++.


Many thanks,
Roger

-- 
  .''`.  Roger Leigh
 : :' :  Debian GNU/Linux    http://people.debian.org/~rleigh/
 `. `'   schroot and sbuild  http://alioth.debian.org/projects/buildd-tools
   `-    GPG Public Key      F33D 281D 470A B443 6756 147C 07B3 C8BC 4083 E800





More information about the Buildd-tools-devel mailing list