π¬π§ English Β· πΈπ¦ Ψ§ΩΨΉΨ±Ψ¨ΩΨ©
- What is UMO?
- Screenshots
- Desktop Environments
- Quick Start
- Commands
- CLI Options
- Requirements
- Project Structure
- Documentation
- Contributing
- License
UMO (Ubuntu Modded Optimized) is a free, open-source Ubuntu installer for Termux - rewritten from scratch to fix the root problems found in every similar project. No external UI dependencies, no manual configuration, no surprises.
| Problem | Other Projects | UMO |
|---|---|---|
dialog breaks the UI |
β Still using it | β Pure POSIX TUI - no deps |
| VNC dies on screen lock | β No fix | β
termux-wake-lock built-in |
| No audio inside proot | β Manual workaround | β PulseAudio TCP bridge |
systemctl fails |
β Confusing errors | β Generic shell emulator (any service) |
| 20+ manual steps | β Too complex | β
One command: bash install.sh |
The guided installer - every step is a menu, numbered in the order you see it:
The result - the XFCE session you get out of the box:
![]() 7 Β· The desktop - UMO theme, wallpaper and Fastfetch, ready |
| Environment | Type | Best For | UMO Design |
|---|---|---|---|
| XFCE4 | Full DE | Daily use - balanced performance | Themed panel, xfwm4 windows, wallpaper, whiskermenu |
| LXDE | Lightweight DE | Low-end and older devices | Themed lxpanel, pcmanfm wallpaper |
| Openbox | Window Manager | Advanced users, minimal footprint | Clearlooks windows, tint2 panel, root menu |
| Minimal | CLI only | Servers and headless usage | Terminal only - no theme applied |
All graphical desktops get the full design system: Orchis GTK theme (compact), Tela icons, DMZ cursors, Ubuntu SemiBold + FiraCode Nerd Mono fonts, a matching Fastfetch config, and the UMO wallpaper - applied to both root and the umo user. Pick Night Mode (Orchis-Dark-Compact + Tela-black-dark) or Day Mode (Orchis-Light-Compact + Tela) in the installer, or with --theme=umo-dark|umo-light.
Includes: TigerVNC Β· PulseAudio Bridge Β· Termux:X11 Β· Generic systemctl emulator Β· Session Control
bash <(curl -fsSL https://raw.githubusercontent.com/shadow-x78/ubuntu-modded-optimized/main/umo.sh)Downloads the latest release from GitHub (SHA-256 verified) and launches the installer. For a non-interactive install:
curl -fsSL https://raw.githubusercontent.com/shadow-x78/ubuntu-modded-optimized/main/umo.sh -o umo.sh && bash umo.sh --no-gui --de=xfce4 --apps=fullgit clone https://github.com/shadow-x78/ubuntu-modded-optimized.git ~/UMO
cd ~/UMO
bash install.shAfter installation:
umo start
umo login| Command | Description |
|---|---|
umo start |
Start session with VNC & Audio |
umo stop |
Stop all services |
umo status |
Show running status of services |
umo login |
Root shell inside Ubuntu (interactive only - commands go through umo run) |
umo user |
Login as default user |
umo run "<cmd>" |
Run one command inside the container |
umo backup [dir] |
Archive the Ubuntu rootfs |
umo update |
Full update: pulls the latest UMO, re-applies your saved settings (theme mode, app set, desktop), and upgrades every Ubuntu package. Use --scripts-only for a fast scripts-only refresh or --no-upgrade to skip the Ubuntu system upgrade |
umo refresh |
Re-render the umo CLI, host scripts and container scripts from the local tool copy (no git pull) |
umo uninstall |
Remove UMO completely (rootfs, host scripts, umo command, aliases) |
umo credit |
About UMO and the developer |
umo version |
Display current UMO version |
Host-side scripts (
umo-login.sh,umo-start.sh,umo-stop.sh,umo-vnc-*.sh,aliases.sh) live in~/.umo/- the Termux home stays clean. The installer sources~/.umo/aliases.shfrom your shell rc, soumo-start,umo-stop,umo-startvnc,umo-stopvnc,umo-loginandumo-userare usable as plain commands.
| Command | Description |
|---|---|
umo-startvnc |
Start VNC server |
umo-stopvnc |
Stop VNC server |
systemctl start <service> |
Start a service (emulated) |
systemctl status <service> |
Check service status |
systemctl restart <service> |
Restart a service |
bash install.sh [OPTIONS]
--no-gui, --non-interactive Skip menus, use defaults/env vars
--de=xfce4|lxde|openbox Choose desktop environment
--apps=basic|dev|media|office|browser|full Application group to install
--dir=PATH Custom installation directory
--ubuntu=22.04|24.04 Ubuntu version to install
--perf=balanced|aggressive|off Choose performance tuning level
--theme=umo-dark|umo-light|none
Choose desktop theme (default: umo-dark)
--mode=dark|light Theme mode alias for --theme
--lean Remove docs/man/locales to save space- Android 8.0+ - ARM64 processor (aarch64)
- Termux from F-Droid or GitHub - not from Play Store
- 2 GB+ free storage
- Internet connection
UMO/
βββ bin/
β βββ umo-install # Main installer logic
β βββ umo-start # Session starter (Termux-side)
β βββ umo-stop # Session stopper (Termux-side)
βββ lib/
β βββ core-ansi.sh # ANSI colors, logging, banners
β βββ core-ui.sh # TUI: menus, prompts, confirms
β βββ core-system.sh # Platform detection, storage, internet
β βββ core-net.sh # Downloads, mirrors, extraction
β βββ core-fs.sh # Safe file ops, backups, templates
βββ modules/
β βββ umo-proot.sh # Proot container setup
β βββ umo-vnc.sh # TigerVNC installation & session scripts
β βββ umo-audio.sh # PulseAudio TCP bridge
β βββ umo-systemctl.sh # Generic systemctl emulator
β βββ umo-desktop.sh # DE installer (XFCE4 / LXDE / Openbox)
β βββ umo-theme.sh # Desktop design engine (all DEs)
β βββ umo-apps.sh # App group installer
βββ assets/
β βββ logo/ # The UMO mark (SVG + PNG set)
β βββ screenshots/ # Installer screenshots
βββ config/
β βββ xstartup # VNC session template
β βββ theme/ # Design templates: GTK, XFCE4, LXDE, Openbox, fonts, wallpaper
β βββ icons/ # UMO brand icon set (hicolor + menu button)
βββ docs/
β βββ INSTALL.md # Detailed installation guide
β βββ TROUBLESHOOTING.md # Common issues and fixes
βββ install.sh # Quick-start entry point
βββ umo.sh # One-liner release installer (curl | bash)
βββ CHANGELOG.md # Release history
βββ LICENSE # GPL-3.0-or-later
βββ README.md # This file
| Document | Description |
|---|---|
| INSTALL.md | Detailed installation guide |
| TROUBLESHOOTING.md | Common issues and fixes |
- Fork the repository
- Create a feature branch:
git checkout -b feature/my-feature - Commit your changes
- Push to the branch
- Open a Pull Request
Distributed under the GPL-3.0 License.
Built by shadow-x78 Β· Changelog
Β© 2026 Ubuntu Modded Optimized (UMO)






