guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/01: doc: Clarify channel file structure.


From: guix-commits
Subject: 01/01: doc: Clarify channel file structure.
Date: Wed, 13 Feb 2019 00:40:00 -0500 (EST)

marusich pushed a commit to branch master
in repository guix.

commit b0a372637f683eae35802af93d67711c3a18e480
Author: Chris Marusich <address@hidden>
Date:   Sun Jan 27 16:29:30 2019 -0800

    doc: Clarify channel file structure.
    
    Suggested by Hartmut Goebel <address@hidden>.
    
    * doc/guix.texi (Channels): Clarify how a channel author should structure 
the
    files in their channel's Git repository.
---
 doc/guix.texi | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index aab8978..2ae4f53 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -3705,9 +3705,8 @@ 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
+To use a channel, write @code{~/.config/guix/channels.scm} to instruct
address@hidden pull} to pull from it @emph{in addition} to the default Guix
 channel(s):
 
 @vindex %default-channels
@@ -3751,6 +3750,17 @@ the new and upgraded packages that are listed, some like 
@code{my-gimp} and
 @code{my-emacs-with-cool-features} might come from
 @code{my-personal-packages}, while others come from the Guix default channel.
 
+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}).
+
 @cindex dependencies, channels
 @cindex meta-data, channels
 @subsection Declaring Channel Dependencies



reply via email to

[Prev in Thread] Current Thread [Next in Thread]