diff --git a/component/onlyoffice-core/buildout.cfg b/component/onlyoffice-core/buildout.cfg
new file mode 100644
index 0000000000000000000000000000000000000000..65298c4e23011a59de1cb2ab3c5556eb75ea60c0
--- /dev/null
+++ b/component/onlyoffice-core/buildout.cfg
@@ -0,0 +1,142 @@
+[buildout]
+extends =
+  ../gcc/buildout.cfg
+  ../binutils/buildout.cfg
+  ../curl/buildout.cfg
+  ../libxml2/buildout.cfg
+  ../zlib/buildout.cfg
+  ../boost-lib/buildout.cfg
+  ../icu/buildout.cfg
+# for 3dparty dependencies
+#   git is used by v8 fetch.sh
+  ../git/buildout.cfg
+#   bash is used to run fetch.sh
+  ../bash/buildout.cfg
+# for onlyoffice boost
+  ../bzip2/buildout.cfg
+  ../zlib/buildout.cfg
+# for qmake
+  ../qt/buildout.cfg
+# for binary wrapper
+  ../dash/buildout.cfg
+parts +=
+  onlyoffice-core
+
+[onlyoffice-core]
+# XXX please, put the v8 third party components in slapos !
+recipe = slapos.recipe.cmmi
+location = ${buildout:parts-directory}/${:_buildout_section_name_}
+# This url contains the hash provided by the DocumentServer core submodule hash.
+# https://github.com/ONLYOFFICE/DocumentServer/tree/ONLYOFFICE-DocumentServer-4.2.9
+url = https://github.com/ONLYOFFICE/core/archive/0bd10c28acd79a1e25a8b3fb94689819642e5eb5.tar.gz
+md5sum = f7e77ff35f12e9ab485b60b7889e5d53
+
+pre-configure-QMAKE_CXXFLAGS =
+  -std=c++11
+  -Wno-comment
+  -Wno-deprecated-declarations
+  -Wno-endif-labels
+  -Wno-parentheses
+  -Wno-reorder
+  -Wno-sign-compare
+  -Wno-switch
+  -Wno-unknown-pragmas
+  -Wno-unused
+  -I${curl:location}/include
+  -I${libxml2:location}/include
+  -I${zlib:location}/include
+pre-configure-QMAKE_LFLAGS =
+  -L${curl:location}/lib -Wl,-rpath=${curl:location}/lib
+  -L${libxml2:location}/lib -Wl,-rpath=${libxml2:location}/lib
+  -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
+pre-configure =
+  set -e -x
+# put QMAKE_{CXXFLAGS,LFLAGS} into shell vars
+  qmake_cxxflags=$(echo " ${:pre-configure-QMAKE_CXXFLAGS}" | sed ':a;N;$!ba;s/\n/ /g')
+  qmake_lflags=$(echo " ${:pre-configure-QMAKE_LFLAGS}" | sed ':a;N;$!ba;s/\n/ /g')
+
+# prepare spec for cryptopp third party (XXX use slapos cryptopp)
+  sed 's:^CRYPTOPP_QMAKE_SPEC=SED_IT$:CRYPTOPP_QMAKE_SPEC="${qt5-qmake:location}/qtbase/mkspecs/linux-g++":' -i Common/3dParty/cryptopp/build.sh
+
+# fix some typos
+  sed 's,\(include($$PWD/OfficeUtils.pri)\)),\1,g' -i OfficeUtils/OfficeUtils.pro
+  sed 's,\$\$SOURCES_UTILS,'"$PWD/OfficeUtils/src,g" -i OfficeUtils/OfficeUtils.pri
+
+# patch Makefile
+  sed 's@qmake -r@qmake -r -spec ${qt5-qmake:location}/qtbase/mkspecs/linux-g++ '"'QMAKE_CXXFLAGS +=$qmake_cxxflags' 'QMAKE_LFLAGS +=$qmake_lflags'@g" -i Makefile
+
+# link boost on 3dParty folders
+  mkdir -p Common/3dParty/boost/boost_1_58_0
+# XXX use symlinks !
+# XXX use shared libraries as most as possible !
+  cp -at Common/3dParty/boost/boost_1_58_0 ${onlyoffice-boost-lib-1.58.0:location}/*
+
+# link icu on 3dParty folders
+  mkdir -p Common/3dParty/icu/slapos/usr/local
+  ln -sfT ${icu4c-55.1:location}/lib Common/3dParty/icu/slapos/build
+  ln -sfT ${icu4c-55.1:location}/include Common/3dParty/icu/slapos/usr/local/include
+  for os in linux mac win ; do for arch in 64 32 ; do ln -sf slapos Common/3dParty/icu/$${os}_$${arch} ; done ; done
+
+  bash="${bash:location}/bin/bash"
+  ( cd Common/3dParty/v8 && "$bash" fetch.sh )
+  ( cd Common/3dParty/v8 && "$bash" build.sh )
+
+# Note: curl, cryptopp and pole third parties are already embedded.
+# Note: cef third party seems to be useless in core.
+
+configure-command = true
+make-targets = lib bin
+environment =
+  PATH=${gcc:location}/bin:${binutils:location}/bin:${qt5-qmake:location}/qtbase/bin:%(PATH)s
+#${git:location}/bin:
+  LD_LIBRARY_PATH=${gcc:location}/lib64:${gcc:location}/lib:${binutils:location}/lib:${qt5-qmake:location}/qtbase/lib
+post-install =
+# XXX check if `make install` is possible to use instead
+  set -e -x
+  mkdir -p ${:location}/bin ${:location}/lib
+  mv -t ${:location}/lib build/lib/*/*
+# the binary linux_64 in build/bin/AllFontsGen is renamed AllFontsGen here.
+  mv build/bin/AllFontsGen/* ${:location}/bin/AllFontsGen
+  mv -t ${:location}/bin build/bin/*/*
+
+# create wrapper for x2t binary
+  mv ${:location}/bin/x2t ${:location}/bin/x2t.bin
+  echo '#!/bin/sh
+  exec ${dash:location}/bin/dash -c '\''
+  export LD_LIBRARY_PATH="${onlyoffice-core:location}/lib:${icu4c-55.1:location}/lib:${curl:location}/lib$${LD_LIBRARY_PATH:-:$LD_LIBRARY_PATH}"
+# (XXX add boost/lib if we use it as shared library)
+  exec ${:location}/bin/x2t.bin "$@"'\'' "$0" "$@"' > ${:location}/bin/x2t
+  chmod +x ${:location}/bin/x2t
+
+# create wrapper for AllFontsGen binary
+  mv ${:location}/bin/AllFontsGen ${:location}/bin/AllFontsGen.bin
+  echo '#!/bin/sh
+  exec ${dash:location}/bin/dash -c '\''
+  export LD_LIBRARY_PATH="${gcc:location}/lib64:${gcc:location}/lib$${LD_LIBRARY_PATH:-:$LD_LIBRARY_PATH}"
+  exec ${:location}/bin/AllFontsGen.bin "$@"'\'' "$0" "$@"' > ${:location}/bin/AllFontsGen
+  chmod +x ${:location}/bin/AllFontsGen
+
+[onlyoffice-boost-lib-1.58.0]
+# The goal of this section is to compile boost-lib with the same compiler as [onlyoffice-core]
+<= boost-lib
+url = http://freefr.dl.sourceforge.net/project/boost/boost/1.58.0/boost_1_58_0.tar.gz
+md5sum = 5a5d5614d9a07672e1ab2a250b5defc5
+configure-command = ./bootstrap.sh --with-libraries=filesystem,system,date_time,regex --with-icu=${icu4c-55.1:location}
+make-targets = true
+post-install =
+  set -e -x
+# XXX should not be available only for linux_64 !
+#     please do the same magic as in [onlyoffice-core] :
+#     create dir `slapos` and add symlinks `{linux,mac,win}_{32,64}`
+  mkdir -p build/linux_64/static      && ./b2 --clean && ./bjam link=static                && cp stage/lib/* build/linux_64/static
+  mkdir -p build/linux_64/static_fpic && ./b2 --clean && ./bjam link=static cxxflags=-fPIC && cp stage/lib/* build/linux_64/static_fpic
+  mkdir -p build/linux_64/shared      && ./b2 --clean && ./bjam link=shared                && cp stage/lib/* build/linux_64/shared
+# XXX clean useless files !
+  mv -t ${:location} *
+environment =
+  PATH=${gcc:location}/bin:${binutils:location}/bin:%(PATH)s
+  LD_LIBRARY_PATH=${gcc:location}/lib64:${gcc:location}/lib:${binutils:location}/lib
+  BZIP2_INCLUDE=${bzip2:location}/include
+  BZIP2_LIBPATH=${bzip2:location}/lib
+  ZLIB_INCLUDE=${zlib:location}/include
+  ZLIB_LIBPATH=${zlib:location}/lib