aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/rust-apps.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/rust-apps.scm')
-rw-r--r--gnu/packages/rust-apps.scm158
1 files changed, 158 insertions, 0 deletions
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 865e982f14..75742dcc76 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -1921,6 +1921,164 @@ C-compatible) software.")
consecutive lines and since program start.")
(license license:expat)))
+(define-public skim
+ (package
+ (name "skim")
+ (version "0.9.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "skim" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1d5v9vq8frkdjm7bnw3455h6xf3c277d51il2qasn7r20kwik7ab"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-atty-0.2" ,rust-atty-0.2)
+ ("rust-beef" ,rust-beef-0.5)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-clap" ,rust-clap-2)
+ ("rust-crossbeam" ,rust-crossbeam-0.8)
+ ("rust-defer-drop" ,rust-defer-drop-1)
+ ("rust-derive-builder" ,rust-derive-builder-0.9)
+ ("rust-env-logger" ,rust-env-logger-0.8)
+ ("rust-fuzzy-matcher" ,rust-fuzzy-matcher-0.3)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-nix" ,rust-nix-0.19)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-shlex" ,rust-shlex-0.1)
+ ("rust-time" ,rust-time-0.2)
+ ("rust-timer" ,rust-timer-0.2)
+ ("rust-tuikit" ,rust-tuikit-0.4)
+ ("rust-unicode-width" ,rust-unicode-width-0.1)
+ ("rust-vte" ,rust-vte-0.9))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-extras
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (share (string-append out "/share"))
+ (man (string-append out "/share/man"))
+ (vimfiles (string-append share "/vim/vimfiles/plugin"))
+ (bash-completion
+ (string-append share "/bash-completions/completions"))
+ (zsh-site (string-append share "/zsh/site-functions"))
+ (fish-vendor
+ (string-append share "/fish/vendor-completions.d")))
+ ;; Binaries
+ (for-each
+ (lambda (binary) (install-file binary bin))
+ (find-files "bin"))
+ (mkdir-p share)
+ ;; Manpages
+ (copy-recursively "man" man)
+ ;; Vim plugins
+ (mkdir-p vimfiles)
+ (copy-recursively "plugin" vimfiles)
+ ;; Completions
+ (mkdir-p bash-completion)
+ (copy-file
+ "shell/completion.bash"
+ (string-append bash-completion "/skim"))
+ (copy-file
+ "shell/key-bindings.bash"
+ (string-append bash-completion "/skim-bindings"))
+ (mkdir-p zsh-site)
+ (copy-file
+ "shell/completion.zsh"
+ (string-append zsh-site "/_skim"))
+ (copy-file
+ "shell/key-bindings.zsh"
+ (string-append zsh-site "/_skim-bindings"))
+ (mkdir-p fish-vendor)
+ (copy-file
+ "shell/key-bindings.fish"
+ (string-append fish-vendor "/skim-bindings.fish"))))))))
+ (home-page "https://github.com/lotabout/skim")
+ (synopsis "Fuzzy Finder in Rust")
+ (description "This package provides a fuzzy finder in Rust.")
+ (license license:expat)))
+
+(define-public skim-0.7
+ (package
+ (inherit skim)
+ (name "skim")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "skim" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1yiyd6fml5hd2l811sckkzmiiq9bd7018ajk4qk3ai4wyvqnw8mv"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-clap" ,rust-clap-2)
+ ("rust-derive-builder" ,rust-derive-builder-0.9)
+ ("rust-env-logger" ,rust-env-logger-0.6)
+ ("rust-fuzzy-matcher" ,rust-fuzzy-matcher-0.3)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-nix" ,rust-nix-0.14)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-shlex" ,rust-shlex-0.1)
+ ("rust-time" ,rust-time-0.1)
+ ("rust-timer" ,rust-timer-0.2)
+ ("rust-tuikit" ,rust-tuikit-0.2)
+ ("rust-unicode-width" ,rust-unicode-width-0.1)
+ ("rust-vte" ,rust-vte-0.3))))))
+
+(define-public rust-skim-0.7
+ (deprecated-package "rust-skim-0.7" skim-0.7))
+
+(define-public svd2rust
+ (package
+ (name "svd2rust")
+ (version "0.19.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "svd2rust" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0q8slfgjfhpljzlk2myb0i538mfq99q1ljn398jm17r1q2pjjxhv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-cast" ,rust-cast-0.2)
+ ("rust-clap" ,rust-clap-2)
+ ("rust-clap-conf" ,rust-clap-conf-0.1)
+ ("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-inflections" ,rust-inflections-1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-proc-macro2" ,rust-proc-macro2-0.4)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-svd-parser" ,rust-svd-parser-0.9)
+ ("rust-syn" ,rust-syn-1)
+ ("rust-thiserror" ,rust-thiserror-1))))
+ (home-page "https://github.com/rust-embedded/svd2rust/")
+ (synopsis
+ "Generate Rust register maps (`struct`s) from SVD files")
+ (description
+ "This program can be used to generate Rust register maps (`struct`s) from SVD
+files.")
+ (license (list license:expat license:asl2.0))))
+
(define-public swayhide
(package
(name "swayhide")