aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Bavier <bavier@cray.com>2018-10-10 13:33:15 -0500
committerEric Bavier <bavier@member.fsf.org>2018-10-16 17:09:15 -0500
commit6f1ce09d79fa6148459c90120881e825551651b2 (patch)
treeddd3a4a12df3fadeefd13f417f560a016e59f371
parentc8e3651a824bbc28915802265d9a5e7cc6405eea (diff)
downloadguix-6f1ce09d79fa6148459c90120881e825551651b2.tar
guix-6f1ce09d79fa6148459c90120881e825551651b2.tar.gz
gnu: Add guix-minimal.
* gnu/packages/guile.scm (guile-2.0.13): New variable. * gnu/packages/package-management.scm (guix)[arguments]: Adjust 'wrap-program' phase to handle "missing" inputs. (guix-minimal): New variable.
-rw-r--r--gnu/packages/guile.scm14
-rw-r--r--gnu/packages/package-management.scm22
2 files changed, 34 insertions, 2 deletions
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 912b0218ef..9e33003375 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -226,6 +226,20 @@ without requiring the source code to be rewritten.")
(home-page "https://www.gnu.org/software/guile/")
(license license:lgpl3+)))
+(define-public guile-2.0.13
+ ;; For testing a "minimal" Guix
+ (hidden-package
+ (package (inherit guile-2.0)
+ (name "guile")
+ (version "2.0.13")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/guile/guile-" version
+ ".tar.xz"))
+ (sha256
+ (base32
+ "12yqkr974y91ylgw6jnmci2v90i90s7h9vxa4zk0sai8vjnz4i1p")))))))
+
(define-public guile-2.2
(package (inherit guile-2.0)
(name "guile")
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index f06a39ddd6..fd01545082 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
+;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -232,13 +233,13 @@
(map (cut string-append <>
"/share/guile/site/"
effective)
- deps)
+ (delete #f deps))
":"))
(gopath (string-join
(map (cut string-append <>
"/lib/guile/" effective
"/site-ccache")
- deps)
+ (delete #f deps))
":")))
(wrap-program (string-append out "/bin/guix")
@@ -373,6 +374,23 @@ the Nix package manager.")
("guile-ssh" ,guile2.0-ssh)
("guile-git" ,guile2.0-git)))))
+(define-public guix-minimal
+ ;; A version of Guix which is built with the minimal set of dependencies, as
+ ;; outlined in the README "Requirements" section. Intended as a CI job, so
+ ;; marked as hidden.
+ (let ((guix guile2.0-guix))
+ (hidden-package
+ (package
+ (inherit guix)
+ (name "guix-minimal")
+ (inputs
+ `(("guile" ,guile-2.0.13)
+ ,@(alist-delete "guile" (package-inputs guix))))
+ (propagated-inputs
+ (fold alist-delete
+ (package-propagated-inputs guix)
+ '("guile-json" "guile-ssh")))))))
+
(define (source-file? file stat)
"Return true if FILE is likely a source file, false if it is a typical
generated file."