diff options
Diffstat (limited to 'etc/manifests/ungraft.scm')
-rw-r--r-- | etc/manifests/ungraft.scm | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/etc/manifests/ungraft.scm b/etc/manifests/ungraft.scm index 3e42b98ece..5caef65d4c 100644 --- a/etc/manifests/ungraft.scm +++ b/etc/manifests/ungraft.scm @@ -35,15 +35,16 @@ (length result) (map package-full-name result)) result)) +(define ungraft + (package-mapping (lambda (p) + (or (package-replacement p) p)) + #:deep? #t)) + (manifest (with-store store - (let* ((grafted (grafted-packages)) - (ungraft-all (package-input-rewriting - (map (lambda (package) - `(,package . ,(package-replacement package))) - grafted)))) + (let ((grafted (grafted-packages))) (map (lambda (package) (manifest-entry - (inherit (package->manifest-entry (ungraft-all package))) + (inherit (package->manifest-entry (ungraft package))) (name (string-append (package-name package) "-ungrafted")))) (dependents store grafted))))) |