nix-community / nix-on-droid

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

termux-open / termux-toast #84

Closed lypanov closed 3 years ago

lypanov commented 3 years ago

I'm looking to switch to nix-on-droid given how quick you were to fix the spacemacs bug mentioned in another issue here.

Unfortunately a core part of my work flow involves the use of termux-open and termux-toast. Do you have any plans to work on improving this area? I'd love to help in any way possible (mostly on device, but I imagine that will provide too many constraints for these features).

Do you have any ideas how this could be implemented? Specifically - I assume some communication channel between a program in the running nix distro and the outer Android termux-terminal fork would be needed right?

t184256 commented 3 years ago

For this one I have a simple and uninspiring answer: I have no idea how this Android-bordering magic works in Termux, and I have no plans for exploring this Android-boundary, mostly because I have pretty much zero Android programming experience. I'll be glad to test and accept relevant pull requests into nix-on-droid and nix-on-droid-app, maybe help on the nix-on-droid side, esp. differences with Termux. But I definitely don't have implementing/porting the Android part in my plans.

lypanov commented 3 years ago

Dug into the way termux-api works and found this: https://github.com/termux/termux-api#how-api-calls-are-made-through-the-termux-api-helper-binary

t184256 commented 3 years ago

Sounds like the bulk of the job would be baking the termux-api Java stuff (that Termux folks ship separately) into nix-on-droid-app. =/

lypanov commented 3 years ago

Note: I'm still on TermuxArch not yet migrated to nix-on-droid.

I've worked around my need for a termux-toast equivalent by getting xfce4-notifyd working.

I've also found a temporary work around for the termux-open need by sshing open requests via a running Termux instance. If the day comes that these workarounds don't suffice. I'll reopen this ticket and start work on it.