Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compatibility for on different Android versions? #10512

Closed
eugene-yh opened this issue Nov 3, 2023 · 6 comments
Closed

Compatibility for on different Android versions? #10512

eugene-yh opened this issue Nov 3, 2023 · 6 comments
Labels
bug Used to filter all bug issues cli Area: CLI s3 Bugs that confuse, annoy, or are purely cosmetic s4 Internal bugs (e.g. test flakes), extreme edge cases, and bug risks

Comments

@eugene-yh
Copy link

There seems to be no official releases of coder for Termux on Android devices. However, coder ssh seems working fine on my Android 12 device (though with a warning, see the first screenshot), so it is kind of okay. But, my new phone is Android 13, and coder ssh throws an exception about network permission (see the second screenshot) and fails to connect to my workspace.
Screenshot_20231103-222950_Termux
Screenshot_2023-11-03-22-40-23-30_84d3000e3f4017145260f7618db1d683

I did some research and the network permission issue (caused by more strict security policy of newer Android versions) seems resolvable by making some modifications the network interface in Go. See this as a reference.

I wonder if you guys can at least make coder sshusable for termux on latest Android devices. It would be even better if all utilities are compatible.

@cdr-bot cdr-bot bot added the bug Used to filter all bug issues label Nov 3, 2023
@kylecarbs
Copy link
Member

Are you building the Go binary for Android?

@kylecarbs
Copy link
Member

If so, then I can really easily enable a workflow for this.

@kylecarbs
Copy link
Member

I've gone ahead and created a PR that fixes this: #10515

Depending on how you're running this Coder binary I might have to change how it works.

@matifali matifali added the s4 Internal bugs (e.g. test flakes), extreme edge cases, and bug risks label Nov 3, 2023
@eugene-yh
Copy link
Author

I've gone ahead and created a PR that fixes this: #10515

Depending on how you're running this Coder binary I might have to change how it works.

Thanks in advance! I really appreciate it.

My minimal requirement is that I can run coder ssh to connect to my workspaces on latest Android devices. As for the coder binary itself, both building it myself from source or using a prebuilt release are okay to me.

@github-actions github-actions bot added the stale This issue is like stale bread. label May 3, 2024
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale May 10, 2024
@kylecarbs kylecarbs reopened this May 13, 2024
@coder-labeler coder-labeler bot added cli Area: CLI s3 Bugs that confuse, annoy, or are purely cosmetic labels May 13, 2024
@matifali matifali removed the stale This issue is like stale bread. label May 13, 2024
@spikecurtis
Copy link
Contributor

Hi @eugene-yh

Unfortunately, we've decided not to merge #10515 as it complicates our integration with tailscale. That's just not a cost we're willing to bear for Android, since we don't have any plans to officially support it and don't have testing for it.

I expect that if you grab the branch from that PR and fork it to your own repo, you will be able to build a coder binary that works with Termux.

@spikecurtis spikecurtis closed this as not planned Won't fix, can't repro, duplicate, stale May 14, 2024
@TECHNOFAB11
Copy link
Contributor

Just a quick note, I tried to get it working with NixOnDroid which is based on Termux. Even with a lot of modifications and with the anet package it's not possible to get it working. Netlinkrb is completely off limits on new android versions and always causes a permission denied.
Tailscale's Android app just works because they call Kotlin code which in turn calls Android apis to get the network interfaces.

So for now the only way is to use the Web terminal. Theoretically it should be possible to build an Android app which uses the websocket connection of the Web terminal or add some functionality to the coder cli to ssh via the coordinator and not use tailscale. But that's probably OOS cuz Android is not supported.
A way to ssh with the coder username and some personal access token would be cool though (also proxying through the coordinator)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Used to filter all bug issues cli Area: CLI s3 Bugs that confuse, annoy, or are purely cosmetic s4 Internal bugs (e.g. test flakes), extreme edge cases, and bug risks
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants