diff --git a/install/common/logrotate/product-common b/install/common/logrotate/product-common index 0210509717..66a81ce9ab 100644 --- a/install/common/logrotate/product-common +++ b/install/common/logrotate/product-common @@ -1,4 +1,4 @@ -/var/log/onlyoffice/{{product}}/*.log { +/var/log/onlyoffice/docspace/*.log { daily missingok rotate 30 @@ -10,7 +10,7 @@ sharedscripts postrotate if pgrep -x ""systemd"" >/dev/null; then - systemctl restart {{product}}* > /dev/null + systemctl restart docspace* > /dev/null fi endscript } diff --git a/install/deb/debian/product-api-system.install b/install/deb/debian/product-api-system.install index 6b46d2e9b8..3277df707a 100644 --- a/install/deb/debian/product-api-system.install +++ b/install/deb/debian/product-api-system.install @@ -1 +1 @@ -../../../server/publish/services/ASC.ApiSystem/service/* var/www/{{product}}/services/ASC.ApiSystem +debian/build/server/publish/services/ASC.ApiSystem/service/* var/www/{{product}}/services/ASC.ApiSystem diff --git a/install/deb/debian/product-api.install b/install/deb/debian/product-api.install index c85fe6e657..0e69c5b67c 100644 --- a/install/deb/debian/product-api.install +++ b/install/deb/debian/product-api.install @@ -1 +1 @@ -../../../server/publish/services/ASC.Web.Api/service/* var/www/{{product}}/studio/ASC.Web.Api +debian/build/server/publish/services/ASC.Web.Api/service/* var/www/{{product}}/studio/ASC.Web.Api diff --git a/install/deb/debian/product-backup-background.install b/install/deb/debian/product-backup-background.install index 27548b1cab..2e713da2cb 100644 --- a/install/deb/debian/product-backup-background.install +++ b/install/deb/debian/product-backup-background.install @@ -1 +1 @@ -../../../server/publish/services/ASC.Data.Backup.BackgroundTasks/service/* var/www/{{product}}/services/ASC.Data.Backup.BackgroundTasks +debian/build/server/publish/services/ASC.Data.Backup.BackgroundTasks/service/* var/www/{{product}}/services/ASC.Data.Backup.BackgroundTasks diff --git a/install/deb/debian/product-backup.install b/install/deb/debian/product-backup.install index 28717b00c5..14cecc02f7 100644 --- a/install/deb/debian/product-backup.install +++ b/install/deb/debian/product-backup.install @@ -1 +1 @@ -../../../server/publish/services/ASC.Data.Backup/service/* var/www/{{product}}/services/ASC.Data.Backup +debian/build/server/publish/services/ASC.Data.Backup/service/* var/www/{{product}}/services/ASC.Data.Backup diff --git a/install/deb/debian/product-clear-events.install b/install/deb/debian/product-clear-events.install index 4e9420aaf5..52fac78296 100644 --- a/install/deb/debian/product-clear-events.install +++ b/install/deb/debian/product-clear-events.install @@ -1 +1 @@ -../../../server/publish/services/ASC.ClearEvents/service/* var/www/{{product}}/services/ASC.ClearEvents +debian/build/server/publish/services/ASC.ClearEvents/service/* var/www/{{product}}/services/ASC.ClearEvents diff --git a/install/deb/debian/product-common.install b/install/deb/debian/product-common.install index d303be5feb..4294882fc7 100644 --- a/install/deb/debian/product-common.install +++ b/install/deb/debian/product-common.install @@ -1,4 +1,4 @@ -../../config/*.json etc/onlyoffice/{{product}} -../../config/*.config etc/onlyoffice/{{product}} -../common/{{product}}-configuration usr/bin -../common/logrotate/{{product}}-common etc/logrotate.d +debian/build/buildtools/config/*.json etc/onlyoffice/{{product}} +debian/build/buildtools/config/*.config etc/onlyoffice/{{product}} +debian/build/buildtools/install/common/{{product}}-configuration usr/bin +debian/build/buildtools/install/common/logrotate/{{product}}-common etc/logrotate.d diff --git a/install/deb/debian/product-doceditor.install b/install/deb/debian/product-doceditor.install index b2bbffd73e..7421b7395c 100644 --- a/install/deb/debian/product-doceditor.install +++ b/install/deb/debian/product-doceditor.install @@ -1 +1 @@ -../../../publish/web/editor var/www/{{product}}/products/ASC.Files +debian/build/publish/web/editor var/www/{{product}}/products/ASC.Files diff --git a/install/deb/debian/product-files-services.install b/install/deb/debian/product-files-services.install index f338b066dc..750947fbea 100644 --- a/install/deb/debian/product-files-services.install +++ b/install/deb/debian/product-files-services.install @@ -1 +1 @@ -../../../server/publish/services/ASC.Files.Service/service var/www/{{product}}/products/ASC.Files +debian/build/server/publish/services/ASC.Files.Service/service var/www/{{product}}/products/ASC.Files diff --git a/install/deb/debian/product-files.install b/install/deb/debian/product-files.install index fd03d6ee7f..5e00b35483 100644 --- a/install/deb/debian/product-files.install +++ b/install/deb/debian/product-files.install @@ -1,2 +1,2 @@ -../../../server/publish/products/ASC.Files/server var/www/{{product}}/products/ASC.Files -../../../server/products/ASC.Files/Server/DocStore var/www/{{product}}/products/ASC.Files/server +debian/build/server/publish/products/ASC.Files/server var/www/{{product}}/products/ASC.Files +debian/build/server/products/ASC.Files/Server/DocStore var/www/{{product}}/products/ASC.Files/server diff --git a/install/deb/debian/product-healthchecks.install b/install/deb/debian/product-healthchecks.install index bf48a47894..dff0747586 100644 --- a/install/deb/debian/product-healthchecks.install +++ b/install/deb/debian/product-healthchecks.install @@ -1 +1 @@ -../../../server/publish/services/ASC.Web.HealthChecks.UI/service/* var/www/{{product}}/services/ASC.Web.HealthChecks.UI +debian/build/server/publish/services/ASC.Web.HealthChecks.UI/service/* var/www/{{product}}/services/ASC.Web.HealthChecks.UI diff --git a/install/deb/debian/product-login.install b/install/deb/debian/product-login.install index 413b3de2b9..00e34064ff 100644 --- a/install/deb/debian/product-login.install +++ b/install/deb/debian/product-login.install @@ -1 +1 @@ -../../../publish/web/login var/www/{{product}}/products/ASC.Login +debian/build/publish/web/login var/www/{{product}}/products/ASC.Login diff --git a/install/deb/debian/product-migration-runner.install b/install/deb/debian/product-migration-runner.install index 29a92c11fd..17508e9a11 100644 --- a/install/deb/debian/product-migration-runner.install +++ b/install/deb/debian/product-migration-runner.install @@ -1 +1 @@ -../../../server/ASC.Migration.Runner/service/* var/www/{{product}}/services/ASC.Migration.Runner +debian/build/server/ASC.Migration.Runner/service/* var/www/{{product}}/services/ASC.Migration.Runner diff --git a/install/deb/debian/product-notify.install b/install/deb/debian/product-notify.install index 8e430c3918..7982dede0b 100644 --- a/install/deb/debian/product-notify.install +++ b/install/deb/debian/product-notify.install @@ -1 +1 @@ -../../../server/publish/services/ASC.Notify/service/* var/www/{{product}}/services/ASC.Notify +debian/build/server/publish/services/ASC.Notify/service/* var/www/{{product}}/services/ASC.Notify diff --git a/install/deb/debian/product-people-server.install b/install/deb/debian/product-people-server.install index 2f325724d5..74c65b7ba6 100644 --- a/install/deb/debian/product-people-server.install +++ b/install/deb/debian/product-people-server.install @@ -1 +1 @@ -../../../server/publish/products/ASC.People/server var/www/{{product}}/products/ASC.People +debian/build/server/publish/products/ASC.People/server var/www/{{product}}/products/ASC.People diff --git a/install/deb/debian/product-proxy.install b/install/deb/debian/product-proxy.install index a61c53a36b..427252c97e 100644 --- a/install/deb/debian/product-proxy.install +++ b/install/deb/debian/product-proxy.install @@ -1,9 +1,9 @@ ## COPY PUBLIC ## -../../../buildtools/install/common/{{product}}-ssl-setup usr/bin -../../../buildtools/install/docker/config/nginx/templates/*.template etc/onlyoffice/{{product}}/openresty -../../../buildtools/install/docker/config/nginx/onlyoffice* etc/openresty/conf.d -../../config/nginx/onlyoffice*.conf etc/openresty/conf.d -../../../buildtools/install/docker/config/nginx/letsencrypt* etc/openresty/includes -../../config/nginx/includes/onlyoffice*.conf etc/openresty/includes -../../../publish/web/public/* var/www/{{product}}/public -../../../publish/web/client/* var/www/{{product}}/client +debian/build/buildtools/install/common/{{product}}-ssl-setup usr/bin +debian/build/buildtools/install/docker/config/nginx/templates/*.template etc/onlyoffice/{{product}}/openresty +debian/build/buildtools/install/docker/config/nginx/onlyoffice* etc/openresty/conf.d +debian/build/buildtools/config/nginx/onlyoffice*.conf etc/openresty/conf.d +debian/build/buildtools/install/docker/config/nginx/letsencrypt* etc/openresty/includes +debian/build/buildtools/config/nginx/includes/onlyoffice*.conf etc/openresty/includes +debian/build/publish/web/public/* var/www/{{product}}/public +debian/build/publish/web/client/* var/www/{{product}}/client diff --git a/install/deb/debian/product-radicale.install b/install/deb/debian/product-radicale.install index 61e6ce09fb..a062eedfc5 100644 --- a/install/deb/debian/product-radicale.install +++ b/install/deb/debian/product-radicale.install @@ -1 +1 @@ -../../../buildtools/install/RadicalePlugins/* var/www/{{product}}/Tools/radicale/plugins +debian/build/buildtools/install/RadicalePlugins/* var/www/{{product}}/Tools/radicale/plugins diff --git a/install/deb/debian/product-socket.install b/install/deb/debian/product-socket.install index e2c1d31ce3..acad076bd5 100644 --- a/install/deb/debian/product-socket.install +++ b/install/deb/debian/product-socket.install @@ -1 +1 @@ -../../../server/publish/services/ASC.Socket.IO/service/* var/www/{{product}}/services/ASC.Socket.IO +debian/build/server/publish/services/ASC.Socket.IO/service/* var/www/{{product}}/services/ASC.Socket.IO diff --git a/install/deb/debian/product-ssoauth.install b/install/deb/debian/product-ssoauth.install index 1b40fe9e22..a3f95dd880 100644 --- a/install/deb/debian/product-ssoauth.install +++ b/install/deb/debian/product-ssoauth.install @@ -1 +1 @@ -../../../server/publish/services/ASC.SsoAuth/service/* var/www/{{product}}/services/ASC.SsoAuth +debian/build/server/publish/services/ASC.SsoAuth/service/* var/www/{{product}}/services/ASC.SsoAuth diff --git a/install/deb/debian/product-studio-notify.install b/install/deb/debian/product-studio-notify.install index 80244625de..527f10f5b0 100644 --- a/install/deb/debian/product-studio-notify.install +++ b/install/deb/debian/product-studio-notify.install @@ -1 +1 @@ -../../../server/publish/services/ASC.Studio.Notify/service/* var/www/{{product}}/services/ASC.Studio.Notify +debian/build/server/publish/services/ASC.Studio.Notify/service/* var/www/{{product}}/services/ASC.Studio.Notify diff --git a/install/deb/debian/product-studio.install b/install/deb/debian/product-studio.install index 6fd4707c29..e29cabe416 100644 --- a/install/deb/debian/product-studio.install +++ b/install/deb/debian/product-studio.install @@ -1 +1 @@ -../../../server/publish/services/ASC.Web.Studio/service/* var/www/{{product}}/studio/ASC.Web.Studio +debian/build/server/publish/services/ASC.Web.Studio/service/* var/www/{{product}}/studio/ASC.Web.Studio diff --git a/install/deb/debian/rules b/install/deb/debian/rules index 4039cffd7a..081935c836 100755 --- a/install/deb/debian/rules +++ b/install/deb/debian/rules @@ -9,16 +9,19 @@ export DH_OPTIONS=-v dh $@ --with=systemd PRODUCT={{product}} -CURRENT_PATH=${CURDIR} -SRC_PATH=$(shell cd ../../../; pwd) -SCRIPT_PATH=buildtools/install/common +SOURCE_PATH=${CURDIR}/debian/source +BUILD_PATH=${CURDIR}/debian/build +BUILDTOOLS_PATH=${BUILD_PATH}/buildtools +SERVER_PATH=${BUILD_PATH}/server +CLENT_PATH=${BUILD_PATH}/client override_dh_auto_clean: @echo "RULES.$@" dh_testdir - rm -rf ${CURRENT_PATH}/debian/*.service - rm -rf ${CURRENT_PATH}/debian/*.lintian-overrides - rm -rf ${SRC_PATH}/buildtools/install/${PRODUCT}* + rm -rf ${BUILD_PATH} + rm -rf ${CURDIR}/debian/*.service + rm -rf ${CURDIR}/debian/*.lintian-overrides + find "${CURDIR}/../" -type f -regex ".\/${PRODUCT}.*\.\(deb\|tar\.gz\|dsc\|changes\|buildinfo\)" -delete override_dh_auto_configure: @echo "RULES.$@" @@ -26,44 +29,65 @@ override_dh_auto_configure: dh_auto_configure dh_lintian -override_dh_auto_build: - cd ${SRC_PATH}/${SCRIPT_PATH}/systemd; \ - bash build.sh -bp "${CURRENT_PATH}/debian/"; \ - cd ${SRC_PATH}/${SCRIPT_PATH}; \ - bash build-frontend.sh -sp ${SRC_PATH} -di "false"; \ - bash build-backend.sh -sp ${SRC_PATH}; \ - bash publish-backend.sh -sp ${SRC_PATH}/server +extract_archive = \ + if [ ! -f "$1" ]; then \ + echo "Error: $2.tar.gz archive not found in ${SOURCE_PATH}"; \ + exit 1; \ + fi; \ + tar -xf "$1" $3 --transform='s,^[^/]\+,$2,' - find ${SRC_PATH}/**/publish/ \ +.PHONY: check_archives + +check_archives: + @echo "Checking for archives in sources directories..." + mkdir -p ${BUILD_PATH} + @$(call extract_archive,${SOURCE_PATH}/buildtools.tar.gz,buildtools,-C ${BUILD_PATH}) + @$(call extract_archive,${SOURCE_PATH}/server.tar.gz,server,-C ${BUILD_PATH}) + @$(call extract_archive,${SOURCE_PATH}/client.tar.gz,client,-C ${BUILD_PATH}) + @$(call extract_archive,${SOURCE_PATH}/dictionaries.tar.gz,dictionaries,-C ${CLENT_PATH}/common/Tests/Frontend.Translations.Tests) + @$(call extract_archive,${SOURCE_PATH}/DocStore.tar.gz,DocStore,-C ${SERVER_PATH}/products/ASC.Files/Server) + @echo "Source archives check passed." + +override_dh_auto_build: check_archives + cd ${BUILDTOOLS_PATH}/install/common/systemd; \ + bash build.sh -bp "${CURDIR}/debian/"; \ + cd ${BUILDTOOLS_PATH}/install/common; \ + bash build-frontend.sh -sp ${BUILD_PATH} -di "false"; \ + bash build-backend.sh -sp ${BUILD_PATH}; \ + bash publish-backend.sh -sp ${SERVER_PATH} + + find ${BUILDTOOLS_PATH}/install/common -type f -exec rename -f -v "s/product([^\/]*)$$/${PRODUCT}\$$1/g" {} ';' + + find ${BUILD_PATH}/**/publish/ \ -depth -type f -regex '.*\(eslintrc.*\|npmignore\|gitignore\|gitattributes\|gitmodules\|un~\|DS_Store\)' -exec rm -f {} \; - rm -f ${SRC_PATH}/buildtools/config/nginx/onlyoffice-login.conf + rm -f ${BUILDTOOLS_PATH}/config/nginx/onlyoffice-login.conf - if ! grep -q 'var/www/${PRODUCT}' ${SRC_PATH}/buildtools/config/nginx/*.conf; then find ${SRC_PATH}/buildtools/config/nginx/ -name "*.conf" -exec sed -i "s@\(var/www/\)@\1${PRODUCT}/@" {} +; fi + if ! grep -q 'var/www/${PRODUCT}' ${BUILDTOOLS_PATH}/config/nginx/*.conf; then find ${BUILDTOOLS_PATH}/config/nginx/ -name "*.conf" -exec sed -i "s@\(var/www/\)@\1${PRODUCT}/@" {} +; fi - json -I -f ${SRC_PATH}/buildtools/config/appsettings.services.json -e "this.logPath=\"/var/log/onlyoffice/${PRODUCT}\"" -e "this.socket={ 'path': '../ASC.Socket.IO/' }" \ + json -I -f ${BUILDTOOLS_PATH}/config/appsettings.services.json -e "this.logPath=\"/var/log/onlyoffice/${PRODUCT}\"" -e "this.socket={ 'path': '../ASC.Socket.IO/' }" \ -e "this.ssoauth={ 'path': '../ASC.SsoAuth/' }" -e "this.logLevel=\"warning\"" -e "this.core={ 'products': { 'folder': '/var/www/${PRODUCT}/products', 'subfolder': 'server'} }" - find ${SRC_PATH}/buildtools/config/ -type f -regex '.*\.\(test\|dev\).*' -delete - json -I -f ${SRC_PATH}/buildtools/config/appsettings.json -e "this.core.notify.postman=\"services\"" -e "this['debug-info'].enabled=\"false\"" -e "this.web.samesite=\"None\"" - json -I -f ${SRC_PATH}/buildtools/config/apisystem.json -e "this.core.notify.postman=\"services\"" - sed 's_\(minlevel=\)"[^"]*"_\1"Warn"_g' -i ${SRC_PATH}/buildtools/config/nlog.config + find ${BUILDTOOLS_PATH}/config/ -type f -regex '.*\.\(test\|dev\).*' -delete + json -I -f ${BUILDTOOLS_PATH}/config/appsettings.json -e "this.core.notify.postman=\"services\"" -e "this['debug-info'].enabled=\"false\"" -e "this.web.samesite=\"None\"" + json -I -f ${BUILDTOOLS_PATH}/config/apisystem.json -e "this.core.notify.postman=\"services\"" + sed 's_\(minlevel=\)"[^"]*"_\1"Warn"_g' -i ${BUILDTOOLS_PATH}/config/nlog.config - sed -e 's_etc/nginx_etc/openresty_g' -e 's/listen\s\+\([0-9]\+\);/listen 127.0.0.1:\1;/g' -i ${SRC_PATH}/buildtools/config/nginx/*.conf - sed -i "s#\$$public_root#/var/www/${PRODUCT}/public/#g" ${SRC_PATH}/buildtools/config/nginx/onlyoffice.conf - sed 's/teamlab.info/onlyoffice.com/g' -i ${SRC_PATH}/buildtools/config/autofac.consumers.json - json -I -f ${SRC_PATH}/client/public/scripts/config.json -e "this.wrongPortalNameUrl=\"\"" - sed -e 's/$$router_host/127.0.0.1/g' -e 's/the_host/host/g' -e 's/the_scheme/scheme/g' -e 's_includes_/etc/openresty/includes_g' -i ${SRC_PATH}/buildtools/install/docker/config/nginx/onlyoffice-proxy*.conf - sed "s_\(.*root\).*;_\1 \"/var/www/${PRODUCT}\";_g" -i ${SRC_PATH}/buildtools/install/docker/config/nginx/letsencrypt.conf - sed -e '/.pid/d' -e '/temp_path/d' -e 's_etc/nginx_etc/openresty_g' -e 's/\.log/-openresty.log/g' -i ${SRC_PATH}/buildtools/install/docker/config/nginx/templates/nginx.conf.template - mv -f ${SRC_PATH}/buildtools/install/docker/config/nginx/onlyoffice-proxy-ssl.conf ${SRC_PATH}/buildtools/install/docker/config/nginx/onlyoffice-proxy-ssl.conf.template + sed -e 's_etc/nginx_etc/openresty_g' -e 's/listen\s\+\([0-9]\+\);/listen 127.0.0.1:\1;/g' -i ${BUILDTOOLS_PATH}/config/nginx/*.conf + sed -i "s#\$$public_root#/var/www/${PRODUCT}/public/#g" ${BUILDTOOLS_PATH}/config/nginx/onlyoffice.conf + sed 's/teamlab.info/onlyoffice.com/g' -i ${BUILDTOOLS_PATH}/config/autofac.consumers.json + json -I -f ${CLENT_PATH}/public/scripts/config.json -e "this.wrongPortalNameUrl=\"\"" + sed -e 's/$$router_host/127.0.0.1/g' -e 's/the_host/host/g' -e 's/the_scheme/scheme/g' -e 's_includes_/etc/openresty/includes_g' -i ${BUILDTOOLS_PATH}/install/docker/config/nginx/onlyoffice-proxy*.conf + sed "s_\(.*root\).*;_\1 \"/var/www/${PRODUCT}\";_g" -i ${BUILDTOOLS_PATH}/install/docker/config/nginx/letsencrypt.conf + sed -e '/.pid/d' -e '/temp_path/d' -e 's_etc/nginx_etc/openresty_g' -e 's/\.log/-openresty.log/g' -i ${BUILDTOOLS_PATH}/install/docker/config/nginx/templates/nginx.conf.template + mv -f ${BUILDTOOLS_PATH}/install/docker/config/nginx/onlyoffice-proxy-ssl.conf ${BUILDTOOLS_PATH}/install/docker/config/nginx/onlyoffice-proxy-ssl.conf.template - for i in ${PRODUCT} $$(ls ${CURRENT_PATH}/debian/*.install | grep -oP 'debian/\K.*' | grep -o '^[^.]*'); do \ - cp ${CURRENT_PATH}/debian/source/lintian-overrides ${CURRENT_PATH}/debian/$$i.lintian-overrides; \ + for i in ${PRODUCT} $$(ls ${CURDIR}/debian/*.install | grep -oP 'debian/\K.*' | grep -o '^[^.]*'); do \ + cp ${CURDIR}/debian/source/lintian-overrides ${CURDIR}/debian/$$i.lintian-overrides; \ done execute_after_dh_fixperms: - chmod o-rwx debian/${PRODUCT}-common/etc/onlyoffice/${PRODUCT}/* + chmod o-rwx ${CURDIR}/debian/${PRODUCT}-common/etc/onlyoffice/${PRODUCT}/* override_dh_auto_install: dh_systemd_enable --no-enable diff --git a/install/rpm/SPECS/SOURCES/product.rpmlintrc b/install/rpm/SPECS/SOURCES/product.rpmlintrc index 7cdb80e2d2..8dd2ab1616 100644 --- a/install/rpm/SPECS/SOURCES/product.rpmlintrc +++ b/install/rpm/SPECS/SOURCES/product.rpmlintrc @@ -28,7 +28,7 @@ addFilter(r'W: only-non-binary-in-usr-lib') # Rpmbuild does not support different architectures for child packages addFilter(r'E: no-binary') -# There is no manual page for {{product}}-configuration.sh +# There is no manual page for docspace-configuration.sh addFilter(r'W: no-manual-page-for-binary') # Dependency on a non-existent package @@ -63,7 +63,7 @@ addFilter(r'arch-independent-package-contains-binary-or-object') # File is a static library that is used when building our application. # The presence of an executable bit on it is justified, since the object files that are used for linking when building the program are included. -# /var/www/{{product}}/services/ASC.Web.HealthChecks.UI/runtimes/browser-wasm/nativeassets/net7.0/e_sqlite3.a +# /var/www/docspace/services/ASC.Web.HealthChecks.UI/runtimes/browser-wasm/nativeassets/net7.0/e_sqlite3.a addFilter(r'spurious-executable-perm') addFilter(r'devel-file-in-non-devel-package') diff --git a/install/rpm/SPECS/build.spec b/install/rpm/SPECS/build.spec index 912280cbc4..96c2b03d7c 100644 --- a/install/rpm/SPECS/build.spec +++ b/install/rpm/SPECS/build.spec @@ -9,7 +9,6 @@ bash install/common/build-backend.sh --srcpath %{_builddir} bash install/common/publish-backend.sh --srcpath %{_builddir}/server rename -f -v "s/product([^\/]*)$/%{product}\$1/g" install/common/* -sed -i "s/{{product}}/%{product}/g" install/common/logrotate/product-common rm -f config/nginx/onlyoffice-login.conf find config/ -type f -regex '.*\.\(test\|dev\).*' -delete diff --git a/install/rpm/SPECS/install.spec b/install/rpm/SPECS/install.spec index 29304fbcc1..c37af73819 100644 --- a/install/rpm/SPECS/install.spec +++ b/install/rpm/SPECS/install.spec @@ -52,7 +52,6 @@ cp -rf %{_builddir}/server/publish/products/ASC.People/server/* "%{buildroot}%{b cp -rf %{_builddir}/server/publish/products/ASC.Files/server/* "%{buildroot}%{buildpath}/products/ASC.Files/server/" cp -rf %{_builddir}/server/LICENSE "%{buildroot}%{_docdir}/%{name}-%{version}-%{release}/" cp -rf %{_builddir}/server/ASC.Migration.Runner/service/* "%{buildroot}%{buildpath}/services/ASC.Migration.Runner/" -cp -rf %{_builddir}/document-templates-main-community-server/* "%{buildroot}%{buildpath}/products/ASC.Files/server/DocStore/" cp -rf %{_builddir}/buildtools/install/RadicalePlugins/* "%{buildroot}%{buildpath}/Tools/radicale/plugins/" cp -rf %{_builddir}/buildtools/install/docker/config/nginx/templates/nginx.conf.template "%{buildroot}%{_sysconfdir}/onlyoffice/%{product}/openresty/nginx.conf.template" cp -rf %{_builddir}/buildtools/install/docker/config/nginx/onlyoffice-proxy.conf "%{buildroot}%{_sysconfdir}/openresty/conf.d/onlyoffice-proxy.conf" diff --git a/install/rpm/SPECS/product.spec b/install/rpm/SPECS/product.spec index c9c3d28624..e0101ca27f 100644 --- a/install/rpm/SPECS/product.spec +++ b/install/rpm/SPECS/product.spec @@ -20,11 +20,11 @@ Vendor: Ascensio System SIA Packager: %{packager} License: AGPLv3 -Source0: https://github.com/ONLYOFFICE/%{product}-buildtools/archive/%{BRANCH_BUILDTOOLS}.tar.gz#/%{product_name}-buildtools-%{BRANCH_BUILDTOOLS}.tar.gz -Source1: https://github.com/ONLYOFFICE/%{product}-client/archive/%{BRANCH_CLIENT}.tar.gz#/%{product_name}-client-%{BRANCH_CLIENT}.tar.gz -Source2: https://github.com/ONLYOFFICE/%{product}-server/archive/%{BRANCH_SERVER}.tar.gz#/%{product_name}-server-%{BRANCH_SERVER}.tar.gz -Source3: https://github.com/ONLYOFFICE/document-templates/archive/main/community-server.tar.gz#/document-templates-main-community-server.tar.gz -Source4: https://github.com/ONLYOFFICE/dictionaries/archive/master.tar.gz#/dictionaries-master.tar.gz +Source0: https://github.com/ONLYOFFICE/%{product}-buildtools/archive/master.tar.gz#/buildtools.tar.gz +Source1: https://github.com/ONLYOFFICE/%{product}-client/archive/master.tar.gz#/client.tar.gz +Source2: https://github.com/ONLYOFFICE/%{product}-server/archive/master.tar.gz#/server.tar.gz +Source3: https://github.com/ONLYOFFICE/document-templates/archive/main/community-server.tar.gz#/DocStore.tar.gz +Source4: https://github.com/ONLYOFFICE/dictionaries/archive/master.tar.gz#/dictionaries.tar.gz Source5: %{product}.rpmlintrc BuildRequires: nodejs >= 18.0 @@ -63,14 +63,13 @@ predefined permissions. %prep rm -rf %{_rpmdir}/%{_arch}/%{name}-* %{_builddir}/* -echo "%{SOURCE0} %{SOURCE1} %{SOURCE2} %{SOURCE3} %{SOURCE4}" | xargs -n 1 -P 5 tar -xzf +tar -xf %{SOURCE0} --transform='s,^[^/]\+,buildtools,' -C %{_builddir} +tar -xf %{SOURCE1} --transform='s,^[^/]\+,client,' -C %{_builddir} +tar -xf %{SOURCE2} --transform='s,^[^/]\+,server,' -C %{_builddir} +tar -xf %{SOURCE3} --transform='s,^[^/]\+,dictionaries,' -C %{_builddir}/client/common/Tests/Frontend.Translations.Tests +tar -xf %{SOURCE4} --transform='s,^[^/]\+,DocStore,' -C %{_builddir}/server/products/ASC.Files/Server cp %{SOURCE5} . -mv -f %{product_name}-buildtools-%{BRANCH_BUILDTOOLS} buildtools -mv -f %{product_name}-client-%{BRANCH_CLIENT} client -mv -f %{product_name}-server-%{BRANCH_SERVER} server -mv -f %{_builddir}/dictionaries-master/* %{_builddir}/client/common/Tests/Frontend.Translations.Tests/dictionaries/ - %include build.spec %include install.spec