summary refs log tree commit diff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2023-12-27 11:45:49 +0200
committerEfraim Flashner <efraim@flashner.co.il>2024-02-20 13:56:55 +0200
commit2df8da862abffb0bccf9cecc6178861999507934 (patch)
treec2cc0173029970be08c10317417d05c53324e6e9
parent56cb224631b6079f3be9102e6d9422d5b0c7a5f3 (diff)
downloadguix-2df8da862abffb0bccf9cecc6178861999507934.tar.gz
gnu: rust-git2: Move to (gnu packages crates-vcs).
* gnu/packages/crates-io.scm (rust-git2-0.18, rust-git2-0.17,
rust-git2-0.16, rust-git2-0.15, rust-git2-0.13, rust-git2-0.11,
rust-git2-0.9, rust-git2-0.6): Move from here ...
* gnu/packages/crates-vcs.scm: ... to here.

Change-Id: I4490d8900167bab75a14c77b2def8ef27e4f50a9
-rw-r--r--gnu/packages/crates-io.scm254
-rw-r--r--gnu/packages/crates-vcs.scm269
-rw-r--r--gnu/packages/rust-apps.scm1
3 files changed, 267 insertions, 257 deletions
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 02723feadb..374171362c 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30290,260 +30290,6 @@ debugging format.")
         ("rust-test-assembler" ,rust-test-assembler-0.1)
         ("rust-typed-arena" ,rust-typed-arena-2))))))
 
