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

make xserver-xsdl work with isolated network namespace containers #177

Open
zanfix opened this issue Feb 3, 2024 · 0 comments
Open

make xserver-xsdl work with isolated network namespace containers #177

zanfix opened this issue Feb 3, 2024 · 0 comments

Comments

@zanfix
Copy link

zanfix commented Feb 3, 2024

Hi,

I noticed that xserver-xsdl sets the -nolisten unix X server option by default.
I suppose this is done because the X server (any X server) hardcodes the unix domain socket to /tmp/.X11-unix/X<n>, and by default on android /tmp is not available + / is mounted read-only + a non rooted device has no write permission outside it's app folder.
"local" connections are still available through the abstract domain socket @/tmp/.X11-unix/X<n> (that is the "-listen local" X server option which is on by default)

I have a rooted device so to workaround the issue I did the following:

  • added "-listen unix" from the app configuration
  • before starting xserver-xsdl from my scripts, i temporarily mount / as rw, symlink /data/data/x.org.server/files/tmp to /tmp
  • once xserver-xsdl is up i bind mount /data/data/x.org.server/files/tmp/.X11-unix to the container's /tmp

Wouldn't it be convenient to allow xserver-xsdl to create the unix domain socket in /data/data/x.org.server/files/tmp instead? A rooted device is still needed but at least it would not require somewhat dangerous tricks to make it work

Bye

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

No branches or pull requests

1 participant