[Android Apps and Games] noha.ibraheem:
Hello everyone,

I wanted to share with you our new Android project, NOMone Desktop, which allows you to run Linux apps on Android devices!

View attachment 6043844

NOMone Desktop is an Android app that runs Linux environment powered only by your device. You won't need to connect to remote desktops or servers. You can install Linux apps inside NOMone desktop as long as these apps have a version built for aarch64.

View attachment 6044269

We have been working on this project for a long time trying to improve the performance so that more and more devices could benefit from it. This is still under-heavy-development and we have a lot to add. However, I'm very excited to share with you what we've accomplished, what we're planning and what we wish to achieve :)

So, let me sum up the main current features:

====================================

It is built from scratch with productivity and performance in mind. While current solutions depend on VNC to display the Linux interface, we got rid of VNC altogether along with the problems it causes. All the modules needed to run this Linux environment are integrated in one project, NOMone Desktop. You won't have multiple apps running, some of which are in the background and as such subject to performance downgrades or being automatically closed.

Intuitive desktop interface. With multi-window system built from scratch to enable future app integration. For now, NOMone Desktop launcher can launch a file manager, a browser, one sample game, the settings app and of course the Linux OS. All in the multi-window mode.

View attachment 6043944

Many options to tweak the performance and overall experience. Android devices vary extremely from each other. We wanted to make NOMone desktop run smoothly on as many devices as possible. Every time a user faces performance issues, this encourages us to dive deeply trying to find a optimal solution. Each and every option in the Settings app is the result of hard work/long research to achieve optimum performance on your device, customized to best fit your device specs. For example:

Change "Scale" to increase/decrease the resolution of the interface. if every thing is too small or too big, find the best scale that fits well with your device

Enable "Looking around" to pan around the screen as the cursor moves, allowing you to open more windows.

Enable "Hardware acceleration" to boost the Linux app' performance. Although it is very promising, some Linux apps won't work if this option is enabled. We still have a long way to go to achieve compatibility with apps and devices.

"Limit Memory" is an attempt to cap the Linux memory usage to avoid being killed by Android's OOM killer.

Enable "16-bit color" to reduce memory copying operations by half, which boosts performance greatly on slow devices.

This video compares the performance of some of these options: [Linux on Android] Comparing performance - w/ and w/o hardware acceleration using NOMone Desktop

View attachment 6043957

Touch Mode vs. Mouse Mode. We understand that touch mode is best for small screen and large UI. But what about a complete Linux interface on this small screen? Now you have the choice to toggle between two modes (touch mode and mouse mode) by long press on the top-left corner for 3 seconds.

Touch mode is easier for typing on the on-screen keyboard.

Mouse mode allows you use the screen as a touch pad. It is easier for fine control over the small buttons and windows.

View attachment 6044268

VR Mode. Run NOMone Desktop apps -including Linux environment- in VR. Enjoy your big screen! However, we are seriously considering removing this feature. We've only seen people use it to .. nevermind!

Support! Finding your way in Linux for the first time can be challenging. And doing this on a phone can be frustrating. We did our best to blur the barrier between phones and PCs, but without proper hardware and peripherals, there's only so much we can offer. We ask you to be patient, and to reach out for support whenever a basic search is not sufficient. Email us or join our forums and for news, offers and tutorials, follow us on facebook :)

Known Issues:

============

Android 12 and above experience abrupt crashes without a good reason. It's called phantom process killing. Fortunately, there is a solution.

If you have an established ADB connection already or you know how to establish one, then all you have to do is to run this command:

adb shell "/system/bin/device_config set_sync_disabled_for_tests persistent; /system/bin/device_config put activity_manager max_phantom_processes 2147483647; settings put global settings_enable_monitor_phantom_procs false"

If this is your first time establishing ADB connection, kindly follow this video tutorial to overcome this issue: [Linux on Android] Fixing Android 12 Phantom process killing using NOMone Desktop

We appreciate your feedback and we are eager to hear your experience. If you face any issue, lets fix it for everyone :)

Coming up next:

=============

This is our initial release! We have tons of features, apps and tweaks lined up for the following releases. Like:

Adding options to backup/restore Linux images.

Having multiple Linux images on your device at the same time.

More boosting to the performance!

Support chroot out-of-the-box. Although it can be done right now if you know your way around ;)

Re-building NOMone Desktop window system, allowing Linux apps to be spawned individually in seperate NOMone Desktop window.

You tell us! We'd love to hear your suggestions and see NOMone Desktop working to its real fullest capabilities.

Kindly try the application and tell me what you think :)

Contributors

noha.ibraheem, raslanove

Source Code: https://play.google.com/store/apps/details?id=nom.vrd

Version Information

Status: Released

Created Jun 20, 2023

Last Updated Oct 19, 2023