Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

88 lines (62 sloc) 2.005 kb

pyvirtualdisplay is a python wrapper for Xvfb, Xephyr and Xvnc

  • python wrapper
  • supported python versions: 2.6, 2.7, 3.2, 3.3
  • back-ends: Xvfb, Xephyr, Xvnc


at least one back-end should be installed

Known problems:
  • only a few back-end options are supported
Possible applications:
  • GUI testing
  • automatic GUI screenshot

Basic usages

Start Xephyr:

from pyvirtualdisplay import Display
xephyr=Display(visible=1, size=(320, 240)).start()

Create screenshot of xmessage with Xvfb:

from easyprocess import EasyProcess
from pyvirtualdisplay.smartdisplay import SmartDisplay
with SmartDisplay(visible=0, bgcolor='black') as disp:
    with EasyProcess('xmessage hello'):
        img = disp.waitgrab()



  • install Xvfb or Xephyr or Xvnc.

  • install pip

  • optional: pyscreenshot and PIL should be installed for smartdisplay submodule

  • install the program:

    # as root
    pip install pyvirtualdisplay


sudo apt-get install python-pip
sudo apt-get install xvfb
sudo apt-get install xserver-xephyr
sudo apt-get install tightvncserver
sudo pip install pyvirtualdisplay
# optional
sudo apt-get install python-imaging
sudo apt-get install scrot
sudo pip install pyscreenshot
# optional for examples
sudo pip install entrypoint2


# as root
pip uninstall pyvirtualdisplay
Jump to Line
Something went wrong with that request. Please try again.