summaryrefslogtreecommitdiff
path: root/guix
diff options
context:
space:
mode:
authorMaxime Devos <maximedevos@telenet.be>2021-09-07 13:05:56 +0200
committerLudovic Courtès <ludo@gnu.org>2021-09-18 19:42:54 +0200
commit8480a2a5bb360b432877dd33dca80a61c5a698eb (patch)
tree9a2f40fcbf7c0872f4a180e06b8a6ae5770022e5 /guix
parent8d4c0e3104fdee7d2548077f9c338008b3595853 (diff)
downloadguix-patches-8480a2a5bb360b432877dd33dca80a61c5a698eb.tar
guix-patches-8480a2a5bb360b432877dd33dca80a61c5a698eb.tar.gz
import: minetest: Delete duplicate dependencies.
This fixes one of the issues noted in <https://issues.guix.gnu.org/50425#4>. * guix/import/minetest.scm (import-dependencies): Call 'delete-duplicates' on the resulting list. * tests/minetest.scm ("minetest->guix-package, multiple dependencies implemented by one mod"): New test. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'guix')
-rw-r--r--guix/import/minetest.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/guix/import/minetest.scm b/guix/import/minetest.scm
index e1f8487b75..c8209aba79 100644
--- a/guix/import/minetest.scm
+++ b/guix/import/minetest.scm
@@ -371,7 +371,11 @@ official Minetest forum and the Git repository (if any)."
DEPENDENCIES as a list of AUTHOR/NAME strings."
(define dependency-list
(assoc-ref dependencies author/name))
- (filter-map
+ ;; A mod can have multiple dependencies implemented by the same mod,
+ ;; so remove duplicate mod names.
+ (define (filter-deduplicate-map f list)
+ (delete-duplicates (filter-map f list)))
+ (filter-deduplicate-map
(lambda (dependency)
(and (not (dependency-optional? dependency))
(not (builtin-mod? (dependency-name dependency)))