Local Desktop là một dự án mã nguồn mở giúp bạn chạy Linux desktop trên Android một cách thực tế, không cần root và không mô phỏng khó chịu. Dành cho người dùng đã có thiết bị màn hình lớn (tablet, DEX), bàn phím vật lý và chuột, công cụ này tạo cầu nối giữa hai nền tảng thay vì cố gắng mô phỏng trải nghiệm desktop bằng các thao tác bất tiện. Bạn muốn biến chiếc máy tính bảng thành một máy tính Linux chạy Xfce? Đây là giải pháp.
Thank you for reading this post, don't forget to subscribe!Những điểm chính
- Local Desktop thiết lập filesystem Arch Linux ARM64 trong bộ nhớ ứng dụng, dùng Proot để tạo môi trường giống chroot mà không cần quyền root.
- Một Wayland compositor nhúng chạy trong NDK Android, kết hợp với Xfce Wayland session bên trong chroot, hiển thị trực tiếp lên activity native của Android.
- Dự án hoạt động như Proof of Concept trên Pixel Tablet, không yêu cầu cấu hình – cài xong dùng liền.
- Hỗ trợ build APK trực tiếp trên thiết bị Termux hoặc cross-build từ PC/Linux/Mac/Docker, phù hợp cho cả phát triển và phân phối.
- Có thể tạo tài liệu hướng dẫn PDF offline (Developer Manual & User Manual) bằng công cụ Rust tích hợp sẵn trong repo.
Local Desktop là gì và giải quyết vấn đề gì?

Local Desktop là một ứng dụng Android mã nguồn mở cho phép chạy môi trường Linux desktop thực sự (Xfce trên Wayland) bên trong thiết bị Android thông qua cơ chế Proot. Vấn đề mà nó giải quyết là sự thiếu hụt một trải nghiệm desktop Linux gốc trên các máy tính bảng và thiết bị Samsung DeX. Các giải pháp hiện tại như VNC hay termux-chroot thường rời rạc, chậm hoặc yêu cầu root. Local Desktop tập trung vào đối tượng người dùng đã có màn hình lớn, bàn phím và chuột – những người muốn một môi trường Linux làm việc thực thụ thay vì mô phỏng bằng cảm ứng. Dự án hiện ở giai đoạn Proof of Concept, minh họa rõ ràng trên Pixel Tablet, và bạn có thể xem mã nguồn đầy đủ tại repository gốc trên GitHub.
Không giống các terminal emulator đơn thuần, Local Desktop khởi chạy một desktop đầy đủ với trình quản lý cửa sổ, panel và ứng dụng đồ họa. Tuy nhiên, hãy lưu ý rằng nó vẫn đang trong giai đoạn phát triển sớm – chưa phải sản phẩm hoàn chỉnh cho đại chúng.
Những tính năng nổi bật của Local Desktop là gì?

Local Desktop không chỉ đơn giản là chạy Linux trong Android, mà được thiết kế tinh tế để mang lại trải nghiệm desktop thực sự với vài đặc điểm nổi bật sau.
Không cần root – Proot là chìa khóa
Thay vì yêu cầu quyền root nguy hiểm, Local Desktop dùng Proot để mô phỏng chroot, cô lập filesystem Arch Linux ARM64 an toàn trong bộ nhớ ứng dụng. Điều này giúp bất kỳ thiết bị Android nào cũng có thể chạy mà không lo ảnh hưởng đến bảo mật.
Wayland compositor tích hợp sẵn trong NDK
Một compositor Wayland nhẹ chạy native trong Android NDK, nhận tín hiệu từ Xfce session bên trong chroot và render trực tiếp lên activity Android. Kết quả là độ trễ thấp và hiệu năng cao so với các giải pháp VNC hay X11 forwarding.
Hỗ trợ build đa nền tảng
Bạn có thể build APK ngay trên thiết bị Android qua Termux (đơn giản chỉ cần Rust) hoặc cross-build từ PC Linux/Mac/Windows để tạo AAB cho Google Play. Docker cũng được hỗ trợ nếu môi trường local gặp vấn đề. Điều này rất hữu ích cho nhà phát triển muốn đóng góp hoặc tùy chỉnh.
Tài liệu offline thông minh
Dự án đi kèm công cụ Rust để sinh PDF hướng dẫn dành cho nhà phát triển (Developer Manual) và người dùng (User Manual). Các phiên bản khác nhau (khổ giấy A4, fold, phone; chủ đề sáng/tối) có thể được tạo chỉ với một lệnh cargo run. Đặc biệt, Developer Manual có chế độ callgraph tự động dò mã nguồn.
Hướng dẫn cài đặt và sử dụng Local Desktop

