-
Notifications
You must be signed in to change notification settings - Fork 379
X server and Wayland Options
mviereck edited this page Feb 17, 2022
·
42 revisions
If no X server option is specified, x11docker will automatically choose the best matching one depending on given or missing options --desktop
, --gpu
and --wayland
. As default it assumes you want to run a single seamless application. The automatically chosen option will be shown in terminal output.
For a base of recommended dependencies and their package names see Dependencies - Recommended base.
Instead of installing dependencies on host you can provide image x11docker/xserver
that contains all recommended packages except Xorg
.
- Please install recommended tools
xauth
xclip
xrandr
xdpyinfo
on host nonetheless. - Running from console is not possible using image
x11docker/xserver
but only nested in an already running X or Wayland session. To run directly from console you needXorg
orweston
+Xwayland
on host.
Dependencies on host | Available options | |
---|---|---|
Minimal base |
Xorg (probably already installed) |
--hostdisplay --xorg
|
Recommended base |
xpra Xephyr or nxagent
|
--xpra --xephyr --nxagent
|
Recommended base for --gpu (except for proprietary NVIDIA driver <470.x) |
xpra weston Xwayland xdotool
|
--xpra-xwayland --weston-xwayland --weston --xwayland --wayland
|
Recommended tools (used in background) |
xauth xclip xrandr xdpyinfo
|
|
Image providing most X servers | Image x11docker/xserver and an already running X server or Wayland compositor. (Optionally also xpra for --xpra2 and --xpra2-xwayland ). |
--xpra --xpra2 --xpra2-xwayland --nxagent --xephyr --weston-xwayland --weston --xwayland --xvfb
|
For package names in several distributions look at Dependencies - Table of all packages.
X server or Wayland option | Dependencies on host | Runs on X | Runs on Wayland | Runs on console |
---|---|---|---|---|
--xpra |
xpra |
√ | √ ( xpra >v3.0) |
- |
--xpra2 |
xpra |
√ | √ ( xpra >v3.0) |
- |
--xephyr |
Xephyr |
√ | - | - |
--nxagent |
nxagent |
√ | - | - |
--hostdisplay |
- | √ | - | - |
--xorg |
Xorg |
(√) | (√) | √ |
--xpra-xwayland |
xpra weston Xwayland xdotool
|
√ | √ ( xpra >v3.0) |
- |
--xpra2-xwayland |
xpra xdotool
|
√ | √ ( xpra >v3.0) |
- |
--weston-xwayland |
weston Xwayland
|
√ | √ | √ |
--kwin-xwayland |
kwin_wayland Xwayland
|
√ | √ | √ |
--xwayland |
Xwayland |
- | √ | - |
--xvfb |
Xvfb |
√ | √ | √ |
--weston |
weston |
√ | √ | √ |
--kwin |
kwin_wayland |
√ | √ | √ |
--hostwayland |
- | - | √ | - |
--runx |
runx (MS Windows only) |
- | - | - |
--xwin |
xinit and xauth in Cygwin (MS Windows only) |
- | - | - |
Option | Supports seamless mode | Supports --desktop mode |
Supports --gpu
|
Supported by proprietary NVIDIA driver |
---|---|---|---|---|
--xpra |
√ | √ | - | √ |
--xpra2 |
√ | √ | - | √ |
--xephyr |
- | √ | - | √ |
--nxagent |
√ | √ | - | √ |
--hostdisplay |
√ | - | √ | √ |
--xorg |
- | √ | √ | √ |
--xpra-xwayland |
√ | √ | √ | >=470.x |
--xpra2-xwayland |
√ | √ | √ | >=470.x |
--weston-xwayland |
- | √ | √ | >=470.x |
--kwin-xwayland |
- | √ | √ | >=470.x |
--xwayland |
- | √ | √ | >=470.x |
--xvfb |
- | √ | - | √ |
--weston |
- | √ | √ | >=470.x |
--kwin |
- | √ | √ | >=470.x |
--hostwayland |
√ | - | √ | >=470.x |
--runx |
√ | √ | √ | √ (with XWin) |
--xwin |
√ | √ | √ | √ |
X server options | Description |
---|---|
--auto (default) |
Automatically chooses an X server depending on installed dependencies and on given or missing options --desktop , --gpu and --wayland . |
--xpra |
Seamless integration of application windows on host display. Best --clipboard support, picture clips are possible. Seamless scaling (0,5x, 1.5x, 3x ...) with option --scale . (Supports option --desktop , too, but --xephyr is more performant in desktop mode.) With option --gpu x11docker will use --xpra-xwayland . |
--xpra2 |
Like --xpra , but provides a bit more performance combining image x11docker/xserver with xpra on host. |
--xephyr |
Nested X server for --desktop mode. Desktop appears in a window on host display. Quite fast and stable, but not resizeable. |
--nxagent |
Fast and resizeable alternative to --xpra and --xephyr , but some compositing applications may fail. |
--hostdisplay |
Shares host display :0 instead of running second X server. Attention: Low security, quite bad container isolation! Some x11docker security restrictions to avoid keylogging and remote host control may cause some applications to fail. Options --clipboard and --gpu remove these restrictions. If security is not a concern, get a quite fast setup with --hostdisplay --gpu . |
--xorg |
Core Xorg server. Switch between displays with keys [CTRL][ALT][F1]...[F12] . To run --xorg within X look at setup for option --xorg . |
--xpra-xwayland |
Like --xpra , additionally supporting option --gpu . Uses Weston and Xwayland in background. Supports option --desktop , too, but --weston-xwayland is more performant in desktop mode. |
--xpra2-xwayland |
Like --xpra-xwayland , but provides a bit more performance combining image x11docker/xserver with xpra on host. |
--weston-xwayland |
All-rounder: can run nested on X or Wayland in a window or on its own from console. Supports GPU acceleration, scaling (2x, 3x, 4x ...) and display rotation (0°, 90°, 180°, 270°, flipped, flipped-90°, ...). |
--kwin-xwayland |
Like --weston-xwayland , but uses KWin instead of Weston. Runs in X, in Wayland and from console. |
--xwayland |
Core Xwayland needs a Wayland environment to run in. Fullscreen display can be moved around with [META][LMB] . |
--xvfb |
Invisible X server for custom access e.g. with SSH or HTML5. Output of environment variables with --printenv . |
--runx |
Runs X server XWin or VcXsrv for MS Windows. |
--xwin |
X server XWin for MS Windows. Can be used in Cygwin/X. |
--tty |
Run without X or Wayland. |
Wayland options | Description |
---|---|
--wayland |
Automatically sets up a Wayland environment. Sets some Wayland environment variables. Regards option --desktop . |
--weston |
Weston without X to run pure Wayland applications. Scaling and rotation is possible. Runs in X, in Wayland and from console. |
--kwin |
kwin_wayland without X to run pure Wayland applications. Runs in X, in Wayland and from console. |
--hostwayland |
Shares host Wayland socket without X to run pure Wayland applications. Needs a running Wayland compositor. |