* [bug#67263] [PATCH 0/8] adding nats-server package
@ 2023-11-18 18:14 Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 1/8] gnu: Add go-github-com-minio-highwayhash Benjamin
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: Benjamin @ 2023-11-18 18:14 UTC (permalink / raw)
To: 67263; +Cc: Benjamin
Hello,
Here is a series of patch that is adding nats-server.
Nats [0] is a nice implementation in go of a message broker that is
memory efficient, really fast and also quite easy to package.
For now, I only added the server part. I am working on the command line
client but it is much more complicated to package (because of the number
of dependencies to add). I will add it in the future.
I added the nats-server in messaging.scm because I saw another message
broker there. The other possible location would be in golang.scm.
Best
Benjamin
[0] https://nats.io/
Benjamin (8):
gnu: Add go-github-com-minio-highwayhash.
gnu: Add go-github-com-prashantv-gostub.
gnu: Add go-go-uber-org-automaxprocs.
gnu: Add go-github-com-nats-io-nuid.
gnu: Add go-github-com-nats-io-nkeys.
gnu: Add go-github-com-nats-io-jwt-v2.
gnu: Add go-github-com-nats-io-nats-go.
gnu: Add nats-server.
gnu/packages/golang-check.scm | 24 ++++++
gnu/packages/golang.scm | 148 ++++++++++++++++++++++++++++++++++
gnu/packages/messaging.scm | 32 ++++++++
3 files changed, 204 insertions(+)
base-commit: 2ab5e449246f98b049888dde3c310f5b4a0a64a2
--
2.41.0
^ permalink raw reply [flat|nested] 9+ messages in thread
* [bug#67263] [PATCH 1/8] gnu: Add go-github-com-minio-highwayhash.
2023-11-18 18:14 [bug#67263] [PATCH 0/8] adding nats-server package Benjamin
@ 2023-11-18 18:17 ` Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 2/8] gnu: Add go-github-com-prashantv-gostub Benjamin
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Benjamin @ 2023-11-18 18:17 UTC (permalink / raw)
To: 67263; +Cc: Benjamin, Katherine Cox-Buday
* gnu/packages/golang.scm (go-github-com-minio-highwayhash): New variable.
Change-Id: Ib6aa8a38946841e840b17848b07434487f0435ef
---
gnu/packages/golang.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 9c707e5414..00620690b9 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -6405,6 +6405,31 @@ (define-public go-github-com-minio-blake2b-simd
increase approaching hashing speeds of 1GB/sec on a single core.")
(license license:asl2.0))))
+(define-public go-github-com-minio-highwayhash
+ (package
+ (name "go-github-com-minio-highwayhash")
+ (version "1.0.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/minio/highwayhash")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1inrix7720273ccynxcyi7xsgc55cskxrw7gwn08qkmdj9xdxqai"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/minio/highwayhash"))
+ (propagated-inputs (list go-golang-org-x-sys))
+ (home-page "https://github.com/minio/highwayhash")
+ (synopsis "HighwayHash library for Go")
+ (description
+ "This package implements the pseudo-random-function (PRF) HighwayHash.
+HighwayHash is a fast hash function designed to defend hash-flooding attacks or
+to authenticate short-lived messages.")
+ (license license:asl2.0)))
+
(define-public go-github-com-spaolacci-murmur3
(package
(name "go-github-com-spaolacci-murmur3")
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#67263] [PATCH 2/8] gnu: Add go-github-com-prashantv-gostub.
2023-11-18 18:14 [bug#67263] [PATCH 0/8] adding nats-server package Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 1/8] gnu: Add go-github-com-minio-highwayhash Benjamin
@ 2023-11-18 18:17 ` Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 3/8] gnu: Add go-go-uber-org-automaxprocs Benjamin
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Benjamin @ 2023-11-18 18:17 UTC (permalink / raw)
To: 67263; +Cc: Benjamin
* gnu/packages/golang-check.scm (go-github-com-prashantv-gostub): New variable.
Change-Id: I2ffde6cb83e4c7f6b2e412b38341add952803719
---
gnu/packages/golang-check.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/golang-check.scm b/gnu/packages/golang-check.scm
index 42e501a6e3..a54a4bd226 100644
--- a/gnu/packages/golang-check.scm
+++ b/gnu/packages/golang-check.scm
@@ -414,6 +414,30 @@ (define-public go-github-com-stretchr-testify
@end itemize")
(license license:expat)))
+(define-public go-github-com-prashantv-gostub
+ (package
+ (name "go-github-com-prashantv-gostub")
+ (version "1.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/prashantv/gostub")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "035xf5w4fqlicdbbjcflsqflc0z5gmrn6wr7q41xwqfwfpraf9ah"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/prashantv/gostub"))
+ (native-inputs (list go-github-com-stretchr-testify))
+ (home-page "https://github.com/prashantv/gostub")
+ (synopsis "Stubbing library for Go")
+ (description
+ "Package gostub is used for stubbing variables in tests, and resetting the
+original value once the test has been run.")
+ (license license:expat)))
+
(define-public go-github-com-tdewolff-test
(package
(name "go-github-com-tdewolff-test")
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#67263] [PATCH 3/8] gnu: Add go-go-uber-org-automaxprocs.
2023-11-18 18:14 [bug#67263] [PATCH 0/8] adding nats-server package Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 1/8] gnu: Add go-github-com-minio-highwayhash Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 2/8] gnu: Add go-github-com-prashantv-gostub Benjamin
@ 2023-11-18 18:17 ` Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 4/8] gnu: Add go-github-com-nats-io-nuid Benjamin
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Benjamin @ 2023-11-18 18:17 UTC (permalink / raw)
To: 67263; +Cc: Benjamin, Katherine Cox-Buday
* gnu/packages/golang.scm (go-go-uber-org-automaxprocs): New variable.
Change-Id: I06abcaf3f3b74e23e5808d4ff37a93a0dc45b137
---
gnu/packages/golang.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 00620690b9..b644783d1d 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -11500,6 +11500,31 @@ (define-public go-go-uber-org-zap
Go.")
(license license:expat)))
+(define-public go-go-uber-org-automaxprocs
+ (package
+ (name "go-go-uber-org-automaxprocs")
+ (version "1.5.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/uber-go/automaxprocs")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "03arxcfaj7k6iwfdk0liaynxf9rjfj9m5glsjp7ws01xjkgrdpbc"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "go.uber.org/automaxprocs"))
+ (native-inputs (list go-github-com-stretchr-testify
+ go-github-com-prashantv-gostub))
+ (home-page "https://go.uber.org/automaxprocs")
+ (synopsis "CPU-count detection library for Go")
+ (description
+ "This package automatically set GOMAXPROCS to match Linux container
+CPU quota.")
+ (license license:expat)))
+
(define-public go-github-com-davecgh-go-xdr
(package
(name "go-github-com-davecgh-go-xdr")
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#67263] [PATCH 4/8] gnu: Add go-github-com-nats-io-nuid.
2023-11-18 18:14 [bug#67263] [PATCH 0/8] adding nats-server package Benjamin
` (2 preceding siblings ...)
2023-11-18 18:17 ` [bug#67263] [PATCH 3/8] gnu: Add go-go-uber-org-automaxprocs Benjamin
@ 2023-11-18 18:17 ` Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 5/8] gnu: Add go-github-com-nats-io-nkeys Benjamin
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Benjamin @ 2023-11-18 18:17 UTC (permalink / raw)
To: 67263; +Cc: Benjamin, Katherine Cox-Buday
* gnu/packages/golang.scm (go-github-com-nats-io-nuid): New variable.
Change-Id: I71ef84703b6971cabacafcba09d1447544fb48bf
---
gnu/packages/golang.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index b644783d1d..74c3da8ba4 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3292,6 +3292,29 @@ (define-public go-github-com-hebcal-hebcal-go
and anniversaries.")
(license license:gpl2+))))
+(define-public go-github-com-nats-io-nuid
+ (package
+ (name "go-github-com-nats-io-nuid")
+ (version "1.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nats-io/nuid")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "11zbhg4kds5idsya04bwz4plj0mmiigypzppzih731ppbk2ms1zg"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/nats-io/nuid"))
+ (home-page "https://github.com/nats-io/nuid")
+ (synopsis "Go library implementing identifier generator for NATS ecosystem")
+ (description
+ "This package provides a unique identifier generator that is high performance,
+very fast, and tries to be entropy pool friendly.")
+ (license license:asl2.0)))
+
(define-public go-github-com-aws-sdk
(package
(name "go-github-com-aws-sdk")
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#67263] [PATCH 5/8] gnu: Add go-github-com-nats-io-nkeys.
2023-11-18 18:14 [bug#67263] [PATCH 0/8] adding nats-server package Benjamin
` (3 preceding siblings ...)
2023-11-18 18:17 ` [bug#67263] [PATCH 4/8] gnu: Add go-github-com-nats-io-nuid Benjamin
@ 2023-11-18 18:17 ` Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 6/8] gnu: Add go-github-com-nats-io-jwt-v2 Benjamin
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Benjamin @ 2023-11-18 18:17 UTC (permalink / raw)
To: 67263; +Cc: Benjamin, Katherine Cox-Buday
* gnu/packages/golang.scm (go-github-com-nats-io-nkeys): New variable.
Change-Id: Id82a9afd15f110426fd7a16b286b5af5cae45c6a
---
gnu/packages/golang.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 74c3da8ba4..d52ec94059 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3315,6 +3315,30 @@ (define-public go-github-com-nats-io-nuid
very fast, and tries to be entropy pool friendly.")
(license license:asl2.0)))
+(define-public go-github-com-nats-io-nkeys
+ (package
+ (name "go-github-com-nats-io-nkeys")
+ (version "0.4.6")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nats-io/nkeys")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0l9ssz8bm9gqr07x5hif9r5b1mb324x61x4kkvgzvcqfm7wzh22a"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/nats-io/nkeys"))
+ (propagated-inputs (list go-golang-org-x-crypto))
+ (home-page "https://github.com/nats-io/nkeys")
+ (synopsis "Go library implementing public-key system for NATS ecosystem")
+ (description
+ "This package is an Ed25519 based public-key signature system that simplifies
+keys and seeds and performs signing and verification.")
+ (license license:asl2.0)))
+
(define-public go-github-com-aws-sdk
(package
(name "go-github-com-aws-sdk")
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#67263] [PATCH 6/8] gnu: Add go-github-com-nats-io-jwt-v2.
2023-11-18 18:14 [bug#67263] [PATCH 0/8] adding nats-server package Benjamin
` (4 preceding siblings ...)
2023-11-18 18:17 ` [bug#67263] [PATCH 5/8] gnu: Add go-github-com-nats-io-nkeys Benjamin
@ 2023-11-18 18:17 ` Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 7/8] gnu: Add go-github-com-nats-io-nats-go Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 8/8] gnu: Add nats-server Benjamin
7 siblings, 0 replies; 9+ messages in thread
From: Benjamin @ 2023-11-18 18:17 UTC (permalink / raw)
To: 67263; +Cc: Benjamin, Katherine Cox-Buday
* gnu/packages/golang.scm (go-github-com-nats-io-jwt-v2): New variable.
Change-Id: I5253db9ceb1aa118cfc15e89823903f3f5b2b75c
---
gnu/packages/golang.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index d52ec94059..17ec5296bf 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3339,6 +3339,31 @@ (define-public go-github-com-nats-io-nkeys
keys and seeds and performs signing and verification.")
(license license:asl2.0)))
+(define-public go-github-com-nats-io-jwt-v2
+ (package
+ (name "go-github-com-nats-io-jwt-v2")
+ (version "2.5.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nats-io/jwt")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0wcqbfyd3b4qdspmf72cpsbi0y2a4b1qd0cv3qvhh17d1h1a6zib"))))
+ (build-system go-build-system)
+ (arguments
+ (list #:import-path "github.com/nats-io/jwt/v2"
+ #:unpack-path "github.com/nats-io/jwt"))
+ (propagated-inputs (list go-github-com-nats-io-nkeys))
+ (home-page "https://github.com/nats-io/jwt")
+ (synopsis "Go library signing JWT tokens with NKeys for the NATS ecosystem")
+ (description
+ "This library is a JWT implementation that uses nkeys to digitally sign
+JWT tokens. Nkeys use Ed25519 to provide authentication of JWT claims.")
+ (license license:asl2.0)))
+
(define-public go-github-com-aws-sdk
(package
(name "go-github-com-aws-sdk")
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#67263] [PATCH 7/8] gnu: Add go-github-com-nats-io-nats-go.
2023-11-18 18:14 [bug#67263] [PATCH 0/8] adding nats-server package Benjamin
` (5 preceding siblings ...)
2023-11-18 18:17 ` [bug#67263] [PATCH 6/8] gnu: Add go-github-com-nats-io-jwt-v2 Benjamin
@ 2023-11-18 18:17 ` Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 8/8] gnu: Add nats-server Benjamin
7 siblings, 0 replies; 9+ messages in thread
From: Benjamin @ 2023-11-18 18:17 UTC (permalink / raw)
To: 67263; +Cc: Benjamin, Katherine Cox-Buday
* gnu/packages/golang.scm (go-github-com-nats-io-nats-go): New variable.
Change-Id: Ic2897e20fdcd8d68505f8a96281071fe3de224c9
---
gnu/packages/golang.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 17ec5296bf..2ec9938a98 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3364,6 +3364,32 @@ (define-public go-github-com-nats-io-jwt-v2
JWT tokens. Nkeys use Ed25519 to provide authentication of JWT claims.")
(license license:asl2.0)))
+(define-public go-github-com-nats-io-nats-go
+ (package
+ (name "go-github-com-nats-io-nats-go")
+ (version "1.31.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nats-io/nats.go")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0jqzqjwpp3p4fwpv2qcwskysnvgggp22p60zg3w25d3xsainjpbi"))))
+ (build-system go-build-system)
+ (arguments
+ (list #:go go-1.20 #:import-path "github.com/nats-io/nats.go"))
+ (propagated-inputs (list go-golang-org-x-text
+ go-github-com-nats-io-nuid
+ go-github-com-nats-io-nkeys
+ go-github-com-klauspost-compress))
+ (home-page "https://github.com/nats-io/nats.go")
+ (synopsis "Go Client for NATS server")
+ (description
+ "This package provides a Go client for the NATS messaging system.")
+ (license license:asl2.0)))
+
(define-public go-github-com-aws-sdk
(package
(name "go-github-com-aws-sdk")
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#67263] [PATCH 8/8] gnu: Add nats-server.
2023-11-18 18:14 [bug#67263] [PATCH 0/8] adding nats-server package Benjamin
` (6 preceding siblings ...)
2023-11-18 18:17 ` [bug#67263] [PATCH 7/8] gnu: Add go-github-com-nats-io-nats-go Benjamin
@ 2023-11-18 18:17 ` Benjamin
7 siblings, 0 replies; 9+ messages in thread
From: Benjamin @ 2023-11-18 18:17 UTC (permalink / raw)
To: 67263; +Cc: Benjamin
* gnu/packages/messaging.scm (nats-server): New variable.
Change-Id: Idb05684fae798b37d396279f136f11fce85e2e02
---
gnu/packages/messaging.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 1c5bc4bbd7..04474a1094 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -2889,6 +2889,38 @@ (define-public mosquitto
;; Dual licensed.
(license (list license:epl1.0 license:edl1.0))))
+(define-public nats-server
+ (package
+ (name "nats-server")
+ (version "2.10.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nats-io/nats-server")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "07dcn6him4r1chsqr9p4i7fnbfw60gq29f4zmlyljf2c47i58rf9"))))
+ (build-system go-build-system)
+ (inputs (list go-github-com-klauspost-compress go-github-com-minio-highwayhash
+ go-github-com-nats-io-jwt-v2 go-github-com-nats-io-nats-go
+ go-github-com-nats-io-nkeys go-github-com-nats-io-nuid
+ go-go-uber-org-automaxprocs go-golang-org-x-crypto
+ go-golang-org-x-sys go-golang-org-x-time))
+ (arguments
+ (list #:go go-1.20 #:import-path "github.com/nats-io/nats-server" #:install-source? #f))
+ (home-page "https://github.com/nats-io/nats-server")
+ (synopsis "High performance message broker")
+ (description
+ "NATS is a simple, secure and performant communications system for digital
+ systems, services and devices. NATS is part of the Cloud Native Computing
+ Foundation (CNCF). NATS has over 40 client language implementations, and its
+ server can run on-premise, in the cloud, at the edge, and even on a Raspberry
+ Pi. NATS can secure and simplify design and operation of modern distributed
+ systems.")
+ (license license:asl2.0)))
+
(define-public python-paho-mqtt
(package
(name "python-paho-mqtt")
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
end of thread, other threads:[~2023-11-18 18:20 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-11-18 18:14 [bug#67263] [PATCH 0/8] adding nats-server package Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 1/8] gnu: Add go-github-com-minio-highwayhash Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 2/8] gnu: Add go-github-com-prashantv-gostub Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 3/8] gnu: Add go-go-uber-org-automaxprocs Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 4/8] gnu: Add go-github-com-nats-io-nuid Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 5/8] gnu: Add go-github-com-nats-io-nkeys Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 6/8] gnu: Add go-github-com-nats-io-jwt-v2 Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 7/8] gnu: Add go-github-com-nats-io-nats-go Benjamin
2023-11-18 18:17 ` [bug#67263] [PATCH 8/8] gnu: Add nats-server Benjamin
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.