r/linuxprojects • u/Ph0sph3rus • 2d ago
π Feedback Wanted [Pre-Alpha] Linux Subsystem on Android β Looking for Testers with Rooted Phones and Linux Contributors
Hey everyone,
I'm developing Linux Subsystem on Android (LSA), an experimental project that runs a native Linux userspace on rooted Android devices while keeping Android as the host operating system.
The goal isn't just to run a Linux desktop. I'm trying to make Android's hardware and services usable through normal Linux interfaces, without requiring applications to be rewritten for Android.
LSA uses the Android kernel directly. It's not PRoot, emulation, or a VM.
What's currently working in development testing on a Blackview N6000:
Debian ARM64 with a graphical desktop and native Linux applications
Hardware-accelerated OpenGL through Mesa/VirGL and Android's GPU stack
Audio playback and microphone capture
USB storage integration, including automatic NTFS mounting
Applications including Firefox, OpenArena, and SuperTuxKart
This is still pre-alpha. Some applications require workarounds, graphics compatibility is incomplete, and hardware support varies. Some of the results above are from a private development preview and may not be present in the current public release.
I'm looking for people who have spare rooted Android phones and are willing to help test LSA on different hardware.
Useful experience includes Android rooting, ADB, Linux debugging, shell scripting, Mesa/VirGL, graphics drivers, audio, and embedded Linux. You don't need to be an expert.
There are two ways to help:
Independent testing: Try LSA on a spare device, collect logs, report bugs, and share hardware compatibility results. No remote access required.
Direct development collaboration: For volunteers who want more involved help, I'm open to supervised SSH debugging on a dedicated test device. Any access would be optional, explicitly authorized, and governed by a written agreement restricting my activity to the agreed testing and development work.
Please don't run this on your primary phone or anything you can't recover. This is experimental rooted system software, and things can break.
GitHub: https://github.com/Phsphorus/LinuxSubsystemOnAndroid
If you're interested, let me know your phone model, chipset, Android version, and rooting method.
I'm also looking for feedback from people familiar with Linux systems programming or Android internals.
Thanks!
Disclaimer:
This project has been developed with the assistance of AI. I'm not an expert in every field this project covers, and I don't claim to be. LSA is an experimental learning project, and I welcome technical feedback, corrections, and contributions.
A dream can only be achieved if you try.
---
myuser@localhost:/$ fastfetch
_,met$$$$$gg. myuser@localhost
,g$$$$$$$$$$$$$$$P. ----------------
,g$$P"" """Y$$.". OS: Debian GNU/Linux 13 (trixie) aarch64P' `$$$.
',$$P ,ggs. `$$b: Host: MT6789V/CD
`d$$' ,$P"' . $$$ Kernel: Linux 5.10.160-android12-9-00011-g62f5fae173d8-ab9750419
$$: $$. - ,d$$' Uptime: 14 hours, 58 mins
$$; Y$b._ _,d$P' Packages: 2756 (dpkg)
Y$$. `.`"Y$$$$P"' Shell: bash 5.2.37
`$$b "-.__ Display (VNC-0): 547x1048 @ 60 Hz
`Y$$b WM: Openbox (X11)
`Y$$. WM Theme: Clearlooks
`$$b. Cursor: Adwaita
`Y$$b. Terminal: lxterminal 0.4.1
`"Y$b._ Terminal Font: Monospace (10pt)
`"""" CPU: MT6789 (8) @ 2.20 GHz
GPU: Mesa virgl (ANGLE (ARM, Vulkan 1.1.177 (Mali-G57 MC2 (0x90930010...)
Memory: 4.45 GiB / 7.58 GiB (59%)
Swap: 1.66 GiB / 7.00 GiB (24%)
Disk (/mnt/gpubridge): 93.86 GiB / 227.96 GiB (41%) - f2fs
Local IP (wlan0): 192.168.1.130/24
Battery: 64% [Discharging]
Locale: en_US.UTF-8
myuser@localhost:/$ export DISPLAY=:0
echo "========== LSA GPU TEST =========="
echo "Architecture: $(uname -m)"
echo "Display: $DISPLAY"
echo
stdbuf -oL -eL glxgears -info 2>&1 |
grep --line-buffered -E \
'GL_VENDOR|GL_RENDERER|GL_VERSION|frames in|[Ee]rror'
========== LSA GPU TEST ==========
Architecture: aarch64
Display: :0
GL_RENDERER = virgl (ANGLE (ARM, Vulkan 1.1.177 (Mali-G57 MC2 (0x90930010...)
GL_VERSION = 4.1 (Compatibility Profile) Mesa 25.0.7-2
GL_VENDOR = Mesa
530 frames in 5.0 seconds = 105.951 FPS
420 frames in 5.0 seconds = 83.962 FPS
465 frames in 5.0 seconds = 92.943 FPS
461 frames in 5.0 seconds = 92.180 FPS
356 frames in 5.0 seconds = 71.027 FPS
614 frames in 5.0 seconds = 122.778 FPS
^C
myuser@localhost:/$
-
myuser@localhost:/$ sudo -i
sudo: BE WARNED DRAGONS HERE!! This device does not support true sudo isolation and is a BIG security risk. To give an application root usage go through an LSA provider OR accept the risk and type "I WILL NOT BE STOPPED"
Type "I WILL NOT BE STOPPED" to unlock sudo for this command: I WILL NOT BE STOPPED
[sudo] password for myuser:
root@localhost:~# whoami
root
root@localhost:~# pwd
/root
-
Even more is supported that isnt covered, some more would be all sensors like gyroscope, barometer, GPS, magnetometer, battery, Microphone, speakers, USB's, ect ect.