diff options
| author | Romain GARBAGE <romain.garbage@inria.fr> | 2026-03-18 15:47:08 +0100 |
|---|---|---|
| committer | Simon Tournier <zimon.toutoune@gmail.com> | 2026-07-03 15:10:29 +0200 |
| commit | ce9929fadfcdb1426eec4ea228aaf68db7fd2db3 (patch) | |
| tree | 6a8dcecb40b1f8d12514c458e74a62c7ea61b509 /tests | |
| parent | 0fb918d61609f3aadc2d8ecc212926b3bdfabb4c (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')
| -rw-r--r-- | tests/profiles.scm | 13 |
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)) |