-(define-public rust-git2-0.18
-  (package
-    (name "rust-git2")
-    (version "0.18.1")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (crate-uri "git2" version))
-       (file-name (string-append name "-" version ".tar.gz"))
-       (sha256
-        (base32 "1kf0kvg3i7p1223zs2h9fz99ndm0l9kdx3hcw63g73dh5nlppygv"))))
-    (build-system cargo-build-system)
-    (arguments
-     `(#:cargo-test-flags (list "--release" "--"
-                                "--skip=cred::test::credential_helper5")
-       #:cargo-inputs (("rust-bitflags" ,rust-bitflags-2)
-                       ("rust-libc" ,rust-libc-0.2)
-                       ("rust-libgit2-sys" ,rust-libgit2-sys-0.16)
-                       ("rust-log" ,rust-log-0.4)
-                       ("rust-openssl-probe" ,rust-openssl-probe-0.1)
-                       ("rust-openssl-sys" ,rust-openssl-sys-0.9)
-                       ("rust-url" ,rust-url-2))
-       #:cargo-development-inputs (("rust-structopt" ,rust-structopt-0.3)
-                                   ("rust-tempfile" ,rust-tempfile-3)
-                                   ("rust-time" ,rust-time-0.1))))
-    (native-inputs (list pkg-config))
-    (inputs (list libgit2-1.7 libssh2 openssl zlib))
-    (home-page "https://github.com/rust-lang/git2-rs")
-    (synopsis "Rust bindings to libgit2")
-    (description
-     "This package provides bindings to libgit2 for interoperating with git
-repositories.  This library is both threadsafe and memory safe and allows both
-reading and writing git repositories.")
-    (license (list license:expat license:asl2.0))))
-
-(define-public rust-git2-0.17
-  (package
-    (inherit rust-git2-0.18)
-    (name "rust-git2")
-    (version "0.17.2")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (crate-uri "git2" version))
-       (file-name (string-append name "-" version ".tar.gz"))
-       (sha256
-        (base32 "0i00kg3yizh7mn6hnj3yz3hpniisidlavifgy8n3cnm9gim9v63v"))))
-    (arguments
-     `(#:cargo-inputs
-       (("rust-bitflags" ,rust-bitflags-1)
-        ("rust-libc" ,rust-libc-0.2)
-        ("rust-libgit2-sys" ,rust-libgit2-sys-0.15)
-        ("rust-log" ,rust-log-0.4)
-        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
-        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
-        ("rust-url" ,rust-url-2))
-       #:cargo-development-inputs
-       (("rust-structopt" ,rust-structopt-0.3)
-        ("rust-tempfile" ,rust-tempfile-3)
-        ("rust-time" ,rust-time-0.1))))
-    (native-inputs
-     (list pkg-config
-           git-minimal))                ;for a single test
-    (inputs (list libgit2-1.6 libssh2 openssl zlib))))
-
-(define-public rust-git2-0.16
-  (package
-    (inherit rust-git2-0.17)
-    (name "rust-git2")
-    (version "0.16.1")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (crate-uri "git2" version))
-       (file-name (string-append name "-" version ".tar.gz"))
-       (sha256
-        (base32 "1k1aavsfhk0i9jycc9gb61w2jwy8w9dgkd7zkz295wwm566gdxyc"))))
-    (arguments
-     `(#:cargo-inputs
-       (("rust-bitflags" ,rust-bitflags-1)
-        ("rust-libc" ,rust-libc-0.2)
-        ("rust-libgit2-sys" ,rust-libgit2-sys-0.14)
-        ("rust-log" ,rust-log-0.4)
-        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
-        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
-        ("rust-url" ,rust-url-2))
-       #:cargo-development-inputs
-       (("rust-paste" ,rust-paste-1)
-        ("rust-structopt" ,rust-structopt-0.3)
-        ("rust-tempfile" ,rust-tempfile-3)
-        ("rust-time" ,rust-time-0.1))))
-    (native-inputs
-     (list pkg-config
-           git-minimal))                ;for a single test
-    (inputs
-     (list libgit2 libssh2 openssl zlib))))
-
-(define-public rust-git2-0.15
-  (package
-    (inherit rust-git2-0.16)
-    (name "rust-git2")
-    (version "0.15.0")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (crate-uri "git2" version))
-       (file-name
-        (string-append name "-" version ".tar.gz"))
-       (sha256
-        (base32
-         "1lf7yxgrbglx5qqvk033n44ymmrg72z271911jwix9d6lgjbx519"))))
-    (arguments
-     `(#:cargo-inputs
-       (("rust-bitflags" ,rust-bitflags-1)
-        ("rust-libc" ,rust-libc-0.2)
-        ("rust-libgit2-sys" ,rust-libgit2-sys-0.14)
-        ("rust-log" ,rust-log-0.4)
-        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
-        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
-        ("rust-url" ,rust-url-2))
-       #:cargo-development-inputs
-       (("rust-paste" ,rust-paste-1)
-        ("rust-structopt" ,rust-structopt-0.3)
-        ("rust-tempfile" ,rust-tempfile-3)
-        ("rust-time" ,rust-time-0.1))))
-    (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("git" ,git-minimal)))           ;for a single test
-    (inputs
-     (list libgit2 libssh2 openssl zlib))))
-
-(define-public rust-git2-0.13
-  (package
-    (inherit rust-git2-0.15)
-    (name "rust-git2")
-    (version "0.13.24")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (crate-uri "git2" version))
-       (file-name
-        (string-append name "-" version ".tar.gz"))
-       (sha256
-        (base32
-         "07rlxwvl5iyyqwh0mci5v27lbicf9qiqm60maw1srz7i51x00pl4"))))
-    (arguments
-     `(#:cargo-inputs
-       (("rust-bitflags" ,rust-bitflags-1)
-        ("rust-libc" ,rust-libc-0.2)
-        ("rust-libgit2-sys" ,rust-libgit2-sys-0.12)
-        ("rust-log" ,rust-log-0.4)
-        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
-        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
-        ("rust-url" ,rust-url-2))
-       #:cargo-development-inputs
-       (("rust-paste" ,rust-paste-1)
-        ("rust-structopt" ,rust-structopt-0.3)
-        ("rust-time" ,rust-time-0.1))))
-    (inputs
-     (list libgit2-1.3 libssh2 openssl zlib))))
-
-(define-public rust-git2-0.11
-  (package
-    (inherit rust-git2-0.13)
-    (name "rust-git2")
-    (version "0.11.0")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (crate-uri "git2" version))
-       (file-name (string-append name "-" version ".tar.gz"))
-       (sha256
-        (base32 "1i0fgsr91r97hsjbgqnymkcyiyg0057m7m04116k3vmyqpvrwlbp"))))
-    (arguments
-     `(#:tests? #f      ; (signal: 11, SIGSEGV: invalid memory reference)
-       #:cargo-inputs
-       (("rust-bitflags" ,rust-bitflags-1)
-        ("rust-libc" ,rust-libc-0.2)
-        ("rust-libgit2-sys" ,rust-libgit2-sys-0.10)
-        ("rust-log" ,rust-log-0.4)
-        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
-        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
-        ("rust-url" ,rust-url-2))
-       #:cargo-development-inputs
-       (("rust-docopt" ,rust-docopt-1)
-        ("rust-serde" ,rust-serde-1)
-        ("rust-serde-derive" ,rust-serde-derive-1)
-        ("rust-tempfile" ,rust-tempfile-3)
-        ("rust-thread-id" ,rust-thread-id-3)
-        ("rust-time" ,rust-time-0.1))))))
-
-(define-public rust-git2-0.9
-  (package
-    (inherit rust-git2-0.11)
-    (name "rust-git2")
-    (version "0.9.2")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (crate-uri "git2" version))
-       (file-name (string-append name "-" version ".tar.gz"))
-       (sha256
-        (base32 "09lj6i26yial0drdbmfh36avz6wizaxqb0k41sqn2kca1qv01d4c"))))
-    (arguments
-     `(#:tests? #f      ; Needs older version of libgit2.
-       #:cargo-inputs
-       (("rust-bitflags" ,rust-bitflags-1)
-        ("rust-libc" ,rust-libc-0.2)
-        ("rust-libgit2-sys" ,rust-libgit2-sys-0.8)
-        ("rust-log" ,rust-log-0.4)
-        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
-        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
-        ("rust-url" ,rust-url-2))
-       #:cargo-development-inputs
-       (("rust-docopt" ,rust-docopt-1)
-        ("rust-serde" ,rust-serde-1)
-        ("rust-serde-derive" ,rust-serde-derive-1)
-        ("rust-tempdir" ,rust-tempdir-0.3)
-        ("rust-thread-id" ,rust-thread-id-3)
-        ("rust-time" ,rust-time-0.1))))))
-
-(define-public rust-git2-0.6
-  (package
-    (inherit rust-git2-0.11)
-    (name "rust-git2-6")
-    (version "0.6.11")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (crate-uri "git2" version))
-       (file-name
-        (string-append name "-" version ".tar.gz"))
-       (sha256
-        (base32
-         "115ys6vlfjy5pcwkip0wfzi4q3d1kimbl9isxvjyci1arnvlnnzf"))))
-    (arguments
-     `(#:tests? #f
-       #:cargo-inputs
-       (("rust-bitflags" ,rust-bitflags-0.9)
-        ("rust-libc" ,rust-libc-0.2)
-        ("rust-libgit2-sys" ,rust-libgit2-sys-0.6)
-        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
-        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
-        ("rust-url" ,rust-url-1))
-       #:cargo-development-inputs
-       (("rust-docopt" ,rust-docopt-0.8)
-        ("rust-serde" ,rust-serde-1)
-        ("rust-serde-derive" ,rust-serde-derive-1)
-        ("rust-tempdir" ,rust-tempdir-0.3)
-        ("rust-time" ,rust-time-0.1))))
-    (inputs
-     (modify-inputs (package-inputs rust-git2-0.11)
-       (prepend curl)))))
-
 (define-public rust-git2-curl-0.18
   (package
     (name "rust-git2-curl")
diff --git a/gnu/packages/crates-vcs.scm b/gnu/packages/crates-vcs.scm
index 59854e5c85..3145e75c1b 100644
--- a/gnu/packages/crates-vcs.scm
+++ b/gnu/packages/crates-vcs.scm
@@ -1,6 +1,10 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
-;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2019, 2020 John Soo <jsoo1@asu.edu>
+;;; Copyright © 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2022, 2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
+;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -24,7 +28,13 @@
   #:use-module (guix packages)
   #:use-module (guix utils)
   #:use-module (gnu packages)
-  #:use-module (gnu packages crates-io))
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages crates-io)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages ssh)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages version-control))
 
 (define-public rust-git-testament-0.2
   (package
@@ -128,3 +138,256 @@ dirty state into your program.")
     (description
      "This is an internal macro crate for git-version.")
     (license license:bsd-2)))
