summaryrefslogtreecommitdiff
path: root/gnu/packages/golang-web.scm
diff options
context:
space:
mode:
authorSharlatan Hellseher <[email protected]>2025-01-11 21:00:23 +0000
committerSharlatan Hellseher <[email protected]>2025-01-21 23:47:59 +0000
commit6f8a5b29de8d58318314e17ed500ab3dd73a646a (patch)
tree8148ccab1a96d4cd0a9d0d3c19a73838160f724e /gnu/packages/golang-web.scm
parentddffdc4f6be976b072f615e7e061ca77d64cd83e (diff)
gnu: Add go-github-com-xtaci-kcp-go-v5.
* gnu/packages/golang-web.scm (go-github-com-xtaci-kcp-go-v5): New variable. Change-Id: I7db3d6fee648e30da52a210cb2ce045fdf344d6d
Diffstat (limited to 'gnu/packages/golang-web.scm')
-rw-r--r--gnu/packages/golang-web.scm52
1 files changed, 52 insertions, 0 deletions
diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm
index 5710ee1836..545b2697ab 100644
--- a/gnu/packages/golang-web.scm
+++ b/gnu/packages/golang-web.scm
@@ -8155,6 +8155,58 @@ Server, in addition to most other SQL databases with a publicly available Go
driver.")
(license license:expat)))
+(define-public go-github-com-xtaci-kcp-go-v5
+ (package
+ (name "go-github-com-xtaci-kcp-go-v5")
+ (version "5.6.18")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/xtaci/kcp-go")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "17jqgl2zdra9rz8ap3zlrk7ljnm316gd4dy4cimlk2641n8r5bjx"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/xtaci/kcp-go/v5"))
+ (native-inputs
+ (list go-github-com-stretchr-testify))
+ (propagated-inputs
+ (list go-github-com-klauspost-reedsolomon
+ go-github-com-pkg-errors
+ go-github-com-templexxx-xorsimd
+ go-github-com-tjfoc-gmsm
+ go-github-com-xtaci-lossyconn
+ go-golang-org-x-crypto
+ go-golang-org-x-net))
+ (home-page "https://github.com/xtaci/kcp-go")
+ (synopsis "Crypto-Secure Reliable-UDP Library with FEC")
+ (description
+ "This package provides smooth, resilient, ordered, error-checked and
+anonymous delivery of streams over UDP packets.
+Features:
+@itemize
+@item designed for latency-sensitive scenarios
+@item cache-friendly and memory-optimized design
+@item handles >5K concurrent connections on a single commodity server
+@item compatible with @code{net.Conn} and @code{net.Listener}, serving as a
+drop-in replacement for @code{net.TCPConn}
+@item @acronym{Forward Error Correction, FEC} support with
+@url{https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction,
+Reed-Solomon Codes}
+@item packet-level encryption support with @code{3DES}, @code{AES},
+@code{Blowfish}, @code{Cast5}, @code{PBKDF2}, @code{SM4}, @code{Salsa20},
+@code{TEA}, @code{Twofish}, and @code{XTEA}
+@item only a fixed number of goroutines are created for the entire server
+application
+@item compatible with @url{https://github.com/skywind3000, skywind3000}'s C
+version with various improvements
+@end itemize")
+ (license license:expat)))
+
(define-public go-github-com-xtaci-lossyconn
(package
(name "go-github-com-xtaci-lossyconn")