From 3fa2bc4f0d11fc695bfab9b85981228c1a88e007 Mon Sep 17 00:00:00 2001 From: Chris Marusich Date: Sun, 2 Oct 2016 13:00:34 -0700 Subject: [PATCH] gnu: Make "guix-devel" a public variable in package-management.scm This provides an obvious and easy way to use Guix to set up an environment for building Guix from a Git checkout. * gnu/packages/package-management.scm (guix-devel): Make it public and give it an appropriate name, synopsis, and description. Change the generated version string to be even shorter so that the tests can actually run. Update all documentation to refer to "guix" when talking about the release version, and "guix-devel" when talking about the development version. --- README | 3 ++- doc/contributing.texi | 4 ++-- doc/guix.texi | 2 +- gnu/packages/package-management.scm | 16 +++++++++++++--- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/README b/README index f05a4b5..d4484e8 100644 --- a/README +++ b/README @@ -54,7 +54,8 @@ For information on installation from a Git checkout, please see the section You can re-build and re-install Guix using a system that already runs Guix. To do so: - - Start a shell with the development environment for Guix: + - Start a shell with an environment containing the dependencies required to + build the release version of Guix: guix environment guix diff --git a/doc/contributing.texi b/doc/contributing.texi index 18d891d..50657de 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -50,14 +50,14 @@ all the dependencies and appropriate environment variables are set up to hack on Guix: @example -guix environment guix +guix environment guix-devel @end example @xref{Invoking guix environment}, for more information on that command. Extra dependencies can be added with @option{--ad-hoc}: @example -guix environment guix --ad-hoc help2man git strace +guix environment guix-devel --ad-hoc git strace @end example Run @command{./bootstrap} to generate the build system infrastructure diff --git a/doc/guix.texi b/doc/guix.texi index f5bbb92..e03b4a4 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -5609,7 +5609,7 @@ the following command creates a Guix development environment that additionally includes Git and strace: @example -guix environment guix --ad-hoc git strace +guix environment guix-devel --ad-hoc git strace @end example Sometimes it is desirable to isolate the environment as much as diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 4cc5b89..c1f1095 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -207,14 +207,15 @@ the Nix package manager.") (license gpl3+) (properties '((ftp-server . "alpha.gnu.org"))))) -(define guix-devel +(define-public guix-devel ;; Development version of Guix. ;; ;; Note: use a very short commit id; with a longer one, the limit on ;; hash-bang lines would be exceeded while running the tests. (let ((commit "4420940f20a2f36f29519f686bca7b85be6be5c9")) (package (inherit guix-0.11.0) - (version (string-append "0.11.0-1." (string-take commit 4))) + (name "guix-devel") + (version (string-take commit 8)) (source (origin (method git-fetch) (uri (git-reference @@ -251,7 +252,16 @@ the Nix package manager.") ("texinfo" ,texinfo) ("graphviz" ,graphviz) ("help2man" ,help2man) - ,@(package-native-inputs guix-0.11.0)))))) + ,@(package-native-inputs guix-0.11.0))) + (synopsis "Development version of GNU Guix") + (description "GNU Guix is a functional package manager for the GNU +system, and is also a distribution thereof. It includes a virtual machine +image. Besides the usual package management features, it also supports +transactional upgrades and roll-backs, per-user profiles, and much more. It +is based on the Nix package manager. This is a development version which is +built from a recent commit in the project's Git repository. It provides +additional dependencies that are not normally required for building the +release version, such as GNU Autoconf.")))) (define-public guix guix-devel) -- 2.9.2