Troubleshooting Overview

When something goes wrong with ADL, the key to fixing it quickly is understanding where in the stack the problem originates. ADL is not a single piece of software --- it is a layered system where Android, Termux, proot, Ubuntu, and XFCE all interact. A failure at any layer can produce symptoms that appear at a different layer entirely.
This page explains how to approach diagnosing issues systematically. Start with the decision flow below to jump straight to the right page:
The ADL Stackโ
Every component in ADL sits on top of the one below it. Problems cascade upward --- a Termux issue will break everything above it, while an XFCE problem leaves the layers below untouched.
General Debugging Approachโ
Step 1: Identify the Layerโ
Before trying fixes, determine which layer is causing the problem. Work from the bottom up:
- Android --- Can you open Termux at all? Is Android killing background processes? Check battery optimization settings and Android-level permissions.
- Termux --- Does Termux start and accept commands? Can you run basic commands like
lsorecho? If Termux itself is broken, see the Termux troubleshooting guide or revisit the Termux installation steps. - proot --- Does the
proot-distro login ubuntucommand succeed? Errors at this stage often involve missing or corrupted filesystem mappings. - Ubuntu --- Do package operations (
apt update,apt install) work inside the proot environment? Missing dependencies or broken packages point to this layer. - XFCE / Display --- Does the desktop appear when you start the VNC server? Blank screens, resolution issues, and rendering problems live here. See the display troubleshooting guide.
- Applications --- If the desktop works but a specific application crashes or misbehaves, the problem is at the application layer.
Always start debugging at the lowest layer and work upward. Fixing a problem at a higher layer is pointless if a lower layer is broken --- the fix will not hold.
Step 2: Reproduce the Problemโ
Try to make the problem happen consistently. Note exactly what you did, what you expected, and what happened instead. If the problem is intermittent, pay attention to conditions --- does it happen only after a certain amount of time, only with certain apps, or only on certain Android versions?
Step 3: Collect Informationโ
Gather error messages and logs before attempting fixes. The specific commands depend on which layer you suspect.
Collecting Logs and Error Messagesโ
Termux Session Outputโ
The most immediate source of information is the terminal output itself. When something fails, scroll up in your Termux session to find error messages. Many problems print clear error text that points directly to the cause.
Long-press in Termux to access the "More" menu, then use "Select All" and "Copy" to capture the full terminal output for sharing in bug reports.
System Logs Inside prootโ
Once inside the Ubuntu environment, you can check several log sources:
cat /var/log/syslog 2>/dev/null || echo 'No syslog available'cat ~/.vnc/*.logdmesg 2>/dev/null || echo 'dmesg not available in proot'Not all log sources work inside proot. The dmesg command and some systemd journal features are unavailable because proot does not provide a real kernel interface. This is expected behavior, not an error.
Checking Process Statusโ
To see what is currently running inside your ADL session:
If expected processes are missing from this output, that tells you which component failed to start.
Checking Disk Spaceโ
A full filesystem is a common cause of mysterious failures:
df -h | head -5Termux and the proot filesystem share your Android device's storage. If your device is low on space, package installations, file operations, and even starting the desktop can fail.
Common Problem Categoriesโ
ADL issues generally fall into a few categories. Use this table to jump to the right troubleshooting guide:
| Symptom | Likely Layer | Guide |
|---|---|---|
| Termux closes or won't start | Android / Termux | Termux Issues |
| Black screen, no desktop appears | Display / VNC | Display Issues |
| No sound or distorted audio | PulseAudio | Audio Issues |
| Cannot access the internet, downloads fail | Network / DNS | Network Issues |
| Desktop is slow or apps lag | Performance | Performance Issues |
| Broken install, need to start over | Recovery | Recovery |
Quick Diagnostic Checksโ
Getting Helpโ
If you cannot resolve an issue using the troubleshooting guides, there are two places to seek help:
GitHub Issuesโ
For confirmed bugs --- things that used to work and stopped, or behavior that clearly contradicts the documentation --- open an issue on the ADL GitHub repository. Include:
- Your Android version and device model
- The exact error message or terminal output
- The steps you took before the problem occurred
- Whether the problem is reproducible
Do not open GitHub Issues for general usage questions. Use Discussions instead. Issues are for bug reports and feature requests.
GitHub Discussionsโ
For questions about how to do something, requests for advice, or problems where you are not sure if the behavior is a bug, use GitHub Discussions. The community and maintainers monitor Discussions and can often help quickly.
Next Stepsโ
If you have identified which layer your problem belongs to, continue to the specific troubleshooting guide:
- Termux Issues --- Termux won't start, packages fail to install, Termux crashes
- Display Issues --- black screen, wrong resolution, VNC connection problems
- Audio Issues --- no sound, crackling, PulseAudio failures
- Network Issues --- no internet, DNS failures, slow downloads
- Performance Issues --- slow desktop, high CPU usage, out of memory
- Recovery --- broken installs, data recovery, clean reinstallation