Skip to content

Dependencies

mviereck edited this page May 19, 2019 · 35 revisions

Dependencies

x11docker can run with a few common linux tools and docker. See core dependencies.

  • For advanced usage of x11docker please install the recommended base.
  • No obliging dependencies in images except for some feature options.
  • x11docker will show terminal messages if dependencies for chosen options are missing.

Core dependencies

bash, docker and Xorg (or Xwayland)

  • bash: Shell interpreter bash.
    • Already installed on most common linux distributions.
  • docker: Has to be installed.
    • Look at your distributions package management or at Docker website.
    • Common package names are docker-ce, docker.io or just docker.
  • An X server.
    • Probably already installed.
    • As a rule of thumb: If you have a desktop and can move your mouse, you already have an X server. Also recent Wayland desktops regulary ship with X server Xwayland.

Recommended base

Installing this recommended base allows advanced usage of x11docker and an improved X security setup. Some of them are probably already installed on your system.

Desired commands: xpra Xephyr xinit xauth xclip xhost xrandr xdpyinfo

System Package names
Debian
Ubuntu
Mint
xpra xserver-xephyr xinit xauth xclip x11-xserver-utils xdpyinfo
Arch
Manjaro
xpra xorg-server-xephyr xorg-xinit xorg-xauth xclip xorg-xhost xorg-xrandr xorg-xdpyinfo
Fedora
CentOS
openSUSE
xpra xorg-x11-server-xephyr xorg-x11-xinit xorg-x11-xauth xclip xorg-x11-server-utils xorg-x11-utils
Alpine xpra xorg-server-xephyr xinit xauth xclip xhost xrandr xdpyinfo

Recommended additional base for --gpu

Desired commands: weston Xwayland xdotool

System Package names
Debian
Ubuntu
Mint
weston xwayland xdotool
Arch
Manjaro
weston xorg-server-xwayland xdotool
Fedora
CentOS
openSUSE
weston xorg-x11-server-xwayland xdotool
Alpine weston xorg-server-xwayland xdotool

Note: This additional base is not useful with proprietary NVIDIA driver on host.

Extended dependency description

Don't worry, you probably rarely need the following bunch of information.

Dependencies of X and Wayland options

For details see description of X server and Wayland options. You are already served well if you install the recommended base.

Dependencies of feature options

Some feature options have additional dependencies on host and/or in image.

Option Dependencies on host Dependencies in image
--clipboard xclip or xsel -
--dbus
--hostdbus
--dbus-system
- dbus
--gpu - MESA OpenGL drivers
--gpu with NVIDIA - look at wiki: NVIDIA driver
--init=INITSYSTEM - Chosen init system
--install xdg-utils -
--lang - locale sources
--launcher xdg-utils -
--printer cups CUPS client library.
--pulseaudio pulseaudio pulseaudio client library.
--update
--update-master
wget or curl
tar or unzip
xdg-utils
-
--xfishtank xfishtank -

Dependencies in image

Images don't have obliging dependencies except for some x11docker feature options.

Option Debian and
Ubuntu
images
Arch
images
Fedora
images
Alpine
images
--gpu * mesa-utils
mesa-utils-extra
mesa-demos glx-utils
mesa-dri-drivers
mesa-demos
mesa-dri-ati
mesa-dri-intel
mesa-dri-nouveau
mesa-dri-swrast
--gpu Video decoding support libxv1
va-driver-all
libxv
libva
libva-intel-driver
libva-vdpau-driver
libXv
libva
libva-intel-hybrid-driver
libva-vdpau-driver
libxv
libva
libva-glx
libva-intel-driver
libva-vdpau-driver
--lang locales glibc glibc-locale-source -
--printer libcups2 libcups cups-libs cups-libs
--pulseaudio libpulse0 libpulse pulseaudio-libs pulseaudio-libs
--dbus
--dbus-system
--hostdbus
dbus dbus dbus dbus
--init=systemd systemd-sysv systemd systemd -
--init=sysvinit sysvinit-core - - -
--init=openrc sysvinit-core openrc - - openrc
--init=runit runit-init or runit-sysv or sysvinit-core and runit - - runit
  • * Option --gpu: The dependency list covers open source MESA video drivers. Proprietary closed source NVIDIA drivers need some manual setup.
  • Missing entries - indicate that the distribution does not provide an appropriate package.

Table of all packages

Table of all possibly needed commands and their package names for all possible x11docker options. Note that you probably never need them all.

command (alphabetic order) apt
(.deb)
Debian
Ubuntu
Mint
pacman
(.pkg)
Arch
Manjaro
dnf/yum
(.rpm)
Fedora
CentOS
openSUSE
apk
(.apk)
Alpine
curl curl curl curl curl
dbus-launch dbus-x11 dbus dbus-x11 dbus-x11
docker docker.io or docker-ce docker docker docker
kwin_wayland kwin-wayland kwin kwin-wayland -
lpstat cups cups cups cups
nxagent nxagent nxagent nxagent -
pulseaudio pulseaudio pulseaudio pulseaudio pulseaudio
setxkbmap x11-xkb-utils xorg-setxkbmap xorg-x11-xkb-utils setxkbmap
tar tar tar tar tar
unzip unzip unzip unzip unzip
weston weston weston weston weston
wget wget wget wget wget
xauth xauth xorg-xauth xorg-x11-xauth xauth
xclip xclip xclip xclip xclip
xdg-desktop-icon
xdg-icon-resource
xdg-utils xdg-utils xdg-utils xdg-utils
xdotool xdotool xdotool xdotool xdotool
xdpyinfo xdpyinfo xorg-xdpyinfo xorg-x11-utils xdpyinfo
Xephyr xserver-xephyr xorg-server-xephyr xorg-x11-server-Xephyr xorg-server-xephyr
xfishtank xfishtank - - -
xhost x11-xserver-utils xorg-xhost xorg-x11-server-utils xhost
xkbcomp x11-xkb-utils xorg-xkbcomp xorg-x11-xkb-utils xkbcomp
xinit xinit xorg-xinit xorg-x11-xinit xinit
Xnest xnest xorg-server-xnest xorg-x11-server-Xnest xorg-server-xnest
Xorg xorg xorg-server xorg-x11-server xorg-server
xpra xpra xpra xpra xpra
xrandr x11-xserver-utils xorg-xrandr xorg-x11-server-utils xrandr
xsel xsel xsel xsel xsel
Xvfb xvfb xorg-server-xvfb xorg-x11-server-Xvfb xvfb
Xwayland xwayland xorg-server-xwayland xorg-x11-server-Xwayland xorg-server-xwayland
xwininfo x11-utils xorg-xwininfo xorg-x11-utils xwininfo
(Dummy video driver for --xpra and --xdummy) xserver-xorg-video-dummy xf86-video-dummy xorg-x11-drv-dummy xf86-video-dummy
(Debian X wrapper for --xorg) xserver-xorg-legacy - - -
  • Missing entries - indicate that the distribution does not provide an appropriate package.
You can’t perform that action at this time.