Next: Using a Custom Guix Channel, Up: 通道 [Contents][Index]
You can specify additional channels to pull from. To use a channel,
write ~/.config/guix/channels.scm
to instruct guix pull
to
pull from it in addition to the default Guix channel(s):
;; Add variant packages to those Guix provides. (cons (channel (name 'variant-packages) (url "https://example.org/variant-packages.git")) %default-channels)
Note that the snippet above is (as always!) Scheme code; we use
cons
to add a channel the list of channels that the variable
%default-channels
is bound to (see cons
and lists in GNU Guile Reference Manual). With this file in place, guix
pull
builds not only Guix but also the package modules from your own
repository. The result in ~/.config/guix/current is the union of
Guix with your own package modules:
$ 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 variant-packages dd3df5e repository URL: https://example.org/variant-packages.git branch: master commit: dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb 11 new packages: variant-gimp, variant-emacs-with-cool-features, … 4 packages upgraded: emacs-racket-mode@0.0.2-2.1b78827, …
The output of guix pull
above shows that Generation 19
includes both Guix and packages from the variant-personal-packages
channel. Among the new and upgraded packages that are listed, some like
variant-gimp
and variant-emacs-with-cool-features
might come
from variant-packages
, while others come from the Guix default
channel.