summaryrefslogtreecommitdiff
path: root/tests/profiles.scm
diff options
context:
space:
mode:
authorRomain GARBAGE <romain.garbage@inria.fr>2026-03-18 15:47:08 +0100
committerSimon Tournier <zimon.toutoune@gmail.com>2026-07-03 15:10:29 +0200
commitce9929fadfcdb1426eec4ea228aaf68db7fd2db3 (patch)
tree6a8dcecb40b1f8d12514c458e74a62c7ea61b509 /tests/profiles.scm
parent0fb918d61609f3aadc2d8ecc212926b3bdfabb4c (diff)
profiles: Add manifest generator based on build-system.
* guix/profiles.scm (build-system->manifest): New procedure. * doc/guix.texi (Writing Manifests): Document it. * tests/profiles.scm: Test it. Merges: #7272 Change-Id: Iaba54d5d4a1a9ae304de45f91374098617adebfc Signed-off-by: Simon Tournier <zimon.toutoune@gmail.com>
Diffstat (limited to 'tests/profiles.scm')
-rw-r--r--tests/profiles.scm13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/profiles.scm b/tests/profiles.scm
index f63c0773cb3..55e7146a7a0 100644
--- a/tests/profiles.scm
+++ b/tests/profiles.scm
@@ -1,6 +1,7 @@
1;;; GNU Guix --- Functional package management for GNU 1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2013-2023 Ludovic Courtès <ludo@gnu.org> 2;;; Copyright © 2013-2023 Ludovic Courtès <ludo@gnu.org>
3;;; Copyright © 2014 Alex Kost <alezost@gmail.com> 3;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
4;;; Copyright © 2026 Simon Tournier <zimon.toutoune@gmail.com>
4;;; 5;;;
5;;; This file is part of GNU Guix. 6;;; This file is part of GNU Guix.
6;;; 7;;;
@@ -271,6 +272,18 @@
271 (manifest-pattern (name name)))) 272 (manifest-pattern (name name))))
272 '("gcc" "binutils" "glibc" "coreutils" "grep" "sed")))) 273 '("gcc" "binutils" "glibc" "coreutils" "grep" "sed"))))
273 274
275(test-assert "build-system->manifest"
276 (let* ((package packages:hello)
277 (development-manifest (package->development-manifest package))
278 (build-system-manifest (build-system->manifest (package-build-system
279 package)))
280 (development-entries (manifest-entries development-manifest))
281 (build-system-entries (manifest-entries build-system-manifest)))
282 (and (eqv? (length development-entries)
283 (length build-system-entries))
284 (null? (lset-difference manifest-entry=?
285 development-entries build-system-entries)))))
286
274(test-assertm "profile-derivation" 287(test-assertm "profile-derivation"
275 (mlet* %store-monad 288 (mlet* %store-monad
276 ((entry -> (package->manifest-entry %bootstrap-guile)) 289 ((entry -> (package->manifest-entry %bootstrap-guile))