From f834d08a7fd4db159a145937efe615c56e53508f Mon Sep 17 00:00:00 2001 From: Storozhenko Evgeny Vladimirovich aka kpa39l Date: Sun, 1 Feb 2026 10:19:24 +0300 Subject: [PATCH] =?UTF-8?q?Fix:=20=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BE?= =?UTF-8?q?=D0=BA=20=D0=B2=20Hugo=20=D1=81=D0=B0=D0=B9=D1=82=D0=B5=20?= =?UTF-8?q?=D0=B8=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=20=D0=BF=D0=BE=D1=81=D1=82=D0=B0=20=D0=BE=D0=B1=20=D0=B8?= =?UTF-8?q?=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F?= =?UTF-8?q?=D1=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- QWEN.md | 48 +++++++++++++++++++++ README.md | 48 +++++++++++++++++++++ content/posts/hugo-error-fix/index.md | 59 ++++++++++++++++++++++++++ gitea-setup.md | 60 +++++++++++++++++++++++++++ hugo.toml | 12 +++++- ssh_setup_instructions.md | 37 +++++++++++++++++ 6 files changed, 262 insertions(+), 2 deletions(-) create mode 100644 QWEN.md create mode 100644 README.md create mode 100644 content/posts/hugo-error-fix/index.md create mode 100644 gitea-setup.md create mode 100644 ssh_setup_instructions.md diff --git a/QWEN.md b/QWEN.md new file mode 100644 index 0000000..659ba2b --- /dev/null +++ b/QWEN.md @@ -0,0 +1,48 @@ +# Настройки взаимодействия + +## Общие принципы работы + +1. Все важные решения и изменения фиксируются в README.md +2. Взаимодействие происходит на русском языке +3. Перед применением изменений проверяется корректность принятых решений +4. Цель - максимально быстро запустить проект для публикации контента + +## Текущая задача + +Организация блога на основе Hugo с темой PaperMod: +- Установка Hugo расширенной версии +- Создание нового сайта dedinit.ru +- Установка темы PaperMod +- Настройка bundle хранения статей +- Интеграция с Gitea сервером gitea.nixg.ru через SSH + +## Проверочные действия + +Перед выполнением каждого этапа будут выполняться проверки: +- Наличие установленного Hugo +- Возможность создания нового сайта +- Корректность настроек темы +- Подключение к Gitea серверу + +## Примечания + +- Важно обеспечить поддержку блоков кода и подсветки синтаксиса +- Необходимо предусмотреть хранение контента на внешнем сервере +- Проект должен быть готов к публикации контента как можно скорее + +## Информация о системе + +- Hugo была установлена через winget +- Для обновления Hugo до последней версии используется команда: `winget install Hugo.Hugo.Extended` +- Текущая версия Hugo: 0.155.1 +- После установки/обновления Hugo требуется перезапуск терминала для обновления PATH + +## Принятые решения в ходе реализации + +1. **Структура проекта**: Git-репозиторий инициализирован в папке с Hugo-сайтом, а не во внешней папке +2. **Интеграция с Gitea**: Используется SSH-подключение по порту 2222 +3. **Файлы документации**: Все файлы документации находятся в папке проекта Hugo-сайта +4. **Исключение папки public**: Создан .gitignore файл для исключения папки public из репозитория +5. **Bundle формат статей**: Используется формат bundle (папка с index.md) для хранения статей +6. **Тема PaperMod**: Установлена как submodule с выбором совместимой версии +7. **Решение проблемы совместимости**: Выбрана версия темы, совместимая с установленной версией Hugo \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..006eca4 --- /dev/null +++ b/README.md @@ -0,0 +1,48 @@ +# dedinit.ru + +## Описание проекта + +Этот проект представляет собой блог на основе генератора статических сайтов Hugo с темой PaperMod. Основная цель проекта - создать платформу для публикации лонгридов с поддержкой блоков кода и подсветки синтаксиса, чего не хватает в других сервисах (Telegraph, VK, Writefreely). + +## Технические детали + +- Генератор статических сайтов: Hugo (расширенная версия) +- Тема оформления: PaperMod (https://github.com/adityatelange/hugo-PaperMod) +- Хранение контента: Gitea сервер (gitea.nixg.ru) через SSH +- Настройка: bundle хранение статей + +## Статус проекта + +Проект находится в стадии разработки. Выполненные задачи: +- Установлена Hugo расширенная версия (0.155.1) +- Создан новый сайт dedinit.ru +- Установлена и настроена тема PaperMod +- Настроено bundle хранение статей +- Решена проблема совместимости Hugo и темы PaperMod + +## История изменений + +### 31 января 2026 года +- Установлена Hugo расширенная версия 0.155.1 +- Создан новый сайт dedinit.ru +- Установлена тема PaperMod +- Настроено bundle хранение статей +- Создан пример статьи в формате bundle +- Настроена интеграция с Gitea сервером (требуется дополнительная настройка SSH) + +## Принятые технические решения + +1. **Выбор Hugo**: Выбран генератор статичных сайтов Hugo для быстродействия и гибкости +2. **Расширенная версия Hugo**: Используется расширенная версия для поддержки SCSS +3. **Тема PaperMod**: Легкая и адаптивная тема с поддержкой темной/светлой темы +4. **Bundle хранение статей**: Используется формат bundle (папка с index.md) для удобного хранения статьи и связанных файлов +5. **Хранение на Gitea**: Контент хранится на собственном Gitea сервере для полного контроля +6. **SSH подключение**: Используется SSH для безопасного доступа к репозиторию +7. **Структура проекта**: Правильная иерархия папок с .gitignore для исключения ненужных файлов + +## Запуск проекта + +Для генерации сайта и просмотра его в браузере используйте следующие команды: + +- `hugo` - генерирует статический сайт в папку `public` +- `hugo server` - запускает локальный сервер для предварительного просмотра сайта в браузере (обычно доступен по адресу http://localhost:1313) \ No newline at end of file diff --git a/content/posts/hugo-error-fix/index.md b/content/posts/hugo-error-fix/index.md new file mode 100644 index 0000000..246a666 --- /dev/null +++ b/content/posts/hugo-error-fix/index.md @@ -0,0 +1,59 @@ +--- +title: "Исправление ошибок в Hugo сайте" +date: 2026-01-31T22:45:00+03:00 +draft: false +tags: ["hugo", "ошибки", "исправления", "google analytics", "deprecated"] +categories: ["Разработка", "Hugo"] +--- + +## Проблема + +При запуске команды `hugo server` возникала ошибка: + +``` +ERROR html/template:_partials/head.html:153:13: no such template "_internal/google_analytics.html" +``` + +## Решение + +### 1. Исправление ошибки с Google Analytics + +В новых версиях Hugo внутренний шаблон `_internal/google_analytics.html` был удален. +Необходимо заменить его использование на частичный шаблон из темы PaperMod: + +```html + +{{- template "_internal/google_analytics.html" . }} + + +{{- partial "google_analytics.html" . }} +``` + +### 2. Обновление шаблона Google Analytics + +В шаблоне `themes/PaperMod/layouts/partials/google_analytics.html` также +потребовалось обновить способ получения ID Google Analytics, так как в новых +версиях Hugo поле `.Site.GoogleAnalytics` было заменено на +`.Site.Config.Services.GoogleAnalytics.ID`. + +### 3. Исправление ошибок с устаревшим .Site.Social + +В шаблонах `twitter_cards.html` и `opengraph.html` использовались устаревшие +обращения к `.Site.Social`, которые были заменены на `.Site.Params.Social`. + +### 4. Исправление путей к частичным шаблонам + +Также были исправлены неправильные пути к частичным шаблонам в нескольких файлах: +- `twitter_cards.html` +- `schema_json.html` +- `opengraph.html` + +## Результат + +После всех исправлений сайт успешно запускается командой `hugo server` и +доступен по адресу http://localhost:1313/ + +## Вывод + +При обновлении Hugo или тем важно следить за изменениями в API и устаревшими +функциями. Использование устаревших элементов может привести к ошибкам сборки сайта. \ No newline at end of file diff --git a/gitea-setup.md b/gitea-setup.md new file mode 100644 index 0000000..29fae60 --- /dev/null +++ b/gitea-setup.md @@ -0,0 +1,60 @@ +# Настройка интеграции с Gitea + +## Требуемые данные для интеграции с gitea.nixg.ru + +Для завершения настройки интеграции с Gitea сервером необходимы следующие данные: + +1. **SSH ключи** - должны быть уже настроены на вашем компьютере +2. **URL репозитория** - полный URL к репозиторию на gitea.nixg.ru +3. **Имя пользователя** - для доступа к Gitea серверу +4. **Название репозитория** - куда будут отправляться изменения + +## Шаги для настройки: + +1. Убедитесь, что SSH ключи настроены и работают с gitea.nixg.ru +2. Создайте репозиторий на gitea.nixg.ru +3. Добавьте удаленный репозиторий в локальный проект: + +```bash +cd dedinit.ru +git remote add origin ssh://git@gitea.nixg.ru/ВАШ_ЛОГИН/НАЗВАНИЕ_РЕПОЗИТОРИЯ.git +``` + +4. Инициализируйте Git и сделайте первый коммит: + +```bash +git add . +git commit -m "Initial commit" +git push -u origin main +``` + +## Альтернативный способ (HTTPS): + +Если SSH недоступен, можно использовать HTTPS с токеном: + +```bash +git remote add origin https://gitea.nixg.ru/ВАШ_ЛОГИН/НАЗВАНИЕ_РЕПОЗИТОРИЯ.git +``` + +## Автоматизация деплоя + +Для автоматизации процесса деплоя можно создать скрипт deploy.sh: + +```bash +#!/bin/bash +echo "Сборка сайта..." +hugo + +echo "Добавление изменений в репозиторий..." +git add . +git commit -m "Обновление сайта $(date)" + +echo "Отправка изменений на сервер..." +git push origin main + +echo "Сайт успешно обновлен!" +``` + +## Примечание + +Все файлы в директории `dedinit.ru` являются частью Hugo-сайта и могут быть помещены в репозиторий целиком, за исключением директории `public` (если используется). \ No newline at end of file diff --git a/hugo.toml b/hugo.toml index a0aefc6..d22d9a8 100644 --- a/hugo.toml +++ b/hugo.toml @@ -31,8 +31,8 @@ preserveTaxonomyNames = true # utterancesRepo = "" # utterancesTheme = "preferred-color-scheme" - # Отключаем Google Analytics, т.к. partial отсутствует - # googleAnalytics = "" + # Google Analytics + # googleAnalytics = "G-XXXXXXXXXX" # Замените на ваш ID Google Analytics # Убираем использование .Site.Social, так как устарело # Social = {twitter = "username"} @@ -71,3 +71,11 @@ preserveTaxonomyNames = true name = "Теги" url = "/tags/" weight = 40 + +[params.social] + # twitter = "your_twitter_handle" + # facebook_admin = "your_facebook_admin_id" + +[services] + [services.googleAnalytics] + ID = "" # Укажите ваш ID Google Analytics, например "G-XXXXXXXXXX" diff --git a/ssh_setup_instructions.md b/ssh_setup_instructions.md new file mode 100644 index 0000000..66e3ff1 --- /dev/null +++ b/ssh_setup_instructions.md @@ -0,0 +1,37 @@ +# Инструкция по настройке SSH подключения к Gitea серверу + +Для завершения настройки интеграции с Gitea сервером, необходимо выполнить следующие шаги вручную: + +## 1. Проверка подключения к серверу + +Откройте терминал и выполните команду для проверки подключения: + +```bash +ssh -p 2222 git@gitea.nixg.ru +``` + +При первом подключении система запросит подтверждение добавления ключа сервера в known_hosts. Ответьте "yes". + +## 2. Если подключение прошло успешно, завершите SSH сессию командой: + +```bash +exit +``` + +## 3. Теперь можно выполнить команды Git: + +```bash +cd e:/yandex.disk/YandexDisk/projects/dedinit.ru/dedinit.ru +git remote set-url origin ssh://git@gitea.nixg.ru:2222/estorozhenko/dedinit.ru.git +git push -u origin main +``` + +## Альтернативный вариант (если SSH по-прежнему не работает) + +Если SSH соединение не удается настроить, можно использовать HTTPS с токеном: + +```bash +git remote set-url origin https://gitea.nixg.ru/estorozhenko/dedinit.ru.git +``` + +Затем при пуше система запросит логин и пароль (или токен доступа). \ No newline at end of file