diff --git a/compile_only_office.md b/compile_only_office.md new file mode 100644 index 0000000..1dd1803 --- /dev/null +++ b/compile_only_office.md @@ -0,0 +1,31 @@ +# Prérequis +Attention, recompiler onlyoffice à partir des sources prend un certain temps même sur une machine assez puissante et nécessite au moins 25Go d'espace libre. + +# Compilation : +- cloner le repo git suivant : https://github.com/ONLYOFFICE/build_tools.git +- aller au tag de son choix (ici 7.2.0-209) +- changer le nombre d'utilisateurs dans le script `scripts/build_server.py` +``` + base.replaceInFileRE(server_build_dir + "/Common/sources/commondefines.js", "const buildNumber = [0-9]*", "const buildNumber = " + build_number) + base.replaceInFileRE(server_build_dir + "/Common/sources/license.js", "const buildDate = '[0-9-/]*'", "const buildDate = '" + cur_date + "'") + base.replaceInFileRE(server_build_dir + "/Common/sources/commondefines.js", "const buildVersion = '[0-9.]*'", "const buildVersion = '" + product_version + "'") ++ # nombre d'utilisateurs fixé arbitrairement à 500 ++ base.replaceInFileRE(server_build_dir + "/Common/sources/constant.js", "export LICENSE_CONNECTIONS = '[0-9.]*'", "export LICENSE_CONNECTIONS = '" + "500" + "'") +``` +- Changer le dockerfile pour supprimer une erreur liée au dossier `tmp`. Attention, il faut compiler l'integralité de onlyoffice. Ne compiler que la partie serveur conduit à un problème pendant l'édition des liens. +``` +- CMD cd tools/linux/ & \ +- python3 ./automate.py ++ CMD chmod 1777 /tmp & cd tools/linux/ & \ ++ python3 ./automate.py +``` +- créer le conteneur +``` +docker build -t onlyoffice_build . +``` +- lancer la compilation +``` +docker run -e PRODUCT_VERSION='7.2.1' -e BUILD_NUMBER='9' -e NODE_ENV='production' -v $PWD/out:/build_tools/out onlyoffice_build +``` + +Une fois cette étape terminée, onlyoffice est compilé dans le dossier `out`. \ No newline at end of file