diff --git a/www/onlyoffice-documentserver/Makefile b/www/onlyoffice-documentserver/Makefile index af0e06a1217f..a2209e23b900 100644 --- a/www/onlyoffice-documentserver/Makefile +++ b/www/onlyoffice-documentserver/Makefile @@ -1,351 +1,350 @@ PORTNAME= onlyoffice-documentserver DISTVERSIONPREFIX= v -DISTVERSION= 9.3.1 -PORTREVISION= 2 +DISTVERSION= 9.4.0 CATEGORIES= www MASTER_SITES+= LOCAL/mikael/v8/:source1 \ https://nodejs.org/dist/v${_PKGFETCH_NODE_VERSION}/:source2 \ https://github.com/fsbruva/onlyoffice-DS-npm-cache/releases/download/${_NPM_CACHE_TAG}/:source3 DISTFILES+= v8-8.9.255.25_all.tar.gz:source1 \ node-v${_PKGFETCH_NODE_VERSION}.tar.gz:source2 \ onlyoffice-DS-npm-cache-${_NPM_CACHE_TAG}.tar.gz:source3 MAINTAINER= fsbruva@yahoo.com COMMENT= Secure office and productivity apps WWW= https://www.onlyoffice.com/ LICENSE= AGPLv3 -LICENSE_FILE= ${WRKSRC}/LICENSE.txt +LICENSE_FILE= ${WRKSRC}/LICENSE ONLY_FOR_ARCHS= aarch64 amd64 ONLY_FOR_ARCHS_REASON= Upstream only supports amd64 and arm64 # node version used with "npm install" inside ${WRKSRC}/yao-pkg # kept in sync with patch-build__tools_scripts_build__server.py and patch-document-server-package_Makefile -_DS_BUILD= 8 -_PKGFETCH_NODE_VERSION= 24.14.1 -_NPM_CACHE_TAG= ${_DS_TAGNAME}-202604230220 +_DS_BUILD= 129 +_PKGFETCH_NODE_VERSION= 24.15.0 +_NPM_CACHE_TAG= ${_DS_TAGNAME}-202606140107 # end of cache build config -_NODE_DISTFILE= node-v${_PKGFETCH_NODE_VERSION}.tar.gz -WRKSRC_npm_cache= ${WRKDIR}/onlyoffice-DS-npm-cache-${_NPM_CACHE_TAG} - -# Map FreeBSD ARCH to the node/sharp platform-arch suffix -.if ${MACHINE_ARCH} == aarch64 -_SHARP_NODE_ARCH= arm64v8 -.else -_SHARP_NODE_ARCH= x64 -.endif - -_SHARP_NODE_FILE= sharp-freebsd-${_SHARP_NODE_ARCH}.node -_SHARP_INSTALL_DIR= ${WWWDIR}/documentserver/server/DocService/sharp +_NODE_DISTFILE= node-v${_PKGFETCH_NODE_VERSION}.tar.gz +WRKSRC_npm_cache= ${WRKDIR}/onlyoffice-DS-npm-cache-${_NPM_CACHE_TAG} BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Jinja2>=0:devel/py-Jinja2@${PY_FLAVOR} \ boost-libs>0:devel/boost-libs \ glib>=2.54:devel/glib20 \ gn:devel/gn \ ninja:devel/ninja \ npm:www/npm-node24 \ optipng:graphics/optipng +# Need libvips because npm module sharp requires it on Unix OS's LIB_DEPENDS= libboost_regex.so:devel/boost-libs \ libbrotlicommon.so:archivers/brotli \ libbrotlidec.so:archivers/brotli \ libcurl.so:ftp/curl \ libetonyek-0.1.so:graphics/libetonyek01 \ libgumbo.so:devel/gumbo \ libharfbuzz.so:print/harfbuzz \ libheif.so:graphics/libheif \ libicudata.so:devel/icu \ libicuuc.so:devel/icu \ libmd4c-html.so:textproc/md4c \ libmd4c.so:textproc/md4c \ libodfgen-0.1.so:textproc/libodfgen01 \ librevenge-0.0.so:textproc/librevenge \ libvips.so:graphics/vips -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}supervisor>0:sysutils/py-supervisor@${PY_FLAVOR} \ - ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss \ +RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss \ + ${PYTHON_PKGNAMEPREFIX}supervisor>0:sysutils/py-supervisor@${PY_FLAVOR} \ gsed:textproc/gsed \ nginx:www/nginx \ pwgen:sysutils/pwgen \ - rabbitmq>0:net/rabbitmq \ webfonts>=0:x11-fonts/webfonts -USES= autoreconf:build dos2unix fakeroot gmake gnome iconv:wchar_t localbase java:build pkgconfig \ - python:build qt:5 ssl trigger +USES= autoreconf:build dos2unix fakeroot gmake gnome iconv:wchar_t \ + java:build localbase pkgconfig python:build qt:6 ssl trigger BROKEN_SSL= boringssl libressl libressl-devel -BROKEN_SSL_REASON= Node.js requires OpenSSL +BROKEN_SSL_REASON= upstream Node.js requires OpenSSL DOS2UNIX_FILES= document-server-package/common/documentserver/nginx/includes/http-common.conf.m4 USE_GITHUB= yes GH_ACCOUNT= ONLYOFFICE GH_PROJECT= DocumentServer _DS_TAGNAME= ${DISTVERSIONPREFIX}${DISTVERSION}.${_DS_BUILD} GH_TUPLE= ONLYOFFICE:build_tools:${_DS_TAGNAME}:buildtools/build_tools \ ONLYOFFICE:core:${_DS_TAGNAME}:core/core \ ONLYOFFICE:core-fonts:${_DS_TAGNAME}:corefonts/core-fonts \ ONLYOFFICE:dictionaries:${_DS_TAGNAME}:dictionaries/dictionaries \ ONLYOFFICE:document-formats:${_DS_TAGNAME}:df/document-formats \ ONLYOFFICE:document-server-integration:${_DS_TAGNAME}:dsi/document-server-integration \ ONLYOFFICE:document-server-package:${_DS_TAGNAME}:dsp/document-server-package \ ONLYOFFICE:document-templates:${_DS_TAGNAME}:dt/document-templates \ ONLYOFFICE:sdkjs:${_DS_TAGNAME}:sdkjs/sdkjs \ ONLYOFFICE:server:${_DS_TAGNAME}:server/server \ ONLYOFFICE:web-apps:${_DS_TAGNAME}:webapps/web-apps \ - ONLYOFFICE:DocumentBuilder:626d1e44db3d06ceb8298215a67ef0475912d89a:document_builder/DocumentBuilder \ + ONLYOFFICE:DocumentBuilder:${DISTVERSIONPREFIX}${DISTVERSION}:document_builder/DocumentBuilder \ ONLYOFFICE:onlyoffice.github.io:b26d001664d771df4f663d2d3ba7dd4a188b6cab:sdkjs_plugins_v1/onlyoffice.github.io \ jasenhuang:katana-parser:be6df45:jasenhuang_katana/core/Common/3dParty/html/katana-parser \ hunspell:hyphen:73dd296:hunspell_hyphen/core/Common/3dParty/hyphen/hyphen JAVA_VERSION= 11+ USE_LDCONFIG= yes -USE_QT= qmake:build +USE_QT= base:build MAKE_ENV= BUILD_NUMBER=${_DS_BUILD} \ + LANG=C.UTF-8 \ + LC_ALL=C.UTF-8 \ + NODE_OPTIONS=--max-old-space-size=3072 \ npm_package_config_node_gyp_nodedir=${LOCALBASE} \ npm_package_config_node_gyp_python=${PYTHON_CMD} \ - NODE_OPTIONS=--max-old-space-size=3072 \ PKG_BUILD_PATH=${WRKDIR}/.pkg-build \ PKG_CACHE_PATH=${WRKDIR}/.pkg-cache \ PRODUCT_VERSION=${DISTVERSION} \ PYTHON=${PYTHON_CMD} # Don't create __pycache__ directory when executing node-gyp # This is a workaround to avoid filesystem violations during poudriere build MAKE_ENV+= PYTHONDONTWRITEBYTECODE=1 # do not strip docservice, converter, metrics and json STRIP= ETCDIR= ${PREFIX}/etc/onlyoffice WWWDIR= ${PREFIX}/www/onlyoffice -BINARY_ALIAS= python=${PYTHON_CMD} \ - strip=true +BINARY_ALIAS= python=${PYTHON_CMD} strip=true -SUB_FILES= pkg-message \ - onlyoffice.newsyslog.sample +SUB_FILES= onlyoffice.newsyslog.sample pkg-message SUB_LIST= DS_GROUPNAME=${DS_GROUPNAME} \ DS_USERNAME=${DS_USERNAME} \ ETCDIR=${ETCDIR} \ PREFIX=${PREFIX} \ WWWDIR=${WWWDIR} DS_USERNAME= onlyoffice DS_GROUPNAME= onlyoffice USERS= ${DS_USERNAME} GROUPS= ${DS_GROUPNAME} PLIST_SUB= DS_GROUPNAME=${DS_GROUPNAME} \ DS_USERNAME=${DS_USERNAME} \ SHARP_NODE_FILE=${_SHARP_NODE_FILE} -OPTIONS_DEFAULT= PGSQL -OPTIONS_SINGLE= DB -OPTIONS_SINGLE_DB= MYSQL PGSQL - -MYSQL_USES+= mysql:client -PGSQL_USES+= pgsql -PGSQL_VARS= WANT_PGSQL=client +OPTIONS_DEFINE_amd64= LLVM_PORTS +LLVM_PORTS_DESC= Use LLVM/clang from ports instead of base system .include + .if ${ARCH} == aarch64 +EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-aarch64-clang20 +# Map FreeBSD ARCH to the node/sharp platform-arch suffix +_SHARP_NODE_ARCH= arm64v8 +.else +_SHARP_NODE_ARCH= x64 +.endif + +.if ${ARCH} == aarch64 || ${PORT_OPTIONS:MLLVM_PORTS} BUILD_DEPENDS+= clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} BINARY_ALIAS+= ar=${LOCALBASE}/bin/llvm-ar${LLVM_DEFAULT} \ c++=${LOCALBASE}/bin/clang++${LLVM_DEFAULT} \ cc=${LOCALBASE}/bin/clang${LLVM_DEFAULT} \ cpp=${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT} \ ld=${LOCALBASE}/bin/ld.lld${LLVM_DEFAULT} \ nm=${LOCALBASE}/bin/llvm-nm${LLVM_DEFAULT} .endif +_SHARP_NODE_FILE= sharp-freebsd-${_SHARP_NODE_ARCH}.node +_SHARP_INSTALL_DIR= ${WWWDIR}/documentserver/server/DocService/sharp + post-extract: @${MV} ${WRKDIR}/v8 ${WRKSRC}/core/Common/3dParty/v8_89 @${LN} -s ${WRKSRC_npm_cache} ${WRKDIR}/.npm @${MKDIR} ${WRKDIR}/.pkg-build - @${MKDIR} -p ${WRKDIR}/.pkg-cache/node + @${MKDIR} ${WRKDIR}/.pkg-cache/node + @${CP} ${FILESDIR}/extra-patch-pkg-fetch_lib-es5_build.js ${WRKDIR}/ - # Copy node tarball to pkg-cache directory, and create sha256sum file +# Copy node tarball to pkg-cache directory, and create sha256sum file @${CP} ${DISTDIR}/${_NODE_DISTFILE} ${WRKDIR}/.pkg-cache/node @${EGREP} '^\s*SHA256[[:space:]]\(${_NODE_DISTFILE}\)' \ ${.CURDIR}/distinfo | \ ${AWK} '{print $$4 " ${_NODE_DISTFILE}"}' \ > ${WRKDIR}/.pkg-cache/node/${_NODE_DISTFILE}.sha256sum @${ECHO_MSG} "===> Created pkg-fetch cache entry for ${_NODE_DISTFILE}" @${MKDIR} ${WRKSRC}/sdkjs-plugins/v1 @${CP} ${WRKSRC}/onlyoffice.github.io/sdkjs-plugins/v1/* ${WRKSRC}/sdkjs-plugins/v1 @${MV} ${WRKSRC}/server/Common/config/production-linux.json ${WRKSRC}/server/Common/config/production-freebsd.json @${MV} ${WRKSRC}/server/Common/config/development-linux.json ${WRKSRC}/server/Common/config/development-freebsd.json - # linux has moved to systemd init files, continue to using supervisord for now +# linux has moved to systemd init files, continue to using supervisord for now ${MKDIR} ${WRKSRC}/document-server-package/common/documentserver/supervisor -.for i in ds-converter.conf ds-docservice.conf ds-metrics.conf ds.conf +.for i in ds-docservice.conf ds-metrics.conf ds.conf ${CP} ${FILESDIR}/${i} \ ${WRKSRC}/document-server-package/common/documentserver/supervisor .endfor pre-configure: - @${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|' \ - ${WRKSRC}/build_tools/tools/freebsd/automate.py \ + @${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/core/Apple/IWork.pro \ ${WRKSRC}/core/Common/3dParty/boost/boost.pri \ ${WRKSRC}/core/Common/3dParty/brotli/brotli.pri \ ${WRKSRC}/core/Common/3dParty/heif/heif.pri \ ${WRKSRC}/core/Common/3dParty/html/gumbo.pri \ ${WRKSRC}/core/Common/3dParty/icu/icu.pri \ ${WRKSRC}/core/Common/3dParty/md/md2html.pri \ ${WRKSRC}/core/Common/3dParty/v8_89/v8/build/toolchain/gcc_toolchain.gni \ ${WRKSRC}/core/Common/3dParty/v8_89/v8/buildtools/third_party/libc++/BUILD.gn \ ${WRKSRC}/core/DesktopEditor/fontengine/ApplicationFonts.cpp \ ${WRKSRC}/core/X2tConverter/build/Qt/X2tConverter.pri \ ${WRKSRC}/document-server-package/common/documentserver/bin/documentserver-generate-allfonts.sh.m4 \ ${WRKSRC}/document-server-package/common/documentserver/bin/documentserver-jwt-status.sh.m4 \ ${WRKSRC}/document-server-package/common/documentserver/bin/documentserver-pluginsmanager.sh.m4 \ ${WRKSRC}/document-server-package/common/documentserver/bin/documentserver-static-gzip.sh.m4 \ ${WRKSRC}/document-server-package/common/documentserver/bin/documentserver-update-securelink.sh.m4 \ - ${WRKSRC}/document-server-package/common/documentserver/supervisor/ds-converter.conf \ ${WRKSRC}/document-server-package/common/documentserver/supervisor/ds-docservice.conf \ ${WRKSRC}/document-server-package/common/documentserver/supervisor/ds-metrics.conf \ ${WRKSRC}/web-apps/build/patches/optipng-bin+5.1.0.patch @${REINPLACE_CMD} -e 's|%%CC%%|${CC}|' -e 's|%%CXX%%|${CXX}|' \ ${WRKSRC}/core/Common/3dParty/v8_89/v8/build/toolchain/gcc_toolchain.gni \ ${WRKSRC}/core/Common/base.pri @${REINPLACE_CMD} 's|%%WRKDIR%%|${WRKDIR}|' \ ${WRKSRC}/document-server-package/Makefile @${REINPLACE_CMD} 's|%%WRKSRC%%|${WRKSRC}|' \ ${WRKSRC}/build_tools/scripts/build_js.py \ ${WRKSRC}/build_tools/scripts/build_server.py \ ${WRKSRC}/document-server-package/Makefile @${REINPLACE_CMD} 's|%%PKGFETCH_NODE_MAJOR_VERSION%%|${_PKGFETCH_NODE_VERSION:C/^([0-9]+)\..*/\1/}|' \ ${WRKSRC}/build_tools/scripts/build_server.py \ ${WRKSRC}/document-server-package/Makefile @${REINPLACE_CMD} -e 's|/var/lib|/var/db|' -e 's|/var/www|${LOCALBASE}/www|' \ -e 's|/usr/share|${LOCALBASE}/share|' -e 's|/etc|${LOCALBASE}/etc|' \ ${WRKSRC}/server/Common/config/production-freebsd.json \ ${WRKSRC}/server/Common/config/development-freebsd.json @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' -e 's|%%ETCDIR%%|${ETCDIR}|' \ ${WRKSRC}/document-server-package/common/documentserver/bin/documentserver-flush-cache.sh.m4 \ ${WRKSRC}/document-server-package/Makefile - @${REINPLACE_CMD} 's|%%OPENSSL_LIB%%|${OPENSSLLIB}|' \ + @${REINPLACE_CMD} -e 's|%%OPENSSL_INC%%|${OPENSSLINC}|' -e 's|%%OPENSSL_LIB%%|${OPENSSLLIB}|' \ + ${WRKDIR}/extra-patch-pkg-fetch_lib-es5_build.js \ ${WRKSRC}/core/Common/3dParty/openssl/openssl.pri + @${REINPLACE_CMD} -e 's|%%QT_LIBDIR%%|${QT_LIBDIR}|' \ + -e 's|%%QT_VERSION%%|${QT6_VERSION}|' \ + ${WRKSRC}/build_tools/tools/freebsd/automate.py @${RM} ${WRKSRC}/web-apps/build/patches/optipng-bin+5.1.0.patch.orig - # Copy new package.json for sdkjs root +# Copy new package.json for sdkjs root @${CP} ${WRKSRC_npm_cache}/sdkjs-package.json ${WRKSRC}/sdkjs/package.json @${ECHO_MSG} " Installed: sdkjs/package.json" - # Copy optimized shrinkwrap files from cache repo, overwriting upstream +# Copy optimized shrinkwrap files from cache repo, overwriting upstream @${ECHO_MSG} "Installing optimized npm-shrinkwrap.json files..." @(cd ${WRKSRC_npm_cache}/shrinkwrap && \ ${FIND} . -name npm-shrinkwrap.json | while read shrinkwrap; do \ rel_path=$${shrinkwrap#./}; \ target="${WRKSRC}/$${rel_path}"; \ target_dir=$$(dirname "$$target"); \ - ${MKDIR} -p "$$target_dir"; \ + ${MKDIR} "$$target_dir"; \ ${CP} "$$shrinkwrap" "$$target"; \ ${ECHO_MSG} " Installed: $${rel_path}"; \ done) @${ECHO} "# Generated from 'DEPS'" > ${WRKSRC}/core/Common/3dParty/v8_89/v8/build/config/gclient_args.gni @${ECHO} "checkout_google_benchmark = false" >> ${WRKSRC}/core/Common/3dParty/v8_89/v8/build/config/gclient_args.gni do-build: ${INSTALL_SCRIPT} ${FILESDIR}/npm ${BINARY_LINKDIR}/npm @${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKDIR}/.bin/npm @cd ${WRKSRC}/web-apps/build ; ${SETENV} ${MAKE_ENV} NODE_ENV=production npm install --ignore-scripts @cd ${WRKSRC}/web-apps/build ; node_modules/.bin/patch-package @cd ${WRKSRC}/web-apps/build/node_modules/optipng-bin ; ${SETENV} ${MAKE_ENV} npm run postinstall optipng-bin @cd ${WRKSRC}/sdkjs ; ${SETENV} ${MAKE_ENV} npm install - # During offline builds the install script doesn't run, and must patch for external native addon +# During offline builds the install script doesn't run, and must patch for external native addon @cd ${WRKSRC}/server/DocService ; ${SETENV} ${MAKE_ENV} NODE_ENV=production npm install --ignore-scripts @cd ${WRKSRC}/server/DocService ; node_modules/.bin/patch-package @cd ${WRKSRC}/server/DocService/node_modules/sharp ; ${SETENV} ${MAKE_ENV} NODE_ENV=production npm run install - # Install Metrics dependencies and patch statsd for Node 24 compatibility - # (util.log was removed in Node 23; patch replaces it with console.log) +# Install Metrics dependencies and patch statsd for Node 24 compatibility +# (util.log was removed in Node 23; patch replaces it with console.log) @cd ${WRKSRC}/server/Metrics ; ${SETENV} ${MAKE_ENV} NODE_ENV=production npm install --ignore-scripts @cd ${WRKSRC}/server/Metrics ; node_modules/.bin/patch-package @${MKDIR} ${WRKSRC}/yao-pkg @${CP} ${WRKSRC_npm_cache}/yao-pkg-package.json ${WRKSRC}/yao-pkg/package.json @${CP} ${WRKSRC_npm_cache}/yao-pkg-npm-shrinkwrap-${MACHINE_ARCH}.json ${WRKSRC}/yao-pkg/npm-shrinkwrap.json @cd ${WRKSRC}/yao-pkg ; ${SETENV} ${MAKE_ENV} npm install - @cd ${WRKSRC} && ${PATCH} -N -s -i ${FILESDIR}/extra-patch-pkg-fetch_lib-es5_build.js || ${TRUE} - @cd ${WRKSRC} && ${PATCH} -N -s -i ${WRKSRC_npm_cache}/extra-patch-pkg-fetch_patches_node.v${_PKGFETCH_NODE_VERSION}.cpp.patch || ${TRUE} + @cd ${WRKSRC} && ${PATCH} -N -s -i ${WRKDIR}/extra-patch-pkg-fetch_lib-es5_build.js + @cd ${WRKSRC} && ${PATCH} -N -s -i ${WRKSRC_npm_cache}/extra-patch-pkg-fetch_patches_node.v${_PKGFETCH_NODE_VERSION}.cpp.patch cd ${WRKSRC}/build_tools/tools/freebsd ; ${SETENV} ${MAKE_ENV} ${PYTHON_CMD} automate.py cd ${WRKSRC}/document-server-package ; ${SETENV} ${MAKE_ENV} ${GMAKE} freebsd do-install: # install the project # do not strip docservice, converter, metrics and json cd ${WRKSRC}/document-server-package/common/documentserver/home && ${COPYTREE_SHARE} . ${STAGEDIR}${WWWDIR}/documentserver ${INSTALL_SCRIPT} ${WRKSRC}/document-server-package/common/documentserver/bin/*.sh ${STAGEDIR}${PREFIX}/bin ${INSTALL_PROGRAM} ${WRKSRC}/document-server-package/common/documentserver/home/server/tools/all* ${STAGEDIR}${WWWDIR}/documentserver/server/tools ${INSTALL_PROGRAM} ${WRKSRC}/document-server-package/common/documentserver/home/server/FileConverter/bin/x2t ${STAGEDIR}${WWWDIR}/documentserver/server/FileConverter/bin ${INSTALL_PROGRAM} ${WRKSRC}/document-server-package/common/documentserver/home/server/FileConverter/bin/docbuilder ${STAGEDIR}${WWWDIR}/documentserver/server/FileConverter/bin ${INSTALL_PROGRAM} ${WRKSRC}/document-server-package/common/documentserver/home/server/tools/pluginsmanager ${STAGEDIR}${WWWDIR}/documentserver/server/tools ${INSTALL_DATA} ${WRKSRC}/document-server-package/common/documentserver/home/npm/json ${STAGEDIR}${WWWDIR}/documentserver/npm ${INSTALL_LIB} ${WRKSRC}/document-server-package/common/documentserver/home/server/FileConverter/bin/*.so ${STAGEDIR}${PREFIX}/lib # install conf ${MKDIR} ${STAGEDIR}${ETCDIR}/documentserver/supervisor \ ${STAGEDIR}${ETCDIR}/documentserver/nginx/includes \ ${STAGEDIR}${ETCDIR}/documentserver/logrotate ${RM} ${WRKSRC}/document-server-package/common/documentserver/config/*-mac.json ${WRKSRC}/document-server-package/common/documentserver/config/*-windows.json cd ${WRKSRC}/document-server-package/common/documentserver/supervisor && ${COPYTREE_SHARE} . ${STAGEDIR}${ETCDIR}/documentserver/supervisor "-name *\.conf" cd ${WRKSRC}/document-server-package/common/documentserver/logrotate && ${COPYTREE_SHARE} . ${STAGEDIR}${ETCDIR}/documentserver/logrotate "-name *\.conf" ${INSTALL_DATA} ${WRKSRC}/document-server-package/common/documentserver/nginx/ds-ssl.conf.tmpl ${WRKSRC}/document-server-package/common/documentserver/nginx/ds-ssl.conf .for f in ds.conf ds-ssl.conf includes/http-common.conf includes/ds-common.conf \ includes/ds-docservice.conf includes/ds-letsencrypt.conf \ includes/ds-mime.types.conf ${INSTALL_DATA} ${WRKSRC}/document-server-package/common/documentserver/nginx/${f} ${STAGEDIR}${ETCDIR}/documentserver/nginx/${f}.sample .endfor @echo "# Production ds-cache.conf is created automatically by documentserver-flush-cache.sh" > ${STAGEDIR}${ETCDIR}/documentserver/nginx/includes/ds-cache.conf.sample cd ${WRKSRC}/document-server-package/common/documentserver/nginx/includes && ${COPYTREE_SHARE} . ${STAGEDIR}${ETCDIR}/documentserver/nginx/includes "-name *\.conf" cd ${WRKSRC}/document-server-package/common/documentserver/config && ${COPYTREE_SHARE} . ${STAGEDIR}${ETCDIR}/documentserver ${INSTALL_DATA} ${FILESDIR}/local.json.sample ${STAGEDIR}${ETCDIR}/documentserver ${MKDIR} ${STAGEDIR}/${ETCDIR}/documentserver/newsyslog.conf.d ${INSTALL_DATA} ${WRKDIR}/onlyoffice.newsyslog.sample ${STAGEDIR}/${ETCDIR}/documentserver/newsyslog.conf.d # Install arch-specific sharp native binding adjacent to the docservice # binary. sharp.js resolves this at runtime via path.dirname(process.execPath). @${MKDIR} ${STAGEDIR}${_SHARP_INSTALL_DIR} ${INSTALL_LIB} \ ${WRKSRC}/server/DocService/node_modules/sharp/build/Release/${_SHARP_NODE_FILE} \ ${STAGEDIR}${_SHARP_INSTALL_DIR}/${_SHARP_NODE_FILE} # create missing dir ${MKDIR} ${STAGEDIR}/var/log/onlyoffice/documentserver/docservice \ ${STAGEDIR}/var/log/onlyoffice/documentserver/converter \ ${STAGEDIR}/var/log/onlyoffice/documentserver/metrics \ ${STAGEDIR}/var/db/onlyoffice/documentserver/App_Data/cache/files \ ${STAGEDIR}/var/db/onlyoffice/documentserver/App_Data/docbuilder \ ${STAGEDIR}${WWWDIR}/Data \ ${STAGEDIR}${WWWDIR}/documentserver/fonts post-install: # Remove unwanted files from STAGE ${RM} ${STAGEDIR}${PREFIX}/bin/documentserver-letsencrypt.sh ${RM} ${STAGEDIR}${WWWDIR}/documentserver/server/Common/config/*.bak ${RM} ${STAGEDIR}${WWWDIR}/documentserver/dictionaries/sl_SI/hyph_sl_SI.dic.bak # formats@2.5x.svg is generated by grunt-svg-sprite (web-apps/build/sprites/Gruntfile.js) as # part of the editor-specific deploy phase, which runs after the common deploy step that would # have copied it to staging via its **/*.svg glob. Copy it manually until fixed upstream. ${INSTALL_DATA} ${WRKSRC}/web-apps/apps/common/main/resources/img/doc-formats/formats@2.5x.svg \ ${STAGEDIR}${WWWDIR}/documentserver/web-apps/apps/common/main/resources/img/doc-formats/ .include diff --git a/www/onlyoffice-documentserver/distinfo b/www/onlyoffice-documentserver/distinfo index f3410c9cd3f2..abb77ec6b021 100644 --- a/www/onlyoffice-documentserver/distinfo +++ b/www/onlyoffice-documentserver/distinfo @@ -1,39 +1,39 @@ -TIMESTAMP = 1776911257 +TIMESTAMP = 1781400012 SHA256 (v8-8.9.255.25_all.tar.gz) = 54853ef93accc063a82a0dc29457b25c9b6d88315431d62e06ab1f84797c5f80 SIZE (v8-8.9.255.25_all.tar.gz) = 72818814 -SHA256 (node-v24.14.1.tar.gz) = 8298cf1f5774093ca819f41b8dd392fd2cff058688b4d5c8805026352e2d31b3 -SIZE (node-v24.14.1.tar.gz) = 113042895 -SHA256 (onlyoffice-DS-npm-cache-v9.3.1.8-202604230220.tar.gz) = fdebf49310b42a8784a7e240df0132ada1b5878a9d62b521ae76d8f5c01a379c -SIZE (onlyoffice-DS-npm-cache-v9.3.1.8-202604230220.tar.gz) = 123896527 -SHA256 (ONLYOFFICE-DocumentServer-v9.3.1_GH0.tar.gz) = 6df95aa91341504dbee888612552cfd474797d9e1c1f3d97553c4090f9230dcd -SIZE (ONLYOFFICE-DocumentServer-v9.3.1_GH0.tar.gz) = 982188 -SHA256 (ONLYOFFICE-build_tools-v9.3.1.8_GH0.tar.gz) = 68204c339f27ddf56e1d8aacb1ea79afab18555bb3c964fe70a8142539d64e13 -SIZE (ONLYOFFICE-build_tools-v9.3.1.8_GH0.tar.gz) = 6729536 -SHA256 (ONLYOFFICE-core-v9.3.1.8_GH0.tar.gz) = e343283af69022e7d59a986f4e4d9732658a635a3e052ca3a17691a9f0e301dd -SIZE (ONLYOFFICE-core-v9.3.1.8_GH0.tar.gz) = 221297375 -SHA256 (ONLYOFFICE-core-fonts-v9.3.1.8_GH0.tar.gz) = 8e3355e1aec59908ae3d4eaa3dd9b044b65b8616b0bccb63479e333fa48762c3 -SIZE (ONLYOFFICE-core-fonts-v9.3.1.8_GH0.tar.gz) = 95377731 -SHA256 (ONLYOFFICE-dictionaries-v9.3.1.8_GH0.tar.gz) = f4cbbdd5de8e5c79ad58e95f2e823da84862e046936aa7374750dee8e6b31e03 -SIZE (ONLYOFFICE-dictionaries-v9.3.1.8_GH0.tar.gz) = 57973818 -SHA256 (ONLYOFFICE-document-formats-v9.3.1.8_GH0.tar.gz) = a700d2a83a183209d5e2c3f1b69b12519ab5461c01f32b6beff7d916ca1eabed -SIZE (ONLYOFFICE-document-formats-v9.3.1.8_GH0.tar.gz) = 8398 -SHA256 (ONLYOFFICE-document-server-integration-v9.3.1.8_GH0.tar.gz) = 5619401fac97f67f501951c3c92211c4a6330a722f4fafa69db52a51949f66d2 -SIZE (ONLYOFFICE-document-server-integration-v9.3.1.8_GH0.tar.gz) = 6016685 -SHA256 (ONLYOFFICE-document-server-package-v9.3.1.8_GH0.tar.gz) = 260ac8d697c36fcd29e2f58a8a2b90e42ad480e2c8a379ecadc0b37598a0bc29 -SIZE (ONLYOFFICE-document-server-package-v9.3.1.8_GH0.tar.gz) = 191572 -SHA256 (ONLYOFFICE-document-templates-v9.3.1.8_GH0.tar.gz) = 18a0559a226394de9fe8a44b32984bd04265f784b75ac656c5365b908321ddd9 -SIZE (ONLYOFFICE-document-templates-v9.3.1.8_GH0.tar.gz) = 3914480 -SHA256 (ONLYOFFICE-sdkjs-v9.3.1.8_GH0.tar.gz) = 130bbca0e8017437bae9bd739ccd637b65ce57bda2a842c11ddfc437673d2be0 -SIZE (ONLYOFFICE-sdkjs-v9.3.1.8_GH0.tar.gz) = 39754071 -SHA256 (ONLYOFFICE-server-v9.3.1.8_GH0.tar.gz) = 23bbbd20f1409ac6c6e739d18a235b086a6d5e4192c1e45ba50cd692c6c67f6d -SIZE (ONLYOFFICE-server-v9.3.1.8_GH0.tar.gz) = 470282 -SHA256 (ONLYOFFICE-web-apps-v9.3.1.8_GH0.tar.gz) = 81d454101728d0efc4d78e26c0d0ec59a4b7ff917193df99db4b131c45baf4de -SIZE (ONLYOFFICE-web-apps-v9.3.1.8_GH0.tar.gz) = 450219620 -SHA256 (ONLYOFFICE-DocumentBuilder-626d1e44db3d06ceb8298215a67ef0475912d89a_GH0.tar.gz) = 275c3a8c993528fa56c69aedb11dd74a6fba9c3bd372874004584ae9cbb190b5 -SIZE (ONLYOFFICE-DocumentBuilder-626d1e44db3d06ceb8298215a67ef0475912d89a_GH0.tar.gz) = 31659 +SHA256 (node-v24.15.0.tar.gz) = 729de494dd2872e5a3a6c32a1cd156a5413d4aca2772b2d873ee86bb5531bcd9 +SIZE (node-v24.15.0.tar.gz) = 113425441 +SHA256 (onlyoffice-DS-npm-cache-v9.4.0.129-202606140107.tar.gz) = 5232b6ef887832fd90b873bfbf284ae3f8e2a2769599b2fbbc5325a81f3c4381 +SIZE (onlyoffice-DS-npm-cache-v9.4.0.129-202606140107.tar.gz) = 109676613 +SHA256 (ONLYOFFICE-DocumentServer-v9.4.0_GH0.tar.gz) = 678401ead43a1c1325bc6a662bab95494c85c21546f38584cd76597bdeb743f9 +SIZE (ONLYOFFICE-DocumentServer-v9.4.0_GH0.tar.gz) = 985804 +SHA256 (ONLYOFFICE-build_tools-v9.4.0.129_GH0.tar.gz) = 8f65a62e000e7cc913dd0ee4db5d8dcf6256c16040633dd82f36c104dab52d46 +SIZE (ONLYOFFICE-build_tools-v9.4.0.129_GH0.tar.gz) = 6726793 +SHA256 (ONLYOFFICE-core-v9.4.0.129_GH0.tar.gz) = 4a76b7d5c0dad1e9022d57618c6961628ddcabafa53cbeb9af0393263e189364 +SIZE (ONLYOFFICE-core-v9.4.0.129_GH0.tar.gz) = 220068964 +SHA256 (ONLYOFFICE-core-fonts-v9.4.0.129_GH0.tar.gz) = 4d093a8d56a0208e79056493d2a65484136e9f57e04af4691864af4757e588e1 +SIZE (ONLYOFFICE-core-fonts-v9.4.0.129_GH0.tar.gz) = 95376491 +SHA256 (ONLYOFFICE-dictionaries-v9.4.0.129_GH0.tar.gz) = 073c45f9138855a4a7b3688ce2d4dedcbf19e738b0e6eae777d3eef0a9c3bd9e +SIZE (ONLYOFFICE-dictionaries-v9.4.0.129_GH0.tar.gz) = 57973595 +SHA256 (ONLYOFFICE-document-formats-v9.4.0.129_GH0.tar.gz) = da9bd77bb35a676400605908804c104cce36191aa913d0b7ac9165341c9ef7aa +SIZE (ONLYOFFICE-document-formats-v9.4.0.129_GH0.tar.gz) = 8403 +SHA256 (ONLYOFFICE-document-server-integration-v9.4.0.129_GH0.tar.gz) = eccfc459cf18ae54fd3a7e42936a4da9423406c5e29f9c8f255f5389b79aa213 +SIZE (ONLYOFFICE-document-server-integration-v9.4.0.129_GH0.tar.gz) = 6032645 +SHA256 (ONLYOFFICE-document-server-package-v9.4.0.129_GH0.tar.gz) = 5fa13f7dc6bb85abc079f12da963054840e58311ce3d85cb0a248680796c5c76 +SIZE (ONLYOFFICE-document-server-package-v9.4.0.129_GH0.tar.gz) = 201439 +SHA256 (ONLYOFFICE-document-templates-v9.4.0.129_GH0.tar.gz) = 82e0893571bfb0cfed416cd94e92fab4e7270782b5cdb682ce3c750ce6007b4e +SIZE (ONLYOFFICE-document-templates-v9.4.0.129_GH0.tar.gz) = 3560958 +SHA256 (ONLYOFFICE-sdkjs-v9.4.0.129_GH0.tar.gz) = 9df3cc1497b1de0052e90daae7008ae3dd17a4dd7d40c213ce8296b78d4dd623 +SIZE (ONLYOFFICE-sdkjs-v9.4.0.129_GH0.tar.gz) = 53340315 +SHA256 (ONLYOFFICE-server-v9.4.0.129_GH0.tar.gz) = eff4ba61d4729710d3423a2dcc18becbecc84c782b48ed90ea7bf8a0432f6af4 +SIZE (ONLYOFFICE-server-v9.4.0.129_GH0.tar.gz) = 462924 +SHA256 (ONLYOFFICE-web-apps-v9.4.0.129_GH0.tar.gz) = ce2e5299f02865aecd6992b69a059cb711714e92efb10121694651bacb40bb28 +SIZE (ONLYOFFICE-web-apps-v9.4.0.129_GH0.tar.gz) = 529379944 +SHA256 (ONLYOFFICE-DocumentBuilder-v9.4.0_GH0.tar.gz) = 27c46483ea6824c291eaef2f7584bdb45747ed3cc2240ca97aa5f0ac47c80711 +SIZE (ONLYOFFICE-DocumentBuilder-v9.4.0_GH0.tar.gz) = 19410 SHA256 (ONLYOFFICE-onlyoffice.github.io-b26d001664d771df4f663d2d3ba7dd4a188b6cab_GH0.tar.gz) = 347b8f1d3c21b1f61a3f1fcae86f402b27ce4f8b826e18158834251046d83cf5 SIZE (ONLYOFFICE-onlyoffice.github.io-b26d001664d771df4f663d2d3ba7dd4a188b6cab_GH0.tar.gz) = 17009005 SHA256 (jasenhuang-katana-parser-be6df45_GH0.tar.gz) = 363ede45ba6d125fdb7323c43d34acd3d0ae9028ac18aec632eb6a623160f09a SIZE (jasenhuang-katana-parser-be6df45_GH0.tar.gz) = 97712 SHA256 (hunspell-hyphen-73dd296_GH0.tar.gz) = 93e80ad69ee7afd507b12f0b58ca34a6a78347dcbb5fe5d9b6f0e19b02397ef7 SIZE (hunspell-hyphen-73dd296_GH0.tar.gz) = 292528 diff --git a/www/onlyoffice-documentserver/files/ds-converter.conf b/www/onlyoffice-documentserver/files/ds-converter.conf deleted file mode 100644 index 10bca4a6cbb1..000000000000 --- a/www/onlyoffice-documentserver/files/ds-converter.conf +++ /dev/null @@ -1,13 +0,0 @@ -[program:converter] -command=%%LOCALBASE%%/www/onlyoffice/documentserver/server/FileConverter/converter -directory=%%LOCALBASE%%/www/onlyoffice/documentserver/server/FileConverter -user=onlyoffice -environment=NODE_ENV=production-freebsd,NODE_CONFIG_DIR=%%LOCALBASE%%/etc/onlyoffice/documentserver,NODE_DISABLE_COLORS=1 -stdout_logfile=/var/log/onlyoffice/documentserver/converter/out.log -stdout_logfile_backups=0 -stdout_logfile_maxbytes=0 -stderr_logfile=/var/log/onlyoffice/documentserver/converter/err.log -stderr_logfile_backups=0 -stderr_logfile_maxbytes=0 -autostart=true -autorestart=true diff --git a/www/onlyoffice-documentserver/files/ds.conf b/www/onlyoffice-documentserver/files/ds.conf index d6af1be86efe..9a6751ad5f19 100644 --- a/www/onlyoffice-documentserver/files/ds.conf +++ b/www/onlyoffice-documentserver/files/ds.conf @@ -1,2 +1,2 @@ [group:ds] -programs=docservice,converter,metrics +programs=docservice,metrics diff --git a/www/onlyoffice-documentserver/files/extra-patch-aarch64-clang20 b/www/onlyoffice-documentserver/files/extra-patch-aarch64-clang20 new file mode 100644 index 000000000000..53be862f4ce7 --- /dev/null +++ b/www/onlyoffice-documentserver/files/extra-patch-aarch64-clang20 @@ -0,0 +1,11 @@ +--- core/Common/3dParty/v8_89/v8/src/compiler/backend/instruction-codes.h.orig 2021-04-12 21:00:33 UTC ++++ core/Common/3dParty/v8_89/v8/src/compiler/backend/instruction-codes.h +@@ -276,7 +276,7 @@ + using ArchOpcodeField = base::BitField; + static_assert(ArchOpcodeField::is_valid(kLastArchOpcode), + "All opcodes must fit in the 9-bit ArchOpcodeField."); +-using AddressingModeField = base::BitField; ++using AddressingModeField = base::BitField; + using FlagsModeField = base::BitField; + using FlagsConditionField = base::BitField; + using DeoptImmedArgsCountField = base::BitField; diff --git a/www/onlyoffice-documentserver/files/extra-patch-pkg-fetch_lib-es5_build.js b/www/onlyoffice-documentserver/files/extra-patch-pkg-fetch_lib-es5_build.js index 83880f6f2aa0..b83dab4f6888 100644 --- a/www/onlyoffice-documentserver/files/extra-patch-pkg-fetch_lib-es5_build.js +++ b/www/onlyoffice-documentserver/files/extra-patch-pkg-fetch_lib-es5_build.js @@ -1,31 +1,29 @@ ---- yao-pkg/node_modules/@yao-pkg/pkg-fetch/lib-es5/build.js.orig 2025-10-18 21:16:20 UTC +--- yao-pkg/node_modules/@yao-pkg/pkg-fetch/lib-es5/build.js.orig 2026-06-20 01:40:33 UTC +++ yao-pkg/node_modules/@yao-pkg/pkg-fetch/lib-es5/build.js -@@ -100,12 +100,6 @@ function getConfigureArgs(major, targetPlatform, targetArch) { - if (targetPlatform === 'linuxstatic') { - args.push('--fully-static'); +@@ -49,7 +49,7 @@ + // build past GitHub Actions' 6h job limit (worst on the Intel x64 runner). + // See yao-pkg/pkg-fetch#170. + if (major >= 12) { +- if (system_1.hostPlatform !== 'win' && targetPlatform !== 'macos') { ++ if (system_1.hostPlatform !== 'win' && targetPlatform !== 'macos' && targetPlatform !== 'freebsd') { + args.push('--enable-lto'); + } } -- // Link Time Optimization -- if (major >= 12) { -- if (system_1.hostPlatform !== 'win') { -- args.push('--enable-lto'); -- } -- } - // production binaries do NOT take NODE_OPTIONS from end-users - args.push('--without-node-options'); - // The dtrace and etw support was removed in https://github.com/nodejs/node/commit/aa3a572e6bee116cde69508dc29478b40f40551a -@@ -117,7 +111,14 @@ function getConfigureArgs(major, targetPlatform, targetArch) { +@@ -64,7 +64,16 @@ args.push('--without-npm'); // Small ICU if (system_1.hostPlatform !== 'win' || major < 24) { - args.push('--with-intl=small-icu'); + args.push('--with-intl=system-icu'); + args.push('--shared-openssl'); ++ args.push('--shared-openssl-includes=%%OPENSSL_INC%%'); ++ args.push('--shared-openssl-libpath=%%OPENSSL_LIB%%'); + args.push('--openssl-use-def-ca-store'); + args.push('--shared-brotli'); + args.push('--shared-cares'); + args.push('--shared-libuv'); + args.push('--shared-nghttp2'); + args.push('--shared-zlib'); } // Workaround for nodejs/node#39313 // All supported macOS versions have zlib as a system library diff --git a/www/onlyoffice-documentserver/files/npm b/www/onlyoffice-documentserver/files/npm index c2ab697743bc..c28486eb39fe 100644 --- a/www/onlyoffice-documentserver/files/npm +++ b/www/onlyoffice-documentserver/files/npm @@ -1,3 +1,2 @@ #!/bin/sh exec %%LOCALBASE%%/bin/npm --offline --no-fund --no-audit "$@" -#exec %%LOCALBASE%%/bin/npm "$@" diff --git a/www/onlyoffice-documentserver/files/patch-build__tools_scripts_build__server.py b/www/onlyoffice-documentserver/files/patch-build__tools_scripts_build__server.py index 6bba2b42f322..a2b2ff65fb75 100644 --- a/www/onlyoffice-documentserver/files/patch-build__tools_scripts_build__server.py +++ b/www/onlyoffice-documentserver/files/patch-build__tools_scripts_build__server.py @@ -1,39 +1,44 @@ ---- build_tools/scripts/build_server.py.orig 2026-02-22 20:21:43 UTC +--- build_tools/scripts/build_server.py.orig 2026-05-15 19:11:43 UTC +++ build_tools/scripts/build_server.py -@@ -40,8 +40,12 @@ +@@ -61,8 +61,12 @@ base.copy_file(custom_public_key, server_dir + '/Common/sources') #node22 packaging has issue https://github.com/yao-pkg/pkg/issues/87 - pkg_target = "node20" + pkg_target = "node%%PKGFETCH_NODE_MAJOR_VERSION%%" + if ("freebsd" == base.host_platform()): + pkg_target += "-freebsd" + pkgBin = "%%WRKSRC%%/yao-pkg/node_modules/.bin/pkg" + if ("linux" == base.host_platform()): pkg_target += "-linux" if (-1 != config.option("platform").find("linux_arm64")): -@@ -50,16 +54,16 @@ - if ("windows" == base.host_platform()): - pkg_target += "-win" +@@ -73,20 +77,20 @@ -- base.cmd_in_dir(server_dir + "/DocService", "pkg", [".", "-t", pkg_target, "--options", "max_old_space_size=6144", "-o", "docservice"]) + docservice_pkg_args = [".", "-t", pkg_target] + docservice_max_old_space_size = config.option("server-docservice-pkg-max-old-space-size") +- if "" != docservice_max_old_space_size: +- docservice_pkg_args += ["--options", "max_old_space_size=" + docservice_max_old_space_size] ++ # if "" != docservice_max_old_space_size: ++ docservice_pkg_args += ["--options", "max_old_space_size=6144", "--fallback-to-source"] + docservice_pkg_args += ["-o", "docservice"] + +- base.cmd_in_dir(server_dir + "/DocService", "pkg", docservice_pkg_args) - base.cmd_in_dir(server_dir + "/FileConverter", "pkg", [".", "-t", pkg_target, "-o", "converter"]) - base.cmd_in_dir(server_dir + "/Metrics", "pkg", [".", "-t", pkg_target, "-o", "metrics"]) -+ base.cmd_in_dir(server_dir + "/DocService", pkgBin, [".", "-t", pkg_target, "--options", "max_old_space_size=6144", "-o", "docservice", "--fallback-to-source"]) -+ base.cmd_in_dir(server_dir + "/FileConverter", pkgBin, [".", "-t", pkg_target, "-o", "converter", "--fallback-to-source"]) ++ base.cmd_in_dir(server_dir + "/DocService", pkgBin, docservice_pkg_args) ++# base.cmd_in_dir(server_dir + "/FileConverter", "pkg", [".", "-t", pkg_target, "-o", "converter"]) + base.cmd_in_dir(server_dir + "/Metrics", pkgBin, [".", "-t", pkg_target, "-o", "metrics", "--fallback-to-source"]) if "server-admin-panel" in base.get_server_addons() and base.is_exist(server_admin_panel_dir): -- base.cmd_in_dir(server_admin_panel_dir + "/server", "pkg", [".", "-t", pkg_target, "-o", "adminpanel"]) -+ base.cmd_in_dir(server_admin_panel_dir + "/server", pkgBin, [".", "-t", pkg_target, "-o", "adminpanel", "--fallback-to-source"]) + base.cmd_in_dir(server_admin_panel_dir + "/server", "pkg", [".", "-t", pkg_target, "-o", "adminpanel"]) example_dir = base.get_script_dir() + "/../../document-server-integration/web/documentserver-example/nodejs" - base.delete_dir(example_dir + "/node_modules") +# base.delete_dir(example_dir + "/node_modules") base.cmd_in_dir(example_dir, "npm", ["ci"]) - base.cmd_in_dir(example_dir, "pkg", [".", "-t", pkg_target, "-o", "example"]) + base.cmd_in_dir(example_dir, pkgBin, [".", "-t", pkg_target, "-o", "example", "--fallback-to-source"]) def build_server_with_addons(): addons = {} diff --git a/www/onlyoffice-documentserver/files/patch-build__tools_tools_freebsd_automate.py b/www/onlyoffice-documentserver/files/patch-build__tools_tools_freebsd_automate.py index 15de58356b9f..3dbb01d1194f 100644 --- a/www/onlyoffice-documentserver/files/patch-build__tools_tools_freebsd_automate.py +++ b/www/onlyoffice-documentserver/files/patch-build__tools_tools_freebsd_automate.py @@ -1,56 +1,56 @@ --- build_tools/tools/freebsd/automate.py.orig 2021-12-18 16:54:46 UTC +++ build_tools/tools/freebsd/automate.py @@ -0,0 +1,53 @@ +#!/usr/bin/env python + +import sys +sys.path.append('../../scripts') +import base +import os +import subprocess + +branch = "master" + +array_args = sys.argv[1:] +array_modules = [] -+base.set_env('QT_SELECT', 'qt5') -+if not base.is_dir("./qt_build/Qt-5.15.14"): -+ base.cmd("mkdir", ["-p", "qt_build/Qt-5.15.14",]) -+ base.cmd("ln", ["-s", "%%LOCALBASE%%/lib/qt5", "qt_build/Qt-5.15.14/clang_64"]) ++qt_root= "qt_build/Qt-%%QT_VERSION%%" ++if not base.is_dir(qt_root): ++ base.cmd("mkdir", ["-p", qt_root,]) ++ base.cmd("ln", ["-s", "%%QT_LIBDIR%%", qt_root + "/clang_64"]) + +config = {} +for arg in array_args: + if (0 == arg.find("--")): + indexEq = arg.find("=") + if (-1 != indexEq): + config[arg[2:indexEq]] = arg[indexEq + 1:] + else: + # XXX Currently only server has been checked for compilation under FreeBSD + if arg != 'server': + print("module %s not supported yet under FreeBSD" % arg) + array_modules.append(arg) + +if ("branch" in config): + branch = config["branch"] + +print("---------------------------------------------") +print("build branch: " + branch) +print("---------------------------------------------") + +modules = " ".join(array_modules) +# XXX Currently only server has been checked for compilation under FreeBSD +if "" == modules: + modules = "server" + +print("---------------------------------------------") +print("build modules: " + modules) +print("---------------------------------------------") + +build_tools_params = ["--branch", branch, + "--module", modules, + "--update", "0", + "--platform", "freebsd_64", -+ "--qt-dir", os.getcwd() + "/qt_build/Qt-5.15.14"] ++ "--qt-dir", os.path.join(os.getcwd(),qt_root)] + +base.cmd_in_dir("../..", "./configure.py", build_tools_params) +base.cmd_in_dir("../..", "./make.py") diff --git a/www/onlyoffice-documentserver/files/patch-clang20 b/www/onlyoffice-documentserver/files/patch-clang20 new file mode 100644 index 000000000000..85e033aaf190 --- /dev/null +++ b/www/onlyoffice-documentserver/files/patch-clang20 @@ -0,0 +1,33 @@ +--- core/Common/3dParty/v8_89/v8/src/compiler/backend/instruction.h.orig 2021-04-12 17:00:33 UTC ++++ core/Common/3dParty/v8_89/v8/src/compiler/backend/instruction.h +@@ -563,7 +563,7 @@ + } + + STATIC_ASSERT(KindField::kSize == 3); +- using LocationKindField = base::BitField64; ++ using LocationKindField = base::BitField64; + using RepresentationField = base::BitField64; + using IndexField = base::BitField64; + }; +--- core/Common/3dParty/v8_89/v8/src/profiler/profile-generator.h.orig 2021-04-12 21:00:33 UTC ++++ core/Common/3dParty/v8_89/v8/src/profiler/profile-generator.h +@@ -212,7 +212,7 @@ + V8_EXPORT_PRIVATE static base::LazyDynamicInstance< + CodeEntry, RootEntryCreateTrait>::type kRootEntry; + +- using TagField = base::BitField; ++ using TagField = base::BitField; + using BuiltinIdField = base::BitField; + static_assert(Builtins::builtin_count <= BuiltinIdField::kNumValues, + "builtin_count exceeds size of bitfield"); +--- core/Common/3dParty/v8_89/v8/src/wasm/wasm-code-manager.h.orig 2021-04-12 21:00:33 UTC ++++ core/Common/3dParty/v8_89/v8/src/wasm/wasm-code-manager.h +@@ -340,7 +340,7 @@ + int trap_handler_index_ = -1; + + // Bits encoded in {flags_}: +- using KindField = base::BitField8; ++ using KindField = base::BitField8; + using ExecutionTierField = KindField::Next; + using ForDebuggingField = ExecutionTierField::Next; + diff --git a/www/onlyoffice-documentserver/files/patch-clang22 b/www/onlyoffice-documentserver/files/patch-clang22 new file mode 100644 index 000000000000..fa1debea77e1 --- /dev/null +++ b/www/onlyoffice-documentserver/files/patch-clang22 @@ -0,0 +1,11 @@ +--- core/DesktopEditor/cximage/jasper/jp2/jp2_dec.c.orig 2026-03-02 10:46:12 UTC ++++ core/DesktopEditor/cximage/jasper/jp2/jp2_dec.c +@@ -289,7 +289,7 @@ + jas_image_setclrspc(dec->image, jp2_getcs(&dec->colr->data.colr)); + break; + case JP2_COLR_ICC: +- iccprof = jas_iccprof_createfrombuf(dec->colr->data.colr.iccp, ++ iccprof = jas_iccprof_createfrombuf((unsigned char *)(void *)dec->colr->data.colr.iccp, + dec->colr->data.colr.iccplen); + assert(iccprof); + jas_iccprof_gethdr(iccprof, &icchdr); diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_openssl_openssl.pri b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_openssl_openssl.pri index f7cca62d9971..2fd6f7552cb5 100644 --- a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_openssl_openssl.pri +++ b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_openssl_openssl.pri @@ -1,12 +1,13 @@ --- core/Common/3dParty/openssl/openssl.pri.orig 2025-08-02 18:33:34 UTC +++ core/Common/3dParty/openssl/openssl.pri @@ -32,8 +32,7 @@ core_windows { LIBS += $$OPENSSL_LIBS_DIRECTORY/libssl.lib LIBS += $$OPENSSL_LIBS_DIRECTORY/libcrypto.lib } else { - LIBS += $$OPENSSL_LIBS_DIRECTORY/libssl.a - LIBS += $$OPENSSL_LIBS_DIRECTORY/libcrypto.a + LIBS += -L%%OPENSSL_LIB%% -lcrypto -lssl } - INCLUDEPATH += $$OPENSSL_LIBS_DIRECTORY/../include +-INCLUDEPATH += $$OPENSSL_LIBS_DIRECTORY/../include ++INCLUDEPATH += %%OPENSSL_INC%% diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_BUILD.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_BUILD.gn similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_BUILD.gn rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_BUILD.gn diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_BUILD.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_BUILD.gn similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_BUILD.gn rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_BUILD.gn diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_BUILDCONFIG.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_BUILDCONFIG.gn similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_BUILDCONFIG.gn rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_BUILDCONFIG.gn diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_clang_BUILD.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_clang_BUILD.gn deleted file mode 100644 index c58ca9dcf1f7..000000000000 --- a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_clang_BUILD.gn +++ /dev/null @@ -1,11 +0,0 @@ -Fix build with llvm16 - ---- core/Common/3dParty/v8_89/v8/build/config/clang/BUILD.gn.orig 2022-05-13 11:39:36 UTC -+++ core/Common/3dParty/v8_89/v8/build/config/clang/BUILD.gn -@@ -38,5 +38,6 @@ config("extra_warnings") { - "-Wstring-conversion", - - "-Wtautological-overlap-compare", -+ "-Wno-error=enum-constexpr-conversion", - ] - } diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_compiler_BUILD.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_compiler_BUILD.gn similarity index 96% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_compiler_BUILD.gn rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_compiler_BUILD.gn index 7b4b63f6db22..fb752474bd7a 100644 --- a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_compiler_BUILD.gn +++ b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_compiler_BUILD.gn @@ -1,129 +1,127 @@ --- core/Common/3dParty/v8_89/v8/build/config/compiler/BUILD.gn.orig 2022-05-13 11:39:36 UTC +++ core/Common/3dParty/v8_89/v8/build/config/compiler/BUILD.gn @@ -132,7 +132,7 @@ declare_args() { # # TODO(crbug.com/977230): Enabling this when 'use_xcode_clang' is true may # call an old clang that doesn't support auto-init. - init_stack_vars = !is_android && !use_xcode_clang + init_stack_vars = !is_android && !use_xcode_clang && !is_bsd # This argument is to control whether enabling text section splitting in the # final binary. When enabled, the separated text sections with prefix @@ -316,7 +316,7 @@ config("compiler") { } # Linker warnings. - if (fatal_linker_warnings && !is_apple && current_os != "aix") { + if (fatal_linker_warnings && !is_bsd && !is_apple && current_os != "aix") { ldflags += [ "-Wl,--fatal-warnings" ] } if (fatal_linker_warnings && is_apple) { @@ -501,7 +501,7 @@ config("compiler") { ldflags += [ "-Wl,-z,keep-text-section-prefix" ] } - if (is_clang && !is_nacl && !use_xcode_clang) { + if (is_clang && !is_nacl && !is_bsd && !use_xcode_clang) { cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ] cflags += [ @@ -785,10 +785,6 @@ config("compiler_cpu_abi") { ] } } else if (current_cpu == "arm") { - if (is_clang && !is_android && !is_nacl) { - cflags += [ "--target=arm-linux-gnueabihf" ] - ldflags += [ "--target=arm-linux-gnueabihf" ] - } if (!is_nacl) { cflags += [ "-march=$arm_arch", @@ -799,7 +795,7 @@ config("compiler_cpu_abi") { cflags += [ "-mtune=$arm_tune" ] } } else if (current_cpu == "arm64") { - if (is_clang && !is_android && !is_nacl && !is_fuchsia) { + if (is_clang && !is_android && !is_nacl && !is_fuchsia && !is_bsd) { cflags += [ "--target=aarch64-linux-gnu" ] ldflags += [ "--target=aarch64-linux-gnu" ] } @@ -1149,7 +1145,7 @@ config("compiler_deterministic") { "-Xclang", ".", ] - if (!is_win) { + if (!is_win && !is_bsd) { # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167) asmflags = [ "-Wa,-fdebug-compilation-dir,." ] } @@ -1177,7 +1173,7 @@ config("clang_revision") { } config("clang_revision") { - if (is_clang && clang_base_path == default_clang_base_path) { + if (!is_bsd && is_clang && clang_base_path == default_clang_base_path) { update_args = [ "--print-revision", "--verify-version=$clang_version", -@@ -1526,12 +1522,37 @@ config("default_warnings") { +@@ -1526,12 +1522,35 @@ config("default_warnings") { "-Wno-undefined-var-template", ] - if (is_win) { + if (is_win && !is_bsd) { # TODO(thakis): https://crbug.com/617318 # Currently goma can not handle case sensitiveness for windows well. cflags += [ "-Wno-nonportable-include-path" ] } + if (is_bsd) { + # Silence known-harmless warnings on FreeBSD with newer Clang + # that are not present on the Linux/clang version this V8 targets. + cflags += [ + # zlib uses K&R-style function definitions + "-Wno-deprecated-non-prototype", -+ # bit-field.h constexpr enum range (Clang 16+ only) -+ "-Wno-enum-constexpr-conversion", + # pthread mutex/condvar wrappers lack annotations + "-Wno-thread-safety-analysis", + # v8.h SetWeak reinterpret_cast function pointer template + "-Wno-cast-function-type-mismatch", + # platform-freebsd.cc sysctl miblen (size_t -> uint) + "-Wno-shorten-64-to-32", + # platform-freebsd.cc StringToLong static helper + "-Wno-unused-function", + # scattered across ICU, heap, compiler, wasm + "-Wno-unused-but-set-variable", + # branch-elimination.cc intentional bitwise | + "-Wno-bitwise-instead-of-logical", + # register-allocator-verifier.cc for-range copy + "-Wno-range-loop-construct", + ] + } + if (current_toolchain == host_toolchain || !use_xcode_clang) { # Flags NaCl (Clang 3.7) and Xcode 9.2 (Clang clang-900.0.39.2) do not # recognize. @@ -1780,7 +1776,7 @@ config("thin_archive") { config("thin_archive") { # The macOS and iOS default linker ld64 does not support reading thin # archives. - if ((is_posix && !is_nacl && (!is_apple || use_lld)) || is_fuchsia) { + if ((is_posix && !is_nacl && !is_bsd && (!is_apple || use_lld)) || is_fuchsia) { arflags = [ "-T" ] } else if (is_win && use_lld) { arflags = [ "/llvmlibthin" ] @@ -2321,11 +2317,11 @@ config("symbols") { # flag, so we can use use -g1 for pnacl and nacl-clang compiles. # gcc nacl is is_nacl && !is_clang, pnacl and nacl-clang are && is_clang. if (!is_nacl || is_clang) { - cflags += [ "-g2" ] + cflags += [ "-g0" ] } # TODO(https://crbug.com/1050118): Investigate missing debug info on mac. - if (is_clang && !is_nacl && !use_xcode_clang && !is_apple) { + if (is_clang && !is_nacl && !is_bsd && !use_xcode_clang && !is_apple) { cflags += [ "-Xclang", "-debug-info-kind=constructor", diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_compiler_compiler.gni b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_compiler_compiler.gni similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_compiler_compiler.gni rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_compiler_compiler.gni diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_features.gni b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_features.gni similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_features.gni rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_features.gni diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_freetype_freetype.gni b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_freetype_freetype.gni similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_freetype_freetype.gni rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_freetype_freetype.gni diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_linux_BUILD.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_linux_BUILD.gn similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_linux_BUILD.gn rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_linux_BUILD.gn diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_linux_pkg-config.py b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_linux_pkg-config.py similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_linux_pkg-config.py rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_linux_pkg-config.py diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_sysroot.gni b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_sysroot.gni similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_config_sysroot.gni rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_config_sysroot.gni diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_detect__host__arch.py b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_detect__host__arch.py similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_detect__host__arch.py rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_detect__host__arch.py diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_gn__run__binary.py b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_gn__run__binary.py similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_gn__run__binary.py rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_gn__run__binary.py diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_linux_chrome.map b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_linux_chrome.map similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_linux_chrome.map rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_linux_chrome.map diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_linux_libpci_BUILD.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_linux_libpci_BUILD.gn similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_linux_libpci_BUILD.gn rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_linux_libpci_BUILD.gn diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_linux_unbundle_libusb.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_linux_unbundle_libusb.gn similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_linux_unbundle_libusb.gn rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_linux_unbundle_libusb.gn diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_linux_unbundle_replace__gn__files.py b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_linux_unbundle_replace__gn__files.py similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_linux_unbundle_replace__gn__files.py rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_linux_unbundle_replace__gn__files.py diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_toolchain_gcc__toolchain.gni b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_toolchain_gcc__toolchain.gni similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_toolchain_gcc__toolchain.gni rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_toolchain_gcc__toolchain.gni diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_toolchain_get__concurrent__links.py b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_toolchain_get__concurrent__links.py similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_build_toolchain_get__concurrent__links.py rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_build_toolchain_get__concurrent__links.py diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_buildtools_third__party_libc++_BUILD.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_buildtools_third__party_libc++_BUILD.gn similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_buildtools_third__party_libc++_BUILD.gn rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_buildtools_third__party_libc++_BUILD.gn diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_include_v8config.h b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_include_v8config.h similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_include_v8config.h rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_include_v8config.h diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_api_api.cc b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_api_api.cc similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_api_api.cc rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_api_api.cc diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_base_cpu.cc b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_base_cpu.cc similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_base_cpu.cc rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_base_cpu.cc diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_base_macros.h b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_base_macros.h similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_base_macros.h rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_base_macros.h diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_base_platform_platform-freebsd.cc b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_base_platform_platform-freebsd.cc similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_base_platform_platform-freebsd.cc rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_base_platform_platform-freebsd.cc diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_base_platform_platform-posix.cc b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_base_platform_platform-posix.cc similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_base_platform_platform-posix.cc rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_base_platform_platform-posix.cc diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_d8_d8-posix.cc b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_d8_d8-posix.cc similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_src_d8_d8-posix.cc rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_src_d8_d8-posix.cc diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_testing_gmock_BUILD.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_testing_gmock_BUILD.gn similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_testing_gmock_BUILD.gn rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_testing_gmock_BUILD.gn diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_third__party_zlib_BUILD.gn b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_third__party_zlib_BUILD.gn similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_third__party_zlib_BUILD.gn rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_third__party_zlib_BUILD.gn diff --git a/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_third__party_zlib_cpu__features.c b/www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_third__party_zlib_cpu__features.c similarity index 100% rename from www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8_v8_third__party_zlib_cpu__features.c rename to www/onlyoffice-documentserver/files/patch-core_Common_3dParty_v8__89_v8_third__party_zlib_cpu__features.c diff --git a/www/onlyoffice-documentserver/files/patch-core_DesktopEditor_fontengine_js_cpp_text.cpp b/www/onlyoffice-documentserver/files/patch-core_DesktopEditor_fontengine_js_cpp_text.cpp deleted file mode 100644 index 7600e5857aae..000000000000 --- a/www/onlyoffice-documentserver/files/patch-core_DesktopEditor_fontengine_js_cpp_text.cpp +++ /dev/null @@ -1,15 +0,0 @@ ---- core/DesktopEditor/fontengine/js/cpp/text.cpp.orig 2025-08-02 18:33:34 UTC -+++ core/DesktopEditor/fontengine/js/cpp/text.cpp -@@ -558,9 +558,9 @@ WASM_EXPORT unsigned char* ASC_FT_Get_Glyph_Render_Buf - // ------------------------------------------------------------ - - // HARFBUZZ --#include --#include --#include -+#include -+#include -+#include - - #define g_userfeatures_count 5 - hb_feature_t g_userfeatures[g_userfeatures_count]; diff --git a/www/onlyoffice-documentserver/files/patch-core_HtmlFile_HtmlFile.pro b/www/onlyoffice-documentserver/files/patch-core_HtmlFile_HtmlFile.pro index 47ea99170330..2b77826e9868 100644 --- a/www/onlyoffice-documentserver/files/patch-core_HtmlFile_HtmlFile.pro +++ b/www/onlyoffice-documentserver/files/patch-core_HtmlFile_HtmlFile.pro @@ -1,13 +1,13 @@ ---- core/HtmlFile/HtmlFile.pro.orig 2021-09-30 12:13:32 UTC +--- core/HtmlFile/HtmlFile.pro.orig 2026-05-17 15:03:58 UTC +++ core/HtmlFile/HtmlFile.pro -@@ -18,6 +18,10 @@ include(../Common/base.pri) - - ADD_DEPENDENCY(kernel, UnicodeConverter) - -+core_freebsd { -+ DEFINES += asc_static_link_libstd -+} -+ - core_linux { - DEFINES += asc_static_link_libstd - } +@@ -49,6 +49,10 @@ + + ADD_DEPENDENCY(kernel, UnicodeConverter) + ++core_freebsd { ++ DEFINES += asc_static_link_libstd ++} ++ + core_linux { + DEFINES += asc_static_link_libstd + } diff --git a/www/onlyoffice-documentserver/files/patch-core_UnicodeConverter_UnicodeConverter.pro b/www/onlyoffice-documentserver/files/patch-core_UnicodeConverter_UnicodeConverter.pro index d2ff67118687..33b055763c17 100644 --- a/www/onlyoffice-documentserver/files/patch-core_UnicodeConverter_UnicodeConverter.pro +++ b/www/onlyoffice-documentserver/files/patch-core_UnicodeConverter_UnicodeConverter.pro @@ -1,15 +1,15 @@ ---- core/UnicodeConverter/UnicodeConverter.pro.orig 2021-09-30 12:13:32 UTC +--- core/UnicodeConverter/UnicodeConverter.pro.orig 2026-05-17 15:03:58 UTC +++ core/UnicodeConverter/UnicodeConverter.pro -@@ -13,6 +13,12 @@ DEFINES += UNICODECONVERTER_USE_DYNAMIC_LIBRARY - - DEFINES += UNICODECONVERTER_USE_DYNAMIC_LIBRARY - -+core_freebsd { -+ CONFIG += c++17 -+ QMAKE_LFLAGS += "-Wl,-rpath,\'\$$ORIGIN\'" -+ QMAKE_LFLAGS += -Wl,--disable-new-dtags -+} -+ - core_linux { - QMAKE_LFLAGS += "-Wl,-rpath,\'\$$ORIGIN\'" - QMAKE_LFLAGS += -Wl,--disable-new-dtags +@@ -46,6 +46,12 @@ + + DEFINES += UNICODECONVERTER_USE_DYNAMIC_LIBRARY + ++core_freebsd { ++ CONFIG += c++17 ++ QMAKE_LFLAGS += "-Wl,-rpath,\'\$$ORIGIN\'" ++ QMAKE_LFLAGS += -Wl,--disable-new-dtags ++} ++ + core_linux { + QMAKE_LFLAGS += "-Wl,-rpath,\'\$$ORIGIN\'" + QMAKE_LFLAGS += -Wl,--disable-new-dtags diff --git a/www/onlyoffice-documentserver/files/patch-document-server-package_Makefile b/www/onlyoffice-documentserver/files/patch-document-server-package_Makefile index 83abb1a52cef..e5baac922903 100644 --- a/www/onlyoffice-documentserver/files/patch-document-server-package_Makefile +++ b/www/onlyoffice-documentserver/files/patch-document-server-package_Makefile @@ -1,167 +1,166 @@ ---- document-server-package/Makefile.orig 2024-02-12 14:46:57 UTC +--- document-server-package/Makefile.orig 2026-05-14 16:29:43 UTC +++ document-server-package/Makefile @@ -23,6 +23,7 @@ PACKAGE_NAME := $(COMPANY_NAME_LOW)-$(PRODUCT_NAME_LOW) PACKAGE_VERSION := $(PRODUCT_VERSION)-$(BUILD_NUMBER) +UNAME_P ?= $(shell uname -p) UNAME_M ?= $(shell uname -m) ifeq ($(UNAME_M),x86_64) RPM_ARCH := x86_64 -@@ -138,6 +139,22 @@ +@@ -139,6 +140,22 @@ endif else UNAME_S := $(shell uname -s) + ifeq ($(UNAME_S),FreeBSD) + PLATFORM := freebsd + SHARED_EXT := .so* + SHELL_EXT := .sh + ARCH_EXT := .zip + AR := 7z a -y + PACKAGES = tar + DS_PREFIX := $(COMPANY_NAME_LOW)/$(PRODUCT_SHORT_NAME_LOW) + NGINX_CONF := %%ETCDIR%%/documentserver/nginx/includes + NGINX_LOG := /var/log/$(DS_PREFIX) + DS_ROOT := %%LOCALBASE%%/www/$(DS_PREFIX) + DS_FILES := /var/db/$(DS_PREFIX) + DS_EXAMLE := %%LOCALBASE%%/www/$(DS_PREFIX)-example + DEV_NULL := /dev/null + PKG_TARGET := node%%PKGFETCH_NODE_MAJOR_VERSION%% + endif ifeq ($(UNAME_S),Linux) PLATFORM := linux SHARED_EXT := .so* -@@ -167,6 +184,12 @@ +@@ -168,6 +185,12 @@ DS_EXAMPLE := /var/www/onlyoffice/documentserver-example DEV_NULL := /dev/null endif + ifeq ($(UNAME_P),amd64) + ARCHITECTURE := 64 + endif + ifeq ($(UNAME_P),aarch64) + ARCHITECTURE := 64 + endif ifeq ($(UNAME_M),x86_64) ARCHITECTURE := 64 PKG_TARGET ?= node18-linux-x64 -@@ -364,7 +387,7 @@ +@@ -370,7 +393,7 @@ documentserver: mkdir -p $(DOCUMENTSERVER_FILES) - cp -rf -t $(DOCUMENTSERVER) ../build_tools/out/$(TARGET)/$(COMPANY_NAME_LOW)/$(PRODUCT_SHORT_NAME_LOW)/* + cp -rf ../build_tools/out/$(TARGET)/$(COMPANY_NAME_LOW)/$(PRODUCT_SHORT_NAME_LOW)/* $(DOCUMENTSERVER) - ifneq ($(PRODUCT_NAME_LOW),$(filter $(PRODUCT_NAME_LOW),documentserver-de documentserver-ee)) + ifeq ($(PRODUCT_NAME_LOW),documentserver) rm -rf $(DOCUMENTSERVER)/server/AdminPanel -@@ -377,25 +400,25 @@ +@@ -383,27 +406,27 @@ mv -f $(DOCUMENTSERVER)/server/Common/config/log4js/*.json $(DOCUMENTSERVER_CONFIG)/log4js/ # rename product specific folders - sed "s|onlyoffice\/documentserver|"$(DS_PREFIX)"|" -i $(DOCUMENTSERVER_CONFIG)/*.json + sed -i '' "s|onlyoffice\/documentserver|"$(DS_PREFIX)"|" $(DOCUMENTSERVER_CONFIG)/*.json # rename db account params - sed 's|\("db.*": "\)onlyoffice\("\)|\1'$(ONLYOFFICE_VALUE)'\2|' -i $(DOCUMENTSERVER_CONFIG)/*.json + sed -i '' 's|\("db.*": "\)onlyoffice\("\)|\1'$(ONLYOFFICE_VALUE)'\2|' $(DOCUMENTSERVER_CONFIG)/*.json + ifneq ($(PRODUCT_NAME_LOW),documentserver) # rename db schema name - sed 's|onlyoffice|'$(ONLYOFFICE_VALUE)'|' -i $(DOCUMENTSERVER)/server/schema/**/*.sql + sed -i '' 's|onlyoffice|'$(ONLYOFFICE_VALUE)'|' $(DOCUMENTSERVER)/server/schema/**/*.sql # ignore CREATE DATABASE commands in MySQL - sed -r "s/^(CREATE DATABASE|USE)/-- \1/" -i $(DOCUMENTSERVER)/server/schema/mysql/*.sql + sed -i '' -r "s/^(CREATE DATABASE|USE)/-- \1/" $(DOCUMENTSERVER)/server/schema/mysql/*.sql + endif # rename product in license - sed 's|ONLYOFFICE|'$(COMPANY_NAME)'|' -i $(DOCUMENTSERVER)/server/3rd-Party.txt - sed 's|DocumentServer|'$(PRODUCT_NAME)'|' -i $(DOCUMENTSERVER)/server/3rd-Party.txt + sed -i '' 's|ONLYOFFICE|'$(COMPANY_NAME)'|' $(DOCUMENTSERVER)/server/3rd-Party.txt + sed -i '' 's|DocumentServer|'$(PRODUCT_NAME)'|' $(DOCUMENTSERVER)/server/3rd-Party.txt # Prevent for modification original config chmod ug=r $(DOCUMENTSERVER_CONFIG)/*.json - cp -fr -t $(DOCUMENTSERVER) $(3RD_PARTY_LICENSE_FILES) + cp -fr $(3RD_PARTY_LICENSE_FILES) $(3RD_PARTY_LICENSE_FILES) rm -fr $(3RD_PARTY_LICENSE_FILES) ifeq ($(PLATFORM),win) -@@ -405,8 +428,8 @@ +@@ -411,33 +434,33 @@ + echo ; >> $(DOCUMENTSERVER)/3rd-Party.txt + cat exe/license/3rd-Party.txt ; >> $(DOCUMENTSERVER)/3rd-Party.txt endif - - [ -f $(LICENSE_FILE) ] \ -- && cp -f -t $(DOCUMENTSERVER) $(LICENSE_FILE) \ -- || cp -f -t $(DOCUMENTSERVER) LICENSE.txt -+ && cp -f $(LICENSE_FILE) $(DOCUMENTSERVER) \ -+ || cp -f LICENSE.txt $(DOCUMENTSERVER) - +- cp -f -t $(DOCUMENTSERVER) $(LICENSE_FILE) ++ cp -f $(LICENSE_FILE) $(DOCUMENTSERVER) chmod u+x $(DOCUMENTSERVER)/server/FileConverter/bin/x2t$(EXEC_EXT) #chmod u+x $(DOCUMENTSERVER)/server/FileConverter/bin/docbuilder$(EXEC_EXT) -@@ -414,26 +437,26 @@ + [ -f $(HTMLFILEINTERNAL)$(EXEC_EXT) ] && chmod u+x $(HTMLFILEINTERNAL)$(EXEC_EXT) || true chmod u+x $(DOCUMENTSERVER)/server/tools/allfontsgen$(EXEC_EXT) mv -f $(DOCUMENTSERVER)/web-apps/apps/api/documents/api.js $(DOCUMENTSERVER)/web-apps/apps/api/documents/api.js.tpl - sed "s|\(_dc=\)0|\1"$(PACKAGE_VERSION)"|" -i $(DOCUMENTSERVER)/web-apps/apps/api/documents/api.js.tpl + sed -i '' "s|\(_dc=\)0|\1"$(PACKAGE_VERSION)"|" $(DOCUMENTSERVER)/web-apps/apps/api/documents/api.js.tpl ifeq ($(PRODUCT_NAME_LOW), documentserver) - sed 's|\("packageType": \)[0-9]\+\(.*\)|\10\2|' -i $(DOCUMENTSERVER_CONFIG)/*.json - sed 's|\("editorDataStorage": "\).\+\(".*\)|\1editorDataMemory\2|' -i $(DOCUMENTSERVER_CONFIG)/*.json + sed -i '' 's|\("packageType": \)[0-9]\+\(.*\)|\10\2|' $(DOCUMENTSERVER_CONFIG)/*.json + sed -i '' 's|\("editorDataStorage": "\).\+\(".*\)|\1editorDataMemory\2|' $(DOCUMENTSERVER_CONFIG)/*.json endif ifeq ($(PRODUCT_NAME_LOW), $(filter $(PRODUCT_NAME_LOW),documentserver-ee documentserver-ie)) - sed 's|\("packageType": \)[0-9]\+\(.*\)|\11\2|' -i $(DOCUMENTSERVER_CONFIG)/*.json - sed 's|\("editorDataStorage": "\).\+\(".*\)|\1editorDataRedis\2|' -i $(DOCUMENTSERVER_CONFIG)/*.json + sed -i '' 's|\("packageType": \)[0-9]\+\(.*\)|\11\2|' $(DOCUMENTSERVER_CONFIG)/*.json + sed -i '' 's|\("editorDataStorage": "\).\+\(".*\)|\1editorDataRedis\2|' $(DOCUMENTSERVER_CONFIG)/*.json endif ifeq ($(PRODUCT_NAME_LOW), documentserver-de) - sed 's|\("packageType": \)[0-9]\+\(.*\)|\12\2|' -i $(DOCUMENTSERVER_CONFIG)/*.json - sed 's|\("editorDataStorage": "\).\+\(".*\)|\1editorDataRedis\2|' -i $(DOCUMENTSERVER_CONFIG)/*.json + sed -i '' 's|\("packageType": \)[0-9]\+\(.*\)|\12\2|' $(DOCUMENTSERVER_CONFIG)/*.json + sed -i '' 's|\("editorDataStorage": "\).\+\(".*\)|\1editorDataRedis\2|' $(DOCUMENTSERVER_CONFIG)/*.json endif cd $(DOCUMENTSERVER)/npm && \ npm install && \ - pkg ./node_modules/json $(PKG_TARGET:%=-t %) -o json + env PKG_CACHE_PATH=%%WRKDIR%%/.pkg-cache "%%WRKSRC%%/yao-pkg/node_modules/.bin/pkg" ./node_modules/json $(PKG_TARGET:%=-t %) -o json ifeq ($(PLATFORM),win) cd $(DOCUMENTSERVER)/npm && \ -@@ -441,13 +464,13 @@ +@@ -445,13 +468,13 @@ endif rm -r \ $(DOCUMENTSERVER)/npm/node_modules \ - $(DOCUMENTSERVER)/npm/package-lock.json + $(DOCUMENTSERVER)/npm/npm-shrinkwrap.json echo "Done" > $@ documentserver-example: mkdir -p $(DOCUMENTSERVER_EXAMPLE) - cp -rf -t $(DOCUMENTSERVER_EXAMPLE) ../build_tools/out/$(TARGET)/$(COMPANY_NAME_LOW)/$(PRODUCT_SHORT_NAME_LOW)-example/* common/documentserver-example/welcome + cp -rf ../build_tools/out/$(TARGET)/$(COMPANY_NAME_LOW)/$(PRODUCT_SHORT_NAME_LOW)-example/* common/documentserver-example/welcome $(DOCUMENTSERVER_EXAMPLE) mkdir -p $(DOCUMENTSERVER_EXAMPLE_CONFIG) -@@ -456,7 +479,7 @@ +@@ -460,7 +483,7 @@ # Prevent for modification original config chmod ug=r $(DOCUMENTSERVER_EXAMPLE_CONFIG)/*.json - sed "s|{{OFFICIAL_PRODUCT_NAME}}|"$(OFFICIAL_PRODUCT_NAME)"|" -i $(DOCUMENTSERVER_EXAMPLE)/welcome/*.html + sed -i '' "s|{{OFFICIAL_PRODUCT_NAME}}|"$(OFFICIAL_PRODUCT_NAME)"|" $(DOCUMENTSERVER_EXAMPLE)/welcome/*.html /usr/bin/find $(DOCUMENTSERVER_EXAMPLE)/welcome -depth -type f -exec sed -i "s_{{year}}_$(shell date +"%Y")_g" {} \; sed -i "s|{{EXAMPLE_DISABLED_COMMANDS}}|$(EXAMPLE_DISABLED_COMMANDS)|g" $(DOCUMENTSERVER_EXAMPLE)/welcome/example-disabled.html -@@ -545,6 +568,7 @@ +@@ -553,6 +576,7 @@ cd $(@D) && $(ISCC) $(ISCC_PARAMS) $(iss_file) $(EXE): iss_file = common.iss +freebsd: $(COMMON_DEPS) $(LINUX_DEPS) documentserver $(EXE): $(COMMON_DEPS) documentserver documentserver-example $(NGINX) $(PSQL) $(WINSW) $(EXE_PR): iss_file = prerequisites.iss diff --git a/www/onlyoffice-documentserver/files/patch-increase_max_connections b/www/onlyoffice-documentserver/files/patch-increase_max_connections index 15499bc9f923..f46557ff38a0 100644 --- a/www/onlyoffice-documentserver/files/patch-increase_max_connections +++ b/www/onlyoffice-documentserver/files/patch-increase_max_connections @@ -1,42 +1,42 @@ --- server/Common/sources/constants.js.orig 2025-10-12 16:21:06 UTC +++ server/Common/sources/constants.js -@@ -88,7 +88,7 @@ exports.LICENSE_RESULT = { +@@ -91,7 +91,7 @@ NotBefore: 16 }; -exports.LICENSE_CONNECTIONS = 20; +exports.LICENSE_CONNECTIONS = 2000; + exports.LICENSE_CONNECTIONS_OS = 0x7fffffff; // max signed 32-bit value exports.LICENSE_USERS = 3; exports.LICENSE_EXPIRE_USERS_ONE_DAY = 24 * 60 * 60; // day in seconds - --- web-apps/apps/documenteditor/mobile/src/lib/patch.jsx.orig 2025-10-12 20:28:53 UTC +++ web-apps/apps/documenteditor/mobile/src/lib/patch.jsx @@ -4,7 +4,7 @@ EditorUIController.isSupportEditFeature = () => { }; EditorUIController.isSupportEditFeature = () => { - return false + return true }; EditorUIController.getToolbarOptions = () => { --- web-apps/apps/presentationeditor/mobile/src/lib/patch.jsx.orig 2025-10-12 20:28:53 UTC +++ web-apps/apps/presentationeditor/mobile/src/lib/patch.jsx @@ -1,6 +1,6 @@ const EditorUIController = () => null; const EditorUIController = () => null; -EditorUIController.isSupportEditFeature = () => false; +EditorUIController.isSupportEditFeature = () => true; export default EditorUIController; --- web-apps/apps/spreadsheeteditor/mobile/src/lib/patch.jsx.orig 2025-10-12 20:28:53 UTC +++ web-apps/apps/spreadsheeteditor/mobile/src/lib/patch.jsx @@ -1,6 +1,6 @@ const EditorUIController = () => null; const EditorUIController = () => null; -EditorUIController.isSupportEditFeature = () => false; +EditorUIController.isSupportEditFeature = () => true; export default EditorUIController; diff --git a/www/onlyoffice-documentserver/files/patch-server_DocService_package.json b/www/onlyoffice-documentserver/files/patch-server_DocService_package.json index 8bc864a976bf..4168cd82b107 100644 --- a/www/onlyoffice-documentserver/files/patch-server_DocService_package.json +++ b/www/onlyoffice-documentserver/files/patch-server_DocService_package.json @@ -1,31 +1,31 @@ ---- server/DocService/package.json.orig 2026-02-24 14:13:24 UTC +--- server/DocService/package.json.orig 2026-05-17 11:10:44 UTC +++ server/DocService/package.json @@ -28,11 +28,12 @@ "mime-db": "1.53.0", "ms": "2.1.3", "mssql": "11.0.1", - "multer": "1.4.4", -+ "multer": "2.0.2", ++ "multer": "2.1.1", "multi-integer-range": "5.2.0", "multiparty": "4.2.3", "mysql2": "3.13.0", "oracledb": "6.9.0", + "patch-package": "^8.0.0", "pg": "8.14.0", "redis": "4.7.0", "retry": "0.13.1", @@ -54,9 +55,11 @@ "../Common/node_modules/axios/dist/node/axios.cjs" ], "assets": [ - "node_modules/oracledb/build/Release/oracledb-*.node", - "node_modules/sharp/build/Release/*", - "node_modules/sharp/vendor/**/*" + "node_modules/oracledb/build/Release/oracledb-*.node" + ], + "ignore": [ + "node_modules/sharp/build/**", + "node_modules/sharp/vendor/**" ] } } diff --git a/www/onlyoffice-documentserver/files/patch-server_package.json b/www/onlyoffice-documentserver/files/patch-server_package.json index 6cbf30c0512e..9630da4d03e4 100644 --- a/www/onlyoffice-documentserver/files/patch-server_package.json +++ b/www/onlyoffice-documentserver/files/patch-server_package.json @@ -1,38 +1,38 @@ ---- server/package.json.orig 2026-02-23 07:24:11 UTC +--- server/package.json.orig 2026-05-17 11:10:44 UTC +++ server/package.json @@ -4,9 +4,11 @@ "homepage": "https://www.onlyoffice.com", "private": true, "dependencies": { -+ "grunt": "^1.6.1", ++ "grunt": "^1.6.2", + "grunt-cli": "^1.5.0", "license-downloader": "1.0.8", "license-report": "6.5.0", - "npm-run-all": "4.1.5" -+ "concurrently": "^9.2.0" ++ "concurrently": "^10.0.0" }, "devDependencies": { "@eslint/compat": "1.2.3", -@@ -36,10 +38,10 @@ - "integration database tests": "cd ./DocService && jest integration/databaseTests --inject-globals=false --config=../tests/jest.config.js", +@@ -37,10 +39,10 @@ + "integration rabbitmq tests": "cd ./DocService && jest integration/rabbitmq --inject-globals=false --config=../tests/jest.config.js --passWithNoTests", "tests": "cd ./DocService && jest --inject-globals=false --config=../tests/jest.config.js", "tests:dev": "cd ./DocService && jest --inject-globals=false --config=../tests/jest.config.js --watch", - "install:Common": "npm ci --prefix ./Common", - "install:DocService": "npm ci --prefix ./DocService", - "install:FileConverter": "npm ci --prefix ./FileConverter", - "install:Metrics": "npm ci --prefix ./Metrics", + "install:Common": "npm install --prefix ./Common", + "install:DocService": "npm install --prefix ./DocService", + "install:FileConverter": "npm install --prefix ./FileConverter", + "install:Metrics": "npm install --prefix ./Metrics", "3d-party-lic-json:Common": "license-report --output=json --package=./Common/package.json --config ./3d-party-lic-report/license-report-config.json > ./3d-party-lic-report/license-report.json", "3d-party-lic-json:DocService": "license-report --output=json --package=./DocService/package.json --config ./3d-party-lic-report/license-report-config.json > ./3d-party-lic-report/license-report.json", "3d-party-lic-json:FileConverter": "license-report --output=json --package=./FileConverter/package.json --config ./3d-party-lic-report/license-report-config.json > ./3d-party-lic-report/license-report.json", -@@ -52,6 +54,6 @@ +@@ -53,6 +55,6 @@ "3d-party-lic-report:FileConverter": "run-s 3d-party-lic-json:FileConverter 3d-party-lic-downloader 3d-party-lic-md", "3d-party-lic-report:Metrics": "run-s 3d-party-lic-json:Metrics 3d-party-lic-downloader 3d-party-lic-md", "3d-party-lic-report": "run-s 3d-party-lic-md-header 3d-party-lic-report:*", - "build": "run-p install:*" + "build": "concurrently \"npm run install:Common\" \"npm run install:DocService\" \"npm run install:FileConverter\" \"npm run install:Metrics\"" } } diff --git a/www/onlyoffice-documentserver/files/patch-web-apps_build_package.json b/www/onlyoffice-documentserver/files/patch-web-apps_build_package.json index a29bc7311c2d..bff659570cd1 100644 --- a/www/onlyoffice-documentserver/files/patch-web-apps_build_package.json +++ b/www/onlyoffice-documentserver/files/patch-web-apps_build_package.json @@ -1,24 +1,33 @@ ---- web-apps/build/package.json.orig 2025-06-18 20:13:18 UTC +--- web-apps/build/package.json.orig 2026-05-16 21:26:24 UTC +++ web-apps/build/package.json +@@ -6,7 +6,7 @@ + "dependencies": { + "@babel/core": "^7.25.2", + "@babel/preset-env": "^7.25.3", +- "grunt": "^1.6.1", ++ "grunt": "^1.6.2", + "grunt-babel": "^8.0.0", + "grunt-contrib-clean": "^2.0.1", + "grunt-contrib-concat": "^2.0.0", @@ -29,6 +29,8 @@ "iconv-lite": "^0.6.3", "less-plugin-clean-css": "1.5.1", "lodash": "^4.17.21", + "optipng-bin": "^5.1.0", + "patch-package": "^8.0.0", "terser": "^5.20.0", "vinyl-fs": "^4.0.0" }, @@ -44,8 +46,9 @@ } }, "devDependencies": { - "chai": "^5.1.0", - "grunt-mocha": "^1.2.0", - "mocha": "^10.2.0" -+ "chai": "^5.1.0" ++ "chai": "^6.2.0" + }, + "scripts": { + "postinstall": "patch-package" } } diff --git a/www/onlyoffice-documentserver/files/pkg-message.in b/www/onlyoffice-documentserver/files/pkg-message.in index 6ad3c0edf016..4299eafdbc00 100644 --- a/www/onlyoffice-documentserver/files/pkg-message.in +++ b/www/onlyoffice-documentserver/files/pkg-message.in @@ -1,131 +1,116 @@ [ { type: install message: <