Next: , Up: Каналы   [Contents][Index]


7.1 Указание дополнительных каналов

Чтобы использовать канал, напишите ~/.config/guix/channels.scm, чтобы обозначить guix pull скачивать оттуда в дополнение к каналу(-ам) Guix по умолчанию:

;; Add my personal packages to those Guix provides.
(cons (channel
        (name 'my-personal-packages)
        (url "https://example.org/personal-packages.git"))
      %default-channels)

Заметим, что сниппет выше (всегда!) код Scheme; мы используем cons для добавления канала в список каналов, то есть в переменную %default-channels (see cons and lists in GNU Guile Reference Manual). Если этот файл написан, guix pull производит сборку не только Guix, но и пакетных модулей из вашего репозитория. В результате в ~/.config/guix/current содержится объединение Guix и ваших собственных пакетных модулей:

$ guix pull --list-generations
…
Generation 19	Aug 27 2018 16:20:48
  guix d894ab8
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: d894ab8e9bfabcefa6c49d9ba2e834dd5a73a300
  my-personal-packages dd3df5e
    repository URL: https://example.org/personal-packages.git
    branch: master
    commit: dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb
  11 new packages: my-gimp, my-emacs-with-cool-features, …
  4 packages upgraded: emacs-racket-mode@0.0.2-2.1b78827, …

Результат guix pull выше показывает, что поколение Generation 19 включает как репозиторий Guix, так и пакеты из канала my-personal-packages. Вместе с новыми и обновлёнными пакетами, которые присутствуют в списке, что-нибудь типа my-gimp и my-emacs-with-cool-features может прийти из my-personal-packages, когда остальные идут из канала Guix по умолчанию.