51 lines
1.9 KiB
Bash
51 lines
1.9 KiB
Bash
|
|
#!/bin/bash
|
||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
REMOTE=montana-moscow
|
||
|
|
CUSTOM=/var/lib/gitea/custom
|
||
|
|
HERE="$(cd "$(dirname "$0")" && pwd)"
|
||
|
|
|
||
|
|
echo "→ Сборка PNG-логотипов на сервере (librsvg)"
|
||
|
|
ssh "$REMOTE" "command -v rsvg-convert >/dev/null || apt-get install -y librsvg2-bin"
|
||
|
|
|
||
|
|
echo "→ Заливаем тему/шаблоны/SVG"
|
||
|
|
ssh "$REMOTE" "mkdir -p $CUSTOM/public/assets/css $CUSTOM/public/assets/img $CUSTOM/templates/custom"
|
||
|
|
rsync -avz "$HERE/public/" "$REMOTE:$CUSTOM/public/"
|
||
|
|
rsync -avz "$HERE/templates/" "$REMOTE:$CUSTOM/templates/"
|
||
|
|
|
||
|
|
echo "→ Растеризуем SVG в PNG (logo.png, apple-touch-icon.png, favicon.png)"
|
||
|
|
ssh "$REMOTE" "cd $CUSTOM/public/assets/img && \
|
||
|
|
rsvg-convert -w 512 -h 512 logo.svg -o logo.png && \
|
||
|
|
rsvg-convert -w 180 -h 180 favicon.svg -o apple-touch-icon.png && \
|
||
|
|
rsvg-convert -w 32 -h 32 favicon.svg -o favicon.png && \
|
||
|
|
chown -R git:git $CUSTOM"
|
||
|
|
|
||
|
|
echo "→ Регистрируем тему в app.ini"
|
||
|
|
ssh "$REMOTE" "python3 - <<'PY'
|
||
|
|
import re, pathlib
|
||
|
|
p = pathlib.Path('/etc/gitea/app.ini')
|
||
|
|
s = p.read_text()
|
||
|
|
if '[ui]' not in s:
|
||
|
|
s += '\n[ui]\n'
|
||
|
|
section = re.search(r'(\[ui\][^\[]*)', s)
|
||
|
|
block = section.group(1)
|
||
|
|
new = block
|
||
|
|
if 'DEFAULT_THEME' not in new:
|
||
|
|
new += 'DEFAULT_THEME = montana\n'
|
||
|
|
else:
|
||
|
|
new = re.sub(r'DEFAULT_THEME\s*=.*', 'DEFAULT_THEME = montana', new)
|
||
|
|
if 'THEMES' not in new:
|
||
|
|
new += 'THEMES = montana,gitea-light,gitea-dark,gitea-auto,gitea-light-protanopia-deuteranopia,gitea-dark-protanopia-deuteranopia\n'
|
||
|
|
else:
|
||
|
|
new = re.sub(r'THEMES\s*=.*', 'THEMES = montana,gitea-light,gitea-dark,gitea-auto,gitea-light-protanopia-deuteranopia,gitea-dark-protanopia-deuteranopia', new)
|
||
|
|
s = s.replace(block, new)
|
||
|
|
p.write_text(s)
|
||
|
|
print('app.ini обновлён')
|
||
|
|
PY"
|
||
|
|
|
||
|
|
echo "→ Перезапускаем Gitea"
|
||
|
|
ssh "$REMOTE" "systemctl restart gitea && sleep 2 && systemctl is-active gitea"
|
||
|
|
|
||
|
|
echo "→ Проверка"
|
||
|
|
curl -sI https://hub.montana.quest/ | head -3
|