Xfce Wiki

Sub domains

Xfce-Test Docker Container Quick Start Guide

If you want to test the current state of Xfce 4.16, you can look at xfce-test, a Docker image by Florian Schueller, which allows you to test git master and to run automated Behave (behaviour-driven development) test scripts.

Xfce Test is a Docker/Xephyr environment for testing the latest builds of Xfce.

Note: The installation, management, and troubleshooting of Docker or Xephyr(the X11 display server) is beyond the scope of this guide.

For a tutorial on using Docker, see Getting Started and Docker Post-installation steps for Linux

Back to Top


  • Clone the xfce-test repository: git clone https://github.com/schuellerf/xfce-test
  • Change to the repository directory and install the necessary components ( ./xfce-test install )
    • On Xubuntu 20.04, this will install the following packages and their dependencies, if they aren’t already present - xserver-xephyr, docker.io, xvfb, jq, and curl - which will download ~71Mb and require 351Mb of space
  • Download the docker container ( ./xfce-test pull ):
    • If you are having permissions issues, take a look at the Post-installation steps for Linux and the instructions for running Docker as a non-root user.
    • This will download the Docker container part of schuellerf/xfce-test which is ~1.6Gb and require ~4.4Gb of space (as of May 2020).
  • Download a different docker container branch:
    • List the available branches: sudo ./xfce-test list ( the list also available on dockerhub )
    • Download the branch by its tag name: sudo TAG=[tag-name] ./xfce-test pull

Running xfce-test

If xfce-test is run without any options, the xfce-test script will present output that consists of two parts. First, the various option flags that can be used to modify the starting of the script. And, secondly, a numbered menu that appears, as follows:

1) install 7) list_local 13) tag
2) call 8) screenshots 14) XFSM_VERBOSE
3) pull 9) behave 15) LANG
4) start 10) behavevideo 16) LOG
5) no-session 11) fulltestvideo 17) PARALLEL_BUILDS
6) list 12) build 18) KEEP

At this point the user will be prompted for an option to select. It is beyond the scope of this document enumerate the function of all of these options. It is recommended to look at the xfce-test README as well as the scripts provided in the repository.

To simply run the container from the command line, use the command: ./xfce-test start

Below is an abbreviated example of the expected output:

You are working with the container: latest

Starting container: 737d49226369f23e1b25824131124eae9b34e728d1639a1f07e645da74c3b0d8
This container includes:
# The OK marks if building this component in the current container was successful
    OK: xfce4-dev-tools: xfce-4.16pre1
    OK: libxfce4util: xfce-4.16pre1-1-gea46c1a
    OK: xfconf: xfce-4.16pre1
    OK: libxfce4ui: xfce-4.16pre1-62-g1a31ea7
    OK: garcon: xfce-4.16pre1
    OK: exo: xfce-4.16pre1
    OK: xfce4-panel: xfce-4.16pre1
    OK: thunar: xfce-4.16pre1
NOT OK: thunar-volman: xfce-4.16pre1
NOT OK: xfce4-power-manager: xfce-4.16pre1

If all goes well, a graphical Xephyr window will open and a new desktop environment will be displayed. Additionally, the command line from where the xfce-test script was started will be placed in a directory on the running Docker instance. From here, you may run provided test scripts.

Running a Branch

If you have downloaded a different docker container branch by its tag name, this is the command to run it: sudo TAG=[tag-name] ./xfce-test start. You can find out which branches you have installed with sudo ./xfce-test list_local.

Back to Top

Stopping xfce-test

docker stop <ContainerID> or <ContainerName>

The ID and name can be found by running the command docker ps outside the Docker container (i.e. on your local machine).

Uninstalling xfce-test

  • Remove the docker container
    • Find the schuellerf/xfce-test container’s image ID ( docker images -a )
    • Remove the container ( docker rmi [image’s ID] )
  • Remove the installed packages
    • Remove main packages ( sudo apt remove xserver-xephyr docker.io xvfb jq curl )
      • Note: you may not want to remove some of these packages if they weren't installed during the xfce-test installation
    • Remove dependencies ( sudo apt autoremove )

Reporting Bugs

If you encounter an Xfce bug while running the xfce-test container, please see the Reporting Bugs page for details on reporting bugs and gathering additional information for developers.

If you encounter a bug that is related to the running of the actual xfce-test container, please see xfce-test issues to file a bug report.

Back to Top

Return to Main Wiki page

Return to Contribute page