#!/bin/bash # Установка/восстановление кастомизации F7 Office поверх coolwsd/code-brand. # Запуск: sudo ./install-f7office.sh [--dry-run] # Ожидается запуск из корня репозитория, где есть каталоги etc/ и usr/. set -e DRY_RUN="" [ "$1" = "--dry-run" ] && DRY_RUN="echo" && shift ROOT="" if [ -d "usr/share/coolwsd/browser/dist" ] && [ -d "etc" ]; then ROOT="." elif [ -d "f7office-deploy/usr" ]; then ROOT="f7office-deploy" else echo "Запустите скрипт из корня репозитория (где есть usr/ и etc/)." exit 1 fi COPY() { $DRY_RUN cp -a "$1" "$2" } # Копирование browser/dist (только изменённые файлы) DIST_SRC="${ROOT}/usr/share/coolwsd/browser/dist" DIST_DST="/usr/share/coolwsd/browser/dist" if [ ! -d "$DIST_DST" ]; then echo "Каталог $DIST_DST не найден. Сначала установите coolwsd и code-brand." exit 1 fi [ -f "$DIST_SRC/branding.js" ] && COPY "$DIST_SRC/branding.js" "$DIST_DST/" [ -f "$DIST_SRC/branding.css" ] && COPY "$DIST_SRC/branding.css" "$DIST_DST/" [ -f "$DIST_SRC/branding-mobile.css" ] && COPY "$DIST_SRC/branding-mobile.css" "$DIST_DST/" [ -f "$DIST_SRC/branding-tablet.css" ] && COPY "$DIST_SRC/branding-tablet.css" "$DIST_DST/" [ -f "$DIST_SRC/cool.html" ] && COPY "$DIST_SRC/cool.html" "$DIST_DST/" [ -f "$DIST_SRC/wasm.html" ] && COPY "$DIST_SRC/wasm.html" "$DIST_DST/" [ -f "$DIST_SRC/welcome/welcome.html" ] && COPY "$DIST_SRC/welcome/welcome.html" "$DIST_DST/welcome/" [ -f "$DIST_SRC/src/layer/tile/CanvasTileUtils.js" ] && COPY "$DIST_SRC/src/layer/tile/CanvasTileUtils.js" "$DIST_DST/src/layer/tile/" [ -f "$DIST_SRC/src/layer/tile/TileWorker.js" ] && COPY "$DIST_SRC/src/layer/tile/TileWorker.js" "$DIST_DST/src/layer/tile/" # f7cloud (или nextcloud) — целый каталог брендинга if [ -d "$DIST_SRC/f7cloud" ]; then $DRY_RUN rm -rf "$DIST_DST/f7cloud" $DRY_RUN cp -a "$DIST_SRC/f7cloud" "$DIST_DST/" # Опционально: симлинк nextcloud -> f7cloud для совместимости с WOPI-темой "nextcloud" if [ -z "$DRY_RUN" ] && [ ! -e "$DIST_DST/nextcloud" ]; then ln -sf f7cloud "$DIST_DST/nextcloud" fi fi # Конфиги (раскомментируйте при необходимости) # [ -f "${ROOT}/etc/coolwsd/coolwsd.xml" ] && COPY "${ROOT}/etc/coolwsd/coolwsd.xml" /etc/coolwsd/ # [ -f "${ROOT}/etc/apache2/sites-available/collabora-le-ssl.conf" ] && COPY "${ROOT}/etc/apache2/sites-available/collabora-le-ssl.conf" /etc/apache2/sites-available/ if [ -z "$DRY_RUN" ]; then echo "Файлы установлены. Перезапуск coolwsd..." systemctl restart coolwsd 2>/dev/null || true echo "Готово." else echo "Dry-run: команды выше не выполнялись." fi