summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2021-05-26 21:42:54 +0100
committerRicardo Wurmus <rekado@elephly.net>2021-07-22 11:37:25 +0200
commit2b6dd1bde5bac375d61da8ead1efdf9a164aa787 (patch)
tree192ab47b26c8b154bde0b871d73c24bd89213901 /gnu
parentc5baff179687991c12a0beb514bc6c156f543018 (diff)
gnu: Add r-protolite
* gnu/packages/cran.scm: (r-protolite): New variable. Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/cran.scm34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index 3fa775d0ee..0558eb2452 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -96,6 +96,7 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio) ;libsndfile
+ #:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages sqlite)
@@ -29822,3 +29823,36 @@ utility operations.")
format. It includes an example of hosting and parsing HTML form data in R
using either @code{httpuv} or @code{Rhttpd}.")
(license license:expat)))
+
+(define-public r-protolite
+ (package
+ (name "r-protolite")
+ (version "2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "protolite" version))
+ (sha256
+ (base32 "0mwpdlpxsxbj4s2s30d0w1h4dsg0j1jzzldh8kvxii9lpfkiv2gz"))))
+ (properties `((upstream-name . "protolite")))
+ (build-system r-build-system)
+ (inputs
+ `(("protobuf" ,protobuf)))
+ (propagated-inputs
+ `(("r-jsonlite" ,r-jsonlite)
+ ("r-rcpp" ,r-rcpp)))
+ (native-inputs
+ `(("protobuf" ,protobuf)
+ ("pkg-config" ,pkg-config)))
+ (home-page "https://github.com/jeroen/protolite")
+ (synopsis "Highly optimized protocol buffer serializers")
+ (description
+ "This package provides pure C++ implementations for reading and writing
+several common data formats based on Google protocol-buffers. It currently
+supports @code{rexp.proto} for serialized R objects, @code{geobuf.proto} for
+binary geojson, and @code{mvt.proto} for vector tiles. This package uses the
+auto-generated C++ code by protobuf-compiler, hence the entire serialization
+is optimized at compile time. The @code{RProtoBuf} package on the other hand
+uses the protobuf runtime library to provide a general-purpose toolkit for
+reading and writing arbitrary protocol-buffer data in R.")
+ (license license:expat)))