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

xpra shell #2750

Closed
totaam opened this issue May 3, 2020 · 3 comments
Closed

xpra shell #2750

totaam opened this issue May 3, 2020 · 3 comments
Labels

Comments

@totaam
Copy link
Collaborator

totaam commented May 3, 2020

Using exec to make it easier to debug a client or server in real-time.
Not everything is available via xpra info or debug logging. (see also #2749)
This will allow runtime inspection and modification of the code.

@totaam
Copy link
Collaborator Author

totaam commented May 9, 2020

Very useful, in particular for things like #2756.

@totaam
Copy link
Collaborator Author

totaam commented May 13, 2020

xpra shell subcommand added in r26340, with server support only.

ie:

XPRA_SHELL=1 python3 /usr/bin/xpra start --start=xterm  --bind-tcp=0.0.0.0:10000 -d exec
xpra shell tcp://127.0.0.1:10000
> print(server.get_root_window_size())
(8192, 4096)
> exit

TODO:

  • better output capture needed? only capture output coming from our exec thread (server could have debug enabled and printing lots of other unrelated stuff)
  • support for client sockets
  • replace environment variable with command line option, or socket option (or both)
  • handle stdout / stderr write errors:
BlockingIOError: [Errno 11] write could not complete without blocking
  • prompt is messy and asynchronous
  • O_NONBLOCK on win32?
  • compress shell-reply packet, use brotli?

@totaam
Copy link
Collaborator Author

totaam commented Sep 8, 2020

r27425 allows individual server sockets to have the shell option enabled, ie:

xpra start :20 --bind-tcp=0.0.0.0:10000,shell=true --no-daemon --start=xterm

This will do for now, will follow up in #2872

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant