summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2024-12-15 00:33:04 +0100
committerLudovic Courtès <ludo@gnu.org>2024-12-18 18:32:41 +0100
commit777fde8299d5b0050cae661d403374a7dd87f6ab (patch)
tree7745929645b1f5be139556a1a05772f874092415
parent0107b771bd71514fe4d72f9cde382041a3ed3a17 (diff)
etc: ungraft: Use ‘package-mapping’ directly.
* etc/manifests/ungraft.scm (ungraft): New procedure. <top-level>: Use it. Remove ‘ungraft-all’. Change-Id: I6f1badf06dad9116d4242c7d1fff5ca53e6522f8
-rw-r--r--etc/manifests/ungraft.scm13
1 files changed, 7 insertions, 6 deletions
diff --git a/etc/manifests/ungraft.scm b/etc/manifests/ungraft.scm
index 3e42b98ece5..5caef65d4cd 100644
--- a/etc/manifests/ungraft.scm
+++ b/etc/manifests/ungraft.scm
@@ -35,15 +35,16 @@
35 (length result) (map package-full-name result)) 35 (length result) (map package-full-name result))
36 result)) 36 result))
37 37
38(define ungraft
39 (package-mapping (lambda (p)
40 (or (package-replacement p) p))
41 #:deep? #t))
42
38(manifest 43(manifest
39 (with-store store 44 (with-store store
40 (let* ((grafted (grafted-packages)) 45 (let ((grafted (grafted-packages)))
41 (ungraft-all (package-input-rewriting
42 (map (lambda (package)
43 `(,package . ,(package-replacement package)))
44 grafted))))
45 (map (lambda (package) 46 (map (lambda (package)
46 (manifest-entry 47 (manifest-entry
47 (inherit (package->manifest-entry (ungraft-all package))) 48 (inherit (package->manifest-entry (ungraft package)))
48 (name (string-append (package-name package) "-ungrafted")))) 49 (name (string-append (package-name package) "-ungrafted"))))
49 (dependents store grafted))))) 50 (dependents store grafted)))))