diff --git a/software/cloudooo/buildout.hash.cfg b/software/cloudooo/buildout.hash.cfg
index 3f95779d552dca31ee9ce484fced89965d2bc0ca..52ecf92d3bec654f6ee21da378482a28620af4c9 100644
--- a/software/cloudooo/buildout.hash.cfg
+++ b/software/cloudooo/buildout.hash.cfg
@@ -18,4 +18,4 @@ md5sum = 6e4431cf4b0a0d034402604b1e2844c0
 
 [template-cloudooo-instance]
 filename = instance-cloudooo.cfg.in
-md5sum = 6ec2461e884761c56ef4ba928a8eede6
+md5sum = 31ed5c856ce2dff0305d7029caefc3f6
diff --git a/software/cloudooo/instance-cloudooo.cfg.in b/software/cloudooo/instance-cloudooo.cfg.in
index 9ab349c663196459a05c9c3ae0384c0a3f87415f..9a60329f1352598d1891b13f32c719cc367c89c6 100644
--- a/software/cloudooo/instance-cloudooo.cfg.in
+++ b/software/cloudooo/instance-cloudooo.cfg.in
@@ -271,17 +271,23 @@ var = ${buildout:directory}/var
 framebuffer = ${:srv}/framebuffer
 
 [xvfb-instance]
-recipe = slapos.cookbook:xvfb
-runner-path = ${directory:services}/xvfb
-xvfb-path = {{ parameter_dict["xserver"] }}/bin/Xvfb
-fbdir-path = ${directory:framebuffer}
-tmp-path = ${directory:run}
-shell-path = {{ parameter_dict["dash"] }}/bin/dash
+recipe = slapos.cookbook:wrapper
+wrapper-path = ${directory:services}/${:_buildout_section_name_}
+command-line =
+  {{ parameter_dict["xserver"] }}/bin/Xvfb
+    ${:display}
+    -screen 0 1024x768x24
+    -fbdir ${directory:framebuffer}
+environment =
+  XORG_LOCK_DIR=${:lock-dir}
+
+display = :0
+lock-dir = ${directory:run}
 
 [wkhtmltopdf-on-xvfb]
 recipe = slapos.cookbook:wrapper
 wrapper-path = ${directory:bin}/wkhtmltopdf
 environment =
-  DISPLAY=:0
-  TMPDIR=${directory:run}
+  DISPLAY=${xvfb-instance:display}
+  XORG_LOCK_DIR=${xvfb-instance:lock-dir}
 command-line = {{ parameter_dict['wkhtmltopdf'] }}/wkhtmltopdf --use-xserver