From deb192054f331e0026d2ae1c4a22cb44d746b4b7 Mon Sep 17 00:00:00 2001
From: Gabriel Monnerat <gabriel@tiolive.com>
Date: Mon, 26 Mar 2012 13:22:16 -0300
Subject: [PATCH] Revert "merge erp5 branch into master"

This reverts commit 1ea46ea8492ecb20a88f1eb131f19111d8f68ec4.

Don't use squash because in this way we will lost the history.
---
 MANIFEST.in                                   |   2 +-
 component/apache-php/buildout.cfg             |  10 +-
 component/apache/buildout.cfg                 |  39 +-----
 .../apache/mod_antiloris-apache-2.4.patch     | 127 ------------------
 component/aspell/buildout.cfg                 |  11 --
 component/automake/buildout.cfg               |   4 +-
 component/file/buildout.cfg                   |   4 +-
 component/fontconfig/buildout.cfg             |   5 +-
 component/freetype/buildout.cfg               |   9 +-
 component/ghostscript/buildout.cfg            |  15 +--
 component/git/buildout.cfg                    |   4 +-
 component/graphviz/buildout.cfg               |   5 +-
 component/groonga/buildout.cfg                |   5 +-
 component/haproxy/buildout.cfg                |   2 +-
 component/imagemagick/buildout.cfg            |   6 +-
 component/java/buildout.cfg                   |   6 +-
 component/libjpeg/buildout.cfg                |   4 +-
 component/libpng/buildout.cfg                 |  10 +-
 component/libreoffice-bin/buildout.cfg        |  14 +-
 component/libtiff/buildout.cfg                |   7 +-
 component/mariadb/buildout.cfg                |  71 +---------
 component/openssl/buildout.cfg                |  18 +--
 component/openssl/openssl-exlibs.patch        |  19 ---
 component/percona-toolkit/buildout.cfg        |   4 +-
 component/poppler/buildout.cfg                |   9 +-
 component/python-2.6/buildout.cfg             |   8 +-
 component/python-2.7/buildout.cfg             |  28 ++--
 component/readline/buildout.cfg               |  12 ++
 component/sphinx/buildout.cfg                 |   4 +-
 component/tesseract/buildout.cfg              |   2 -
 component/tomcat/buildout.cfg                 |  22 ---
 component/wget/buildout.cfg                   |  25 ----
 component/xorg/buildout.cfg                   |  33 +----
 component/zlib/buildout.cfg                   |   4 +-
 setup.py                                      |   4 -
 slapos/recipe/apache_zope_backend/__init__.py |  36 +----
 .../template/apache.zope.conf.in              |  21 ++-
 .../template/snippet.ssl.ca.in                |   4 -
 .../template/snippet.ssl.in                   |  12 --
 .../recipe/certificate_authority/__init__.py  |  15 +--
 .../recipe/davstorage/template/httpd.conf.in  |   5 +-
 .../recipe/erp5/template/apache.zope.conf.in  |   5 +-
 .../template/mysql-init-function.sql.in       |   2 +-
 slapos/recipe/erp5_bootstrap/__init__.py      |  66 ---------
 .../erp5_bootstrap/template/erp5_bootstrap.in |  35 -----
 slapos/recipe/erp5_promise/__init__.py        |  52 -------
 .../fontconfig/template/fontconfig.cfg.in     |   1 -
 slapos/recipe/generate_erp5_tidstorage.py     |  56 +-------
 slapos/recipe/generic_kumofs/__init__.py      |   3 +-
 .../generic_kumofs/template/kumo_gateway.in   |   2 +-
 .../generic_kumofs/template/kumo_manager.in   |   2 +-
 .../generic_kumofs/template/kumo_server.in    |   2 +-
 slapos/recipe/generic_memcached/__init__.py   |   1 -
 .../generic_memcached/template/memcached.in   |   2 +-
 slapos/recipe/generic_mysql/__init__.py       |   6 -
 .../recipe/generic_mysql/template/my.cnf.in   |   6 +-
 slapos/recipe/generic_varnish/__init__.py     |  77 -----------
 .../generic_varnish/template/default.vcl.in   | 124 -----------------
 .../generic_varnish/template/varnishd.in      |  15 ---
 .../generic_varnish/template/varnishlog.in    |   6 -
 .../generic_varnish/template/varnishlogd.in   |  22 ---
 slapos/recipe/generic_zope/__init__.py        |   7 -
 .../recipe/generic_zope/template/zope.conf.in |   5 -
 .../template/zope.conf.promise.in             |   5 -
 .../generic_zope_zeo_client/__init__.py       |  14 +-
 .../template/zope.conf.in                     |   5 -
 .../template/zope.conf.promise.in             |   5 -
 .../template/zope.conf.tidstorage.in          |   6 -
 .../template/zope.conf.timeserver.in          |   2 +-
 slapos/recipe/lamp/template/apache.in         |   4 +-
 slapos/recipe/lamp/template/my.cnf.in         |   2 +-
 slapos/recipe/logrotate.py                    |  20 +--
 slapos/recipe/mkdirectory.py                  |  15 ++-
 slapos/recipe/mysql/template/my.cnf.in        |   2 +-
 slapos/recipe/pulse2/template/apache.in.in    |   4 +-
 slapos/recipe/request.py                      |   2 +-
 slapos/recipe/symbolic_link.py                |   2 -
 slapos/recipe/web_checker/__init__.py         |  53 --------
 .../web_checker/template/web_checker.cfg.in   |  36 -----
 slapos/recipe/xwiki/template/my.cnf.in        |   2 +-
 software/cloudooo/instance.cfg                |   2 +-
 software/cloudooo/software.cfg                |   2 +-
 software/erp5/instance-cloudooo.cfg           |   2 +-
 software/erp5/instance-erp5-development.cfg   |  20 +--
 software/erp5/instance-erp5-production.cfg    |  27 +---
 software/erp5/instance-kumofs.cfg             |   8 +-
 software/erp5/instance-mariadb.cfg            |   7 +-
 software/erp5/instance-memcached.cfg          |   1 -
 software/erp5/instance-varnish.cfg            | 118 ----------------
 software/erp5/instance-zope.cfg               |  25 ++--
 software/erp5/instance.cfg                    |   1 -
 software/erp5/snippet-backend.cfg             |  31 +----
 software/erp5/snippet-master.cfg              | 121 ++++++++++-------
 software/erp5/snippet-zope.cfg                |   5 -
 software/erp5/software.cfg                    |  74 ++--------
 software/erp5testnode/software.cfg            |   7 +-
 software/vifib/software.cfg                   |   4 -
 stack/cloudooo.cfg                            |   8 +-
 stack/erp5.cfg                                |  36 ++---
 stack/tomcat.cfg                              |   7 +-
 100 files changed, 322 insertions(+), 1505 deletions(-)
 delete mode 100644 component/apache/mod_antiloris-apache-2.4.patch
 delete mode 100644 component/aspell/buildout.cfg
 delete mode 100644 component/openssl/openssl-exlibs.patch
 delete mode 100644 component/tomcat/buildout.cfg
 delete mode 100644 component/wget/buildout.cfg
 delete mode 100644 slapos/recipe/apache_zope_backend/template/snippet.ssl.ca.in
 delete mode 100644 slapos/recipe/apache_zope_backend/template/snippet.ssl.in
 rename slapos/recipe/{generic_mysql => erp5}/template/mysql-init-function.sql.in (73%)
 delete mode 100644 slapos/recipe/erp5_bootstrap/__init__.py
 delete mode 100644 slapos/recipe/erp5_bootstrap/template/erp5_bootstrap.in
 delete mode 100644 slapos/recipe/erp5_promise/__init__.py
 delete mode 100644 slapos/recipe/generic_varnish/__init__.py
 delete mode 100644 slapos/recipe/generic_varnish/template/default.vcl.in
 delete mode 100644 slapos/recipe/generic_varnish/template/varnishd.in
 delete mode 100644 slapos/recipe/generic_varnish/template/varnishlog.in
 delete mode 100644 slapos/recipe/generic_varnish/template/varnishlogd.in
 delete mode 100644 slapos/recipe/generic_zope/template/zope.conf.promise.in
 delete mode 100644 slapos/recipe/generic_zope_zeo_client/template/zope.conf.promise.in
 delete mode 100644 slapos/recipe/generic_zope_zeo_client/template/zope.conf.tidstorage.in
 delete mode 100644 slapos/recipe/web_checker/__init__.py
 delete mode 100644 slapos/recipe/web_checker/template/web_checker.cfg.in
 delete mode 100644 software/erp5/instance-varnish.cfg

diff --git a/MANIFEST.in b/MANIFEST.in
index 432de3b1a..9d14f29ad 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -4,4 +4,4 @@ include slapos/recipe/apache_frontend/template/notfound.html
 recursive-include slapos/recipe *.in
 recursive-include slapos/recipe *.bin
 recursive-include slapos/recipe README.*.txt
-recursive-include slapos/recipe *.js
+recursive-include slapos/recipe *.js
\ No newline at end of file
diff --git a/component/apache-php/buildout.cfg b/component/apache-php/buildout.cfg
index 7dcc0f5a7..71ea1daa3 100644
--- a/component/apache-php/buildout.cfg
+++ b/component/apache-php/buildout.cfg
@@ -1,10 +1,10 @@
 [buildout]
 parts = apache-php
 
-extends =
+extends = 
   ../apache/buildout.cfg
   ../cclient/buildout.cfg
-  ../curl/buildout.cfg
+  ../curl/buildout.cfg  
   ../freetype/buildout.cfg
   ../gettext/buildout.cfg
   ../libiconv/buildout.cfg
@@ -19,8 +19,8 @@ extends =
 [apache-php]
 # Note: Shall react on each build of apache and reinstall itself
 recipe = hexagonit.recipe.cmmi
-url = http://fr2.php.net/distributions/php-5.3.10.tar.gz
-md5sum = 816259e5ca7d0a7e943e56a3bb32b17f
+url = http://fr2.php.net/distributions/php-5.3.8.tar.gz
+md5sum = f4ce40d5d156ca66a996dbb8a0e7666a
 configure-options =
   --with-apxs2=${apache:location}/bin/apxs
   --with-libxml-dir=${libxml2:location}
@@ -37,7 +37,7 @@ configure-options =
   --with-mysqli=mysqlnd
   --with-curl=${curl:location}
   --with-zip-dir=${zip:location}
-  --with-imap=${cclient:location}
+  --with-imap=${cclient:location}  
   --with-iconv-dir=${libiconv:location}
   --with-gettext=${gettext:location}
   --with-ldap=${openldap:location}
diff --git a/component/apache/buildout.cfg b/component/apache/buildout.cfg
index dcf21258e..3c7cad1c1 100644
--- a/component/apache/buildout.cfg
+++ b/component/apache/buildout.cfg
@@ -13,30 +13,14 @@ extends =
   ../sqlite3/buildout.cfg
   ../zlib/buildout.cfg
 
-[apr]
-recipe = hexagonit.recipe.download
-version = 1.4.6
-url = http://mir2.ovh.net/ftp.apache.org/dist/apr/apr-${:version}.tar.bz2
-md5sum = ffee70a111fd07372982b0550bbb14b7
-
-[apr-util]
-recipe = hexagonit.recipe.download
-version = 1.4.1
-url = http://mir2.ovh.net/ftp.apache.org/dist/apr/apr-util-${:version}.tar.bz2
-md5sum = 52b31b33fb1aa16e65ddaefc76e41151
-
 [apache]
 # inspired on http://old.aclark.net/team/aclark/blog/a-lamp-buildout-for-wordpress-and-other-php-apps/
 recipe = hexagonit.recipe.cmmi
 depends =
   ${gdbm:version}
-version = 2.4.1
-revision = 1
-url = http://mir2.ovh.net/ftp.apache.org/dist/httpd/httpd-${:version}.tar.bz2
-md5sum = 7d3001c7a26b985d17caa367a868f11c
-configure-command = cp -ar ${apr:location}/apr-${apr:version} srclib/apr/; cp -ar ${apr-util:location}/apr-util-${apr-util:version} srclib/apr-util; ./configure
-configure-options = --prefix=${buildout:parts-directory}/${:_buildout_section_name_}
-                    --disable-static
+url = http://mir2.ovh.net/ftp.apache.org/dist//httpd/httpd-2.2.22.tar.bz2
+md5sum = 9fe3093194c8a57f085ff7c3fc43715f
+configure-options = --disable-static
                     --enable-authn-alias
                     --enable-bucketeer
                     --enable-cache
