1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
3 ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
5 ;;; This file is part of GNU Guix.
7 ;;; GNU Guix is free software; you can redistribute it and/or modify it
8 ;;; under the terms of the GNU General Public License as published by
9 ;;; the Free Software Foundation; either version 3 of the License, or (at
10 ;;; your option) any later version.
12 ;;; GNU Guix is distributed in the hope that it will be useful, but
13 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ;;; GNU General Public License for more details.
17 ;;; You should have received a copy of the GNU General Public License
18 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
20 (define-module (gnu packages rust-apps)
21 #:use-module ((guix licenses) #:prefix license:)
22 #:use-module (guix build-system cargo)
23 #:use-module (guix download)
24 #:use-module (guix packages)
25 #:use-module (gnu packages crates-io))
27 (define-public ripgrep
34 (uri (crate-uri "ripgrep" version))
36 (string-append name "-" version ".tar.gz"))
39 "0bn40lz9n08llq615p4qqqbi24zbkf0appfx3zgxg34a86ga9zds"))))
40 (build-system cargo-build-system)
43 (("rust-bstr" ,rust-bstr-0.1)
44 ("rust-clap" ,rust-clap-2)
45 ("rust-grep" ,rust-grep-0.2)
46 ("rust-ignore" ,rust-ignore-0.4)
47 ("rust-lazy-static" ,rust-lazy-static-1.3)
48 ("rust-log" ,rust-log-0.4)
49 ("rust-num-cpus" ,rust-num-cpus-1.10)
50 ("rust-regex" ,rust-regex-1.1)
51 ("rust-serde-json" ,rust-serde-json-1.0)
52 ("rust-termcolor" ,rust-termcolor-1.0))
53 #:cargo-development-inputs
54 (("rust-clap" ,rust-clap-2)
55 ("rust-lazy-static" ,rust-lazy-static-1.3)
56 ("rust-serde" ,rust-serde-1.0)
57 ("rust-serde-derive" ,rust-serde-derive-1.0))))
58 (home-page "https://github.com/BurntSushi/ripgrep")
59 (synopsis "Line-oriented search tool")
61 "ripgrep is a line-oriented search tool that recursively searches
62 your current directory for a regex pattern while respecting your
64 (license (list license:unlicense license:expat))))
66 (define-public rust-cbindgen
68 (name "rust-cbindgen")
73 (uri (crate-uri "cbindgen" version))
74 (file-name (string-append name "-" version ".crate"))
77 "1zgamxahlxmg4warzivaa8m1f8d6b45mhznm7n6d7p5l18acdblx"))))
78 (build-system cargo-build-system)
81 (("clap" ,rust-clap-2)
83 ("proc-macro2" ,rust-proc-macro2-1.0)
84 ("quote" ,rust-quote-1.0)
85 ("serde" ,rust-serde-1.0)
86 ("serde-json" ,rust-serde-json-1.0)
88 ("tempfile" ,rust-tempfile-3.0)
89 ("toml" ,rust-toml-0.5))
90 #:cargo-development-inputs
91 (("autocfg" ,rust-autocfg-0.1))))
92 (home-page "https://github.com/eqrion/cbindgen/")
93 (synopsis "Tool for generating C bindings to Rust code")
95 "This package provides a tool for generating C/C++ bindings to Rust code.")
96 (license license:mpl2.0)))