+
+(define-public rust-git2-0.18
+  (package
+    (name "rust-git2")
+    (version "0.18.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "git2" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1kf0kvg3i7p1223zs2h9fz99ndm0l9kdx3hcw63g73dh5nlppygv"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-test-flags (list "--release" "--"
+                                "--skip=cred::test::credential_helper5")
+       #:cargo-inputs (("rust-bitflags" ,rust-bitflags-2)
+                       ("rust-libc" ,rust-libc-0.2)
+                       ("rust-libgit2-sys" ,rust-libgit2-sys-0.16)
+                       ("rust-log" ,rust-log-0.4)
+                       ("rust-openssl-probe" ,rust-openssl-probe-0.1)
+                       ("rust-openssl-sys" ,rust-openssl-sys-0.9)
+                       ("rust-url" ,rust-url-2))
+       #:cargo-development-inputs (("rust-structopt" ,rust-structopt-0.3)
+                                   ("rust-tempfile" ,rust-tempfile-3)
+                                   ("rust-time" ,rust-time-0.1))))
+    (native-inputs (list pkg-config))
+    (inputs (list libgit2-1.7 libssh2 openssl zlib))
+    (home-page "https://github.com/rust-lang/git2-rs")
+    (synopsis "Rust bindings to libgit2")
+    (description
+     "This package provides bindings to libgit2 for interoperating with git
+repositories.  This library is both threadsafe and memory safe and allows both
+reading and writing git repositories.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-git2-0.17
+  (package
+    (inherit rust-git2-0.18)
+    (name "rust-git2")
+    (version "0.17.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "git2" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0i00kg3yizh7mn6hnj3yz3hpniisidlavifgy8n3cnm9gim9v63v"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-libgit2-sys" ,rust-libgit2-sys-0.15)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
+        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
+        ("rust-url" ,rust-url-2))
+       #:cargo-development-inputs
+       (("rust-structopt" ,rust-structopt-0.3)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-time" ,rust-time-0.1))))
+    (native-inputs
+     (list pkg-config
+           git-minimal))                ;for a single test
+    (inputs (list libgit2-1.6 libssh2 openssl zlib))))
+
+(define-public rust-git2-0.16
+  (package
+    (inherit rust-git2-0.17)
+    (name "rust-git2")
+    (version "0.16.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "git2" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1k1aavsfhk0i9jycc9gb61w2jwy8w9dgkd7zkz295wwm566gdxyc"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-libgit2-sys" ,rust-libgit2-sys-0.14)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
+        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
+        ("rust-url" ,rust-url-2))
+       #:cargo-development-inputs
+       (("rust-paste" ,rust-paste-1)
+        ("rust-structopt" ,rust-structopt-0.3)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-time" ,rust-time-0.1))))
+    (native-inputs
+     (list pkg-config
+           git-minimal))                ;for a single test
+    (inputs
+     (list libgit2 libssh2 openssl zlib))))
+
+(define-public rust-git2-0.15
+  (package
+    (inherit rust-git2-0.16)
+    (name "rust-git2")
+    (version "0.15.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "git2" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1lf7yxgrbglx5qqvk033n44ymmrg72z271911jwix9d6lgjbx519"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-libgit2-sys" ,rust-libgit2-sys-0.14)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
+        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
+        ("rust-url" ,rust-url-2))
+       #:cargo-development-inputs
+       (("rust-paste" ,rust-paste-1)
+        ("rust-structopt" ,rust-structopt-0.3)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-time" ,rust-time-0.1))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("git" ,git-minimal)))           ;for a single test
+    (inputs
+     (list libgit2 libssh2 openssl zlib))))
+
+(define-public rust-git2-0.13
+  (package
+    (inherit rust-git2-0.15)
+    (name "rust-git2")
+    (version "0.13.24")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "git2" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "07rlxwvl5iyyqwh0mci5v27lbicf9qiqm60maw1srz7i51x00pl4"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-libgit2-sys" ,rust-libgit2-sys-0.12)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
+        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
+        ("rust-url" ,rust-url-2))
+       #:cargo-development-inputs
+       (("rust-paste" ,rust-paste-1)
+        ("rust-structopt" ,rust-structopt-0.3)
+        ("rust-time" ,rust-time-0.1))))
+    (inputs
+     (list libgit2-1.3 libssh2 openssl zlib))))
+
+(define-public rust-git2-0.11
+  (package
+    (inherit rust-git2-0.13)
+    (name "rust-git2")
+    (version "0.11.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "git2" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1i0fgsr91r97hsjbgqnymkcyiyg0057m7m04116k3vmyqpvrwlbp"))))
+    (arguments
+     `(#:tests? #f      ; (signal: 11, SIGSEGV: invalid memory reference)
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-libgit2-sys" ,rust-libgit2-sys-0.10)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
+        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
+        ("rust-url" ,rust-url-2))
+       #:cargo-development-inputs
+       (("rust-docopt" ,rust-docopt-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-thread-id" ,rust-thread-id-3)
+        ("rust-time" ,rust-time-0.1))))))
+
+(define-public rust-git2-0.9
+  (package
+    (inherit rust-git2-0.11)
+    (name "rust-git2")
+    (version "0.9.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "git2" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "09lj6i26yial0drdbmfh36avz6wizaxqb0k41sqn2kca1qv01d4c"))))
+    (arguments
+     `(#:tests? #f      ; Needs older version of libgit2.
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-libgit2-sys" ,rust-libgit2-sys-0.8)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
+        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
+        ("rust-url" ,rust-url-2))
+       #:cargo-development-inputs
+       (("rust-docopt" ,rust-docopt-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-tempdir" ,rust-tempdir-0.3)
+        ("rust-thread-id" ,rust-thread-id-3)
+        ("rust-time" ,rust-time-0.1))))))
+
+(define-public rust-git2-0.6
+  (package
+    (inherit rust-git2-0.11)
+    (name "rust-git2-6")
+    (version "0.6.11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "git2" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "115ys6vlfjy5pcwkip0wfzi4q3d1kimbl9isxvjyci1arnvlnnzf"))))
+    (arguments
+     `(#:tests? #f
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-0.9)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-libgit2-sys" ,rust-libgit2-sys-0.6)
+        ("rust-openssl-probe" ,rust-openssl-probe-0.1)
+        ("rust-openssl-sys" ,rust-openssl-sys-0.9)
+        ("rust-url" ,rust-url-1))
+       #:cargo-development-inputs
+       (("rust-docopt" ,rust-docopt-0.8)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-tempdir" ,rust-tempdir-0.3)
+        ("rust-time" ,rust-time-0.1))))
+    (inputs
+     (modify-inputs (package-inputs rust-git2-0.11)
+       (prepend curl)))))
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 193da35c43..fdfe6cd974 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -60,6 +60,7 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages crates-io)
   #:use-module (gnu packages crates-graphics)
+  #:use-module (gnu packages crates-vcs)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages fontutils)