@@ -63,7 +47,6 @@ configure-options = --prefix=${buildout:parts-directory}/${:_buildout_section_na
                     --enable-dav-fs
                     --enable-so
                     --enable-ssl
-                    --disable-lua
                     --with-included-apr
                     --with-ssl=${openssl:location}
                     --with-z=${zlib:location}
@@ -89,27 +72,11 @@ environment =
   CPPFLAGS =-I${libuuid:location}/include
   LDFLAGS =-Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${openssl:location}/lib -L${libuuid:location}/lib -Wl,-rpath=${libuuid:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${pcre:location}/lib -Wl,-rpath=${sqlite3:location}/lib -Wl,-rpath=${gdbm:location}/lib
 
-[mod_antiloris-apache-2.4.patch]
-# http://www.apachelounge.com/viewtopic.php?p=19139
-# http://www.apachelounge.com/viewtopic.php?p=20551
-recipe = hexagonit.recipe.download
-url =${:_profile_base_location_}/${:filename}
-filename = mod_antiloris-apache-2.4.patch
-download-only = true
-md5sum = 4f074f035d3b37f3f3e71cd9616440f3
-
 [apache-antiloris]
 # Note: Shall react on each build of apache and reinstall itself
 recipe = hexagonit.recipe.cmmi
 url = http://sourceforge.net/projects/mod-antiloris/files/mod_antiloris-0.4.tar.bz2/download
 md5sum = 66862bf10e9be3a023e475604a28a0b4
-patch-options = -p0
-patches =
-  ${mod_antiloris-apache-2.4.patch:location}/${mod_antiloris-apache-2.4.patch:filename}
-depends =
-  ${apache:version}
-  ${apache:revision}
-  ${mod_antiloris-apache-2.4.patch:md5sum}
 configure-command = ${apache:location}/bin/apxs
 configure-options = -c mod_antiloris.c
 make-binary = ${:configure-command}
diff --git a/component/apache/mod_antiloris-apache-2.4.patch b/component/apache/mod_antiloris-apache-2.4.patch
deleted file mode 100644
index a5150b37f..000000000
--- a/component/apache/mod_antiloris-apache-2.4.patch
+++ /dev/null
@@ -1,127 +0,0 @@
---- mod_antiloris.c.orig	2009-07-28 15:27:42.000000000 +0200
-+++ mod_antiloris.c	2012-03-06 11:05:50.167576066 +0100
-@@ -1,5 +1,5 @@
- /*
--   mod_antiloris 0.2
-+   mod_antiloris 0.5
-    Copyright (C) 2008 Monshouwer Internet Diensten
- 
-    Author: Kees Monshouwer
-@@ -22,11 +22,16 @@
- #include "http_connection.h"
- #include "http_log.h"
- #include "ap_mpm.h"
-+#include "ap_release.h" 
- #include "apr_strings.h"
- #include "scoreboard.h"
- 
- #define MODULE_NAME "mod_antiloris"
--#define MODULE_VERSION "0.4"
-+#define MODULE_VERSION "0.5.1"
-+
-+#ifdef APLOG_USE_MODULE 
-+APLOG_USE_MODULE(antiloris); 
-+#endif 
- 
- module AP_MODULE_DECLARE_DATA antiloris_module;
- 
-@@ -58,6 +63,8 @@
- /* Parse the IPReadLimit directive */
- static const char *ipreadlimit_config_cmd(cmd_parms *parms, void *mconfig, const char *arg)
- {
-+    signed long int limit;
-+
-     antiloris_config *conf = ap_get_module_config(parms->server->module_config, &antiloris_module);
-     const char *err = ap_check_cmd_context (parms, GLOBAL_ONLY);
-     
-@@ -65,7 +72,7 @@
- 	return err;
-     }
-     
--    signed long int limit = strtol(arg, (char **) NULL, 10);
-+    limit = strtol(arg, (char **) NULL, 10);
- 
-     /* No reasonable person would want more than 2^16. Better would be
-        to use LONG_MAX but that causes portability problems on win32 */
-@@ -80,7 +87,7 @@
- 
- /* Array describing structure of configuration directives */
- static command_rec antiloris_cmds[] = {
--    AP_INIT_TAKE1("IPReadLimit", ipreadlimit_config_cmd, NULL, RSRC_CONF, "Maximum simultaneous connections in READ state per IP address"),
-+    AP_INIT_TAKE1("IPReadLimit", ipreadlimit_config_cmd, NULL, RSRC_CONF, "Maximum simultaneous connections per IP address"),
-     {NULL}
- };
- 
-@@ -103,12 +110,15 @@
-     ap_log_error(APLOG_MARK, APLOG_NOTICE, 0, NULL, MODULE_NAME " " MODULE_VERSION " started");
-     ap_mpm_query(AP_MPMQ_HARD_LIMIT_THREADS, &thread_limit);
-     ap_mpm_query(AP_MPMQ_HARD_LIMIT_DAEMONS, &server_limit);
-+    ap_add_version_component(p, MODULE_NAME "/" MODULE_VERSION); 
-     return OK;
- }
- 
- 
- static int pre_connection(conn_rec *c)
- {
-+    char *client_ip;
-+
-     antiloris_config *conf = ap_get_module_config (c->base_server->module_config,  &antiloris_module);
-     sb_handle *sbh = c->sbh;
-     
-@@ -123,16 +133,26 @@
-     worker_score *ws_record;
-     
-     ws_record = &ap_scoreboard_image->servers[sbh->child_num][sbh->thread_num];
--    apr_cpystrn(ws_record->client, c->remote_ip, sizeof(ws_record->client));
-+    apr_cpystrn(ws_record->client, c->client_ip, sizeof(ws_record->client)); 
-     
--    char *client_ip = ws_record->client;
-+    client_ip = ws_record->client;
-     
-     /* Count up the number of connections we are handling right now from this IP address */
-     for (i = 0; i < server_limit; ++i) {
- 	for (j = 0; j < thread_limit; ++j) {
--    	    ws_record = ap_get_scoreboard_worker(i, j);
-+#if AP_SERVER_MAJORVERSION_NUMBER == 2 && AP_SERVER_MINORVERSION_NUMBER > 2 
-+    	    ws_record = ap_get_scoreboard_worker_from_indexes(i, j); 
-+#else 
-+    	    ws_record = ap_get_scoreboard_worker(i, j); 
-+#endif 
-             switch (ws_record->status) {
-         	case SERVER_BUSY_READ:
-+        	case SERVER_BUSY_WRITE:
-+        	case SERVER_BUSY_KEEPALIVE:
-+        	case SERVER_BUSY_DNS:
-+        	case SERVER_BUSY_LOG:
-+        	case SERVER_CLOSING:
-+        	case SERVER_GRACEFUL:
-             	    if (strcmp(client_ip, ws_record->client) == 0)
-             		ip_count++;
-                     break;
-@@ -143,7 +163,7 @@
-     }
-     
-     if (ip_count > conf->limit) {
--	ap_log_error(APLOG_MARK, APLOG_WARNING, 0, NULL, "Rejected, too many connections in READ state from %s", c->remote_ip);
-+	ap_log_error(APLOG_MARK, APLOG_WARNING, 0, NULL, "[client %s] Antiloris rejected, too many connections", c->client_ip); 
- 	return OK;
-     } else {
- 	return DECLINED;
-@@ -151,17 +171,10 @@
- }
- 
- 
--static void child_init (apr_pool_t *p, server_rec *s)
--{
--    ap_add_version_component(p, MODULE_NAME "/" MODULE_VERSION);
--}
--
--
- static void register_hooks(apr_pool_t *p)
- {
-     ap_hook_post_config(post_config, NULL, NULL, APR_HOOK_MIDDLE);
-     ap_hook_process_connection(pre_connection, NULL, NULL, APR_HOOK_FIRST);
--    ap_hook_child_init(child_init, NULL, NULL, APR_HOOK_MIDDLE);    
- }
- 
- module AP_MODULE_DECLARE_DATA antiloris_module = {
diff --git a/component/aspell/buildout.cfg b/component/aspell/buildout.cfg
deleted file mode 100644
index 365126682..000000000
--- a/component/aspell/buildout.cfg
+++ /dev/null
@@ -1,11 +0,0 @@
-[buildout]
-parts =
-  aspell
-
-extends = 
-  ../ncurses/buildout.cfg
-
-[aspell]
-recipe = hexagonit.recipe.cmmi
-url = http://ftp.gnu.org/gnu/aspell/aspell-0.60.6.1.tar.gz
-md5sum = e66a9c9af6a60dc46134fdacf6ce97d7
diff --git a/component/automake/buildout.cfg b/component/automake/buildout.cfg
index fbd7082c9..3d552ff02 100644
--- a/component/automake/buildout.cfg
+++ b/component/automake/buildout.cfg
@@ -7,7 +7,7 @@ parts =
 
 [automake-1.11]
 recipe = hexagonit.recipe.cmmi
-md5sum = 93ecb319f0365cb801990b00f658d026
-url = http://ftp.gnu.org/gnu/automake/automake-1.11.3.tar.gz
+md5sum = c2972c4d9b3e29c03d5f2af86249876f
+url = http://ftp.gnu.org/gnu/automake/automake-1.11.1.tar.bz2
 environment =
   PATH =${autoconf:location}/bin:${perl:location}/bin:%(PATH)s
diff --git a/component/file/buildout.cfg b/component/file/buildout.cfg
index 5c171cd90..a5cfc0924 100644
--- a/component/file/buildout.cfg
+++ b/component/file/buildout.cfg
@@ -8,8 +8,8 @@ extends =
 
 [file]
 recipe = hexagonit.recipe.cmmi
-url = ftp://ftp.astron.com/pub/file/file-5.11.tar.gz
-md5sum = 16a407bd66d6c7a832f3a5c0d609c27b
+url = ftp://ftp.astron.com/pub/file/file-5.10.tar.gz
+md5sum = 4cea34b087b060772511e066e2038196
 configure-options =
   --disable-static
 environment =
diff --git a/component/fontconfig/buildout.cfg b/component/fontconfig/buildout.cfg
index 58643399d..1198708d9 100644
--- a/component/fontconfig/buildout.cfg
+++ b/component/fontconfig/buildout.cfg
@@ -4,7 +4,6 @@ extends =
   ../freetype/buildout.cfg
   ../libxml2/buildout.cfg
   ../pkgconfig/buildout.cfg
-  ../bzip2/buildout.cfg
   ../zlib/buildout.cfg
 
 parts =
@@ -24,5 +23,5 @@ configure-options =
 environment =
   PATH=${pkgconfig:location}/bin:%(PATH)s
   PKG_CONFIG_PATH=${libxml2:location}/lib/pkgconfig
-  CPPFLAGS=-I${zlib:location}/include -I${bzip2:location}/include
-  LDFLAGS=-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib
+  CPPFLAGS=-I${zlib:location}/include
+  LDFLAGS=-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
diff --git a/component/freetype/buildout.cfg b/component/freetype/buildout.cfg
index c4c818a16..c358b3e99 100644
--- a/component/freetype/buildout.cfg
+++ b/component/freetype/buildout.cfg
@@ -3,7 +3,6 @@
 
 [buildout]
 extends =
-  ../bzip2/buildout.cfg
   ../zlib/buildout.cfg
 
 parts =
@@ -11,10 +10,10 @@ parts =
 
 [freetype]
 recipe = hexagonit.recipe.cmmi
-url = http://download.savannah.gnu.org/releases/freetype/freetype-2.4.9.tar.bz2
-md5sum = 77a893dae81fd5b896632715ca041179
+url = http://download.savannah.gnu.org/releases/freetype/freetype-2.4.8.tar.bz2
+md5sum = dbf2caca1d3afd410a29217a9809d397
 configure-options =
   --disable-static
 environment =
-  CPPFLAGS=-I${bzip2:location}/include -I${zlib:location}/include
-  LDFLAGS=-L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
+  CPPFLAGS=-I${zlib:location}/include
+  LDFLAGS=-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
diff --git a/component/ghostscript/buildout.cfg b/component/ghostscript/buildout.cfg
index 3a38e298e..85ff41306 100644
--- a/component/ghostscript/buildout.cfg
+++ b/component/ghostscript/buildout.cfg
@@ -9,25 +9,24 @@ parts = ghostscript
 
 [ghostscript-common]
 recipe = hexagonit.recipe.cmmi
-depends =
-  ${libtiff:version}
 configure-options =
   --disable-cups
-  --with-system-libtiff
+  --disable-cairo
   --without-x
   --with-drivers=FILES
 # it seems that parallel build sometimes fails for ghostscript.
 make-options = -j1
 environment =
   PATH=${pkgconfig:location}/bin:%(PATH)s
-  PKG_CONFIG_PATH=${fontconfig:location}/lib/pkgconfig:${libtiff:location}/lib/pkgconfig
-  LDFLAGS=-Wl,-rpath=${fontconfig:location}/lib -L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -Wl,-rpath=${libtiff:location}/lib
-  LD_LIBRARY_PATH=${fontconfig:location}/lib:${libtiff:location}/lib
+  PKG_CONFIG_PATH=${fontconfig:location}/lib/pkgconfig
+  CPPFLAGS=-I${libtiff:location}/include
+  LDFLAGS=-Wl,-rpath=${fontconfig:location}/lib -L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -L${libtiff:location}/lib -Wl,-rpath=${libtiff:location}/lib
+  LD_LIBRARY_PATH=${fontconfig:location}/lib
 
 [ghostscript]
 <= ghostscript-9
 
 [ghostscript-9]
 <= ghostscript-common
-url = http://downloads.ghostscript.com/public/ghostscript-9.05.tar.bz2
-md5sum = 8bcef1f33ddf8a4d12b2cf8da385c191
+url = http://downloads.ghostscript.com/public/ghostscript-9.04.tar.bz2
+md5sum = 9f6899e821ab6d78ab2c856f10fa3023
diff --git a/component/git/buildout.cfg b/component/git/buildout.cfg
index e88ef464e..a848e34be 100644
--- a/component/git/buildout.cfg
+++ b/component/git/buildout.cfg
@@ -13,8 +13,8 @@ parts =
 
 [git]
 recipe = hexagonit.recipe.cmmi
-url = http://git-core.googlecode.com/files/git-1.7.8.4.tar.gz
-md5sum = e6c3319d76d52a830af395046fc56143
+url = http://git-core.googlecode.com/files/git-1.7.8.3.tar.gz
+md5sum = 7a4bc5160166537d4da5eb48a7670dff
 configure-options =
   --with-curl=${curl:location}
   --with-openssl=${openssl:location}
diff --git a/component/graphviz/buildout.cfg b/component/graphviz/buildout.cfg
index 9658c1ad0..85f97fb14 100644
--- a/component/graphviz/buildout.cfg
+++ b/component/graphviz/buildout.cfg
@@ -5,7 +5,6 @@
 parts =
   graphviz
 extends =
-  ../bzip2/buildout.cfg
   ../fontconfig/buildout.cfg
   ../freetype/buildout.cfg
   ../libpng/buildout.cfg
@@ -51,5 +50,5 @@ configure-options =
 environment =
   PATH=${pkgconfig:location}/bin:%(PATH)s
   PKG_CONFIG_PATH=${fontconfig:location}/lib/pkgconfig:${freetype:location}/lib/pkgconfig
-  CPPFLAGS=-I${bzip2:location}/include -I${zlib:location}/include
-  LDFLAGS=-L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
+  CPPFLAGS=-I${zlib:location}/include
+  LDFLAGS=-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
diff --git a/component/groonga/buildout.cfg b/component/groonga/buildout.cfg
index b5394501d..4c863643c 100644
--- a/component/groonga/buildout.cfg
+++ b/component/groonga/buildout.cfg
@@ -7,11 +7,10 @@ parts =
 
 [groonga]
 recipe = hexagonit.recipe.cmmi
-url = http://packages.groonga.org/source/groonga/groonga-2.0.0.tar.gz
-md5sum = 09e6a34db15cf42b6a3aff07e0f841ff
+url = http://packages.groonga.org/source/groonga/groonga-1.2.9.tar.gz
+md5sum = 47117baa401a3db08362e00f94fced12
 configure-options =
   --disable-static
   --disable-glibtest
   --disable-benchmark
-  --disable-document
   --without-mecab
diff --git a/component/haproxy/buildout.cfg b/component/haproxy/buildout.cfg
index 08ba79f33..1d2465842 100644
--- a/component/haproxy/buildout.cfg
+++ b/component/haproxy/buildout.cfg
@@ -10,6 +10,6 @@ configure-command = true
 # otherwise use "generic".
 # For ARCH value, x86_64 and i[3456]86 are supported.
 make-options =
-  TARGET="$(uname -sr 2>/dev/null|grep -Eq '^Linux (2\.6|3)' && echo linux26 || echo generic)"
+  TARGET="$(uname -sr 2>/dev/null|grep -q '^Linux 2\.6' && echo linux26 || echo generic)"
   ARCH="$(uname -m 2>/dev/null|grep -E '^(x86_64|i[3456]86)$')"
   PREFIX=${buildout:parts-directory}/${:_buildout_section_name_}
diff --git a/component/imagemagick/buildout.cfg b/component/imagemagick/buildout.cfg
index 283af483b..062a81e90 100644
--- a/component/imagemagick/buildout.cfg
+++ b/component/imagemagick/buildout.cfg
@@ -27,10 +27,8 @@ filename = imagemagick-6.6.6-1-no-gsx-gsc-probe.patch
 
 [imagemagick]
 recipe = hexagonit.recipe.cmmi
-url = ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-6.7.5-10.tar.bz2
-md5sum = 99bc7ec1e756fa75f1af6150df3d1383
-depends =
-  ${libtiff:version}
+url = ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-6.7.3-10.tar.bz2
+md5sum = 3c1d1a04b1ed2998217e16001b58069f
 configure-options =
   --disable-static
   --without-x
diff --git a/component/java/buildout.cfg b/component/java/buildout.cfg
index 657b140eb..fdfd350db 100644
--- a/component/java/buildout.cfg
+++ b/component/java/buildout.cfg
@@ -29,8 +29,8 @@ slapos_promisee =
   directory:javaws
   file:lib/rt.jar
   file:bin/java
-x86 = http://download.oracle.com/otn-pub/java/jdk/6u30-b12/jre-6u30-linux-i586.bin 3e80243483bc825c34ae01a4373cce5f
-x86-64 = http://download.oracle.com/otn-pub/java/jdk/6u30-b12/jre-6u30-linux-x64.bin a4d28c49251d6b9c2d300b3d61f1ce95
+x86 = http://javadl.sun.com/webapps/download/AutoDL?BundleId=52240 0bd27d325c5ce11ce863d982ad052f7f
+x86-64 =  http://javadl.sun.com/webapps/download/AutoDL?BundleId=52242 a4d929bc4d6511290c07c3745477b77b
 script =
   if not self.options.get('url'): self.options['url'], self.options['md5sum'] = self.options[guessPlatform()].split(' ')
   download_file = self.download(self.options['url'], self.options.get('md5sum'))
@@ -43,7 +43,7 @@ script =
   subprocess.call([auto_extract_bin])
   self.cleanup_dir_list.append(extract_dir)
   workdir = guessworkdir(extract_dir)
-  self.copyTree(os.path.join(workdir, "jre1.6.0_30"), "%(location)s")
+  self.copyTree(os.path.join(workdir, "jre1.6.0_27"), "%(location)s")
 
 [java-sdk-1.6.0]
 recipe = slapos.recipe.build
diff --git a/component/libjpeg/buildout.cfg b/component/libjpeg/buildout.cfg
index 74e4461d2..a43400876 100644
--- a/component/libjpeg/buildout.cfg
+++ b/component/libjpeg/buildout.cfg
@@ -4,7 +4,7 @@ parts =
 
 [libjpeg]
 recipe = hexagonit.recipe.cmmi
-url = http://www.ijg.org/files/jpegsrc.v8d.tar.gz
-md5sum = 52654eb3b2e60c35731ea8fc87f1bd29
+url = http://www.ijg.org/files/jpegsrc.v8b.tar.gz
+md5sum = e022acbc5b36cd2cb70785f5b575661e
 configure-options =
   --disable-static
diff --git a/component/libpng/buildout.cfg b/component/libpng/buildout.cfg
index 70229b0eb..a78e8143e 100644
--- a/component/libpng/buildout.cfg
+++ b/component/libpng/buildout.cfg
@@ -3,7 +3,6 @@ extends =
   ../zlib/buildout.cfg
 
 parts =
-  libpng12
   libpng
 
 [libpng-common]
@@ -14,12 +13,7 @@ environment =
   CPPFLAGS =-I${zlib:location}/include
   LDFLAGS =-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
 
-[libpng12]
-<= libpng-common
-url = http://download.sourceforge.net/libpng/libpng-1.2.47.tar.bz2
-md5sum = 4389dab9fcd2f9d57ac14701b9115f59
-
 [libpng]
 <= libpng-common
-url = http://download.sourceforge.net/libpng/libpng-1.5.9.tar.bz2
-md5sum = 684ba5f05da436a99c6303a83c7856d6
+url = http://download.sourceforge.net/libpng/libpng-1.5.5.tar.bz2
+md5sum = 3270bf2990c3174ae939388398de751e
diff --git a/component/libreoffice-bin/buildout.cfg b/component/libreoffice-bin/buildout.cfg
index c788822e8..b5604c2e0 100644
--- a/component/libreoffice-bin/buildout.cfg
+++ b/component/libreoffice-bin/buildout.cfg
@@ -12,15 +12,15 @@ find-links =
 [libreoffice-bin]
 recipe = slapos.recipe.build
 # here, two %s are used, first one is for directory name (eg. x86_64), and second one is for filename (eg. x86-64).
-version = 3.5.1
+version = 3.4.5
 url = http://download.documentfoundation.org/libreoffice/stable/${:version}/rpm/%s/LibO_${:version}_Linux_%s_install-rpm_en-US.tar.gz
 
 # supported architectures md5sums
-md5sum_x86 = ee46fdafb8361b8e131994508c2723b3
-md5sum_x86-64 = ddda58719358e5c97ca5d1c118646574
+md5sum_x86 = 34786e6aa570782abac551ab092f3fb3
+md5sum_x86-64 = 2159a50daab707c02b669a83f635ff0c
 
 # where office code can be found?
-officedir = libreoffice3.5
+officedir = libreoffice3.4
 
 # script to install
 script =
@@ -38,11 +38,7 @@ script =
   rpmsdir = os.path.join(workdir, [q for q in os.listdir(workdir) if q == 'RPMS'][0])
   rpmlist = [os.path.join(rpmsdir, q) for q in os.listdir(rpmsdir) if q.endswith('.rpm') and 'javafilter' not in q and 'xsltfilter' not in q]
   [self.pipeCommand([[sys.executable, '${:rpm2cpio}', rpm], ['${:cpio}', '-idum']], cwd=storagedir) for rpm in rpmlist]
-  self.copyTree(os.path.join(storagedir, 'opt', '${:officedir}'), location, ['ure-link'])
-  os.symlink('ure', os.path.join(location, 'ure-link'))
-  # backward compatibility for cloudooo configuration
-  os.mkdir(os.path.join(location, 'basis-link'))
-  os.symlink(os.path.join('..', 'program'), os.path.join(location, 'basis-link', 'program'))
+  self.copyTree(os.path.join(storagedir, 'opt', '${:officedir}'), location, ['basis3.4', 'ure'])
 
 # helper binaries
 cpio = ${cpio:location}/bin/cpio
diff --git a/component/libtiff/buildout.cfg b/component/libtiff/buildout.cfg
index ddf2db3d0..0d7814db8 100644
--- a/component/libtiff/buildout.cfg
+++ b/component/libtiff/buildout.cfg
@@ -9,11 +9,10 @@ parts =
 
 [libtiff]
 recipe = hexagonit.recipe.cmmi
-version = 4.0.1
-#url = http://download.osgeo.org/libtiff/tiff-${:version}.tar.gz
+#url = http://download.osgeo.org/libtiff/tiff-3.9.5.tar.gz
 # server is down - circumvent
-url = http://www.imagemagick.org/download/delegates/tiff-${:version}.tar.gz
-md5sum = fae149cc9da35c598d8be897826dfc63
+url = http://www.imagemagick.org/download/delegates/tiff-3.9.5.tar.gz
+md5sum = 8fc7ce3b4e1d0cc8a319336967815084
 configure-options =
   --disable-static
   --without-x
diff --git a/component/mariadb/buildout.cfg b/component/mariadb/buildout.cfg
index 3fa8cf611..d98313f30 100644
--- a/component/mariadb/buildout.cfg
+++ b/component/mariadb/buildout.cfg
@@ -3,13 +3,10 @@
 
 [buildout]
 extends =
-  ../cmake/buildout.cfg
   ../zlib/buildout.cfg
   ../groonga/buildout.cfg
-  ../libaio/buildout.cfg
   ../libevent/buildout.cfg
   ../ncurses/buildout.cfg
-  ../openssl/buildout.cfg
   ../pkgconfig/buildout.cfg
   ../readline/buildout.cfg
 
@@ -25,9 +22,9 @@ download-only = true
 
 [mariadb]
 recipe = hexagonit.recipe.cmmi
-version = 5.3.5-ga
+version = 5.3.3-rc
 url = http://downloads.askmonty.org/f/mariadb-${:version}/kvm-tarbake-jaunty-x86/mariadb-${:version}.tar.gz/from/http:/ftp.osuosl.org/pub/mariadb
-md5sum = 98ce0441b37c8d681855150495fdc03b
+md5sum = 715c61bb101acc7d37e893f6a9de9267
 # compile directory is required to build mysql plugins.
 keep-compile-dir = true
 # configure: how to avoid searching for my.cnf?
@@ -45,9 +42,10 @@ configure-options =
   --with-extra-charsets=complex
   --with-collation=utf8_unicode_ci
   --with-big-tables
-  --without-embedded-server
+  --with-embedded-server
   --with-plugins=max-no-ndb
   --with-aria-tmp-tables
+  --without-plugin-innodb_plugin
   --without-plugin-oqgraph
   --without-readline
   --with-ssl
@@ -63,68 +61,11 @@ environment =
 
 [mroonga-mariadb]
 recipe = hexagonit.recipe.cmmi
-url = https://github.com/downloads/mroonga/mroonga/mroonga-2.00.tar.gz
-md5sum = 49dab92863b5c3fa1d49344c73357ca2
+url = https://github.com/downloads/mroonga/mroonga/mroonga-1.11.tar.gz
+md5sum = 69e56246226e0b9969ee7f99e08aa7da
 configure-options =
   --with-mysql-source=${mariadb:location}__compile__/mariadb-${mariadb:version}
   --with-mysql-config=${mariadb:location}/bin/mysql_config
-depends =
-  ${mariadb:version}
-environment =
-  PATH=${groonga:location}/bin:${pkgconfig:location}/bin:%(PATH)s
-  CPPFLAGS=-I${groonga:location}/include/groonga
-  LDFLAGS=-L${groonga:location}/lib
-  PKG_CONFIG_PATH=${groonga:location}/lib/pkgconfig
-
-[mariadb-5.5-no_test-patch]
-recipe = hexagonit.recipe.download
-url = ${:_profile_base_location_}/${:filename}
-md5sum = 14e6d713c16298a10f40d29f2b799aca
-filename = mariadb_5.5_create_system_tables__no_test.patch
-download-only = true
-
-[mariadb-5.5]
-recipe = hexagonit.recipe.cmmi
-version = 5.5.20
-url = http://downloads.askmonty.org/f/mariadb-${:version}/kvm-tarbake-jaunty-x86/mariadb-${:version}.tar.gz/from/http://ftp.osuosl.org/pub/mariadb
-md5sum = e618343b5039fa468c0e1e6098785e3c
-# compile directory is required to build mysql plugins.
-keep-compile-dir = true
-patch-options = -p0
-patches =
-  ${mariadb-5.5-no_test-patch:location}/${mariadb-5.5-no_test-patch:filename}
-configure-command = ${cmake:location}/bin/cmake
-configure-options =
-  -DCMAKE_INSTALL_PREFIX=${buildout:parts-directory}/${:_buildout_section_name_}
-  -DBUILD_CONFIG=mysql_release
-  -DDEFAULT_CHARSET=utf8
-  -DDEFAULT_COLLATION=utf8_unicode_ci
-  -DWITH_SSL=system
-  -DWITH_ZLIB=system
-  -DWITH_READLINE=0
-  -DWITH_PIC=1
-  -DWITH_EXTRA_CHARSETS=complex
-  -DWITH_EMBEDDED_SERVER=0
-  -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-  -DWITHOUT_DAEMON_EXAMPLE=1
-  -DWITH_SPHINX_STORAGE_ENGINE=1
-  -DCMAKE_C_FLAGS="-I${libaio:location}/include -I${ncurses:location}/include -I${openssl:location}/include -I${readline5:location}/include -I${zlib:location}/include"
-  -DCMAKE_INSTALL_RPATH=${libaio:location}/lib:${ncurses:location}/lib:${openssl:location}/lib:${readline5:location}/lib:${zlib:location}/lib
-environment =
-  CMAKE_PROGRAM_PATH=${cmake:location}/bin
-  CMAKE_INCLUDE_PATH=${libaio:location}/include:${ncurses:location}/include:${openssl:location}/include:${readline5:location}/include:${zlib:location}/include
-  CMAKE_LIBRARY_PATH=${libaio:location}/lib:${ncurses:location}/lib:${openssl:location}/lib:${readline5:location}/lib:${zlib:location}/lib
-  LDFLAGS=-L${libaio:location}/lib
-
-[mroonga-mariadb-5.5]
-recipe = hexagonit.recipe.cmmi
-url = https://github.com/downloads/mroonga/mroonga/mroonga-2.00.tar.gz
-md5sum = 49dab92863b5c3fa1d49344c73357ca2
-configure-options =
-  --with-mysql-source=${mariadb-5.5:location}__compile__/mariadb-${mariadb-5.5:version}
-  --with-mysql-config=${mariadb-5.5:location}/bin/mysql_config
-depends =
-  ${mariadb-5.5:version}
 environment =
   PATH=${groonga:location}/bin:${pkgconfig:location}/bin:%(PATH)s
   CPPFLAGS=-I${groonga:location}/include/groonga
diff --git a/component/openssl/buildout.cfg b/component/openssl/buildout.cfg
index ba87ebacb..22398442b 100644
--- a/component/openssl/buildout.cfg
+++ b/component/openssl/buildout.cfg
@@ -19,20 +19,12 @@ url = ${:_profile_base_location_}/${:filename}
 filename = ${:_buildout_section_name_}
 download-only = true
 
-[openssl-exlibs.patch]
-recipe = hexagonit.recipe.download
-md5sum = dfb8979460d6d75f2d23d1ea83bbb40a
-url = ${:_profile_base_location_}/${:filename}
-filename = ${:_buildout_section_name_}
-download-only = true
-
 [openssl]
 recipe = hexagonit.recipe.cmmi
-url = https://www.openssl.org/source/openssl-1.0.1.tar.gz
-md5sum = 134f168bc2a8333f19f81d684841710b
+url = https://www.openssl.org/source/openssl-1.0.0g.tar.gz
+md5sum = 07ecbe4324f140d157478637d6beccf1
 patches =
   ${openssl-nodoc.patch:location}/${openssl-nodoc.patch:filename}
-  ${openssl-exlibs.patch:location}/${openssl-exlibs.patch:filename}
 patch-options = -p0
 configure-command = ./config
 configure-options =
@@ -41,11 +33,13 @@ configure-options =
   --openssldir=${buildout:parts-directory}/${:_buildout_section_name_}/etc/ssl
   --prefix=${buildout:parts-directory}/${:_buildout_section_name_}
   --libdir=lib
-  shared no-idea no-mdc2 no-rc5 zlib
-  -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${buildout:parts-directory}/${:_buildout_section_name_}/lib
+  shared
+  no-zlib
 
 # it seems that parallel build sometimes fails for openssl.
 make-options =
   -j1
 make-targets =
   install && rm -f ${buildout:parts-directory}/${:_buildout_section_name_}/etc/ssl/certs/* && for i in ${ca-certificates:location}/certs/*/*.crt; do ln -sv $i ${buildout:parts-directory}/${:_buildout_section_name_}/etc/ssl/certs/`${buildout:parts-directory}/${:_buildout_section_name_}/bin/openssl x509 -hash -noout -in $i`.0; done; true
+  LDFLAGS="-Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${buildout:parts-directory}/${:_buildout_section_name_}/lib"
+  SHARED_LDFLAGS="-Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${buildout:parts-directory}/${:_buildout_section_name_}/lib"
diff --git a/component/openssl/openssl-exlibs.patch b/component/openssl/openssl-exlibs.patch
deleted file mode 100644
index 63b4d1160..000000000
--- a/component/openssl/openssl-exlibs.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- engines/ccgost/Makefile~	2010-08-24 23:46:34.000000000 +0200
-+++ engines/ccgost/Makefile	2012-03-14 10:11:46.826419864 +0100
-@@ -7,6 +7,7 @@
- AR= ar r
- CFLAGS= $(INCLUDES) $(CFLAG)
- LIB=$(TOP)/libcrypto.a
-+EX_LIBS= 
- 
- LIBSRC= gost2001.c gost2001_keyx.c gost89.c gost94_keyx.c gost_ameth.c gost_asn1.c gost_crypt.c gost_ctl.c gost_eng.c gosthash.c gost_keywrap.c gost_md.c gost_params.c gost_pmeth.c gost_sign.c
- 
-@@ -32,7 +33,7 @@
- 		$(MAKE) -f $(TOP)/Makefile.shared -e \
- 			LIBNAME=$(LIBNAME) \
- 			LIBEXTRAS='$(LIBOBJ)' \
--			LIBDEPS='-L$(TOP) -lcrypto' \
-+			LIBDEPS='-L$(TOP) -lcrypto $(EX_LIBS)' \
- 			link_o.$(SHLIB_TARGET); \
- 	else \
- 		$(AR) $(LIB) $(LIBOBJ); \
diff --git a/component/percona-toolkit/buildout.cfg b/component/percona-toolkit/buildout.cfg
index d24c05358..5b2047a8d 100644
--- a/component/percona-toolkit/buildout.cfg
+++ b/component/percona-toolkit/buildout.cfg
@@ -10,7 +10,7 @@ parts =
 recipe = hexagonit.recipe.cmmi
 depends =
   ${perl:version}
-url = http://www.percona.com/redir/downloads/percona-toolkit/2.0.4/percona-toolkit-2.0.4.tar.gz
-md5sum = df7dffcccb48d50f143849629228d4b4
+url = http://www.percona.com/redir/downloads/percona-toolkit/percona-toolkit-2.0.1.tar.gz
+md5sum = 3a78c78672cb7c634bda35dfb2f817bf
 configure-command =
   ${perl:location}/bin/perl Makefile.PL
diff --git a/component/poppler/buildout.cfg b/component/poppler/buildout.cfg
index ed0583a75..938aa32a7 100644
--- a/component/poppler/buildout.cfg
+++ b/component/poppler/buildout.cfg
@@ -1,7 +1,6 @@
 [buildout]
 parts = poppler
 extends =
-  ../bzip2/buildout.cfg
   ../fontconfig/buildout.cfg
   ../freetype/buildout.cfg
   ../jbigkit/buildout.cfg
@@ -18,12 +17,10 @@ extends =
 recipe = hexagonit.recipe.cmmi
 md5sum = b566d1fbaa29b9257bf0ecc130e7b2ca
 url = http://poppler.freedesktop.org/poppler-0.17.2.tar.gz
-depends =
-  ${libtiff:version}
 configure-options =
   --disable-cairo-output
   --disable-cms
-  --disable-libcurl
+  --disable-curl
   --disable-gtk-doc-html
   --disable-gtk-test
   --disable-poppler-cpp
@@ -34,5 +31,5 @@ configure-options =
 environment =
   PATH=${pkgconfig:location}/bin:%(PATH)s
   PKG_CONFIG_PATH=${fontconfig:location}/lib/pkgconfig:${freetype:location}/lib/pkgconfig:${libpng:location}/lib/pkgconfig
-  CPPFLAGS=-I${bzip2:location}/include -I${libjpeg:location}/include -I${libpng:location}/include -I${libtiff:location}/include -I${zlib:location}/include
-  LDFLAGS=-L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${jbigkit:location}/lib -Wl,-rpath=${jbigkit:location}/lib -L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -L${libtiff:location}/lib -Wl,-rpath=${libtiff:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
+  CPPFLAGS=-I${libjpeg:location}/include -I${libpng:location}/include -I${libtiff:location}/include -I${zlib:location}/include
+  LDFLAGS=-L${jbigkit:location}/lib -Wl,-rpath=${jbigkit:location}/lib -L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -L${libtiff:location}/lib -Wl,-rpath=${libtiff:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
diff --git a/component/python-2.6/buildout.cfg b/component/python-2.6/buildout.cfg
index cb46c70fd..cf1f16347 100644
--- a/component/python-2.6/buildout.cfg
+++ b/component/python-2.6/buildout.cfg
@@ -30,18 +30,16 @@ depends =
 # other settings in this part if we don't set it explicitly here.
 prefix = ${buildout:parts-directory}/${:_buildout_section_name_}
 version = 2.6
-package_version = ${:version}.8
-package_version_suffix = rc1
+package_version = ${:version}.7
 executable = ${:prefix}/bin/python${:version}
 
 url =
-  http://python.org/ftp/python/${:package_version}/Python-${:package_version}${:package_version_suffix}.tar.bz2
-md5sum = df6ccdac7da3b7c7c79124b92110277e
+  http://python.org/ftp/python/${:package_version}/Python-${:package_version}.tar.bz2
+md5sum = d40ef58ed88438a870bbeb0ac5d4217b
 patch-options = -p1
 patches =
   ${python-2.6.6-no_system_inc_dirs.patch:location}/${python-2.6.6-no_system_inc_dirs.patch:filename}
 configure-options =
-  --enable-ipv6
   --enable-unicode=ucs4
   --with-threads
 
diff --git a/component/python-2.7/buildout.cfg b/component/python-2.7/buildout.cfg
index fb5fc7ad3..e4a5f5cbc 100644
--- a/component/python-2.7/buildout.cfg
+++ b/component/python-2.7/buildout.cfg
@@ -3,7 +3,6 @@ extends =
   ../bzip2/buildout.cfg
   ../gdbm/buildout.cfg
   ../gettext/buildout.cfg
-  ../libexpat/buildout.cfg
   ../ncurses/buildout.cfg
   ../openssl/buildout.cfg
   ../readline/buildout.cfg
@@ -13,6 +12,21 @@ extends =
 parts =
     python2.7
 
+[python2.7]
+<= python2.7.2
+
+[python2.7.1]
+<= python2.7common
+package_version = 2.7.1
+md5sum = aa27bc25725137ba155910bd8e5ddc4f
+package_version_suffix =
+
+[python2.7.2]
+<= python2.7common
+package_version = 2.7.2
+md5sum = ba7b2f11ffdbf195ee0d111b9455a5bd
+package_version_suffix =
+
 [bootstrap2.7]
 recipe = zc.recipe.egg
 eggs = zc.buildout
@@ -22,12 +36,8 @@ scripts =
 arguments = sys.argv[1:] + ["bootstrap"]
 python = python2.7
 
-[python2.7]
+[python2.7common]
 recipe = hexagonit.recipe.cmmi
-package_version = 2.7.3
-package_version_suffix = rc1
-md5sum = 72aaa940dfa2777de161d7cb27c91df7
-
 depends =
   ${gdbm:version}
 # This is actually the default setting for prefix, but we can't use it in
@@ -39,11 +49,9 @@ executable = ${:prefix}/bin/python${:version}
 url =
   http://python.org/ftp/python/${:package_version}/Python-${:package_version}${:package_version_suffix}.tar.bz2
 configure-options =
-  --enable-ipv6
   --enable-unicode=ucs4
-  --with-system-expat
   --with-threads
 
 environment =
-  CPPFLAGS=-I${zlib:location}/include -I${readline:location}/include -I${libexpat:location}/include -I${ncurses:location}/include -I${ncurses:location}/include/ncursesw -I${bzip2:location}/include  -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include
-  LDFLAGS=-L${zlib:location}/lib -L${readline:location}/lib -L${libexpat:location}/lib -L${ncurses:location}/lib -L${bzip2:location}/lib -L${gdbm:location}/lib -L${openssl:location}/lib -L${sqlite3:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${readline:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${ncurses:location}/lib -Wl,-rpath=${bzip2:location}/lib -Wl,-rpath=${gdbm:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${sqlite3:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib
+  CPPFLAGS=-I${zlib:location}/include -I${readline:location}/include -I${ncurses:location}/include/ -I${ncurses:location}/include/ncursesw/ -I${bzip2:location}/include  -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include
+  LDFLAGS=-L${zlib:location}/lib -L${readline:location}/lib -L${ncurses:location}/lib -L${bzip2:location}/lib -L${gdbm:location}/lib -L${openssl:location}/lib -L${sqlite3:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${readline:location}/lib -Wl,-rpath=${ncurses:location}/lib -Wl,-rpath=${bzip2:location}/lib -Wl,-rpath=${gdbm:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${sqlite3:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib
diff --git a/component/readline/buildout.cfg b/component/readline/buildout.cfg
index 4210e38ad..273cbffb9 100644
--- a/component/readline/buildout.cfg
+++ b/component/readline/buildout.cfg
@@ -12,6 +12,18 @@ configure-options =
   --enable-multibyte
   --disable-static
 
+# readline-5.x is still used for GPL2 only softwares.
+[readline5]
+recipe = hexagonit.recipe.cmmi
+url = http://ftp.gnu.org/gnu/readline/readline-5.2.tar.gz
+md5sum = e39331f32ad14009b9ff49cc10c5e751
+configure-options =
+  --enable-multibyte
+  --disable-static
+  --with-ncurses=${ncurses:location}
+environment =
+    LDFLAGS =-Wl,-rpath=${ncurses:location}/lib
+
 [readline]
 recipe = hexagonit.recipe.cmmi
 url = http://ftp.gnu.org/gnu/readline/readline-6.2.tar.gz
diff --git a/component/sphinx/buildout.cfg b/component/sphinx/buildout.cfg
index b6ae4bf2f..bb8b0aa7c 100644
--- a/component/sphinx/buildout.cfg
+++ b/component/sphinx/buildout.cfg
@@ -21,7 +21,9 @@ recipe = hexagonit.recipe.cmmi
 url = http://sphinxsearch.com/files/sphinx-2.0.2-beta.tar.gz
 md5sum = fafe0f1a71d0ded32404c067eba7d0b3
 configure-options =
-  --with-mysql=${mariadb:location}
+  --with-mysql
+  --with-mysql-includes=${mariadb:location}/include/mysql
+  --with-mysql-libs=${mariadb:location}/lib/mysql
   --with-libstemmer
   --with-iconv
   --without-pgsql
diff --git a/component/tesseract/buildout.cfg b/component/tesseract/buildout.cfg
index 221bdd7ea..eb738c8c3 100644
--- a/component/tesseract/buildout.cfg
+++ b/component/tesseract/buildout.cfg
@@ -23,8 +23,6 @@ stop-on-error = yes
 recipe = hexagonit.recipe.cmmi
 url = http://tesseract-ocr.googlecode.com/files/tesseract-3.00.tar.gz
 md5sum = cc812a261088ea0c3d2da735be35d09f
-depends =
-  ${libtiff:version}
 configure-options =
   --disable-static
   --datarootdir=${tesseract-share:location}
diff --git a/component/tomcat/buildout.cfg b/component/tomcat/buildout.cfg
deleted file mode 100644
index 8ce1c3dec..000000000
--- a/component/tomcat/buildout.cfg
+++ /dev/null
@@ -1,22 +0,0 @@
-# Apache Tomcat - an open source software implementation of the Java Servlet and JavaServer Pages technologies.
-# http://tomcat.apache.org/
-
-[buildout]
-
-parts =
-  tomcat
-
-[tomcat]
-<= tomcat6
-
-[tomcat6]
-recipe = hexagonit.recipe.download
-strip-top-level-dir = true
-url = http://apache.multidist.com/tomcat/tomcat-6/v6.0.35/bin/apache-tomcat-6.0.35.tar.gz
-md5sum = 171d255cd60894b29a41684ce0ff93a8
-
-[tomcat7]
-recipe = hexagonit.recipe.download
-strip-top-level-dir = true
-url = http://apache.multidist.com/tomcat/tomcat-7/v7.0.25/bin/apache-tomcat-7.0.25.tar.gz
-md5sum = 2aa59d23555d641b20efad4aed86b693
diff --git a/component/wget/buildout.cfg b/component/wget/buildout.cfg
deleted file mode 100644
index 08195cc8d..000000000
--- a/component/wget/buildout.cfg
+++ /dev/null
@@ -1,25 +0,0 @@
-[buildout]
-extends =
-  ../openssl/buildout.cfg
-  ../pkgconfig/buildout.cfg
-  ../zlib/buildout.cfg
-parts =
-  wget
-
-[wget]
-recipe = hexagonit.recipe.cmmi
-url = http://ftp.gnu.org/gnu/wget/wget-1.13.4.tar.bz2
-md5sum = 12115c3750a4d92f9c6ac62bac372e85
-configure-options =
-  --enable-ipv6
-  --enable-opie
-  --disable-iri
-  --with-ssl=openssl
-  --with-libssl-prefix=${openssl:location}
-  --with-zlib-lib=${zlib:location}
-
-environment =
-  PATH=${pkgconfig:location}/bin:%(PATH)s
-  PKG_CONFIG_PATH=${openssl:location}/lib/pkgconfig
-  LDFLAGS=-L${zlib:location}/lib -L${openssl:location}/lib
-  CPPFLAGS=-I${zlib:location}/include -I${openssl:location}/include
diff --git a/component/xorg/buildout.cfg b/component/xorg/buildout.cfg
index edc919ff9..9258a76ce 100644
--- a/component/xorg/buildout.cfg
+++ b/component/xorg/buildout.cfg
@@ -13,8 +13,8 @@ parts =
   libXdmcp
   libXext
   libXau
+  libXinerama
   libSM
-  libXrender
 
 [xorg-aclocal]
 ACLOCAL=${xorg-util-macros:location}/share/aclocal
@@ -33,7 +33,6 @@ configure-options =
   --without-xmlto
   --without-fop
 environment =
-  PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig
   PATH=${libxml2:location}/bin:${pkgconfig:location}/bin:%(PATH)s
 
 [xextproto]
@@ -44,9 +43,6 @@ configure-options =
   --disable-specs
   --without-xmlto
   --without-fop
-environment =
-  PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig
-  PATH=${pkgconfig:location}/bin:%(PATH)s
 
 [xtrans]
 recipe = hexagonit.recipe.cmmi
@@ -57,7 +53,6 @@ configure-options =
   --without-xmlto
   --without-fop
 environment =
-  PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig
   PATH=${pkgconfig:location}/bin:%(PATH)s
 
 [libXau]
@@ -67,7 +62,7 @@ md5sum = 4a2cbd83727682f9ee1c1e719bac6adb
 configure-options =
   --disable-static
 environment =
-  PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${xproto:location}/lib/pkgconfig
+  PKG_CONFIG_PATH=${xproto:location}/lib/pkgconfig
   PATH=${pkgconfig:location}/bin:%(PATH)s
 
 [xcbproto]
@@ -104,7 +99,7 @@ recipe = hexagonit.recipe.cmmi
 url = http://www.x.org/releases/X11R7.6/src/lib/libXext-1.2.0.tar.bz2
 md5sum = 9bb236ff0193e9fc1c1fb504dd840331
 environment =
-  PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${xcbproto:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libxcb:location}/lib/pkgconfig
+  PKG_CONFIG_PATH=${xcbproto:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libxcb:location}/lib/pkgconfig
   CPPFLAGS=-I${xcbproto:location}/include -I${libXau:location}/include -I${xproto:location}/include -I${xorg-libpthread-stubs:location}/include -I${xextproto:location}/include -I${libX11:location}/include -I${libxcb:location}/include
   LD_LIBRARY_PATH=${xcbproto:location}/lib:${libXau:location}/lib:${xorg-libpthread-stubs:location}/lib:${xextproto:location}/lib:${libX11:location}/lib:${libxcb:location}/lib
   LD_RUN_PATH=${xcbproto:location}/lib:${libXau:location}/lib:${xorg-libpthread-stubs:location}/lib:${xextproto:location}/lib:${libX11:location}/lib:${libxcb:location}/lib
@@ -153,7 +148,7 @@ configure-options =
   --without-xmlto
   --without-fop
 environment =
-  PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${xproto:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig:${libxcb:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${inputproto:location}/lib/pkgconfig:${kbproto:location}/lib/pkgconfig
+  PKG_CONFIG_PATH=${xproto:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig:${libxcb:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${inputproto:location}/lib/pkgconfig:${kbproto:location}/lib/pkgconfig
   LD_LIBRARY_PATH=${xproto:location}/lib:${xextproto:location}/lib:${libxcb:location}/lib
   LD_RUN_PATH=${xproto:location}/lib:${xextproto:location}/lib:${libxcb:location}/lib
   PATH=${pkgconfig:location}/bin:%(PATH)s
@@ -334,7 +329,7 @@ configure-options =
   --without-xmlto
   --without-fop
 environment =
-  PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${xproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig
+  PKG_CONFIG_PATH=${xproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig
   PATH=${pkgconfig:location}/bin:%(PATH)s
 
 [libSM]
@@ -346,26 +341,10 @@ configure-options =
   --without-xmlto
   --without-fop
 environment =
-  PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${libICE:location}/lib/pkgconfig:${libuuid:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig
+  PKG_CONFIG_PATH=${libICE:location}/lib/pkgconfig:${libuuid:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig
   PATH=${pkgconfig:location}/bin:%(PATH)s
   LIBUUID_CFLAGS=-I${libuuid:location}/include
 
-[renderproto]
-recipe = hexagonit.recipe.cmmi
-url = http://www.x.org/releases/X11R7.6/src/proto/renderproto-0.11.1.tar.bz2
-md5sum = a914ccc1de66ddeb4b611c6b0686e274
-
-[libXrender]
-recipe = hexagonit.recipe.cmmi
-url = http://www.x.org/releases/X11R7.6/src/lib/libXrender-0.9.6.tar.bz2
-md5sum = 3b3b7d076c2384b6c600c0b5f4ba971f
-configure-options =
-  --disable-static
-environment =
-  PKG_CONFIG_PATH=${libX11:location}/lib/pkgconfig:${renderproto:location}/lib/pkgconfig:${xorg-util-macros:location}/share/pkgconfig
-  PATH=${pkgconfig:location}/bin:%(PATH)s
-  CPPFLAGS=-I${libX11:location}/include -I${renderproto:location}/include -I${xproto:location}/include
-
 [libXt]
 recipe = hexagonit.recipe.cmmi
 url = http://www.x.org/releases/X11R7.6/src/lib/libXt-1.0.9.tar.bz2
diff --git a/component/zlib/buildout.cfg b/component/zlib/buildout.cfg
index 830d92c8e..3afcf1f80 100644
--- a/component/zlib/buildout.cfg
+++ b/component/zlib/buildout.cfg
@@ -4,5 +4,5 @@ parts =
 
 [zlib]
 recipe = hexagonit.recipe.cmmi
-url = http://prdownloads.sourceforge.net/libpng/zlib-1.2.6.tar.bz2?download
-md5sum = dc2cfa0d2313ca77224b4d932b2911e9
+url = http://prdownloads.sourceforge.net/libpng/zlib-1.2.5.tar.gz?download
+md5sum = c735eab2d659a96e5a594c9e8541ad63
diff --git a/setup.py b/setup.py
index 825bc5f1c..0d0a20e6f 100644
--- a/setup.py
+++ b/setup.py
@@ -120,12 +120,8 @@ setup(name=name,
           'generate.cloudooo = slapos.recipe.generate_cloudooo:Recipe',
           'zeo = slapos.recipe.zeo:Recipe',
           'tidstorage = slapos.recipe.tidstorage:Recipe',
-          'erp5.bootstrap = slapos.recipe.erp5_bootstrap:Recipe',
-          'erp5.promise = slapos.recipe.erp5_promise:Recipe',
           'erp5.update = slapos.recipe.erp5_update:Recipe',
           'erp5.test = slapos.recipe.erp5_test:Recipe',
-          'generic.varnish = slapos.recipe.generic_varnish:Recipe',
-          'webchecker = slapos.recipe.web_checker:Recipe',
         ],
         'slapos.recipe.nosqltestbed.plugin': [
           'kumo = slapos.recipe.nosqltestbed.kumo:KumoTestBed',
diff --git a/slapos/recipe/apache_zope_backend/__init__.py b/slapos/recipe/apache_zope_backend/__init__.py
index 8da96f658..e4b23482e 100644
--- a/slapos/recipe/apache_zope_backend/__init__.py
+++ b/slapos/recipe/apache_zope_backend/__init__.py
@@ -33,33 +33,10 @@ class Recipe(GenericBaseRecipe):
     ip = self.options['ip']
     port = self.options['port']
     backend = self.options['backend']
-
-    apache_conf = dict()
-
-    scheme = self.options['scheme']
-    if scheme == 'http':
-      required_path_list = []
-      apache_conf['ssl_snippet'] = ''
-    elif scheme == 'https':
-      key = self.options['key-file']
-      certificate = self.options['cert-file']
-      required_path_list = [key, certificate]
-      apache_conf['key'] = key
-      apache_conf['certificate'] = certificate
-      apache_conf['ssl_session_cache'] = self.options['ssl-session-cache']
-      apache_conf['ssl_snippet'] = pkg_resources.resource_string(__name__,
-          'template/snippet.ssl.in') % apache_conf
-      if 'ssl-authentication' in self.options and self.optionIsTrue(
-          'ssl-authentication'):
-        apache_conf['ssl_snippet'] += pkg_resources.resource_string(__name__,
-          'template/snippet.ssl.ca.in') % dict(
-            ca_certificate=self.options['ssl-authentication-certificate'],
-            ca_crl=self.options['ssl-authentication-crl']
-          )
-    else:
-      raise ValueError, "Unsupported scheme %s" % scheme
-
+    key = self.options['key-file']
+    certificate = self.options['cert-file']
     access_control_string = self.options['access-control-string']
+    apache_conf = dict()
     apache_conf['pid_file'] = self.options['pid-file']
     apache_conf['lock_file'] = self.options['lock-file']
     apache_conf['ip'] = ip
@@ -68,10 +45,11 @@ class Recipe(GenericBaseRecipe):
     apache_conf['error_log'] = self.options['error-log']
     apache_conf['access_log'] = self.options['access-log']
     apache_conf['server_name'] = '%s' % apache_conf['ip']
+    apache_conf['certificate'] = certificate
+    apache_conf['key'] = key
     apache_conf['path'] = '/'
     apache_conf['access_control_string'] = access_control_string
-    apache_conf['rewrite_rule'] = "RewriteRule (.*) %s%s [L,P]" % (backend,
-      self.options.get('backend-path', '/'))
+    apache_conf['rewrite_rule'] = "RewriteRule (.*) %s$1 [L,P]" % backend
     apache_conf_string = pkg_resources.resource_string(__name__,
           'template/apache.zope.conf.in') % apache_conf
     apache_config_file = self.createFile(self.options['configuration-file'],
@@ -80,7 +58,7 @@ class Recipe(GenericBaseRecipe):
     wrapper = self.createPythonScript(self.options['wrapper'], __name__ +
       '.apache.runApache', [
             dict(
-              required_path_list=required_path_list,
+              required_path_list=[key, certificate],
               binary=self.options['apache-binary'],
               config=apache_config_file
             )
diff --git a/slapos/recipe/apache_zope_backend/template/apache.zope.conf.in b/slapos/recipe/apache_zope_backend/template/apache.zope.conf.in
index f39107b2f..ac689e15f 100644
--- a/slapos/recipe/apache_zope_backend/template/apache.zope.conf.in
+++ b/slapos/recipe/apache_zope_backend/template/apache.zope.conf.in
@@ -2,16 +2,12 @@
 # Automatically generated
 
 # List of modules
-LoadModule unixd_module modules/mod_unixd.so
-LoadModule access_compat_module modules/mod_access_compat.so
-LoadModule authz_core_module modules/mod_authz_core.so
 LoadModule authz_host_module modules/mod_authz_host.so
 LoadModule log_config_module modules/mod_log_config.so
 LoadModule setenvif_module modules/mod_setenvif.so
 LoadModule version_module modules/mod_version.so
 LoadModule proxy_module modules/mod_proxy.so
 LoadModule proxy_http_module modules/mod_proxy_http.so
-LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
 LoadModule ssl_module modules/mod_ssl.so
 LoadModule mime_module modules/mod_mime.so
 LoadModule dav_module modules/mod_dav.so
@@ -22,23 +18,24 @@ LoadModule headers_module modules/mod_headers.so
 
 # Basic server configuration
 PidFile "%(pid_file)s"
+LockFile "%(lock_file)s"
 Listen %(ip)s:%(port)s
 ServerAdmin %(server_admin)s
 TypesConfig conf/mime.types
 AddType application/x-compress .Z
 AddType application/x-gzip .gz .tgz
 
-ServerTokens Prod
-ServerSignature Off
-TraceEnable Off
-
-# Apache 2.4's default value (60 seconds) can be a bit too short
-TimeOut 300
-
 # As backend is trusting REMOTE_USER header unset it always
 RequestHeader unset REMOTE_USER
 
-%(ssl_snippet)s
+# SSL Configuration
+SSLEngine on
+SSLCertificateFile %(certificate)s
+SSLCertificateKeyFile %(key)s
+SSLRandomSeed startup builtin
+SSLRandomSeed connect builtin
+
+SSLProxyEngine On
 
 # Log configuration
 ErrorLog "%(error_log)s"
diff --git a/slapos/recipe/apache_zope_backend/template/snippet.ssl.ca.in b/slapos/recipe/apache_zope_backend/template/snippet.ssl.ca.in
deleted file mode 100644
index 58a774f75..000000000
--- a/slapos/recipe/apache_zope_backend/template/snippet.ssl.ca.in
+++ /dev/null
@@ -1,4 +0,0 @@
-SSLVerifyClient require
-RequestHeader set REMOTE_USER %%{SSL_CLIENT_S_DN_CN}s
-SSLCACertificateFile %(ca_certificate)s
-SSLCARevocationPath %(ca_crl)s
diff --git a/slapos/recipe/apache_zope_backend/template/snippet.ssl.in b/slapos/recipe/apache_zope_backend/template/snippet.ssl.in
deleted file mode 100644
index 0b9f8b357..000000000
--- a/slapos/recipe/apache_zope_backend/template/snippet.ssl.in
+++ /dev/null
@@ -1,12 +0,0 @@
-
-# SSL Configuration
-SSLEngine on
-SSLCertificateFile %(certificate)s
-SSLCertificateKeyFile %(key)s
-SSLRandomSeed startup builtin
-SSLRandomSeed connect builtin
-SSLProtocol -ALL +SSLv3 +TLSv1
-SSLHonorCipherOrder On
-SSLCipherSuite RC4-SHA:HIGH:!ADH
-SSLSessionCache shmcb:%(ssl_session_cache)s(512000)
-SSLProxyEngine On
diff --git a/slapos/recipe/certificate_authority/__init__.py b/slapos/recipe/certificate_authority/__init__.py
index 297182915..8cbbd7d08 100644
--- a/slapos/recipe/certificate_authority/__init__.py
+++ b/slapos/recipe/certificate_authority/__init__.py
@@ -45,14 +45,13 @@ class Recipe(GenericBaseRecipe):
   def install(self):
     path_list = []
 
-    ca_country_code = self.options.get('country-code', 'XX')
-    ca_email = self.options.get('email', 'xx@example.com')
-    # XXX-BBB: State by mistake has been configured as string "('State',)"
-    #          string, so keep this for backward compatibility of existing
-    #          automatically setup CAs
-    ca_state = self.options.get('state', "('State',)")
-    ca_city = self.options.get('city', 'City')
-    ca_company = self.options.get('company', 'Company')
+    # XXX: We gotta find better a way to get these options
+    ca_country_code = 'XX'
+    ca_email = 'xx@example.com'
+    ca_state = 'State',
+    ca_city = 'City'
+    ca_company = 'Company'
+    # XXX: end
 
     self.setPath()
 
diff --git a/slapos/recipe/davstorage/template/httpd.conf.in b/slapos/recipe/davstorage/template/httpd.conf.in
index 9fdea7ade..515593e8c 100644
--- a/slapos/recipe/davstorage/template/httpd.conf.in
+++ b/slapos/recipe/davstorage/template/httpd.conf.in
@@ -3,9 +3,6 @@ ServerRoot "%(server_root)s"
 Listen [%(ip)s]:%(port)s
 
 # Needed modules
-LoadModule unixd_module modules/mod_unixd.so
-LoadModule access_compat_module modules/mod_access_compat.so
-LoadModule authz_core_module modules/mod_authz_core.so
 LoadModule authn_file_module "%(modules_dir)s/mod_authn_file.so"
 LoadModule authz_host_module "%(modules_dir)s/mod_authz_host.so"
 LoadModule authz_user_module "%(modules_dir)s/mod_authz_user.so"
@@ -14,7 +11,6 @@ LoadModule auth_digest_module "%(modules_dir)s/mod_auth_digest.so"
 LoadModule log_config_module "%(modules_dir)s/mod_log_config.so"
 LoadModule headers_module "%(modules_dir)s/mod_headers.so"
 LoadModule setenvif_module "%(modules_dir)s/mod_setenvif.so"
-LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
 LoadModule ssl_module "%(modules_dir)s/mod_ssl.so"
 LoadModule mime_module "%(modules_dir)s/mod_mime.so"
 LoadModule dav_module "%(modules_dir)s/mod_dav.so"
@@ -29,6 +25,7 @@ ServerTokens ProductOnly
 
 DocumentRoot "%(document_root)s"
 PidFile "%(pid_file)s"
+LockFile "%(lock_file)s"
 DavLockDB "%(davlock_db)s"
 
 <Directory />
diff --git a/slapos/recipe/erp5/template/apache.zope.conf.in b/slapos/recipe/erp5/template/apache.zope.conf.in
index 973cd992f..a63d29299 100644
--- a/slapos/recipe/erp5/template/apache.zope.conf.in
+++ b/slapos/recipe/erp5/template/apache.zope.conf.in
@@ -2,16 +2,12 @@
 # Automatically generated
 
 # List of modules
-LoadModule unixd_module modules/mod_unixd.so
-LoadModule access_compat_module modules/mod_access_compat.so
-LoadModule authz_core_module modules/mod_authz_core.so
 LoadModule authz_host_module modules/mod_authz_host.so
 LoadModule log_config_module modules/mod_log_config.so
 LoadModule setenvif_module modules/mod_setenvif.so
 LoadModule version_module modules/mod_version.so
 LoadModule proxy_module modules/mod_proxy.so
 LoadModule proxy_http_module modules/mod_proxy_http.so
-LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
 LoadModule ssl_module modules/mod_ssl.so
 LoadModule mime_module modules/mod_mime.so
 LoadModule dav_module modules/mod_dav.so
@@ -23,6 +19,7 @@ LoadModule antiloris_module modules/mod_antiloris.so
 
 # Basic server configuration
 PidFile "%(pid_file)s"
+LockFile "%(lock_file)s"
 Listen %(ip)s:%(port)s
 ServerAdmin %(server_admin)s
 TypesConfig conf/mime.types
diff --git a/slapos/recipe/generic_mysql/template/mysql-init-function.sql.in b/slapos/recipe/erp5/template/mysql-init-function.sql.in
similarity index 73%
rename from slapos/recipe/generic_mysql/template/mysql-init-function.sql.in
rename to slapos/recipe/erp5/template/mysql-init-function.sql.in
index 6105ac73f..c4d0cbde4 100644
--- a/slapos/recipe/generic_mysql/template/mysql-init-function.sql.in
+++ b/slapos/recipe/erp5/template/mysql-init-function.sql.in
@@ -1,5 +1,5 @@
 USE mysql;
 DROP FUNCTION IF EXISTS last_insert_grn_id;
-CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.so';
+CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_groonga.so';
 DROP FUNCTION IF EXISTS sphinx_snippets;
 CREATE FUNCTION sphinx_snippets RETURNS STRING SONAME 'sphinx.so';
diff --git a/slapos/recipe/erp5_bootstrap/__init__.py b/slapos/recipe/erp5_bootstrap/__init__.py
deleted file mode 100644
index f6f1a99dc..000000000
--- a/slapos/recipe/erp5_bootstrap/__init__.py
+++ /dev/null
@@ -1,66 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2012 Vifib SARL and Contributors. All Rights Reserved.
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsibility of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# guarantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-
-from slapos.recipe.librecipe import GenericBaseRecipe
-import os
-import sys
-import urlparse
-
-class Recipe(GenericBaseRecipe):
-  """
-  Instanciate ERP5 in Zope
-  """
-
-  def install(self):
-    parsed = urlparse.urlparse(self.options['mysql-url'])
-    mysql_connection_string = "%(database)s@%(hostname)s:%(port)s "\
-        "%(username)s %(password)s" % dict(
-      database=parsed.path.split('/')[1],
-      hostname=parsed.hostname,
-      port=parsed.port,
-      username=parsed.username,
-      password=parsed.password
-    )
-
-    zope_parsed = urlparse.urlparse(self.options['zope-url'])
-
-    config = dict(
-      python_path=sys.executable,
-      user=zope_parsed.username,
-      password=zope_parsed.password,
-      site_id=zope_parsed.path.split('/')[1],
-      host="%s:%s" % (zope_parsed.hostname, zope_parsed.port),
-      sql_connection_string=mysql_connection_string,
-    )
-
-    # Runners
-    runner_path = self.createExecutable(
-      self.options['runner-path'],
-      self.substituteTemplate(self.getTemplateFilename('erp5_bootstrap.in'),
-                              config))
-
-    return [runner_path]
diff --git a/slapos/recipe/erp5_bootstrap/template/erp5_bootstrap.in b/slapos/recipe/erp5_bootstrap/template/erp5_bootstrap.in
deleted file mode 100644
index c3087f8dc..000000000
--- a/slapos/recipe/erp5_bootstrap/template/erp5_bootstrap.in
+++ /dev/null
@@ -1,35 +0,0 @@
-#!%(python_path)s
-
-import httplib
-import urllib
-import base64
-
-user = "%(user)s"
-password = "%(password)s"
-host = "%(host)s"
-site_id = "%(site_id)s"
-erp5_catalog_storage = 'erp5_mysql_innodb_catalog'
-mysql_url = "%(sql_connection_string)s"
-
-header_dict = {'Authorization': 'Basic %%s' %% \
-  base64.encodestring('%%s:%%s' %% (user, password)).strip()}
-zope_connection = httplib.HTTPConnection(host)
-
-# Check if an ERP5 site is already created, as ERP5 does support having
-# 2 instances in the same zope, and this script should not destroy user data
-zope_connection.request('GET', '/isERP5SitePresent', headers=header_dict)
-result = zope_connection.getresponse()
-
-if result.status == 204: # and (result.read() == "False"):
-
-  # Create the expected ERP5 instance
-  zope_connection.request(
-    'POST', '/manage_addProduct/ERP5/manage_addERP5Site',
-    urllib.urlencode({
-      'id': site_id,
-      'erp5_catalog_storage': erp5_catalog_storage,
-      'erp5_sql_connection_string': mysql_url,
-      'cmf_activity_sql_connection_string': mysql_url,
-    }),
-    headers=header_dict)
-
diff --git a/slapos/recipe/erp5_promise/__init__.py b/slapos/recipe/erp5_promise/__init__.py
deleted file mode 100644
index dec8b1cb5..000000000
--- a/slapos/recipe/erp5_promise/__init__.py
+++ /dev/null
@@ -1,52 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2012 Vifib SARL and Contributors. All Rights Reserved.
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsibility of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# guarantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-
-from slapos.recipe.librecipe import GenericBaseRecipe
-import ConfigParser
-
-class Recipe(GenericBaseRecipe):
-  """
-  Generate ERP5 promise configuration file
-  """
-
-  def install(self):
-
-    promise_parser = ConfigParser.RawConfigParser()
-
-    promise_parser.add_section('portal_templates')
-    promise_parser.set('portal_templates', 'repository', self.options['bt5-repository-url'])
-    promise_parser.set('portal_templates', 'expected_bt5', self.options['bt5'])
-
-    promise_parser.add_section('external_service')
-    promise_parser.set('external_service', 'cloudooo_url', self.options['cloudooo-url'])
-    promise_parser.set('external_service', 'memcached_url', self.options['memcached-url'])
-    promise_parser.set('external_service', 'kumofs_url', self.options['kumofs-url'])
-    promise_parser.set('external_service', 'smtp_url', self.options['smtp-url'])
-
-    promise_parser.write(open(self.options['promise-path'], 'w'))
-
-    return [self.options['promise-path']]
diff --git a/slapos/recipe/fontconfig/template/fontconfig.cfg.in b/slapos/recipe/fontconfig/template/fontconfig.cfg.in
index 9167e6c7c..c6799d21d 100644
--- a/slapos/recipe/fontconfig/template/fontconfig.cfg.in
+++ b/slapos/recipe/fontconfig/template/fontconfig.cfg.in
@@ -1,6 +1,5 @@
 <?xml version="1.0"?>
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
-<cachedir>~/.fontconfig</cachedir>
 %(font_folder_path_snippet)s
 </fontconfig>
\ No newline at end of file
diff --git a/slapos/recipe/generate_erp5_tidstorage.py b/slapos/recipe/generate_erp5_tidstorage.py
index 8ab68ed8d..cfc03e664 100644
--- a/slapos/recipe/generate_erp5_tidstorage.py
+++ b/slapos/recipe/generate_erp5_tidstorage.py
@@ -57,9 +57,6 @@ class Recipe(GenericSlapRecipe):
     known_tid_storage_identifier_dict = {}
     snippet_zeo = open(self.options['snippet-zeo']).read()
     for zeo_id, zeo_configuration_list in json_data['zeo'].iteritems():
-      if not type(zeo_configuration_list) in (type([]), type(set()), type(())):
-        raise ValueError('%s passed in json is not a list, json: %s.' % (
-          zeo_configuration_list, json_data))
       storage_list = []
       a = storage_list.append
       for zeo_slave in zeo_configuration_list:
@@ -95,8 +92,7 @@ class Recipe(GenericSlapRecipe):
     zeo_connection_string = '\n'.join(zeo_connection_list)
     zope_dict.update(
       timezone=json_data['timezone'],
-      zeo_connection_string=zeo_connection_string,
-      site_id=site_id,
+      zeo_connection_string=zeo_connection_string
     )
     # always one distribution node
     current_zope_port += 1
@@ -155,72 +151,32 @@ class Recipe(GenericSlapRecipe):
           longrequest_logger_interval=longrequest_logger_interval,
           **zope_dict)
         haproxy_backend_list.append('${%(part_name)s:ip}:${%(part_name)s:port}' % dict(part_name=part_name))
-
-      scheme = backend_configuration.get('scheme', ['https'])
-
       # now generate backend access
       current_apache_port += 1
       current_haproxy_port += 1
+      part_list.append('apache-%(backend_name)s ca-apache-%(backend_name)s logrotate-entry-apache-%(backend_name)s haproxy-%(backend_name)s' % dict(backend_name=backend_name))
       backend_dict = dict(
         backend_name=backend_name,
         apache_port=current_apache_port,
-        apache_public_port=current_apache_port+1,
         haproxy_port=current_haproxy_port,
         access_control_string=backend_configuration['access-control-string'],
         maxconn=backend_configuration['maxconn'],
         server_check_path='/%s/getId' % site_id,
-        haproxy_backend_list=' '.join(haproxy_backend_list),
-        ssl_authentication=backend_configuration.get('ssl-authentication',
-          False),
-        backend_path=backend_configuration.get('backend-path', '/') % {
-            'site-id': site_id}
-
+        haproxy_backend_list=' '.join(haproxy_backend_list)
       )
-      current_apache_port += 1
+      publish_url_list.append('url-%(backend_name)s = https://[${apache-%(backend_name)s:ip}]:${apache-%(backend_name)s:port}' % dict(
+        backend_name=backend_name))
       output += snippet_backend % backend_dict
-
-      if 'http' in scheme:
-        part_list.append('apache-public-%(backend_name)s logrotate-entry-apache-public-%(backend_name)s' % dict(backend_name=backend_name))
-        publish_url_list.append('url-public-%(backend_name)s = http://[${apache-public-%(backend_name)s:ip}]:${apache-public-%(backend_name)s:port}' % dict(
-          backend_name=backend_name))
-      if 'https' in scheme:
-        part_list.append('apache-%(backend_name)s ca-apache-%(backend_name)s logrotate-entry-apache-%(backend_name)s haproxy-%(backend_name)s' % dict(backend_name=backend_name))
-        publish_url_list.append('url-%(backend_name)s = https://[${apache-%(backend_name)s:ip}]:${apache-%(backend_name)s:port}' % dict(
-          backend_name=backend_name))
-
     output += SECTION_BACKEND_PUBLISHER + '\n'
     output += '\n'.join(publish_url_list)
     part_list.append('publish-apache-backend-list')
-    master_dict = self.parameter_dict.copy()
-    if 'erp5-ca' in json_data:
-      erp5_ca = json_data['erp5-ca']
-      # Fetching exactly named parameters from json in order to raise proper
-      # error if required
-      master_dict.update(
-        erp5_ca_country_code = erp5_ca['country-code'],
-        erp5_ca_email = erp5_ca['email'],
-        erp5_ca_state = erp5_ca['state'],
-        erp5_ca_city = erp5_ca['city'],
-        erp5_ca_company = erp5_ca['company']
-      )
-    else:
-      master_dict.update(dict(
-        erp5_ca_country_code = 'XX',
-        erp5_ca_email = 'xx@example.com',
-        # XXX-BBB: State by mistake has been configured as string "('State',)"
-        #          string, so keep this for backward compatibility of existing
-        #          automatically setup CAs
-        erp5_ca_state = "('State',)",
-        erp5_ca_city = 'City',
-        erp5_ca_company = 'Company'
-      ))
     prepend = open(self.options['snippet-master']).read() % dict(
         part_list='  \n'.join(['  '+q for q in part_list]),
         known_tid_storage_identifier_dict=known_tid_storage_identifier_dict,
         haproxy_section="haproxy-%s" % backend_name,
         zope_section=zope_id,
         site_id=site_id,
-        **master_dict
+        **self.parameter_dict
         )
     output = prepend + output
     with open(self.options['output'], 'w') as f:
diff --git a/slapos/recipe/generic_kumofs/__init__.py b/slapos/recipe/generic_kumofs/__init__.py
index 03d1a78b8..0b939c887 100644
--- a/slapos/recipe/generic_kumofs/__init__.py
+++ b/slapos/recipe/generic_kumofs/__init__.py
@@ -52,8 +52,7 @@ class Recipe(GenericBaseRecipe):
       kumo_manager_port=kumo_manager_port,
       kumo_server_port=kumo_server_port,
       kumo_server_listen_port=kumo_server_listen_port,
-      kumo_gateway_port=kumo_gateway_port,
-      shell_path=self.options['shell-path'],
+      kumo_gateway_port=kumo_gateway_port
     )
 
     path_list.append(self.createExecutable(self.options['gateway-wrapper'],
diff --git a/slapos/recipe/generic_kumofs/template/kumo_gateway.in b/slapos/recipe/generic_kumofs/template/kumo_gateway.in
index f18c8a4ec..912f8f100 100644
--- a/slapos/recipe/generic_kumofs/template/kumo_gateway.in
+++ b/slapos/recipe/generic_kumofs/template/kumo_gateway.in
@@ -1,2 +1,2 @@
-#!%(shell_path)s
+#!/bin/sh
 exec %(kumo_gateway_binary)s -F -E -m %(kumo_manager_ip)s:%(kumo_manager_port)s -t %(kumo_gateway_ip)s:%(kumo_gateway_port)s -o %(kumo_gateway_log)s
diff --git a/slapos/recipe/generic_kumofs/template/kumo_manager.in b/slapos/recipe/generic_kumofs/template/kumo_manager.in
index 25e2ed1a0..e63e3c569 100644
--- a/slapos/recipe/generic_kumofs/template/kumo_manager.in
+++ b/slapos/recipe/generic_kumofs/template/kumo_manager.in
@@ -1,2 +1,2 @@
-#!%(shell_path)s
+#!/bin/sh
 exec %(kumo_manager_binary)s -a -l %(kumo_manager_ip)s:%(kumo_manager_port)s -o %(kumo_manager_log)s
diff --git a/slapos/recipe/generic_kumofs/template/kumo_server.in b/slapos/recipe/generic_kumofs/template/kumo_server.in
index aba0ac6f2..81aeabb32 100644
--- a/slapos/recipe/generic_kumofs/template/kumo_server.in
+++ b/slapos/recipe/generic_kumofs/template/kumo_server.in
@@ -1,2 +1,2 @@
-#!%(shell_path)s
+#!/bin/sh
 exec %(kumo_server_binary)s -l %(kumo_server_ip)s:%(kumo_server_port)s -L %(kumo_server_listen_port)s -m %(kumo_manager_ip)s:%(kumo_manager_port)s -s %(kumo_server_storage)s -o %(kumo_server_log)s
diff --git a/slapos/recipe/generic_memcached/__init__.py b/slapos/recipe/generic_memcached/__init__.py
index fa6a40edd..7a3a77a2a 100644
--- a/slapos/recipe/generic_memcached/__init__.py
+++ b/slapos/recipe/generic_memcached/__init__.py
@@ -46,7 +46,6 @@ class Recipe(GenericBaseRecipe):
         memcached_binary=self.options['binary_path'],
         memcached_ip=self.options['ip'],
         memcached_port=self.options['port'],
-        shell_path=self.options['shell-path'],
     )
 
     executable_path = self.createExecutable(
diff --git a/slapos/recipe/generic_memcached/template/memcached.in b/slapos/recipe/generic_memcached/template/memcached.in
index 32bf42cb9..92dae43a9 100644
--- a/slapos/recipe/generic_memcached/template/memcached.in
+++ b/slapos/recipe/generic_memcached/template/memcached.in
@@ -1,2 +1,2 @@
-#!%(shell_path)s
+#!/bin/sh
 exec %(memcached_binary)s -p %(memcached_port)s -U %(memcached_port)s -l %(memcached_ip)s
diff --git a/slapos/recipe/generic_mysql/__init__.py b/slapos/recipe/generic_mysql/__init__.py
index c0ef36b46..6c36637d9 100644
--- a/slapos/recipe/generic_mysql/__init__.py
+++ b/slapos/recipe/generic_mysql/__init__.py
@@ -67,12 +67,6 @@ class Recipe(GenericBaseRecipe):
 
     mysql_script_list = []
 
-    # user defined functions
-    mysql_script_list.append(self.substituteTemplate(
-      self.getTemplateFilename('mysql-init-function.sql.in'),
-      {
-      }
-    ))
     # real database
     mysql_script_list.append(self.substituteTemplate(
       self.getTemplateFilename('initmysql.sql.in'),
diff --git a/slapos/recipe/generic_mysql/template/my.cnf.in b/slapos/recipe/generic_mysql/template/my.cnf.in
index 78e847cd8..25d951e86 100644
--- a/slapos/recipe/generic_mysql/template/my.cnf.in
+++ b/slapos/recipe/generic_mysql/template/my.cnf.in
@@ -17,15 +17,15 @@ pid-file = %(pid_file)s
 log-error = %(error_log)s
 slow_query_log
 slow_query_log_file = %(slow_query_log)s
-long_query_time = 1
+long_query_time = 5
 max_allowed_packet = 128M
 query_cache_size = 32M
 
-plugin-load = ha_mroonga.so;ha_sphinx.so;handlersocket.so
+plugin-load = ha_groonga.so;ha_sphinx.so
 
 # By default only 100 connections are allowed, when using zeo
 # we may have much more connections
-max_connections = 1000
+# max_connections = 1000
 
 # The following are important to configure and depend a lot on to the size of
 # your database and the available resources.
diff --git a/slapos/recipe/generic_varnish/__init__.py b/slapos/recipe/generic_varnish/__init__.py
deleted file mode 100644
index 4187b7ea0..000000000
--- a/slapos/recipe/generic_varnish/__init__.py
+++ /dev/null
@@ -1,77 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2012 Vifib SARL and Contributors. All Rights Reserved.
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsibility of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# guarantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-import os
-import re
-from slapos.recipe.librecipe import GenericSlapRecipe
-
-class Recipe(GenericSlapRecipe):
-  """
-    Instantiate varnish daemon
-
-    TODO:
-      - use varnish3.x and replace .vcl for it
-  """
-  def _install(self):
-    ip = self.options['ip']
-    backend_url = self.parameter_dict['tidstorage-url']
-    backend_ip, backend_port = self._getBackendServer(backend_url)
-    varnishd_manager_port = int(self.options['manager-port'])
-    varnishd_server_port = int(self.options['server-port'])
-    path_list = []
-    config = dict(
-      varnishd_binary=self.options['varnishd-binary'],
-      varnish_ip=ip,
-      varnishlog_binary=self.options['varnishlog-binary'],
-      varnishd_manager_port=varnishd_manager_port,
-      varnishd_server_port=varnishd_server_port,
-      varnishd_pid_file=self.options['pid-file'],
-      varnish_instance_name=self.options['varnish-instance-name'],
-      varnish_data=self.options['varnish-data'],
-      shell_path=self.options['shell-path'],
-      vcl_file=self.options['vcl-file'],
-      backend_ip = backend_ip,
-      backend_port = backend_port,
-      backend_server = "[%s]" % backend_ip,
-    )
-
-    path_list.append(self.createExecutable(self.options['varnishd-wrapper'],
-      self.substituteTemplate(self.getTemplateFilename('varnishd.in'),
-        config)))
-    path_list.append(self.createExecutable(self.options['varnishlog-wrapper'],
-      self.substituteTemplate(self.getTemplateFilename('varnishlog.in'),
-        config)))
-    path_list.append(self.createFile(self.options['vcl-file'],
-      self.substituteTemplate(self.getTemplateFilename('default.vcl.in'),
-        config)))
-    return path_list
-
-  def _getBackendServer(self, url):
-    r = re.compile('\/\/\[(.*)\]:(\d*)')
-    result = r.search(url)
-    ip = result.groups()[0]
-    port = result.groups()[1]
-    return (ip, port)
diff --git a/slapos/recipe/generic_varnish/template/default.vcl.in b/slapos/recipe/generic_varnish/template/default.vcl.in
deleted file mode 100644
index bac86d2dc..000000000
--- a/slapos/recipe/generic_varnish/template/default.vcl.in
+++ /dev/null
@@ -1,124 +0,0 @@
-#This is a basic VCL configuration file for varnish.  See the vcl(7)
-#man page for details on VCL syntax and semantics.
-#
-#Default backend definition.  Set this to point to your content
-#server.
-#
-backend default {
-  .host = "%(backend_ip)s";
-  .port = "%(backend_port)s";
-  .probe = {
-           .timeout = 30s;
-           .interval = 5s;
-           .window = 4;
-           .threshold = 3;
-           .request =
-             "OPTIONS /erp5/getId HTTP/1.1"
-             "Host: %(backend_server)s:%(backend_port)s"
-             "Accept-Encoding: identity"
-             "Connection: close"
-             "User-Agent: Varnish";
-  }
-}
-#
-#Below is a commented-out copy of the default VCL logic.  If you
-#redefine any of these subroutines, the built-in logic will be
-#appended to your code.
-#
-
-sub vcl_recv {
-  if (req.request != "GET" &&
-    req.request != "HEAD" &&
-    req.request != "PUT" &&
-    req.request != "POST" &&
-    req.request != "TRACE" &&
-    req.request != "OPTIONS" &&
-    req.request != "PURGE" &&
-    req.request != "DELETE") {
-      /* Non-RFC2616 or CONNECT which is weird. */
-      pipe;
-  }
-  if (req.request != "GET" && req.request != "HEAD" && req.request != "PURGE") {
-      /* We only deal with GET and HEAD by default */
-      pass;
-  }
-  remove req.http.Cookie;
-  remove req.http.Set-Cookie;
-  if (req.http.Accept-Encoding) {
-    if (req.http.Accept-Encoding ~ "gzip") {
-      set req.http.Accept-Encoding = "gzip";
-    } elsif (req.http.Accept-Encoding ~ "deflate") {
-      set req.http.Accept-Encoding = "deflate";
-    } else {
-      # unkown algorithm
-      remove req.http.Accept-Encoding;
-    }
-  }
-  # Force deflate
-  remove req.http.Accept-Encoding;
-  # We do not care about Accept-Language, this is url controlled
-  remove req.http.Accept-Language;
-  #if (req.request == "PURGE") {
-  #  if (!client.ip ~ purge) {
-  #    error 405 "Not allowed.";
-  #  }
-  #  purge_url(req.url);
-  #  error 200 "HASHPURGED";
-  #  unset req.http.x;
-  #}
-  set req.grace = 30d;
-  lookup;
-}
-
-sub vcl_hash {
-    set req.hash += req.url;
-    hash;
-}
-
-sub vcl_hit {
-   #if (req.request == "PURGE" && client.ip ~ purge) {
-   #  set obj.ttl = 0s;
-   #  error 200 "Purged.";
-   #}
-
-   #if (client.ip ~ purge){
-   #  # Force refresh from localhost
-   #  set obj.ttl = 0s;
-   #  return (restart);
-   #}
-   # According Vary Header do not return those headers
-   remove req.http.Accept-Language;
-   remove req.http.Accept-Encoding;
-   remove req.http.Cookie;
-   deliver;
-}
-
-sub vcl_miss {
-    fetch;
-}
-
-sub vcl_fetch {
-    /* Never send request to backend even if client ask refreshed content */
-    if (obj.cacheable) {
-       /* Setup grace period for 30days for all cacheable contents */
-      #set req.grace = 30d;
-      set obj.grace = 30d;
-      }
-   deliver;
-   }
-
-
-sub vcl_deliver {
-   if (obj.hits > 0) {
-     set resp.http.X-Cache = obj.hits;
-   } else {
-     set resp.http.X-Cache = "MISS";
-   }
-   #if (obj.hash) {
-   #  set resp.http.X-Hash = obj.hash;
-   #} else {
-   #  set resp.http.X-Hash = "No hash";
-   #}
-
-   deliver;
-}
diff --git a/slapos/recipe/generic_varnish/template/varnishd.in b/slapos/recipe/generic_varnish/template/varnishd.in
deleted file mode 100644
index c30582488..000000000
--- a/slapos/recipe/generic_varnish/template/varnishd.in
+++ /dev/null
@@ -1,15 +0,0 @@
-#!%(shell_path)s
-
-DAEMON_OPTS="-F \
-             -a %(varnish_ip)s:%(varnishd_server_port)s \
-             -T %(varnish_ip)s:%(varnishd_manager_port)s \
-             -n %(varnish_instance_name)s \
-             -f %(vcl_file)s \
-             -s file,%(varnish_data)s/varnish_storage.bin,1G"
-
-PIDFILE=%(varnishd_pid_file)s
-# exporting PATH here so that we will pass the PATH variable to the subprocess
-export PATH
-output=$(/bin/tempfile -s.varnish)
-exec %(varnishd_binary)s -P ${PIDFILE} ${DAEMON_OPTS} > ${output} 2>&1
-
diff --git a/slapos/recipe/generic_varnish/template/varnishlog.in b/slapos/recipe/generic_varnish/template/varnishlog.in
deleted file mode 100644
index 72141b9f7..000000000
--- a/slapos/recipe/generic_varnish/template/varnishlog.in
+++ /dev/null
@@ -1,6 +0,0 @@
-#!%(shell_path)s
-
-DAEMON_OPTS="-a %(varnish_ip)s:%(varnishd_server_port)s \
-             -n %(varnish_instance_name)s"
-
-exec %(varnishlog_binary)s ${DAEMON_OPTS} "$@"
diff --git a/slapos/recipe/generic_varnish/template/varnishlogd.in b/slapos/recipe/generic_varnish/template/varnishlogd.in
deleted file mode 100644
index b0f1e24dc..000000000
--- a/slapos/recipe/generic_varnish/template/varnishlogd.in
+++ /dev/null
@@ -1,22 +0,0 @@
-#!%(shell_path)s
-
-DAEMON_OPTS="-F \
-             -a %(varnish_ip)s:%(varnishd_server_port)s \
-             -T %(varnish_ip)s:%(varnishd_manager_port)s \
-             -n %(varnish_instance_name)s \
-             -f %(vcl_file)s \
-             -s file,%(varnish_data)s/varnish_storage.bin,1G"
-
-PIDFILE=%(varnishd_pid_file)s
-# exporting PATH here so that it will pass the PATH variable to the subprocess
-export PATH
-
-# If unset, or set to "0" or "no", exit
-if [ -z "${VARNISHLOG_ENABLED}" ] || \
-   [ "${VARNISHLOG_ENABLED}" = "0" ] || \
-   [ "${VARNISHLOG_ENABLED}" = "no" ]; then
-  exit 0;
-fi
-
-output=$(/bin/tempfile -s.varnish)
-exec %(varnishlog_binary)s ${DAEMON_OPTS} > ${output} 2>&1
diff --git a/slapos/recipe/generic_zope/__init__.py b/slapos/recipe/generic_zope/__init__.py
index 5f1b601ea..0c29ac934 100644
--- a/slapos/recipe/generic_zope/__init__.py
+++ b/slapos/recipe/generic_zope/__init__.py
@@ -128,13 +128,6 @@ class Recipe(GenericBaseRecipe):
     zope_conf_content = self.substituteTemplate(zope_wrapper_template_location,
       zope_config)
 
-    if ('promise-path' in self.options) and ('site-id' in self.options):
-      zope_conf_content += self.substituteTemplate(self.getTemplateFilename(
-          'zope.conf.promise.in'), {
-            'site-id': self.options['site-id'],
-            'promise-path': self.options['promise-path'],
-            })
-
     zope_conf_path = self.createFile(self.options['configuration-file'], zope_conf_content)
     path_list.append(zope_conf_path)
     # Create init script
diff --git a/slapos/recipe/generic_zope/template/zope.conf.in b/slapos/recipe/generic_zope/template/zope.conf.in
index 36f0fead1..3853b0d64 100644
--- a/slapos/recipe/generic_zope/template/zope.conf.in
+++ b/slapos/recipe/generic_zope/template/zope.conf.in
@@ -20,11 +20,6 @@ zserver-threads %(thread_amount)s
 pid-filename %(pid-filename)s
 lock-filename %(lock-filename)s
 
-# Encoding
-rest-input-encoding utf-8
-rest-output-encoding utf-8
-default-zpublisher-encoding utf-8
-
 # Temporary storage database (for sessions)
 <zodb_db temporary>
      <temporarystorage>
diff --git a/slapos/recipe/generic_zope/template/zope.conf.promise.in b/slapos/recipe/generic_zope/template/zope.conf.promise.in
deleted file mode 100644
index 692ae21c2..000000000
--- a/slapos/recipe/generic_zope/template/zope.conf.promise.in
+++ /dev/null
@@ -1,5 +0,0 @@
-
-# ERP5 promise
-<product-config /%(site-id)s>
-  promise_path %(promise-path)s
-</product-config>
diff --git a/slapos/recipe/generic_zope_zeo_client/__init__.py b/slapos/recipe/generic_zope_zeo_client/__init__.py
index f3ea8d574..94e4cf8b9 100644
--- a/slapos/recipe/generic_zope_zeo_client/__init__.py
+++ b/slapos/recipe/generic_zope_zeo_client/__init__.py
@@ -115,7 +115,7 @@ class Recipe(GenericBaseRecipe):
       TMPDIR=self.options['tmp-path'],
       HOME=self.options['tmp-path'],
       PATH=self.options['bin-path'],
-      TZ=self.options['timezone'],
+      TIMEZONE=self.options['timezone'],
     )
 
     # longrequestlogger product which requires environment settings
@@ -157,18 +157,6 @@ class Recipe(GenericBaseRecipe):
     if self.isTrueValue(self.options['timeserver']):
       zope_conf_content += self.substituteTemplate(self.getTemplateFilename(
           'zope.conf.timeserver.in'), {})
-    if 'tidstorage-ip' in self.options:
-      zope_conf_content += self.substituteTemplate(self.getTemplateFilename(
-          'zope.conf.tidstorage.in'), {
-            'tidstorage-ip': self.options['tidstorage-ip'],
-            'tidstorage-port': self.options['tidstorage-port'],
-            })
-    if ('promise-path' in self.options) and ('site-id' in self.options):
-      zope_conf_content += self.substituteTemplate(self.getTemplateFilename(
-          'zope.conf.promise.in'), {
-            'site-id': self.options['site-id'],
-            'promise-path': self.options['promise-path'],
-            })
 
     zope_conf_path = self.createFile(self.options['configuration-file'], zope_conf_content)
     path_list.append(zope_conf_path)
diff --git a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.in b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.in
index 72866b799..9f64fff79 100644
--- a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.in
+++ b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.in
@@ -20,11 +20,6 @@ zserver-threads %(thread_amount)s
 pid-filename %(pid-filename)s
 lock-filename %(lock-filename)s
 
-# Encoding
-rest-input-encoding utf-8
-rest-output-encoding utf-8
-default-zpublisher-encoding utf-8
-
 # Temporary storage database (for sessions)
 <zodb_db temporary>
      <temporarystorage>
diff --git a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.promise.in b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.promise.in
deleted file mode 100644
index 692ae21c2..000000000
--- a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.promise.in
+++ /dev/null
@@ -1,5 +0,0 @@
-
-# ERP5 promise
-<product-config /%(site-id)s>
-  promise_path %(promise-path)s
-</product-config>
diff --git a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.tidstorage.in b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.tidstorage.in
deleted file mode 100644
index d3e0bb4ba..000000000
--- a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.tidstorage.in
+++ /dev/null
@@ -1,6 +0,0 @@
-
-# TIDStorage connection
-<product-config TIDStorage>
-  backend-ip %(tidstorage-ip)s
-  backend-port %(tidstorage-port)s
-</product-config>
diff --git a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.timeserver.in b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.timeserver.in
index a1edc33f9..707c6bab6 100644
--- a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.timeserver.in
+++ b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.timeserver.in
@@ -2,5 +2,5 @@
 # ERP5 Timer Service
 %%import timerserver
 <timer-server>
-  interval 1
+  interval 5
 </timer-server>
diff --git a/slapos/recipe/lamp/template/apache.in b/slapos/recipe/lamp/template/apache.in
index b0b180872..1d7d6a94d 100644
--- a/slapos/recipe/lamp/template/apache.in
+++ b/slapos/recipe/lamp/template/apache.in
@@ -3,6 +3,7 @@
 
 # Basic server configuration
 PidFile "%(pid_file)s"
+LockFile "%(lock_file)s"
 Listen %(ip)s:%(port)s
 PHPINIDir %(php_ini_dir)s
 ServerAdmin someone@email
@@ -38,9 +39,6 @@ DocumentRoot %(document_root)s
 DirectoryIndex index.html index.php
 
 # List of modules
-LoadModule unixd_module modules/mod_unixd.so
-LoadModule access_compat_module modules/mod_access_compat.so
-LoadModule authz_core_module modules/mod_authz_core.so
 LoadModule authz_host_module modules/mod_authz_host.so
 LoadModule log_config_module modules/mod_log_config.so
 LoadModule setenvif_module modules/mod_setenvif.so
diff --git a/slapos/recipe/lamp/template/my.cnf.in b/slapos/recipe/lamp/template/my.cnf.in
index 1466632e5..00eb28023 100644
--- a/slapos/recipe/lamp/template/my.cnf.in
+++ b/slapos/recipe/lamp/template/my.cnf.in
@@ -21,7 +21,7 @@ long_query_time = 5
 max_allowed_packet = 128M
 query_cache_size = 32M
 
-plugin-load = ha_mroonga.so;ha_sphinx.so
+plugin-load = ha_groonga.so;ha_sphinx.so
 
 # The following are important to configure and depend a lot on to the size of
 # your database and the available resources.
diff --git a/slapos/recipe/logrotate.py b/slapos/recipe/logrotate.py
index 06a455379..42959a1c0 100644
--- a/slapos/recipe/logrotate.py
+++ b/slapos/recipe/logrotate.py
@@ -31,14 +31,23 @@ from slapos.recipe.librecipe import GenericBaseRecipe
 class Recipe(GenericBaseRecipe):
 
   def install(self):
+    logrotate_backup = self.options['backup']
     logrotate_d = self.options['logrotate-entries']
     logrotate_conf_file = self.options['conf']
 
     logrotate_conf = [
+      'daily',
+      'dateext',
+      'rotate 3650',
+      'compress',
       'compresscmd %s' % self.options['gzip-binary'],
       'compressoptions -9',
       'uncompresscmd %s' % self.options['gunzip-binary'],
+      'notifempty',
+      'sharedscripts',
+      'create',
       'include %s' % logrotate_d,
+      'olddir %s' % logrotate_backup,
     ]
 
     logrotate_conf_file = self.createFile(logrotate_conf_file, 
@@ -60,16 +69,7 @@ class Part(GenericBaseRecipe):
 
     logrotate_d = self.options['logrotate-entries']
 
-    conf = [
-      'daily',
-      'dateext',
-      'rotate 3650',
-      'compress',
-      'notifempty',
-      'sharedscripts',
-      'create',
-      'olddir %s' % self.options['backup'],
-    ]
+    conf = []
 
     if 'post' in self.options:
       conf.append("postrotate\n%s\nendscript" % self.options['post'])
diff --git a/slapos/recipe/mkdirectory.py b/slapos/recipe/mkdirectory.py
index 9ed44f14f..2eebf5579 100644
--- a/slapos/recipe/mkdirectory.py
+++ b/slapos/recipe/mkdirectory.py
@@ -33,12 +33,21 @@ class Recipe(GenericBaseRecipe):
   def _options(self, options):
     self.directory = options.copy()
     del self.directory['recipe']
-    self.mode = int(self.directory.pop('mode', '700'), 8)
+
+    str_mode = '0700'
+    if 'mode' in self.directory:
+      str_mode = self.directory['mode']
+      del self.directory['mode']
+    self.mode = int(str_mode, 8)
 
   def install(self):
-    for path in sorted(self.directory.values()):
+
+    for directory in sorted(self.directory.values()):
+      path = directory
+
       if not os.path.exists(path):
-        os.makedirs(path, self.mode)
+        os.mkdir(path, self.mode)
       elif not os.path.isdir(path):
         raise OSError("%s path exits, but it's not a directory.")
+
     return []
diff --git a/slapos/recipe/mysql/template/my.cnf.in b/slapos/recipe/mysql/template/my.cnf.in
index 5359785be..f72db9244 100644
--- a/slapos/recipe/mysql/template/my.cnf.in
+++ b/slapos/recipe/mysql/template/my.cnf.in
@@ -19,7 +19,7 @@ long_query_time = 5
 max_allowed_packet = 128M
 query_cache_size = 32M
 
-plugin-load = ha_mroonga.so;ha_sphinx.so
+plugin-load = ha_groonga.so;ha_sphinx.so
 
 # The following are important to configure and depend a lot on to the size of
 # your database and the available resources.
diff --git a/slapos/recipe/pulse2/template/apache.in.in b/slapos/recipe/pulse2/template/apache.in.in
index 5bcaade54..3a8a8c7f6 100644
--- a/slapos/recipe/pulse2/template/apache.in.in
+++ b/slapos/recipe/pulse2/template/apache.in.in
@@ -3,6 +3,7 @@
 
 # Basic server configuration
 PidFile "%(pid_file)s"
+LockFile "%(lock_file)s"
 Listen %(ip)s:%(port)s
 PHPINIDir %(php_ini_dir)s
 ServerAdmin someone@email
@@ -41,9 +42,6 @@ DocumentRoot %(document_root)s
 DirectoryIndex index.html index.php
 
 # List of modules
-LoadModule unixd_module modules/mod_unixd.so
-LoadModule access_compat_module modules/mod_access_compat.so
-LoadModule authz_core_module modules/mod_authz_core.so
 LoadModule authz_host_module modules/mod_authz_host.so
 LoadModule log_config_module modules/mod_log_config.so
 LoadModule setenvif_module modules/mod_setenvif.so
diff --git a/slapos/recipe/request.py b/slapos/recipe/request.py
index 52c8454f9..68405ab02 100644
--- a/slapos/recipe/request.py
+++ b/slapos/recipe/request.py
@@ -54,7 +54,7 @@ class Recipe(object):
       self.return_parameters = [str(parameter).strip()
                                for parameter in options['return'].split()]
     else:
-      self.logger.debug("No parameter to return to main instance."
+      self.logger.warning("No parameter to return to main instance."
                           "Be careful about that...")
 
     software_type = 'RootInstanceSoftware'
diff --git a/slapos/recipe/symbolic_link.py b/slapos/recipe/symbolic_link.py
index 4e1d97e47..2bcc01d6f 100644
--- a/slapos/recipe/symbolic_link.py
+++ b/slapos/recipe/symbolic_link.py
@@ -54,5 +54,3 @@ class Recipe:
       path_list.append(link)
 
     return path_list
-
-  update = install
diff --git a/slapos/recipe/web_checker/__init__.py b/slapos/recipe/web_checker/__init__.py
deleted file mode 100644
index 4101e5bf4..000000000
--- a/slapos/recipe/web_checker/__init__.py
+++ /dev/null
@@ -1,53 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2012 Vifib SARL and Contributors. All Rights Reserved.
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsibility of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# guarantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-import os
-import re
-from slapos.recipe.librecipe import GenericSlapRecipe
-
-class Recipe(GenericSlapRecipe):
-  """
-    Create web checker configuration.
-  """
-  def _install(self):
-    path_list = []
-    web_checker_mail_address = self.parameter_dict['web-checker-mail-address']
-    web_checker_smtp_host = self.parameter_dict['web-checker-smtp-host']
-    web_checker_working_directory = \
-      self.options['web-checker-working-directory']
-    config = dict(
-      web_checker_mail_address = web_checker_mail_address,
-      web_checker_smtp_host = web_checker_smtp_host,
-      web_checker_working_directory = web_checker_working_directory,
-      frontend_url = self.options['frontend-url'],
-      wget_binary_path = self.options['wget-binary-path'],
-      varnishlog_binary_path = self.options['varnishlog-binary-path'],
-      web_checker_log = self.options['web-checker-log'],
-    )
-    path_list.append(self.createFile(self.options['web-checker-config'],
-      self.substituteTemplate(self.getTemplateFilename('web_checker.cfg.in'),
-        config)))
-    return path_list
diff --git a/slapos/recipe/web_checker/template/web_checker.cfg.in b/slapos/recipe/web_checker/template/web_checker.cfg.in
deleted file mode 100644
index 8ac98a61c..000000000
--- a/slapos/recipe/web_checker/template/web_checker.cfg.in
+++ /dev/null
@@ -1,36 +0,0 @@
-[web_checker]
-url = %(frontend_url)s
-working_directory = %(web_checker_working_directory)s
-varnishlog_binary_path = %(varnishlog_binary_path)s
-wget_binary_path = %(wget_binary_path)s
-email_address = %(web_checker_mail_address)s
-smtp_host = %(web_checker_smtp_host)s
-debug_level = debug
-file_log_path = %(web_checker_log)s
-
-[header_list]
-Last-Modified = True
-Expires = True
-Vary = Accept-Language, Cookie, Accept-Encoding
-  Accept-Language, Cookie
-  Accept-Language,Cookie,Accept-Encoding
-  Accept-Language,Cookie
-  Accept-Encoding
-Cache-Control = max-age=300
-  max-age=3600
-
-[header url=(.*_form)]
-Vary = Accept-Encoding
-
-[header url=.*/favicon.ico]
-Last-Modified = True
-
-[no_header content-type=(image/.*|text/css|.*/javascript)]
-Vary = None
-
-[erp5_extension_list]
-prohibited_folder_name_list = web_page_module
-  document_module
-prohibited_file_name_list = WebSection_viewAsWeb
-  Base_viewHistory
-  list
diff --git a/slapos/recipe/xwiki/template/my.cnf.in b/slapos/recipe/xwiki/template/my.cnf.in
index 1466632e5..00eb28023 100644
--- a/slapos/recipe/xwiki/template/my.cnf.in
+++ b/slapos/recipe/xwiki/template/my.cnf.in
@@ -21,7 +21,7 @@ long_query_time = 5
 max_allowed_packet = 128M
 query_cache_size = 32M
 
-plugin-load = ha_mroonga.so;ha_sphinx.so
+plugin-load = ha_groonga.so;ha_sphinx.so
 
 # The following are important to configure and depend a lot on to the size of
 # your database and the available resources.
diff --git a/software/cloudooo/instance.cfg b/software/cloudooo/instance.cfg
index a1a1b42e2..5d3da358e 100644
--- a/software/cloudooo/instance.cfg
+++ b/software/cloudooo/instance.cfg
@@ -23,4 +23,4 @@ link_binary_list =
   ${pdftk:location}/bin/pdftk
 
 environment =
-  LD_LIBRARY_PATH = ${file:location}/lib:${fontconfig:location}/lib:${freetype:location}/lib:${libICE:location}/lib:${libpng12:location}/lib:${libSM:location}/lib:${libX11:location}/lib:${libXau:location}/lib:${libXdmcp:location}/lib:${libXext:location}/lib:${libxcb:location}/lib:${libXrender:location}/lib:${zlib:location}/lib
+  LD_LIBRARY_PATH = ${file:location}/lib:${fontconfig:location}/lib:${freetype:location}/lib:${libICE:location}/lib:${libSM:location}/lib:${libX11:location}/lib:${libXau:location}/lib:${libXdmcp:location}/lib:${libXext:location}/lib:${libXinerama:location}/lib:${libxcb:location}/lib:${zlib:location}/lib
diff --git a/software/cloudooo/software.cfg b/software/cloudooo/software.cfg
index 7f8143fb4..879ef71da 100644
--- a/software/cloudooo/software.cfg
+++ b/software/cloudooo/software.cfg
@@ -33,6 +33,6 @@ module = cloudooo
 # Default template for erp5 instance.
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance.cfg
-md5sum = 49da453a38dc5462c170747a029037b7
+md5sum = 2a38a928deb5870e02a8271b34341f5b
 output = ${buildout:directory}/template.cfg
 mode = 0644
diff --git a/software/erp5/instance-cloudooo.cfg b/software/erp5/instance-cloudooo.cfg
index 3428ecd13..894530fed 100644
--- a/software/erp5/instance-cloudooo.cfg
+++ b/software/erp5/instance-cloudooo.cfg
@@ -27,7 +27,7 @@ wrapper = $${basedirectory:services}/cloudooo
 data-directory = $${directory:cloudooo-data}
 
 environment =
-  LD_LIBRARY_PATH = ${file:location}/lib:${fontconfig:location}/lib:${freetype:location}/lib:${libICE:location}/lib:${libpng12:location}/lib:${libSM:location}/lib:${libX11:location}/lib:${libXau:location}/lib:${libXdmcp:location}/lib:${libXext:location}/lib:${libxcb:location}/lib:${libXrender:location}/lib:${zlib:location}/lib
+  LD_LIBRARY_PATH = ${file:location}/lib:${fontconfig:location}/lib:${freetype:location}/lib:${libICE:location}/lib:${libSM:location}/lib:${libX11:location}/lib:${libXau:location}/lib:${libXdmcp:location}/lib:${libXext:location}/lib:${libXinerama:location}/lib:${libxcb:location}/lib:${zlib:location}/lib
   FONTCONFIG_FILE = $${fontconfig-instance:conf-path}
 
 # Binary information
diff --git a/software/erp5/instance-erp5-development.cfg b/software/erp5/instance-erp5-development.cfg
index 1664c2c1a..605342eb6 100644
--- a/software/erp5/instance-erp5-development.cfg
+++ b/software/erp5/instance-erp5-development.cfg
@@ -54,11 +54,11 @@ ca-crl = $${test-cadirectory:crl}
 
 [test-cadirectory]
 recipe = slapos.cookbook:mkdirectory
-requests = $${directory:test-ca-dir}/requests
-private = $${directory:test-ca-dir}/private
-certs = $${directory:test-ca-dir}/certs
-newcerts = $${directory:test-ca-dir}/newcerts
-crl = $${directory:test-ca-dir}/crl
+requests = $${directory:test-ca-dir}/requests/
+private = $${directory:test-ca-dir}/private/
+certs = $${directory:test-ca-dir}/certs/
+newcerts = $${directory:test-ca-dir}/newcerts/
+crl = $${directory:test-ca-dir}/crl/
 
 [erp5-update]
 recipe = slapos.cookbook:erp5.update
@@ -117,13 +117,13 @@ software-type = kumofs
 # rest of parts are candidates for some generic stuff
 [basedirectory]
 recipe = slapos.cookbook:mkdirectory
-services = $${rootdirectory:etc}/run
+services = $${rootdirectory:etc}/run/
 
 [rootdirectory]
 recipe = slapos.cookbook:mkdirectory
-etc = $${buildout:directory}/etc
+etc = $${buildout:directory}/etc/
 
 [directory]
-test-ca-dir = $${rootdirectory:srv}/test-ca
-test-instance-path = $${rootdirectory:srv}/test-instance
-unit-test-path = $${:test-instance-path}/unit_test
+test-ca-dir = $${rootdirectory:srv}/test-ca/
+test-instance-path = $${rootdirectory:srv}/test-instance/
+unit-test-path = $${:test-instance-path}/unit_test/
diff --git a/software/erp5/instance-erp5-production.cfg b/software/erp5/instance-erp5-production.cfg
index 50e0c606d..5922f4460 100644
--- a/software/erp5/instance-erp5-production.cfg
+++ b/software/erp5/instance-erp5-production.cfg
@@ -34,7 +34,6 @@ partition-id = $${slap-connection:partition-id}
 name = Sphinx Search Engine
 software-type = sphinx
 sla-computer_guid = $${slap-parameter:sphinx-computer-guid}
-return = url-sphinx url-sphinx-sql
 
 [request-mariadb]
 <=request-common
@@ -66,30 +65,15 @@ sla-computer_guid = $${slap-parameter:kumofs-computer-guid}
 <=request-common
 name = TidStorage
 return = url-login
-config = json mysql-url memcached-url cloudooo-url kumofs-url sphinx-url-sphinx sphinx-url-sphinx-sql smtp-url bt5 bt5-repository-url
+config = json mysql-url memcached-url cloudooo-url kumofs-url
 config-json = $${slap-parameter:json}
 config-mysql-url = $${request-mariadb:connection-url}
 config-memcached-url = $${request-memcached:connection-url}
 config-cloudooo-url = $${request-cloudooo:connection-url}
 config-kumofs-url = $${request-kumofs:connection-url}
-config-sphinx-url-sphinx = $${request-sphinx:connection-url-sphinx}
-config-sphinx-url-sphinx-sql = $${request-sphinx:connection-url-sphinx-sql}
-config-bt5 = $${slap-parameter:bt5}
-config-bt5-repository-url = $${slap-parameter:bt5-repository-url}
-config-smtp-url = $${slap-parameter:smtp-url}
 software-type = tidstorage
 sla-computer_guid = $${slap-parameter:tidstorage-computer-guid}
 
-[request-varnish]
-<=request-common
-name = Varnish
-config = tidstorage-url
-config-tidstorage-url = $${request-tidstorage:connection-url-login}
-config-web-checker-mail-address = $${slap-parameter:web-checker-mail-address}
-config-web-checker-smtp-host = $${slap-parameter:web-checker-smtp-host}
-software-type = varnish
-sla-computer_guid = $${slap-parameter:varnish-computer-guid}
-
 [slap-parameter]
 # Default value if no computer_guid is specified for each type
 sphinx-computer-guid = $${slap-connection:computer-id}
@@ -98,15 +82,6 @@ cloudooo-computer-guid = $${slap-connection:computer-id}
 memcached-computer-guid = $${slap-connection:computer-id}
 kumofs-computer-guid = $${slap-connection:computer-id}
 tidstorage-computer-guid = $${slap-connection:computer-id}
-varnish-computer-guid = $${slap-connection:computer-id}
-cloudooo-json =
-bt5 = erp5_full_text_myisam_catalog
-  erp5_configurator_standard
-  erp5_configurator_maxma_demo
-  erp5_configurator_ung
-  erp5_configurator_run_my_doc
-bt5-repository-url = ${local-bt5-repository:list}
-smtp-url = smtp://localhost:25/
 
 # rest of parts are candidates for some generic stuff
 [basedirectory]
diff --git a/software/erp5/instance-kumofs.cfg b/software/erp5/instance-kumofs.cfg
index 4b1acb1b7..b8b49dd4a 100644
--- a/software/erp5/instance-kumofs.cfg
+++ b/software/erp5/instance-kumofs.cfg
@@ -42,7 +42,6 @@ kumo-server-log = $${basedirectory:log}/kumo-server.log
 kumo-gateway-binary = ${kumo:location}/bin/kumo-gateway
 kumo-manager-binary = ${kumo:location}/bin/kumo-manager
 kumo-server-binary = ${kumo:location}/bin/kumo-server
-shell-path = ${dash:location}/bin/dash
 
 [logrotate-entry-kumofs]
 <= logrotate
@@ -78,6 +77,7 @@ recipe = slapos.cookbook:mkdirectory
 cron-entries = $${rootdirectory:etc}/cron.d
 crontabs = $${rootdirectory:etc}/crontabs
 cronstamps = $${rootdirectory:etc}/cronstamps
+cronoutput = $${basedirectory:log}/cron
 logrotate-backup = $${basedirectory:backup}/logrotate
 logrotate-entries = $${rootdirectory:etc}/logrotate.d
 kumofs-data = $${rootdirectory:srv}/kumofs
@@ -95,13 +95,13 @@ dcrond-binary = ${dcron:location}/sbin/crond
 cron-entries = $${directory:cron-entries}
 crontabs = $${directory:crontabs}
 cronstamps = $${directory:cronstamps}
-catcher = $${cron-simplelogger:wrapper}
+catcher = $${cron-simplelogger:binary}
 binary = $${basedirectory:services}/crond
 
 [cron-simplelogger]
 recipe = slapos.cookbook:simplelogger
-wrapper = $${rootdirectory:bin}/cron_simplelogger
-log = $${basedirectory:log}/cron.log
+binary = $${rootdirectory:bin}/cron_simplelogger
+output = $${directory:cronoutput}
 
 [cron-entry-logrotate]
 <= cron
diff --git a/software/erp5/instance-mariadb.cfg b/software/erp5/instance-mariadb.cfg
index 04ed909b6..119f13885 100644
--- a/software/erp5/instance-mariadb.cfg
+++ b/software/erp5/instance-mariadb.cfg
@@ -115,13 +115,13 @@ dcrond-binary = ${dcron:location}/sbin/crond
 cron-entries = $${directory:cron-entries}
 crontabs = $${directory:crontabs}
 cronstamps = $${directory:cronstamps}
-catcher = $${cron-simplelogger:wrapper}
+catcher = $${cron-simplelogger:binary}
 binary = $${basedirectory:services}/crond
 
 [cron-simplelogger]
 recipe = slapos.cookbook:simplelogger
-wrapper = $${rootdirectory:bin}/cron_simplelogger
-log = $${basedirectory:log}/cron.log
+binary = $${rootdirectory:bin}/cron_simplelogger
+output = $${directory:cronoutput}
 
 [cron-entry-logrotate]
 <= cron
@@ -164,6 +164,7 @@ recipe = slapos.cookbook:mkdirectory
 cron-entries = $${rootdirectory:etc}/cron.d
 crontabs = $${rootdirectory:etc}/crontabs
 cronstamps = $${rootdirectory:etc}/cronstamps
+cronoutput = $${basedirectory:log}/cron
 ca-dir = $${rootdirectory:srv}/ssl
 mariadb-backup-full = $${basedirectory:backup}/mariadb-full
 mariadb-backup-incremental = $${basedirectory:backup}/mariadb-incremental
diff --git a/software/erp5/instance-memcached.cfg b/software/erp5/instance-memcached.cfg
index 4a90d757e..4ec3390f9 100644
--- a/software/erp5/instance-memcached.cfg
+++ b/software/erp5/instance-memcached.cfg
@@ -27,7 +27,6 @@ services = $${rootdirectory:etc}/run
 recipe = slapos.cookbook:generic.memcached
 wrapper_path = $${basedirectory:services}/memcached
 binary_path = ${memcached:location}/bin/memcached
-shell-path = ${dash:location}/bin/dash
 ip = $${slap-network-information:local-ipv4}
 port = 11000
 
diff --git a/software/erp5/instance-varnish.cfg b/software/erp5/instance-varnish.cfg
deleted file mode 100644
index d08d9de18..000000000
--- a/software/erp5/instance-varnish.cfg
+++ /dev/null
@@ -1,118 +0,0 @@
-[buildout]
-parts =
-  publish-varnish-connection-information
-  varnish-instance
-  web-checker
-  cron
-  cron-entry-logrotate
-  cron-entry-web-checker
-
-eggs-directory = ${buildout:eggs-directory}
-develop-eggs-directory = ${buildout:develop-eggs-directory}
-offline = true
-
-[publish-varnish-connection-information]
-recipe = slapos.cookbook:publishurl
-url = http://$${varnish-instance:ip}:$${varnish-instance:server-port}/
-
-[varnish-instance]
-recipe = slapos.cookbook:generic.varnish
-
-# Network options
-ip = $${slap-network-information:local-ipv4}
-server-port = 6001
-manager-port = 6002
-
-# Paths: Running wrappers
-varnishd-wrapper = $${basedirectory:services}/varnishd
-varnishlog-wrapper = $${rootdirectory:bin}/varnishlog
-
-# Binary information
-varnishd-binary = ${varnish:location}/sbin/varnishd
-varnishlog-binary = ${varnish:location}/bin/varnishlog
-shell-path = ${dash:location}/bin/dash
-# Configuration by VCL
-vcl-file = $${rootdirectory:etc}/default.vcl
-pid-file = $${basedirectory:run}/varnishd.pid
-varnish-data = $${directory:varnish-data}
-# this will pass at -n option
-varnish-instance-name = $${directory:varnish-instance}
-web-checker = ${buildout:bin-directory}/web_checker_utility
-
-[cron-entry-web-checker]
-<= cron
-recipe = slapos.cookbook:cron.d
-name = web-checker
-frequency = 0 0 * * *
-command = $${varnish-instance:web-checker} $${web-checker:web-checker-config}
-
-[web-checker]
-recipe = slapos.cookbook:webchecker
-web-checker-config = $${rootdirectory:etc}/web_checker.cfg
-web-checker-working-directory = $${directory:web-checker}
-# for now frontend-url is varnish, it will replace with the real front-end one.
-frontend-url = $${varnish-instance:ip}:$${varnish-instance:server-port}
-wget-binary-path = ${wget:location}/bin/wget
-varnishlog-binary-path = $${varnish-instance:varnishlog-wrapper}
-web-checker-log = $${basedirectory:log}/web-checker.log
-
-[cron]
-recipe = slapos.cookbook:cron
-dcrond-binary = ${dcron:location}/sbin/crond
-cron-entries = $${directory:cron-entries}
-crontabs = $${directory:crontabs}
-cronstamps = $${directory:cronstamps}
-binary = $${basedirectory:services}/crond
-catcher = $${cron-simplelogger:wrapper}
-
-[cron-simplelogger]
-recipe = slapos.cookbook:simplelogger
-wrapper = $${rootdirectory:bin}/cron_simplelogger
-log = $${basedirectory:log}/cron.log
-
-[cron-entry-logrotate]
-<= cron
-recipe = slapos.cookbook:cron.d
-name = logrotate
-frequency = 0 0 * * *
-command = $${logrotate:wrapper}
-
-[logrotate]
-recipe = slapos.cookbook:logrotate
-# Binaries
-logrotate-binary = ${logrotate:location}/usr/sbin/logrotate
-gzip-binary = ${gzip:location}/bin/gzip
-gunzip-binary = ${gzip:location}/bin/gunzip
-# Directories
-wrapper = $${rootdirectory:bin}/logrotate
-conf = $${rootdirectory:etc}/logrotate.conf
-logrotate-entries = $${directory:logrotate-entries}
-backup = $${directory:logrotate-backup}
-state-file = $${rootdirectory:srv}/logrotate.status
-
-[basedirectory]
-recipe = slapos.cookbook:mkdirectory
-services = $${rootdirectory:etc}/run
-run = $${rootdirectory:var}/run
-backup = $${rootdirectory:srv}/backup
-log = $${rootdirectory:var}/log
-backup = $${rootdirectory:srv}/backup
-
-[directory]
-recipe = slapos.cookbook:mkdirectory
-varnish-data = $${rootdirectory:srv}/varnish
-varnish-instance = $${directory:varnish-data}/instance
-cron-entries = $${rootdirectory:etc}/cron.d
-crontabs = $${rootdirectory:etc}/crontabs
-cronstamps = $${rootdirectory:etc}/cronstamps
-logrotate-backup = $${basedirectory:backup}/logrotate
-logrotate-entries = $${rootdirectory:etc}/logrotate.d
-web-checker = $${rootdirectory:srv}/web-checker
-
-[rootdirectory]
-recipe = slapos.cookbook:mkdirectory
-etc = $${buildout:directory}/etc
-var = $${buildout:directory}/var
-srv = $${buildout:directory}/srv
-bin = $${buildout:directory}/bin
-
diff --git a/software/erp5/instance-zope.cfg b/software/erp5/instance-zope.cfg
index 9474818db..9a71a931d 100644
--- a/software/erp5/instance-zope.cfg
+++ b/software/erp5/instance-zope.cfg
@@ -18,8 +18,8 @@ develop-eggs-directory = ${buildout:develop-eggs-directory}
 offline = true
 
 [slap-parameter]
-# By default, if no white list is specified, backend allows access to everyone
-access-control-string = all
+# By default backend disallows the access
+access-control-string = none
 
 [publish-apache-zope-backend-connection-string]
 recipe = slapos.cookbook:publish
@@ -38,11 +38,9 @@ configuration-file = $${directory:apache-conf}/apache.conf
 access-control-string = $${slap-parameter:access-control-string}
 pid-file = $${basedirectory:run}/apache.pid
 lock-file = $${basedirectory:run}/apache.lock
-ssl-session-cache = $${basedirectory:log}/apache-ssl-session-cache
 error-log = $${basedirectory:log}/apache-error.log
 access-log = $${basedirectory:log}/apache-access.log
 apache-binary = ${apache:location}/bin/httpd
-scheme = https
 
 [ca-apache-zope-backend]
 <= certificate-authority
@@ -134,13 +132,13 @@ dcrond-binary = ${dcron:location}/sbin/crond
 cron-entries = $${directory:cron-entries}
 crontabs = $${directory:crontabs}
 cronstamps = $${directory:cronstamps}
-catcher = $${cron-simplelogger:wrapper}
+catcher = $${cron-simplelogger:binary}
 binary = $${basedirectory:services}/crond
 
 [cron-simplelogger]
 recipe = slapos.cookbook:simplelogger
-wrapper = $${rootdirectory:bin}/cron_simplelogger
-log = $${basedirectory:log}/cron.log
+binary = $${rootdirectory:bin}/cron_simplelogger
+output = $${directory:cronoutput}
 
 [cron-entry-logrotate]
 <= cron
@@ -228,11 +226,11 @@ ca-crl = $${erp5-cadirectory:crl}
 
 [erp5-cadirectory]
 recipe = slapos.cookbook:mkdirectory
-requests = $${directory:erp5-ca-dir}/requests
-private = $${directory:erp5-ca-dir}/private
-certs = $${directory:erp5-ca-dir}/certs
-newcerts = $${directory:erp5-ca-dir}/newcerts
-crl = $${directory:erp5-ca-dir}/crl
+requests = $${directory:erp5-ca-dir}/requests/
+private = $${directory:erp5-ca-dir}/private/
+certs = $${directory:erp5-ca-dir}/certs/
+newcerts = $${directory:erp5-ca-dir}/newcerts/
+crl = $${directory:erp5-ca-dir}/crl/
 
 [directory]
 recipe = slapos.cookbook:mkdirectory
@@ -250,10 +248,11 @@ instance-constraint = $${:instance}/Constraint
 instance-import = $${:instance}/import
 instance-lib = $${:instance}/lib
 instance-tests = $${:instance}/tests
-erp5-ca-dir = $${rootdirectory:srv}/erp5-ca
+erp5-ca-dir = $${rootdirectory:srv}/erp5-ca/
 ca-dir = $${rootdirectory:srv}/ssl
 cron-entries = $${rootdirectory:etc}/cron.d
 crontabs = $${rootdirectory:etc}/crontabs
 cronstamps = $${rootdirectory:etc}/cronstamps
+cronoutput = $${basedirectory:log}/cron
 logrotate-backup = $${basedirectory:backup}/logrotate
 logrotate-entries = $${rootdirectory:etc}/logrotate.d
diff --git a/software/erp5/instance.cfg b/software/erp5/instance.cfg
index 82d61d9e3..8abb090d5 100644
--- a/software/erp5/instance.cfg
+++ b/software/erp5/instance.cfg
@@ -33,7 +33,6 @@ zope = ${template-zope:output}
 mariadb = ${template-mariadb:output}
 sphinx = ${template-sphinx:output}
 tidstorage = $${dynamic-template-tidstorage:output}
-varnish = ${template-varnish:output}
 
 [slap-connection]
 # part to migrate to new - separated words
diff --git a/software/erp5/snippet-backend.cfg b/software/erp5/snippet-backend.cfg
index 6effa6b4f..b18a7f208 100644
--- a/software/erp5/snippet-backend.cfg
+++ b/software/erp5/snippet-backend.cfg
@@ -1,40 +1,18 @@
-[apache-public-%(backend_name)s]
-recipe = slapos.cookbook:apache.zope.backend
-backend = http://$${haproxy-%(backend_name)s:ip}:$${haproxy-%(backend_name)s:port}/
-ip = $${slap-network-information:global-ipv6}
-port = %(apache_public_port)s
-scheme = http
-wrapper = $${basedirectory:services}/apache-public-%(backend_name)s
-configuration-file = $${directory:apache-conf}/apache-public-%(backend_name)s.conf
-access-control-string = %(access_control_string)s
-pid-file = $${basedirectory:run}/apache-public-%(backend_name)s.pid
-lock-file = $${basedirectory:run}/apache-public-%(backend_name)s.lock
-error-log = $${basedirectory:log}/apache-public-%(backend_name)s-error.log
-access-log = $${basedirectory:log}/apache-public-%(backend_name)s-access.log
-apache-binary = ${apache:location}/bin/httpd
-
 [apache-%(backend_name)s]
 recipe = slapos.cookbook:apache.zope.backend
-backend = http://$${haproxy-%(backend_name)s:ip}:$${haproxy-%(backend_name)s:port}
+backend = http://$${haproxy-%(backend_name)s:ip}:$${haproxy-%(backend_name)s:port}/
 ip = $${slap-network-information:global-ipv6}
 port = %(apache_port)s
 wrapper = $${rootdirectory:bin}/apache-%(backend_name)s
-scheme = https
 key-file = $${directory:apache-conf}/apache-%(backend_name)s.key
 cert-file = $${directory:apache-conf}/apache-%(backend_name)s.crt
 configuration-file = $${directory:apache-conf}/apache-%(backend_name)s.conf
 access-control-string = %(access_control_string)s
 pid-file = $${basedirectory:run}/apache-%(backend_name)s.pid
 lock-file = $${basedirectory:run}/apache-%(backend_name)s.lock
-ssl-session-cache = $${basedirectory:log}/apache-ssl-session-cache
 error-log = $${basedirectory:log}/apache-%(backend_name)s-error.log
 access-log = $${basedirectory:log}/apache-%(backend_name)s-access.log
 apache-binary = ${apache:location}/bin/httpd
-ssl-authentication = %(ssl_authentication)s
-backend-path = %(backend_path)s
-# Note: Without erp5-certificate-authority main certificate have to be hardcoded
-ssl-authentication-certificate = $${erp5-certificate-authority:ca-dir}/cacert.pem
-ssl-authentication-crl = $${erp5-certificate-authority:ca-crl}
 
 [ca-apache-%(backend_name)s]
 <= certificate-authority
@@ -44,13 +22,6 @@ cert-file = $${apache-%(backend_name)s:cert-file}
 executable = $${apache-%(backend_name)s:wrapper}
 wrapper = $${basedirectory:services}/apache-%(backend_name)s
 
-[logrotate-entry-apache-public-%(backend_name)s]
-<= logrotate
-recipe = slapos.cookbook:logrotate.d
-name = apache-public-%(backend_name)s
-log = $${apache-public-%(backend_name)s:error-log} $${apache-public-%(backend_name)s:access-log}
-post = ${buildout:bin-directory}/killpidfromfile $${apache-public-%(backend_name)s:pid-file} SIGUSR1
-
 [logrotate-entry-apache-%(backend_name)s]
 <= logrotate
 recipe = slapos.cookbook:logrotate.d
diff --git a/software/erp5/snippet-master.cfg b/software/erp5/snippet-master.cfg
index e0d52fe50..8c44deb8e 100644
--- a/software/erp5/snippet-master.cfg
+++ b/software/erp5/snippet-master.cfg
@@ -1,3 +1,15 @@
+#############################
+#
+# Instanciate zeo
+#
+# zeo-id -- local id of the requested zeo (1,2,3,...)
+#
+# zeo-port -- ip port to use to run the process
+#
+# storage_list -- string with list of all resquested storage
+#    Example: event_module person_module
+#
+#############################
 [buildout]
 parts =
   logrotate
@@ -9,8 +21,7 @@ parts =
   cron-entry-tidstorage-backup
   logrotate-entry-tidstorage
   binary-link
-  erp5-promise
-  erp5-bootstrap
+  erp5-update
   %(part_list)s
 
 eggs-directory = ${buildout:eggs-directory}
@@ -48,19 +59,28 @@ name = tidstorage
 log = $${tidstorage:logfile-name}
 post = ${buildout:bin-directory}/killpidfromfile $${tidstorage:pidfile-name} SIGHUP
 
+[directory]
+recipe = slapos.cookbook:mkdirectory
+cron-entries = $${rootdirectory:etc}/cron.d/
+crontabs = $${rootdirectory:etc}/crontabs/
+cronstamps = $${rootdirectory:etc}/cronstamps/
+cronoutput = $${basedirectory:log}/cron/
+logrotate-backup = $${basedirectory:backup}/logrotate/
+logrotate-entries = $${rootdirectory:etc}/logrotate.d/
+
 [cron]
 recipe = slapos.cookbook:cron
 dcrond-binary = ${dcron:location}/sbin/crond
 cron-entries = $${directory:cron-entries}
 crontabs = $${directory:crontabs}
 cronstamps = $${directory:cronstamps}
-catcher = $${cron-simplelogger:wrapper}
+catcher = $${cron-simplelogger:binary}
 binary = $${basedirectory:services}/crond
 
 [cron-simplelogger]
 recipe = slapos.cookbook:simplelogger
-wrapper = $${rootdirectory:bin}/cron_simplelogger
-log = $${basedirectory:log}/cron.log
+binary = $${rootdirectory:bin}/cron_simplelogger
+output = $${directory:cronoutput}
 
 [cron-entry-logrotate]
 <= cron
@@ -69,6 +89,8 @@ name = logrotate
 frequency = 0 0 * * *
 command = $${logrotate:wrapper}
 
+# rest of parts are candidates for some generic stuff
+
 [logrotate]
 recipe = slapos.cookbook:logrotate
 # Binaries
@@ -97,19 +119,14 @@ ca-private = $${erp5-cadirectory:private}
 ca-certs = $${erp5-cadirectory:certs}
 ca-newcerts = $${erp5-cadirectory:newcerts}
 ca-crl = $${erp5-cadirectory:crl}
-country-code = %(erp5_ca_country_code)s
-email = %(erp5_ca_email)s
-state = %(erp5_ca_state)s
-city = %(erp5_ca_city)s
-company = %(erp5_ca_company)s
 
 [erp5-cadirectory]
 recipe = slapos.cookbook:mkdirectory
-requests = $${directory:erp5-ca-dir}/requests
-private = $${directory:erp5-ca-dir}/private
-certs = $${directory:erp5-ca-dir}/certs
-newcerts = $${directory:erp5-ca-dir}/newcerts
-crl = $${directory:erp5-ca-dir}/crl
+requests = $${directory:erp5-ca-dir}/requests/
+private = $${directory:erp5-ca-dir}/private/
+certs = $${directory:erp5-ca-dir}/certs/
+newcerts = $${directory:erp5-ca-dir}/newcerts/
+crl = $${directory:erp5-ca-dir}/crl/
 
 [certificate-authority]
 recipe = slapos.cookbook:certificate_authority
@@ -124,33 +141,33 @@ ca-crl = $${cadirectory:crl}
 
 [cadirectory]
 recipe = slapos.cookbook:mkdirectory
-requests = $${directory:ca-dir}/requests
-private = $${directory:ca-dir}/private
-certs = $${directory:ca-dir}/certs
-newcerts = $${directory:ca-dir}/newcerts
-crl = $${directory:ca-dir}/crl
+requests = $${directory:ca-dir}/requests/
+private = $${directory:ca-dir}/private/
+certs = $${directory:ca-dir}/certs/
+newcerts = $${directory:ca-dir}/newcerts/
+crl = $${directory:ca-dir}/crl/
 
 [rootdirectory]
 recipe = slapos.cookbook:mkdirectory
-etc = $${buildout:directory}/etc
-var = $${buildout:directory}/var
-srv = $${buildout:directory}/srv
-bin = $${buildout:directory}/bin
-tmp = $${buildout:directory}/tmp
+etc = $${buildout:directory}/etc/
+var = $${buildout:directory}/var/
+srv = $${buildout:directory}/srv/
+bin = $${buildout:directory}/bin/
+tmp = $${buildout:directory}/tmp/
 
 [basedirectory]
 recipe = slapos.cookbook:mkdirectory
-log = $${rootdirectory:var}/log
-services = $${rootdirectory:etc}/run
-run = $${rootdirectory:var}/run
-backup = $${rootdirectory:srv}/backup
+log = $${rootdirectory:var}/log/
+services = $${rootdirectory:etc}/run/
+run = $${rootdirectory:var}/run/
+backup = $${rootdirectory:srv}/backup/
 
 [directory]
 recipe = slapos.cookbook:mkdirectory
-tidstorage = $${rootdirectory:srv}/tidstorage
-zodb = $${rootdirectory:srv}/zodb
+tidstorage = $${rootdirectory:srv}/tidstorage/
+zodb = $${rootdirectory:srv}/zodb/
 zodb-backup = $${basedirectory:backup}/zodb
-instance = $${rootdirectory:srv}/erp5shared
+instance = $${rootdirectory:srv}/erp5shared/
 instance-etc = $${:instance}/etc
 apache-conf = $${rootdirectory:etc}/apache
 instance-etc-package-include = $${:instance}/etc/package-include
@@ -163,13 +180,14 @@ instance-constraint = $${:instance}/Constraint
 instance-import = $${:instance}/import
 instance-lib = $${:instance}/lib
 instance-tests = $${:instance}/tests
-erp5-ca-dir = $${rootdirectory:srv}/erp5-ssl
-ca-dir = $${rootdirectory:srv}/ssl
-cron-entries = $${rootdirectory:etc}/cron.d
-crontabs = $${rootdirectory:etc}/crontabs
-cronstamps = $${rootdirectory:etc}/cronstamps
-logrotate-backup = $${basedirectory:backup}/logrotate
-logrotate-entries = $${rootdirectory:etc}/logrotate.d
+erp5-ca-dir = $${rootdirectory:srv}/erp5-ssl/
+ca-dir = $${rootdirectory:srv}/ssl/
+cron-entries = $${rootdirectory:etc}/cron.d/
+crontabs = $${rootdirectory:etc}/crontabs/
+cronstamps = $${rootdirectory:etc}/cronstamps/
+cronoutput = $${basedirectory:log}/cron/
+logrotate-backup = $${basedirectory:backup}/logrotate/
+logrotate-entries = $${rootdirectory:etc}/logrotate.d/
 
 [binary-link]
 recipe = slapos.cookbook:symbolic.link
@@ -196,19 +214,22 @@ link-binary =
   ${poppler:location}/bin/pdftotext
   ${poppler:location}/bin/pdftohtml
 
-[erp5-bootstrap]
-recipe = slapos.cookbook:erp5.bootstrap
-runner-path = $${basedirectory:services}/erp5-bootstrap
-mysql-url = %(mysql-url)s
-zope-url = http://$${%(zope_section)s:user}:$${%(zope_section)s:password}@$${%(zope_section)s:ip}:$${%(zope_section)s:port}/%(site_id)s
+[erp5-update]
+recipe = slapos.cookbook:erp5.update
 
-[erp5-promise]
-recipe = slapos.cookbook:erp5.promise
-promise-path = $${rootdirectory:etc}/erp5promise.cfg
+# Configuration
+url = http://$${%(zope_section)s:user}:$${%(zope_section)s:password}@$${%(zope_section)s:ip}:$${%(zope_section)s:port}/
+mysql-url = %(mysql-url)s
 kumofs-url = %(kumofs-url)s
 memcached-url = %(memcached-url)s
 cloudooo-url = %(cloudooo-url)s
-smtp-url = $${slap-parameter:smtp-url}
-bt5 = $${slap-parameter:bt5}
-bt5-repository-url = $${slap-parameter:bt5-repository-url}
+site-id = %(site_id)s
+openssl-binary = ${openssl:location}/bin/openssl
+cadir-path = $${erp5-certificate-authority:ca-dir}
+
+# Paths
+update-wrapper = $${basedirectory:services}/erp5-update
 
+# Defaults
+configurator-bt5-list = erp5_full_text_myisam_catalog erp5_configurator_standard erp5_configurator_maxma_demo erp5_configurator_ung erp5_configurator_ung erp5_configurator_run_my_doc
+bt5-repository-list = $${%(zope_section)s:bt5-repository-list}
diff --git a/software/erp5/snippet-zope.cfg b/software/erp5/snippet-zope.cfg
index b65c773ae..a4a9c581c 100644
--- a/software/erp5/snippet-zope.cfg
+++ b/software/erp5/snippet-zope.cfg
@@ -17,8 +17,6 @@ zeo-connection-string =
   %(zeo_connection_string)s
 
 timeserver = %(zope_timeserver)s
-tidstorage-ip = $${tidstorage:ip}
-tidstorage-port = $${tidstorage:port}
 
 # long request
 longrequest-logger-file = %(longrequest_logger_file)s
@@ -46,9 +44,6 @@ runzope-binary = ${buildout:bin-directory}/runzope
 # BT5 Configuration
 bt5-repository-list =
 
-promise-path = $${erp5-promise:promise-path}
-site-id = %(site_id)s
-
 [logrotate-entry-%(zope_id)s]
 <= logrotate
 recipe = slapos.cookbook:logrotate.d
diff --git a/software/erp5/software.cfg b/software/erp5/software.cfg
index 9c75576e6..9e1f72f9e 100644
--- a/software/erp5/software.cfg
+++ b/software/erp5/software.cfg
@@ -28,7 +28,7 @@ recipe = plone.recipe.command
 stop-on-error = true
 location = ${buildout:parts-directory}/${:_buildout_section_name_}
 command = ${git:location}/bin/git clone --branch erp5 --quiet http://git.erp5.org/repos/slapos.git ${:location}
-update-command = cd ${:location} && GIT_COMMITTER_EMAIL=nobody@example.com GIT_AUTHOR_NAME=Nobody GIT_AUTHOR_EMAIL=nobody@example.com ${git:location}/bin/git pull --quiet
+update-command = cd ${:location} && ${git:location}/bin/git pull --quiet
 
 [check-recipe]
 recipe = plone.recipe.command
@@ -41,12 +41,11 @@ recipe = zc.recipe.egg
 eggs = slapos.cookbook
 scripts =
 python = python2.6
-ugly-depend-on = ${slapos.cookbook-repository:command} ${slapos.cookbook-repository:update-command}
 
 [template-mariadb]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance-mariadb.cfg
-md5sum = 6580f1d431f65281c7aa1358a51cc292
+md5sum = 3225a2ba7337505bdeb95867f5028891
 output = ${buildout:directory}/template-mariadb.cfg
 mode = 0644
 
@@ -60,14 +59,14 @@ mode = 0644
 [template-zope]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance-zope.cfg
-md5sum = d3d221255f93a9ced82dcca9ca57f84e
+md5sum = 769a7ba8e8c5865637e374376be8cbcd
 output = ${buildout:directory}/template-zope.cfg
 mode = 0644
 
 [template-cloudooo]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance-cloudooo.cfg
-md5sum = e7698a0537785339e249bdc57f369e93
+md5sum = 8ea2839e951f26af2bc74b9a8c0fa5c2
 output = ${buildout:directory}/template-cloudooo.cfg
 mode = 0644
 
@@ -81,35 +80,35 @@ mode = 0644
 [template-kumofs]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance-kumofs.cfg
-md5sum = 9746823ccbbedf42b3e759c3e7150252
+md5sum = c12d8dc1925d16a75247971086734aa8
 output = ${buildout:directory}/template-kumofs.cfg
 mode = 0644
 
 [template]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance.cfg
-md5sum = f3443d071d8d7330b3453583e096fef0
+md5sum = 961d404f5726fce7c4d8b34d7e120077
 output = ${buildout:directory}/template.cfg
 mode = 0644
 
 [template-memcached]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance-memcached.cfg
-md5sum = 7ed1d93dafa76adc025acb2f0e08c05f
+md5sum = 9a1462f3e34b99f384ae47b48a3a733c
 output = ${buildout:directory}/template-memcached.cfg
 mode = 0644
 
 [template-erp5-development]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance-erp5-development.cfg
-md5sum = 4bc5a2ec8c04b206dab8b98258a69efd
+md5sum = 9af9db6f1220ffe42e030c81f9072669
 output = ${buildout:directory}/template-erp5-development.cfg
 mode = 0644
 
 [template-erp5-production]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance-erp5-production.cfg
-md5sum = 54ad3c5e92af02d0db98d1085adf986d
+md5sum = 32f6537110bbc29e7cc5613695863096
 output = ${buildout:directory}/template-erp5-production.cfg
 mode = 0644
 
@@ -123,31 +122,24 @@ mode = 0644
 [template-snippet-master]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/snippet-master.cfg
-md5sum = 14ffe48453a74190bdd289169220739f
+md5sum = c9bea484c2827954b9f9f728ce0342fb
 output = ${buildout:directory}/template-snippet-master.cfg
 mode = 0644
 
 [template-snippet-zope]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/snippet-zope.cfg
-md5sum = bcc68c31a16b35bee7111f9c6e02b781
+md5sum = 99fcce6aa6120787870522898650800d
 output = ${buildout:directory}/template-snippet-zope.cfg
 mode = 0644
 
 [template-snippet-backend]
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/snippet-backend.cfg
-md5sum = 3a1b359b57bf21a226bb96c0c18f1924
+md5sum = e2b26547ba1435ec1b8e8cd1de89e2c6
 output = ${buildout:directory}/template-snippet-backend.cfg
 mode = 0644
 
-[template-varnish]
-recipe = slapos.recipe.template
-url = ${:_profile_base_location_}/instance-varnish.cfg
-md5sum = 70fb0ccadf0d6723ddb0fe55a1549ca5
-output = ${buildout:directory}/template-varnish.cfg
-mode = 0644
-
 [validator]
 # Default json schema for instance parameters.
 recipe = slapos.recipe.template
@@ -161,9 +153,6 @@ mode = 0644
 #   Romain Courteaud
 #   Sebastien Robin
 #   Kazuhiko Shiozaki
-#   Cedric de Saint Martin
-#   Yingjie Xu
-#   Gabriel Monnerat
 signature-certificate-list =
   -----BEGIN CERTIFICATE-----
   MIIB4DCCAUkCADANBgkqhkiG9w0BAQsFADA5MQswCQYDVQQGEwJGUjEZMBcGA1UE
@@ -204,42 +193,3 @@ signature-certificate-list =
   KrDm39slYD/1KoE5kB4l/p6KVOdeJ4I6xcgu9rnkqqHzDwI4v7e8/D3WZbpiFUsY
   vaZhjNYKWQf79l6zXfOvphzJ
   -----END CERTIFICATE-----
-  -----BEGIN CERTIFICATE-----
-  MIIB9jCCAV+gAwIBAgIJAO4V/jiMoICoMA0GCSqGSIb3DQEBBQUAMBMxETAPBgNV
-  BAMMCENPTVAtMjMyMCAXDTEyMDIxNjExMTAyM1oYDzIxMTIwMTIzMTExMDIzWjAT
-  MREwDwYDVQQDDAhDT01QLTIzMjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
-  wi/3Z8W9pUiegUXIk/AiFDQ0UJ4JFAwjqr+HSRUirlUsHHT+8DzH/hfcTDX1I5BB
-  D1ADk+ydXjMm3OZrQcXjn29OUfM5C+g+oqeMnYQImN0DDQIOcUyr7AJc4xhvuXQ1
-  P2pJ5NOd3tbd0kexETa1LVhR6EgBC25LyRBRae76qosCAwEAAaNQME4wHQYDVR0O
-  BBYEFMDmW9aFy1sKTfCpcRkYnP6zUd1cMB8GA1UdIwQYMBaAFMDmW9aFy1sKTfCp
-  cRkYnP6zUd1cMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAskbFizHr
-  b6d3iIyN+wffxz/V9epbKIZVEGJd/6LrTdLiUfJPec7FaxVCWNyKBlCpINBM7cEV
-  Gn9t8mdVQflNqOlAMkOlUv1ZugCt9rXYQOV7rrEYJBWirn43BOMn9Flp2nibblby
-  If1a2ZoqHRxoNo2yTmm7TSYRORWVS+vvfjY=
-  -----END CERTIFICATE-----
-  -----BEGIN CERTIFICATE-----
-  MIIB9jCCAV+gAwIBAgIJAIlBksrZVkK8MA0GCSqGSIb3DQEBBQUAMBMxETAPBgNV
-  BAMMCENPTVAtMzU3MCAXDTEyMDEyNjEwNTUyOFoYDzIxMTIwMTAyMTA1NTI4WjAT
-  MREwDwYDVQQDDAhDT01QLTM1NzCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
-  ts+iGUwi44vtIfwXR8DCnLtHV4ydl0YTK2joJflj0/Ws7mz5BYkxIU4fea/6+VF3
-  i11nwBgYgxQyjNztgc9u9O71k1W5tU95yO7U7bFdYd5uxYA9/22fjObaTQoC4Nc9
-  mTu6r/VHyJ1yRsunBZXvnk/XaKp7gGE9vNEyJvPn2bkCAwEAAaNQME4wHQYDVR0O
-  BBYEFKuGIYu8+6aEkTVg62BRYaD11PILMB8GA1UdIwQYMBaAFKuGIYu8+6aEkTVg
-  62BRYaD11PILMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAMoTRpBxK
-  YLEZJbofF7gSrRIcrlUJYXfTfw1QUBOKkGFFDsiJpEg4y5pUk1s5Jq9K3SDzNq/W
-  it1oYjOhuGg3al8OOeKFrU6nvNTF1BAvJCl0tr3POai5yXyN5jlK/zPfypmQYxE+
-  TaqQSGBJPVXYt6lrq/PRD9ciZgKLOwEqK8w=
-  -----END CERTIFICATE-----
-  -----BEGIN CERTIFICATE-----
-  MIIB9jCCAV+gAwIBAgIJAPHoWu90gbsgMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNV
-  BAMMCXZpZmlibm9kZTAeFw0xMjAzMTkyMzIwNTVaFw0xMzAzMTkyMzIwNTVaMBQx
-  EjAQBgNVBAMMCXZpZmlibm9kZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
-  ozBijpO8PS5RTeKTzA90vi9ezvv4vVjNaguqT4UwP9+O1+i6yq1Y2W5zZxw/Klbn
-  oudyNzie3/wqs9VfPmcyU9ajFzBv/Tobm3obmOqBN0GSYs5fyGw+O9G3//6ZEhf0
-  NinwdKmrRX+d0P5bHewadZWIvlmOupcnVJmkks852BECAwEAAaNQME4wHQYDVR0O
-  BBYEFF9EtgfZZs8L2ZxBJxSiY6eTsTEwMB8GA1UdIwQYMBaAFF9EtgfZZs8L2ZxB
-  JxSiY6eTsTEwMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAc43YTfc6
-  baSemaMAc/jz8LNLhRE5dLfLOcRSoHda8y0lOrfe4lHT6yP5l8uyWAzLW+g6s3DA
-  Yme/bhX0g51BmI6gjKJo5DoPtiXk/Y9lxwD3p7PWi+RhN+AZQ5rpo8UfwnnN059n
-  yDuimQfvJjBFMVrdn9iP6SfMjxKaGk6gVmI=
-  -----END CERTIFICATE-----
diff --git a/software/erp5testnode/software.cfg b/software/erp5testnode/software.cfg
index b2451292a..2492dbef6 100644
--- a/software/erp5testnode/software.cfg
+++ b/software/erp5testnode/software.cfg
@@ -36,6 +36,11 @@ parts =
   zip
   git
 
+# Separate from site eggs
+allowed-eggs-from-site-packages =
+include-site-packages = false
+exec-sitecustomize = false
+
 # Use only quite well working sites.
 allow-hosts =
   *.nexedi.org
@@ -154,7 +159,7 @@ zc.buildout = 1.6.0-dev-SlapOS-003
 
 Jinja2 = 2.6
 Werkzeug = 0.8.2
-erp5.util = 0.4.1
+erp5.util = 0.3
 hexagonit.recipe.cmmi = 1.5.0
 lxml = 2.3.2
 meld3 = 0.6.7
diff --git a/software/vifib/software.cfg b/software/vifib/software.cfg
index 48dd29ac0..a4c0e306d 100644
--- a/software/vifib/software.cfg
+++ b/software/vifib/software.cfg
@@ -31,12 +31,8 @@ configurator_bt5_list = erp5_core_proxy_field_legacy erp5_full_text_myisam_catal
 [erp5_repository_list]
 repository_id_list += vifib/master
 
-[erp5]
-branch = interaction-drop
-
 [vifib]
 <= erp5
-branch = master
 repository = http://git.erp5.org/repos/slapos.core.git
 revision =
 
diff --git a/stack/cloudooo.cfg b/stack/cloudooo.cfg
index 00456586c..551890393 100644
--- a/stack/cloudooo.cfg
+++ b/stack/cloudooo.cfg
@@ -9,8 +9,7 @@ find-links = http://www.nexedi.org/static/packages/source/slapos.buildout/
     http://www.nexedi.org/static/packages/source/
 
 extends =
-  ../component/libreoffice-bin/buildout.cfg 
-  ../component/libpng/buildout.cfg
+  ../component/openoffice-bin/buildout.cfg 
   ../component/lxml-python/buildout.cfg
   ../component/python-2.6/buildout.cfg
   ../component/python-2.7/buildout.cfg
@@ -26,21 +25,20 @@ extends =
 versions = versions
 
 parts =
-  libreoffice-bin
+  openoffice-bin
 
 # basic Xorg
   libXdmcp
   libXext
   libXau
+  libXinerama
   libSM
-  libXrender
 
 # fonts
   liberation-fonts
   ipaex-fonts
 
 # Dependencies
-  libpng12
   imagemagick
   file
   xpdf 
diff --git a/stack/erp5.cfg b/stack/erp5.cfg
index 29e1fbbb7..93a48f1b2 100644
--- a/stack/erp5.cfg
+++ b/stack/erp5.cfg
@@ -32,7 +32,7 @@ allow-hosts =
 
 extends =
 # Exact version of Zope
-  http://svn.zope.org/repos/main/Zope/tags/2.12.22/versions.cfg
+  http://svn.zope.org/repos/main/Zope/tags/2.12.21/versions.cfg
   ../component/logrotate/buildout.cfg
   ../component/dcron/buildout.cfg
   ../component/file/buildout.cfg
@@ -46,7 +46,6 @@ extends =
   ../component/hookbox/buildout.cfg
   ../component/imagemagick/buildout.cfg
   ../component/kumo/buildout.cfg
-  ../component/libpng/buildout.cfg
   ../component/libreoffice-bin/buildout.cfg
   ../component/lxml-python/buildout.cfg
   ../component/percona-toolkit/buildout.cfg
@@ -74,16 +73,12 @@ extends =
   ../component/sed/buildout.cfg
   ../component/coreutils/buildout.cfg
   ../component/grep/buildout.cfg
-  ../component/dash/buildout.cfg
-  ../component/wget/buildout.cfg
-  ../component/aspell/buildout.cfg
 
 versions = versions
 
 parts =
   itools-build
   rdiff-backup
-  aspell
   apache
   apache-antiloris
   file
@@ -94,7 +89,6 @@ parts =
   stunnel
   w3m
   poppler
-  libpng12
   libpng
   ghostscript
   mariadb
@@ -114,8 +108,6 @@ parts =
   zabbix-agent
   pdftk
   dcron
-  dash
-  wget
 
 # Buildoutish
   eggs
@@ -126,8 +118,8 @@ parts =
   libXdmcp
   libXext
   libXau
+  libXinerama
   libSM
-  libXrender
 
 # fonts
   liberation-fonts
@@ -235,8 +227,8 @@ stop-on-error = true
 repository = http://git.erp5.org/repos/erp5.git
 branch = master
 revision =
-command = ${git:location}/bin/git clone --quiet --branch ${:branch} ${:repository} ${:location} && if [ -n "${:revision}" ]; then cd ${:location} && ${git:location}/bin/git reset --quiet --hard ${:revision} ; fi
-update-command = cd ${:location} && GIT_COMMITTER_EMAIL=nobody@example.com GIT_AUTHOR_NAME=Nobody GIT_AUTHOR_EMAIL=nobody@example.com ${git:location}/bin/git pull && if [ -n "${:revision}" ]; then echo "Resetting." ; cd ${:location} && ${git:location}/bin/git reset --hard ${:revision} ; fi
+command = ${git:location}/bin/git clone --quiet -b ${:branch} ${:repository} ${:location} && if [ -n "${:revision}" ]; then cd ${:location} && ${git:location}/bin/git reset --quiet --hard ${:revision} ; fi
+update-command = cd ${:location} && ${git:location}/bin/git pull --quiet && if [ -n "${:revision}" ]; then cd ${:location} && ${git:location}/bin/git reset --quiet --hard ${:revision} ; fi
 
 [products]
 # XXX: ERP5 related products are not defined as python distributions, so it is
@@ -277,15 +269,11 @@ initialization =
     [bt5_path, os.path.join(bt5_path, '*')]
     for bt5_path in (os.path.join(parts_directory, x, 'bt5')
                      for x in repository_id_list)), []))
-  sys.path[:0] = sum((
-    glob.glob(os.path.join(parts_directory, x, 'tests'))
-    for x in repository_id_list), [])
+  sys.path[:0] = [os.path.join(parts_directory, x, 'tests')
+                  for x in repository_id_list]
   sys.path[:0] = sum((
     glob.glob(os.path.join(parts_directory, x, 'product', '*', 'tests'))
     for x in repository_id_list), [])
-  sys.path[:0] = sum((
-    glob.glob(os.path.join(x, '*', 'tests'))
-    for x in reversed('''${products:list}'''.split())), [])
 
 [test_suite_runner]
 # XXX: Workaround for fact ERP5Type is not an distribution and does not
@@ -343,7 +331,6 @@ eggs =
   feedparser
   argparse
   validictory
-  erp5.util
 
 # Zope 2.12 with patched acquisition
   ZODB3
@@ -370,6 +357,7 @@ eggs =
   Products.MimetypesRegistry
   Products.ExternalEditor
   Products.TIDStorage
+  Products.Zelenium
 
 # Currently forked in our repository
 #    Products.PortalTransforms
@@ -386,7 +374,6 @@ scripts =
   runzeo
   tidstoraged
   tidstorage_repozo
-  web_checker_utility = erp5.util.webchecker:web_checker_utility
 
 extra-paths =
   ${itools:location}/lib
@@ -432,7 +419,7 @@ scripts =
 
 [versions]
 # Use SlapOS patched zc.buildout
-zc.buildout = 1.6.0-dev-SlapOS-004
+zc.buildout = 1.6.0-dev-SlapOS-003
 
 # pin Acquisition and Products.DCWorkflow to Nexedi flavour of eggs
 Acquisition = 2.13.7nxd001
@@ -456,10 +443,3 @@ setuptools =
 # official pysvn egg does not supports --include-dirs and
 # --library-dirs, so we use our modified version
 pysvn = 1.7.4nxd006
-
-# CMF 2.3 requries Zope 2.13.
-Products.CMFCalendar = 2.2.2
-Products.CMFCore = 2.2.5
-Products.CMFDefault = 2.2.2
-Products.CMFTopic = 2.2.1
-Products.CMFUid = 2.2.1
diff --git a/stack/tomcat.cfg b/stack/tomcat.cfg
index cd3752066..ee714f3a3 100644
--- a/stack/tomcat.cfg
+++ b/stack/tomcat.cfg
@@ -4,7 +4,6 @@ extends =
   ../component/java/buildout.cfg
   ../component/mysql-5.1/buildout.cfg
   ../component/python-2.7/buildout.cfg
-  ../component/tomcat/buildout.cfg
   ../stack/shacache-client.cfg
 
 find-links +=
@@ -43,6 +42,12 @@ recipe = hexagonit.recipe.download
 url = http://download.softagency.net/mysql/Downloads/Connector-J/mysql-connector-java-5.1.17.zip
 md5sum = 22e1aff6104bb9006f8744a02bf73124
 
+[tomcat]
+recipe = hexagonit.recipe.download
+strip-top-level-dir = true
+url = http://apache.multidist.com/tomcat/tomcat-6/v6.0.32/bin/apache-tomcat-6.0.32.zip
+md5sum = 082a0707985b6c029920d4d6d5ec11cd
+
 [eggs]
 recipe = zc.recipe.egg
 python = python2.7
-- 
2.30.9