diff mbox series

[bug#53827] Add a TLDR entry for building Guix from Git.

Message ID 20220206230321.3142016-1-contact@phfrohring.com
State New
Headers show
Series [bug#53827] Add a TLDR entry for building Guix from Git. | expand

Checks

Context Check Description
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Pierre-Henry Fröhring Feb. 6, 2022, 11:03 p.m. UTC
Add a TLDR version of the `Building from Git' section of the
Guix reference manual.

---
 doc/guix-cookbook.texi | 77 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 77 insertions(+)

2.34.0
diff mbox series

Patch

diff --git a/doc/guix-cookbook.texi b/doc/guix-cookbook.texi
index d2ce525998..001c22f648 100644
--- a/doc/guix-cookbook.texi
+++ b/doc/guix-cookbook.texi
@@ -66,6 +66,7 @@  Weblate} (@pxref{Translating Guix,,, guix, GNU Guix reference manual}).
 
 @menu
 * Scheme tutorials::            Meet your new favorite language!
+* Building from Git::           Hack Guix itself
 * Packaging::                   Packaging tutorials
 * System Configuration::        Customizing the GNU System
 * Advanced package management:: Power to the users!
@@ -301,7 +302,81 @@  You'll find more books, tutorials and other resources at
 @url{https://schemers.org/}.
 
 
+@c *********************************************************************
+@node Building from Git
+@chapter Building from Git
+
+Build Guix from Git and start hacking. TLDR version of:
+@pxref{Building from Git,,, guix, GNU Guix reference manual}
+
+@node Context
+@section Context
+
+@itemize
+@item
+Guix is installed using binary installation.
+@item
+Git is installed
+@end itemize
+
+@node Source
+@section Source
+
+@example
+mkdir ~/src; cd ~/src
+git clone https://git.savannah.gnu.org/git/guix.git
+@end example
+
+@node Authentication
+@section Authentication
+
+@example
+git fetch origin keyring:keyring
+guix git authenticate 9edb3f66fd807b096b48283debdcddccfea34bad \
+  "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA"
+@end example
+
+@node Development environment
+@section Development environment
+
+The @code{localstatedir} value is the prefix of @code{/guix/db}.  For
+example, if:
+
+@example
+$ find / -type d -path "*/guix/db" 2>/dev/null
+/var/guix/db
+@end example
+
+then the value of @code{localstatedir} is @code{/var}.
+
+@example
+guix shell --pure -D guix
+./bootstrap
+./configure --localstatedir=/var
+@end example
+
+@node Compile
+@section Compile
+
+@example
+make
+make check
+exit
+@end example
+
+@node Test
+@section Test
+
+@code{./pre-inst-env} lets you distinguish between this installation of
+Guix and any other.
+
+@example
+cd ~/src/guix
+guix shell --pure -D guix
+./pre-inst-env guix build hello
+@end example
+
+
 @c *********************************************************************
 @node Packaging
 @chapter Packaging
--