diff options
-rw-r--r-- | guix/import/cpan.scm | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/guix/import/cpan.scm b/guix/import/cpan.scm index 307681b6ce..bd48c44b1a 100644 --- a/guix/import/cpan.scm +++ b/guix/import/cpan.scm @@ -141,17 +141,22 @@ META." (#f '()) ((inputs ...) - (delete-duplicates - ;; Listed dependencies may include core modules. Filter those out. - (filter-map (match-lambda - (("perl" . _) ;implicit dependency - #f) - ((module . _) - (and (not (core-module? module)) - (let ((name (guix-name (module->dist-name module)))) - (list name - (list 'unquote (string->symbol name))))))) - inputs))))) + (sort + (delete-duplicates + ;; Listed dependencies may include core modules. Filter those out. + (filter-map (match-lambda + (("perl" . _) ;implicit dependency + #f) + ((module . _) + (and (not (core-module? module)) + (let ((name (guix-name (module->dist-name module)))) + (list name + (list 'unquote (string->symbol name))))))) + inputs)) + (lambda args + (match args + (((a _ ...) (b _ ...)) + (string<? a b)))))))) (define (maybe-inputs guix-name inputs) (match inputs |