From d382cbddd11e86bd9b69f271782d2dccba180a05 Mon Sep 17 00:00:00 2001 From: Chris Marusich Date: Sun, 27 Jan 2019 16:29:30 -0800 Subject: [PATCH] doc: Clarify channel file structure. Suggested by Hartmut Goebel . * doc/guix.texi (Channels): Clarify how a channel author should structure the files in their channel's Git repository. --- doc/guix.texi | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 22fc03b8f..5499ebf5b 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -3691,10 +3691,20 @@ share your improvements, which are basic tenets of email us at @email{guix-devel@@gnu.org} if you'd like to discuss this. @end quotation -Once you have a Git repository containing your own package modules, you can -write @code{~/.config/guix/channels.scm} to instruct @command{guix pull} to -pull from your personal channel @emph{in addition} to the default Guix -channel(s): +To create a channel, create a Git repository containing your own package +modules and make it available. The repository can contain anything, but a +useful channel will contain Guile modules that export packages. Once you +start using a channel, Guix will behave as if the root directory of that +channel's Git repository has been added to the Guile load path (@pxref{Load +Paths,,, guile, GNU Guile Reference Manual}). For example, if your channel +contains a file at @file{my-packages/my-tools.scm} that defines a Guile +module, then the module will be available under the name @code{(my-packages +my-tools)}, and you will be able to use it like any other module +(@pxref{Modules,,, guile, GNU Guile Reference Manual}). + +To use a channel, you can write @code{~/.config/guix/channels.scm} to instruct +@command{guix pull} to pull from your personal channel @emph{in addition} to +the default Guix channel(s): @vindex %default-channels @lisp -- 2.20.1