Next: Совершенная установка, Previous: Сборка из Git, Up: Содействие [Contents][Index]
Чтобы держать в порядке рабочее окружение, удобно тестировать изменения, сделанные в вашем локальном дереве исходников, без их установки. Так вы сможете отличить ’наряд’ вашего конечного пользователя от ’пёстрого костюма’.
С этой целью можно использовать все инструменты командной строки, даже если
вы не запускали make install
. Для этого вам сначала нужно создать
окружение со всеми доступными зависимостями (see Сборка из Git), и
затем просто начните каждую команду с ./pre-inst-env
(скрипт
pre-inst-env находится на верху дерева сборки Guix; он генерируется
запуском ./bootstrap
, за которым следует ./configure
).
В качестве примера, вот как вы собрали бы пакет hello
(подразумевается, что guix-daemon
уже запущена на вашей системе;
ничего страшного, если это другая версия):
$ ./pre-inst-env guix build hello
Аналогично, пример для Guile сессии с использованием модулей Guix:
$ ./pre-inst-env guile -c '(use-modules (guix utils)) (pk (%current-system))' ;;; ("x86_64-linux")
… и для REPL (see Using Guile Interactively in Guile Reference Manual):
$ ./pre-inst-env guile scheme@(guile-user)> ,use(guix) scheme@(guile-user)> ,use(gnu) scheme@(guile-user)> (define snakes (fold-packages (lambda (package lst) (if (string-prefix? "python" (package-name package)) (cons package lst) lst)) '())) scheme@(guile-user)> (length snakes) $1 = 361
Если вы изучаете демона и его исзодники, или если guix-daemon
еще
не запущена в вашей системе, вы можете запустить его прямо из дерева
сборки34:
$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild
Скрипт pre-inst-env
устанавливает все переменные окружения,
которые необходимы для этой задачи, включая PATH
и
GUILE_LOAD_PATH
.
Заметим, что ./pre-inst-env guix pull
не обновляет
локальное дерево исходников. Эта команда только обновляет символическую
ссылку ~/.config/guix/current (see Запуск guix pull). Выполните
git pull
, если вы хотите обновить локальное дерево исходников.
Флаг -E команды sudo
гарантирует, что
GUILE_LOAD_PATH
настроен правильно, так что guix-daemon
и
инструменты, которые он использует, могут найти необходимые им модули
Guile.
Next: Совершенная установка, Previous: Сборка из Git, Up: Содействие [Contents][Index]