summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorJacob Hrbek <kreyren@rixotstudio.cz>2021-11-18 20:37:52 +0100
committerJulien Lepiller <julien@lepiller.eu>2021-11-18 23:35:37 +0100
commit92d6f17dfd449208a657a1a54e3a287ae22d1da8 (patch)
tree74447b808e29c329fb86bcca97e606cf4b6e934f /gnu
parenta8eea7a51e243587b7e0b12c2a769ace6f05351d (diff)
downloadguix-patches-92d6f17dfd449208a657a1a54e3a287ae22d1da8.tar
guix-patches-92d6f17dfd449208a657a1a54e3a287ae22d1da8.tar.gz
gnu: Add shell2batch.
* gnu/packages/crates-io.scm (shell2batch): New variable. * gnu/packages/patches/rust-shell2batch-lint-fix.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Julien Lepiller <julien@lepiller.eu>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/crates-io.scm25
-rw-r--r--gnu/packages/patches/rust-shell2batch-lint-fix.patch25
3 files changed, 51 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 6aada7326b..7cc06c8212 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1744,6 +1744,7 @@ dist_patch_DATA = \
%D%/packages/patches/rust-nettle-sys-disable-vendor.patch \
%D%/packages/patches/rust-reproducible-builds.patch \
%D%/packages/patches/rust-openssl-sys-no-vendor.patch \
+ %D%/packages/patches/rust-shell2batch-lint-fix.patch \
%D%/packages/patches/sbc-fix-build-non-x86.patch \
%D%/packages/patches/sbcl-burgled-batteries3-fix-signals.patch \
%D%/packages/patches/sbcl-clml-fix-types.patch \
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 148e8cbff3..7d5833ffc0 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -20,6 +20,7 @@
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2021 Jacob Hrbek <kreyren@rixotstudio.cz>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -63154,3 +63155,27 @@ variant of this library is available separately as @code{im}.")
(description
"Generate Rust register maps (`struct`s) from SVD files")
(license (list license:expat license:asl2.0))))
+
+(define-public rust-shell2batch-0.4
+ (package
+ (name "rust-shell2batch")
+ (version "0.4.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "shell2batch" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0r9zfhxmqnrnyk7g590333szfpsjijs2wfwy7ish240w6pp54nhq"))
+ ;; https://github.com/sagiegurari/shell2batch/issues/17
+ (patches (search-patches "rust-shell2batch-lint-fix.patch"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs (("rust-regex" ,rust-regex-1))))
+ (home-page "https://github.com/sagiegurari/shell2batch")
+ (synopsis "Basic shell scripts to windows batch scripts conversion")
+ (description "While it is not really possible to take every shell script
+and automatically convert it to a windows batch file, this library provides a
+way to convert simple shell commands to windows batch commands.")
+ (license license:asl2.0)))
diff --git a/gnu/packages/patches/rust-shell2batch-lint-fix.patch b/gnu/packages/patches/rust-shell2batch-lint-fix.patch
new file mode 100644
index 0000000000..7c160b6cca
--- /dev/null
+++ b/gnu/packages/patches/rust-shell2batch-lint-fix.patch
@@ -0,0 +1,25 @@
+Resolves the following error that was most likely introduced in new version of
+rust as this package is from 2019:
+
+error: unnecessary parentheses around type
+ --> src/converter.rs:108:61
+ |
+108 | fn add_arguments(arguments: &str, additional_arguments: Vec<(String)>, pre: bool) -> String {
+ | ^^^^^^^^ help: remove these parentheses
+
+Reported upstream at https://github.com/sagiegurari/shell2batch/issues/17.
+
+diff --git a/src/converter.rs b/src/converter.rs
+index fc87d68..af309d2 100644
+--- a/src/converter.rs
++++ b/src/converter.rs
+@@ -105,7 +105,7 @@ fn replace_vars(arguments: &str) -> String {
+ updated_arguments
+ }
+
+-fn add_arguments(arguments: &str, additional_arguments: Vec<(String)>, pre: bool) -> String {
++fn add_arguments(arguments: &str, additional_arguments: Vec<String>, pre: bool) -> String {
+ let mut windows_arguments = if pre {
+ "".to_string()
+ } else {
+