aboutsummaryrefslogtreecommitdiff
path: root/doc/contributing.texi
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-10-17 03:13:52 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-11-07 12:33:26 -0500
commit7d3f2b99ffa8411994623f3bd32353cea63f0ecf (patch)
tree61165ad24f211c1a0dd6f94e5e475c12f2f19bbf /doc/contributing.texi
parente4443561d2b40d428548bc1a32032219da4f273e (diff)
downloadguix-7d3f2b99ffa8411994623f3bd32353cea63f0ecf.tar
guix-7d3f2b99ffa8411994623f3bd32353cea63f0ecf.tar.gz
doc: Expound on the build-side versus host-side modules topic.
Discussed in <https://issues.guix.gnu.org/65924#98-lineno27>. * doc/contributing.texi (Modules): Add new context indices, and provide a real-life counter-example, and its ramifications. Reported-by: Ludovic Courtès <ludo@gnu.org> Change-Id: I06975fb24f0d67c833884313a727dc550f61d8a0
Diffstat (limited to 'doc/contributing.texi')
-rw-r--r--doc/contributing.texi9
1 files changed, 7 insertions, 2 deletions
diff --git a/doc/contributing.texi b/doc/contributing.texi
index 7a458903be..0d76b31c18 100644
--- a/doc/contributing.texi
+++ b/doc/contributing.texi
@@ -1280,11 +1280,16 @@ implement low-level concepts, such as the @code{memoize} procedure.
@node Modules
@subsection Modules
-
+@cindex build-side modules
+@cindex host-side modules
Guile modules that are meant to be used on the builder side must live in
the @code{(guix build @dots{})} name space. They must not refer to
other Guix or GNU modules. However, it is OK for a ``host-side'' module
-to use a build-side module.
+to use a build-side module. As an example, the @code{(guix
+search-paths)} module should not be imported and used by a package since
+it isn't meant to be used as a ``build-side'' module. It would also
+couple the module with the package's dependency graph, which is
+undesirable.
Modules that deal with the broader GNU system should be in the
@code{(gnu @dots{})} name space rather than @code{(guix @dots{})}.