-
-
Notifications
You must be signed in to change notification settings - Fork 54
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implementing QEMU #25
Comments
|
Change |
Mr Rausty, I would like to warn you for very important Qemu issue. It is speed of The executed code. Because Android devices can not be rooted simply. As A result, normal user have no chance to patch his used Android kernel with Kqemu kernel module. Because to be honet, Qemu which execute complex code is only usable if it is accelerated with Kqemu kernel module. As A result, Fedora support wonderful virt-manager which uses Qemu in conjunction with Kqemu. There is even An attempt to allow users of Termux to boot whole Linux distro no in userspace mode as Proot technique allows. It is even possible to run various Linux distros by using this technique. But The execution speed is very slow even on Octa core CPUS with ANdroid 8.0 and with 4 GB of RAM. Proot still offer The best execution speed when comparing with Qemu which do not use Kqemu kernel module for its accelerated running. Kqemu requires hardware virtualisation to be available on A ARM CPU. The question is, if cheap ARM cpus even contain hardware virtualisation when CPU is being manufactured in The factory. I have tried Alpine with Termux which run by using Qemu. It runs, but because Qemu emulates CPu hardware, it cost many penalties. Yours idea is goodly thinked, but speed wwill be very probably The limitation factor. |
Simply by opening this topic the goal is much closer, and should be easier to obtain. Do you agree?
I cannot but agree from what I know of the subject of QEMU. However there is even a bitter bigger limiting factor than the one we are dwelling on here right now! This is being able to install an alternate architecture in a smartphone easily with one tap only! Do you agree with this point of view dear Mr @JanuszChmiel? |
This short piece of code literally tapped itself into place before my eyes earlier in the afternoon today:
This short piece of code literally tapped itself into place before my eyes in what seemed like a few short minutes as I was, you could say, mussing. I was taking a break from thinking about how to resolve this QEMU one tap automation topic, and tapping my smartphone screen while meditating about this issue. This is much too much code to leave for amusement in the setup file. It should migrate to one of the axillary files, and soon will be moved. File espritfunctions.bash seems like a valid recipient for the Matrix enhancement function where it will have some room to develop like this newly forked TermuxArch repository did 7 years ago:
This presentation can be a good entry point for the future coder who might be code phobic today. @JanuszChmiel thank you for coming up with a very nice name for the Orca project we are working on for long months now. The name
The matrix option can be accessed with this |
Yes I fully agree with you in this point of wiev.
The next true is that if Qemu is being used not to boot whole Linux distro
with whole kernel, that there is not too much instructions to execute and
Qemu can be good alternative.
|
I had a big dream. Run Wine for X86 on Aarch64 platform and run my favourite
audio games for visually impaired by using Linux on Android device by using
Proot.
Unfortunately, The most .exe apps have been compiled for X86 or for X64.
There is no free simple converter, which could simply convert machine code
from one platform to another.
Play those games on A phone instead of a standard IBM/PC compatible machine
would be very exciting idea. BUt I know, that Qemu would be very probably
too slow to allow this.
The next important question is, if build Wine pulseaudio sound support would
be compatible with used approach, that TCP protocol is being used to stream
sound packets to Pulseaudio server which run in Termux not on a real Linux
distro such as Arch Linux.
But it would be very interesting experiment.
|
Can you share with us please what these games are? And are they available at GitHub? |
I love one really unique audio games for visually impaired. Its name is
topspeed. It is written by using Visual C++.
It uses 3d sound to simulate real car race. You can hear cars around you,
when you want to run fater than The car infront of you, you can hear The
sound of The slower car. User must turn right, left, Cars can run to various
ways.
The source on Github is here.
https://github.com/PlayingintheDark/TopSpeed
But I must warn you that simply recoding this complex C source to be
compatible with Linux compiler will not be easily possible.
I love also other game, which is compiled by using special game engine for
audio games development. It require X86 environment and Wine emulator.
Topspeed also require WIndows emulator.
I AM afraid, that Wine will not support to use Topspeed, since it uses many
dlls from Microsoft corporation which is copyright problem. Microsoft
directX to generate sound, and Microsoft Visual C++ redistributable.
Here is other excellent audio game for us. It is Tube simulator from London.
http://www.ndadamson.com/get-tubesim-portable.php
|
This 7eb1440#diff-147d3dac5c5d3cacbd74a5925f7ef3cfR522 commit adds basic QEMU support for TermuxArch. To access this new future you can use this command This command still does not support installing QEMU which must be installed manually. If installing x86_64 on a 64-bit arm smartphone, this is a recommended QEMU package configuration:
|
To use this new feature which is currently being developed: |
Oh. And will be possible to run some X86 apps while working with AARch64
CPU?
It would be excellent.
|
I am glad to see that this issue has made a little headway. |
This error
|
It appears like it is possible to achieve this goal since this 77751cb commit. The command |
Speed can be benchmarked with this script. The current limiting factor is the different configurations which the different architectures have @JanuszChmiel. Have you had any success with alternate architectures on your smartphone? Notes about reinstalling for testing, this command
The newly implemented command
The command |
Please see
|
Stale issue message |
I would like to share the latest 'audio games' milestone with you here in this issue @JanuszChmiel:
GHCup-hs works flawlessly in TermuxArch; THANK YOU! Did you know that Haskell can play music from code? Tap here to see video search results. output.mp4Link to this sample of Haskell music source code. Can anybody else who uses Termux please try it? I would like to hear your opinion about the way Haskell makes music from code in Termux please. Originally posted by @SDRausty in termux/termux-packages#8758 (comment) |
I have spent some time to found AN reliable and possible way to run X86 Windows apps.
It is possible thanks to
https://github.com/ptitSeb/box86
But project must be run under Linux distribution which is ARM32 Bit, not AArch64 Bit one. And unfortunately, Termux do not allow users to choose which architecture user would want to use. It simply automatically download bootstrap files according To the automatically detected CPU architecture.
It is not A problem if user do not want to run box86.
Next problém is, that it is necessary to obtain X86 Windows prefix, Wine Windows files which mmust be X86.
So my dream would be too complex to reach for now.
|
|
I am checking the availability of box86 in Arch Linux 32 with the option that we have developed here in this issue; Have you tried box86 in Arch Linux32? |
Arch Linux aarch64
QEMU Arch Linux system emulation might not be neccessary to run box86 on our Android smartphones. |
Yes I will try it but I must remove older Termux and I must upgrade to 118 version. I had issues with makeyay script and I did not set user password for janusz so I could not use Sudo which makeyay script call. So I must reinstall Whole Termux and ArchLinux but I will 100 % try yay ghcup-hs command and I will try Haskel and its play sound feature. I believe, that it will support Pulseaudio for Termux. |
Since Termux is a one app and one user environment with the same permission scheme, does it make any sense to use passwords once a Termux session is opened? |
I have made an new issue Run my favourite audio games for visually impaired #68 for in depth discussion regarding creating music with Haskell in TermuxArch. If you have difficulty installing |
Does this still work? it's hanging at trying to EDIT: Also seeing this, might want to update the script.
|
EDIT: This command
setupTermuxArch q[emu] [customdir]
supersedes the struck out notes below. The commandsetupTermuxArch h[elp]
provides help information.QEMU has along with other features been implemented for years. Unfortunately, it is still under documented and still awaiting full implementation. There are two implied references to QEMU in the help;setupTermuxArch h
:>[./path/systemimage.tar.gz [customdir]] Install directory argument is optional. Network install can be substituted by copying systemimage.tar.gz and systemimage.tar.gz.md5 files with 'setupTermuxArch ./[path/]systemimage.tar.gz' and 'setupTermuxArch /absolutepath/systemimage.tar.gz'.> [systemimage.tar.gz [customdir]] Install directory argument is optional. Network install can be substituted by copying systemimage.tar.gz and systemimage.tar.gz.md5 files with 'setupTermuxArch systemimage.tar.gz'.`The next steps should be obvious:1) find system image of desired architecture,2) download image,3) use one of the copy image commands.These next steps might not be so obvious to all.what is QEMU?Especially the newcomer,
What does that mean might be a question? Don't worry read on. The answer is obvious. Install QEMU in Termux to activate this feature:
You can also attempt to build these
qemu
packages with theyay
command. The last step might seem confusing. I think it is because the step is overly simple.So I will not waste space here other than to say that using commandopen up any architecture you choose to install in your smartphone, smatTV, tablet and wearable. Once this issue is resolved the TermuxArch end user will not even know about this step, unless they chose to explore the TermuxArch code.setupTermuxArch re
after reading file (wc -w 128)fbindexample.prs
shouldI would also like to add that command
setupTermuxArch b
can help with more than just with this issue here:This is the entire data set presented for your review. One tap QEMU is still a couple of steps away as of today. Comments regarding the data set are welcome here, especially how to implement one tap option QEMU easily. The goal of the data set is more robustness with fewer lines if possible. Human legibility of the code is paramount, along with execution speed and the end user experience.
The text was updated successfully, but these errors were encountered: