From 7bf12820f61179900f9d1f753acf91fd33724976 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Mon, 21 Aug 2023 20:57:12 +0200 Subject: [PATCH] maint: Support `guix shell' in Guix's git archive with manifest.scm. * manifest.scm: New file. * Makefile.am (EXTRA_DIST): Add it. * doc/contributing.texi (Building from Git): Mention using it. --- Makefile.am | 1 + doc/contributing.texi | 6 ++++++ manifest.scm | 30 ++++++++++++++++++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 manifest.scm diff --git a/Makefile.am b/Makefile.am index 922913355c..8924974e8a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -692,6 +692,7 @@ EXTRA_DIST += \ ROADMAP \ TODO \ bootstrap \ + manifest.scm \ build-aux/build-self.scm \ build-aux/check-channel-news.scm \ build-aux/check-final-inputs-self-contained.scm \ diff --git a/doc/contributing.texi b/doc/contributing.texi index 156a6cb19e..4de659c7ed 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -77,6 +77,12 @@ hack on Guix: guix shell -D guix --pure @end example +or even, from within a Git worktree for Guix: + +@example +guix shell --pure +@end example + @xref{Invoking guix shell}, for more information on that command. If you are unable to use Guix when building Guix from a checkout, the diff --git a/manifest.scm b/manifest.scm new file mode 100644 index 0000000000..bcd94b68c5 --- /dev/null +++ b/manifest.scm @@ -0,0 +1,30 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2022 Janneke Nieuwenhuizen +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +;; GNU Guix development manifest. To create development environment, run +;; +;; guix shell +;; +;; or something like +;; +;; guix shell --pure git git:send-email openssh + +(use-modules (guix profiles) + (gnu packages package-management)) + +(package->development-manifest guix)