Hugo. Шаблон для научных работников

  • Тема Hugo Academic CV Theme.
  • Бывшая тема Wowchemy.
  • Бывшая тема Academic.
Содержание

1 Информация

2 Обновление шаблонов Wowchemy

2.1 До версии 5.3

  • Примечания до версии 5.3 находятся в блоге https://wowchemy.com/blog/.
  • В файле go.mod установите необходимую версию (например, 5.3), исправив строку:
    1require (
    2        github.com/wowchemy/wowchemy-hugo-modules/v5 v5.3.0
    3)
    
  • Обновите пути к модулям в конфигурации в файле config/_default/config.yaml:
    1module:
    2  imports:
    3​    - path: github.com/wowchemy/wowchemy-hugo-modules/wowchemy-cms/v5
    4​    - path: github.com/wowchemy/wowchemy-hugo-modules/wowchemy/v5
    
    или config/_default/config.toml:
    1[module]
    2  [[module.imports]]
    3    path = "github.com/wowchemy/wowchemy-hugo-modules/wowchemy-cms/v5"
    4  [[module.imports]]
    5    path = "github.com/wowchemy/wowchemy-hugo-modules/wowchemy/v5"
    
  • Для использования с netlify:
    • Обновите HUGO_VERSION в netlify.toml до необходимой версии 0.84.4.
  • Обновите модуль:
    • текущий релиз:
      1hugo mod get -u
      
    • текущая версия разработчика:
      1hugo mod get -u ./...
      

2.2 Общие рекомендации

  • Текущую версию можно найти:

    • в файле themes/academic/data/academic.toml (если всё делалось очень давно);
    • в файле go.mod:
      • точная версия (например, v5.0.0);
      • версия сборки в ​​​​форме v<dummy-version-number>-<date>-<build-number>.
  • Отредактируйте файл go.mod:

    1module my_website
    2
    3go 1.15
    4
    5require (
    6        github.com/HugoBlox/hugo-blox-builder/modules/blox-bootstrap/v5 v5.9.6
    7        github.com/HugoBlox/hugo-blox-builder/modules/blox-plugin-netlify v1.1.2-0.20231108141515-0478cf6921f9
    8        github.com/HugoBlox/hugo-blox-builder/modules/blox-plugin-reveal v1.1.2
    9)
    
    • Вы настраиваете версию модуля в операторе require.
    • Вместо версии main можно задать конкретную версию модуля (в формате v5.x.y).
  • Обновите пути модулей в файле config/_default/module.yaml:

    1imports:
    2​  - path: github.com/HugoBlox/hugo-blox-builder/modules/blox-plugin-netlify
    3​  - path: github.com/HugoBlox/hugo-blox-builder/modules/blox-plugin-reveal
    4​  - path: github.com/HugoBlox/hugo-blox-builder/modules/blox-bootstrap/v5
    
  • Определите необходимую версию hugo (HUGO_VERSION) (возьмите из примечания к выпуску https://github.com/HugoBlox/hugo-blox-builder/releases).

  • Проверьте, что локальная версия Hugo Extended имеет необходимую версию.

  • Последовательно примените любые критические изменения из соответствующих примечаний к выпуску. Если в релизе нет раздела Breaking Changes, то никаких изменений не требуется.

  • Обновите модули темы:

    • до последней официальной версии:
      1hugo mod get -u
      
    • до текущей версии в репозитории:
      1hugo mod get -u ./...
      
  • После этого main в go.mod будет заменена на конкретную версию.

  • Если Вы обновляете совсем старую версию, Вам может быть проще создать новый сайт и перенести папку content.

3 Устранение проблем

3.1 Ошибка: нарушение безопасности

  • После обновления до 0.91 возникла следующая ошибка при генерации сайта:
     1hugo v0.91.0+extended linux/amd64 BuildDate=2021-12-22T12:45:46+03:00 VendorInfo=Gentoo
     2ERROR render of "page" failed: execute of template failed: template: project/single.html:5:3: executing "project/single.html" at <partial "site_head" .>: error calling partial: "/home/dharma/work/blog/git/resources/hugo_cache/modules/filecache/modules/pkg/mod/github.com/wowchemy/wowchemy-hugo-modules/wowchemy/v5@v5.0.0-20211221220555-87f69f8c265e/layouts/partials/site_head.html:207:13": execute of template failed: template: partials/site_head.html:207:13: executing "partials/site_head.html" at <getenv "WC_POST_CSS">: error calling getenv: access denied: "WC_POST_CSS" is not whitelisted in policy "security.funcs.getenv"; the current security configuration is:
     3
     4[security]
     5  enableInlineShortcodes = false
     6  [security.exec]
     7    allow = ['^dart-sass-embedded$', '^go$', '^npx$', '^postcss$']
     8    osEnv = ['(?i)^(PATH|PATHEXT|APPDATA|TMP|TEMP|TERM)$']
     9
    10  [security.funcs]
    11    getenv = ['^HUGO_']
    12
    13  [security.http]
    14    methods = ['(?i)GET|POST']
    15    urls = ['.*']
    
  • Необходимо добавить строчки в белый список для переменной среды WC_POST_CSS.
  • Для config/_default/config.toml (в формате TOML):
    1[security.funcs]
    2getenv = [ "^HUGO_", "^WC_",]
    
  • Для config/_default/config.yaml (в формате YAML):
    1security:
    2  funcs:
    3    getenv:
    4​      - ^HUGO_
    5​      - ^WC_
    

4 Элементы шаблонов Wowchemy

5 Типы контента Wowchemy


Дмитрий Сергеевич Кулябов
Дмитрий Сергеевич Кулябов
Профессор кафедры теории вероятностей и кибербезопасности

Мои научные интересы включают физику, администрирование Unix и сетей.

Похожие