gnuroot
gnuroot copied to clipboard
Question: binfmt_misc support/emulation possible ?
I have two tablets that run nicelly your fantastic software: one uses a Tegra 3 ARM processor, another am Atom x86 processor, and so far. The Atom tablet could install Wine and run several programs without issues: Even the MediaCoder, which is an intensive CPU program, runs like a charm. However, the same for ARM don't work, since the Qemu and Wine combo fails due the binfmt_misc configuration. A very old package of Wine (0.9.11) with a patched Qemu, which don't need the binfmt_misc, runs on ARM tablet, but is a little slow.
I know that proot and GnuRoot don't support kernel modules, but in theory the proot emulator support the binfmt_misc API calls. It is possible to create a special library to fake the binfmt_misc module with the necessary support to make softwares, like Wine, to run with Qemu in ARM ? Or it is beyond of scope of this kind of software ?
A very old package of Wine (0.9.11) with a patched Qemu, which don't need the binfmt_misc, runs on ARM tablet, but is a little slow.
I think Wine+QEMU under GNURoot/ARM will be very slow too...
I know that proot and GnuRoot don't support kernel modules,
Technically, kernel modules can be loaded under GNURoot/PRoot if you have enough real privileges, ie. the "fake root" option can't help in this regard but GNURoot/PRoot don't prevent kernel module loading.
but in theory the proot emulator support the binfmt_misc API calls. It is possible to create a special library to fake the binfmt_misc module with the necessary support to make softwares, like Wine, to run with Qemu in ARM ?
I think it should be enough to add an option to GNURoot (similar to
the "Fake Root" one) that passes the "-q
Or it is beyond of scope of this kind of software ?
It's up to @corbinlc to decide.
I think this is a good and useful idea. Honestly, I have many things that will come before this (just getting restarted after months of not working on this), but ... I may get around to this and alternatively, after I make some bigger changes, someone else who is interested could contribute a change that provides this.
The russian company Eltech was ported their emulation software (ExaGear) to Android, combining a proprietary x86 binary translator with a custom striped-down chrooted Linux distribution just to run the Xlib libraries and Wine 1.6.2. A nice front-end GUI hides the setup, but some Wine's components, like Gecko, msi installer support are removed. The main objective of this port of Wine to Android is to run some older games that don't require real 3D hardware, and also don't need to run the installer, since it is not officially supported. The only real achivement of this proprietary port, is the fact the multimedia (sound and haptic interface) and Direct3D emulation (using OpenGL ES) was implemented by native proprietary proxy libraries. This makes several games very playable even on a totally alien operating system and architecture, leading behind the Qemu + WIne could do, however the lack of some Wine's components breaks the compability to run some non-game software.