summaryrefslogtreecommitdiff
path: root/guix/import/crate.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix/import/crate.scm')
-rw-r--r--guix/import/crate.scm9
1 files changed, 6 insertions, 3 deletions
diff --git a/guix/import/crate.scm b/guix/import/crate.scm
index 4c3f8000d0..405a26a877 100644
--- a/guix/import/crate.scm
+++ b/guix/import/crate.scm
@@ -231,10 +231,13 @@ latest version of CRATE-NAME."
string->license))
(append cargo-inputs cargo-development-inputs)))))
-(define (crate-recursive-import crate-name)
+(define* (crate-recursive-import crate-name #:optional version)
(recursive-import crate-name #f
- #:repo->guix-package (lambda (name repo)
- (crate->guix-package name))
+ #:repo->guix-package
+ (lambda (name repo)
+ (let ((version (and (string=? name crate-name)
+ version)))
+ (crate->guix-package name version)))
#:guix-name crate-name->package-name))
(define (guix-package->crate-name package)