Việc cài đặt Local Desktop có nhiều cách tùy thuộc vào thiết bị bạn muốn build và chạy. Dưới đây là hai phương pháp phổ biến nhất.
Build APK trực tiếp trên Android (Termux)
Phương pháp đơn giản nhất cho người dùng ARM64. Lưu ý: bạn cần một thiết bị Android mạnh, có màn hình lớn hoặc DeX, kèm bàn phím vật lý.
- Cài đặt Termux từ F-Droid hoặc GitHub.
- Cài đặt Rust trong Termux:
pkg install rust - Clone repository:
git clone https://github.com/localdesktop/localdesktoprồi cd vào thư mục. - Chạy
cargo run(simple build) hoặc dùng scriptbash scripts/build-termux.shđể xây dựng APK chính quy hơn. - APK sẽ được tạo tại
localdesktop.apkhoặctarget/x/release/android/localdesktop.apk. Cài đặt bằngtermux-open localdesktop.apkhoặc di chuyển vào thư mục Downloads và cài thủ công.
Cross-build từ PC Linux/Mac/Windows
Phù hợp nếu bạn muốn build AAB (cho Google Play) hoặc debug với Visual Studio Code.
- Cài Rust, llvm, lld, gradle@8 (trên macOS dùng brew).
- Cài xbuild phiên bản local:
cargo install --path patches/xbuild/xbuild --force - Chạy lệnh:
x build --release --platform android --arch arm64 --format apk - APK đầu ra nằm ở
target/x/release/android/gradle/app/build/outputs/apk/debug/app-debug.apk. - Cũng có thể dùng Docker nếu môi trường phức tạp, nhưng sẽ mất thời gian xây dựng lâu.
Sau khi cài đặt, bạn chỉ cần mở ứng dụng Local Desktop. Nó sẽ tự động thiết lập filesystem Arch Linux và khởi chạy Xfce desktop. Không cần cấu hình thêm, chỉ việc gắn bàn phím và chuột để bắt đầu làm việc.
Ai nên dùng Local Desktop và ai nên tránh?

Local Desktop phù hợp nhất với những người đã có trải nghiệm desktop – cụ thể là sở hữu tablet màn hình lớn (như Pixel Tablet, Samsung Tab series), có thể kết nối với bàn phím vật lý và chuột/trackpad. Nếu bạn là nhà phát triển muốn một môi trường Linux thực thụ trên thiết bị di động mà không cần mang laptop, đây là công cụ đáng thử. Ngoài ra, dự án cũng hấp dẫn những ai yêu thích mã nguồn mở và muốn đóng góp vào một PoC thú vị.
Ngược lại, bạn không nên dùng nếu chỉ có điện thoại thông thường (màn hình nhỏ, thao tác cảm ứng là chính) – vì Local Desktop không cố mô phỏng desktop bằng cách tương tác cảm ứng bất tiện. Nếu bạn cần một giải pháp Linux chạy nền mà không cần giao diện đồ họa, các terminal app như Termux sẽ đơn giản hơn. Và vì đây là phiên bản Proof of Concept, hiệu năng và độ ổn định chưa được tối ưu cho workload nặng – hãy quản lý kỳ vọng của bạn.
Câu hỏi thường gặp
Local Desktop có yêu cầu root không?
Không. Dự án sử dụng Proot để mô phỏng chroot mà không cần quyền root, đảm bảo an toàn và tương thích với mọi thiết bị Android không jailbreak.
Tôi có thể chạy ứng dụng đồ họa Linux như GIMP hay VS Code không?
Có thể, vì môi trường Xfce trên Wayland hỗ trợ các ứng dụng đồ họa. Tuy nhiên hiệu năng phụ thuộc vào phần cứng. Local Desktop đang ở giai đoạn PoC, chưa tối ưu cho ứng dụng nặng.
Tôi cần những phụ kiện gì để sử dụng?
Một màn hình lớn (tablet hoặc DEX), bàn phím vật lý, và tùy chọn chuột/trackpad. Dự án khuyến nghị đây là điều kiện tiên quyết để có trải nghiệm desktop thực sự.
Làm thế nào để cập nhật Local Desktop?
Bạn cần tự build APK mới từ source mỗi khi có commit mới. Chưa có cập nhật OTA. Theo dõi repository trên GitHub để biết các bản phát hành chính thức.
Tôi có thể đóng góp cho dự án như thế nào?
Bạn có thể fork repository, sửa lỗi hoặc thêm tính năng, sau đó tạo pull request. Đọc Developer Manual (build từ source bằng lệnh cargo run --bin build_docs) để hiểu kiến trúc. Mọi đóng góp đều được hoan nghênh.
Kết luận
Local Desktop là một dự án mã nguồn mở đầy tham vọng, mang lại trải nghiệm Linux desktop thực sự trên Android cho người dùng có màn hình lớn và bàn phím. Với kiến trúc Proot + Wayland + Xfce, nó giải quyết vấn đề thiếu một môi trường desktop mượt mà mà không cần root. Dù còn ở giai đoạn Proof of Concept, đây là công cụ tuyệt vời để thử nghiệm và đóng góp cho cộng đồng mã nguồn mở. Hãy truy cập repository Local Desktop, clone về và bắt đầu build ngay hôm nay – biến tablet của bạn thành một máy trạm Linux thực thụ!

