nix-community / nix-on-droid

Nix-enabled environment for your Android device. [maintainers=@t184256,@Gerschtli]
https://nix-on-droid.unboiled.info
MIT License
1.15k stars 65 forks source link

Are there any plans to support something like termux-x11? #305

Open Dani3I opened 7 months ago

Dani3I commented 7 months ago

For termux there is project called termux-x11. It allows to show gui (for example xfce4) without using VNC etc. Project is available here: https://github.com/termux/termux-x11

Are there any plans to support something like this on nix-on-droid (or maybe it is already possible)?

t184256 commented 7 months ago

Pull requests are welcome; I, personally, don't plan to work on this anytime soon.

Resonious commented 6 months ago

It's actually possible to use termux-x11 out of the box if you add -listen tcp to your termux-x11 call. It's a bit absurd, but here's the step-by-step:

  1. In regular Termux, run termux-x11 :1 -listen tcp -xstartup "dbus-launch --exit-with-session i3" (replace i3 with whatever you want to use as desktop)
  2. Open nix-on-droid and run a gui app with DISPLAY=127.0.0.1:1. Example: nix-shell -p gedit, DISPLAY=127.0.0.1:1 gedit
  3. Open the termux-x11 Android app and you should see your GUI from nix.

You can automate this a little by writing the termux-x11 invocation to a script, and adding export DISPLAY=127.0.0.1:1 to your .bash_profile in nix-on-droid.

Still, it'd be cool if we could do termux-x11 without needing vanilla Termux installed at all. The termux-x11 tool appears to be very simple https://github.com/termux/termux-x11/blob/master/termux-x11 - if we can somehow expose /system/bin/app_process in nix-on-droid then it might "just work" :thinking: