GNU/GUIX не может найти пользовательские модули, указанные в манифесте

Я пытаюсь бежать guix package установить для следующего манифеста:

      (specifications->manifest
'("noguix-hugo" ;; A CUSTOM MODULE implemented in /module/root-1/site-lisp/nonguix-hugo.scm
  "go"))

Пользовательский модуль в манифесте объявлен следующим образом:

      (define-module (nonguix-hugo)
  ;; implementation detail
  ;; ....
)
 

А команда установки выглядит так:

      guix package --load-path="/module/root1/site-lisp"   \
             --load-path="/module/root-2/site-lisp"  \
             --manifest="/path/to/manifest.scm"      \
             --profile="/path/to/profile"

Команда не выполняется с сообщением об ошибке:

пакет guix: ошибка: noguix-hugo: неизвестный пакет

Однако создание noguix-hugo с использованием guix build команда работает нормально

      guix build   --load-path="/module/root1/site-lisp"   \
             --load-path="/module/root-2/site-lisp"  \
             nonguix-package

# The command builds and outputs the module location as expected 
# /gnu/store/7js349wb17371225njzll9gma8kmwf-nonguix-hugo-1.0

Мой вопрос :

Почему Guix удается найти модуль при его сборке, но не может найти его, если это указано в файле манифеста.

Я даже пробовал добавить (use-modules (nonguix-hugo)) к манифесту и настройке GUIX_PACKAGE_PATH как указано в [1], но установка по-прежнему не выполняется.

использованная литература

[1] https://guix.gnu.org/manual/en/html_node/Package-Modules.html

1 ответ

Ладно, оказывается, это была опечатка в манифесте:

      (specifications->manifest
'("noguix-hugo"
  "go"))

который следует исправить на:

      (specifications->manifest
  '("nonguix-hugo" ;; <= this line
    "go"))

Блин! ....

Другие вопросы по тегам