GNU bug report logs -
#65118
[PATCH 0/9]: gnu: Add NSQ.
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 65118 in the body.
You can then email your comments to 65118 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 06 Aug 2023 19:55:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Sharlatan Hellseher <sharlatanus <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Sun, 06 Aug 2023 19:55:01 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hi Guix!
This patch series adds broker queue with high availability model - NSQ.
While preparing packages for it I've notices go-github-com-golang-snappy is in
(gnu packages syncthing), it might be reasonable to move Golang related
packages from there to (gnu packages golang) to make the search of required
Golang packages easy to find in logical place.
Othere issues where some of the packages were already mentioned but not merged yet:
- go-github-com-julienschmidt-httprouter :: https://issues.guix.gnu.org/54560
It would be great to add services for each of the applications from (gnu packages
high-availability) as all of them have purpose to run as daemons.
Regards,
Oleg
Sharlatan Hellseher (9):
gnu: Add go-github-com-bitly-go-hostpool.
gnu: Add go-github-com-bitly-timer-metrics.
gnu: Add go-github-com-bmizerany-perks-quantile.
gnu: Add go-github-com-mreiferson-go-svc.
gnu: Add go-github-com-julienschmidt-httprouter.
gnu: Add go-github-com-mreiferson-go-options.
gnu: Add go-github-com-nsqio-go-diskqueue.
gnu: Add go-github-com-nsqio-go-nsq.
gnu: Add nsq.
gnu/packages/golang.scm | 193 ++++++++++++++++++++++++++++-
gnu/packages/high-availability.scm | 87 +++++++++++++
2 files changed, 279 insertions(+), 1 deletion(-)
base-commit: c4b9f726e3a1889b92a4b14a2af1c25f10798469
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 06 Aug 2023 19:56:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-bitly-go-hostpool): New variable.
---
gnu/packages/golang.scm | 27 ++++++++++++++++++++++++++-
1 file changed, 26 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index ea6aadbe80..0a747f2eee 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -25,7 +25,7 @@
;;; Copyright © 2020 Martin Becze <mjbecze <at> riseup.net>
;;; Copyright © 2021, 2022 Ricardo Wurmus <rekado <at> elephly.net>
;;; Copyright © 2021 Guillaume Le Vaillant <glv <at> posteo.net>
-;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus <at> mgail.com>
+;;; Copyright © 2021, 2023 Sharlatan Hellseher <sharlatanus <at> mgail.com>
;;; Copyright © 2021 Sarah Morgensen <iskarian <at> mgsn.dev>
;;; Copyright © 2021 Raghav Gururajan <rg <at> raghavgururajan.name>
;;; Copyright © 2021 jgart <jgart <at> dismail.de>
@@ -2112,6 +2112,31 @@ (define-public go-github-com-dhowett-go-plist
types.")
(license license:giftware))))
+(define-public go-github-com-bitly-go-hostpool
+ (package
+ (name "go-github-com-bitly-go-hostpool")
+ (version "0.1.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bitly/go-hostpool")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1iibj7dwymczw7cknrh6glc6sdpp4yap2plnyr8qphynwrzlz73w"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/bitly/go-hostpool"))
+ (native-inputs (list go-github-com-stretchr-testify))
+ (home-page "https://github.com/bitly/go-hostpool")
+ (synopsis "Pool among multiple hosts from Golang")
+ (description
+ "This package provides a Go package to intelligently and flexibly pool among
+multiple hosts from your Go application. Host selection can operate in round
+robin or epsilon greedy mode, and unresponsive hosts are avoided.")
+ (license license:expat)))
+
(define-public go-github-com-blanu-dust
(package
(name "go-github-com-blanu-dust")
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 06 Aug 2023 19:56:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-mreiferson-go-svc): New variable.
---
gnu/packages/golang.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index ce46e02158..7890e4d583 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -6256,6 +6256,34 @@ (define-public go-github-com-mr-tron-base58
encoding and 8 times faster decoding.")
(license license:expat))))
+(define-public go-github-com-mreiferson-go-svc
+ ;; NSQ specific fork of github.com/judwhite/go-svc, as Guix go build system
+ ;; does not support go.mod with `replace' statement.
+ (let ((commit "7a96e00010f68d9436e3de53a70c53f209a0c244")
+ (revision "0"))
+ (package
+ (name "go-github-com-mreiferson-go-svc")
+ (version (git-version "1.2.1" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mreiferson/go-svc")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1acgb0n3svhnraqj1fz5qc5n3b4vc5ffwyk9vfi6gcfkibm0hgmd"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/judwhite/go-svc"))
+ (propagated-inputs (list go-golang-org-x-sys))
+ (home-page "https://github.com/mreiferson/go-svc")
+ (synopsis "Go Windows Service wrapper that plays nice with Linux")
+ (description
+ "Go Windows Service wrapper that plays nice with Linux. Windows tests
+@@url{https://github.com/judwhite/go-svc/raw/master/svc/svc_windows_test.go,here}.")
+ (license license:expat))))
+
(define-public go-github-com-gxed-hashland-keccakpg
(let ((commit "d9f6b97f8db22dd1e090fd0bbbe98f09cc7dd0a8")
(revision "0"))
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 06 Aug 2023 19:56:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-bmizerany-perks-quantile): New variable.
---
gnu/packages/golang.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 4721519a9b..ce46e02158 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -9033,6 +9033,30 @@ (define-public go-github-com-bmatcuk-doublestar
matching and globbing with support for \"doublestar\" patterns.")
(license license:expat)))
+(define-public go-github-com-bmizerany-perks-quantile
+ (package
+ (name "go-github-com-bmizerany-perks-quantile")
+ (version "0.0.0-20230307044200-03f9df79da1e")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bmizerany/perks")
+ (commit (go-version->git-ref version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1f2a99v3618bz2mf61iwhdjm3xi1gam6v4apqgcrz71gj7ba9943"))))
+ (build-system go-build-system)
+ (arguments
+ (list #:unpack-path "github.com/bmizerany/perks"
+ #:import-path "github.com/bmizerany/perks/quantile"))
+ (home-page "https://github.com/bmizerany/perks")
+ (synopsis "Perks for Golang")
+ (description
+ "Perks contains the Go package quantile that computes approximate quantiles
+over an unbounded data stream within low memory and CPU bounds.")
+ (license license:bsd-2)))
+
(define-public go-github-com-dlclark-regexp2
(package
(name "go-github-com-dlclark-regexp2")
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 06 Aug 2023 19:56:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-julienschmidt-httprouter): New variable.
---
gnu/packages/golang.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 7890e4d583..cdfad943c7 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -9922,6 +9922,28 @@ (define-public go-github-com-juju-ansiterm
for color and styles.")
(license license:lgpl3)))
+(define-public go-github-com-julienschmidt-httprouter
+ (package
+ (name "go-github-com-julienschmidt-httprouter")
+ (version "1.3.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/julienschmidt/httprouter")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1a6sy0ysqknsjssjh7qg1dqn21xmj9a36c57nrk7srfmab4ffmk1"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/julienschmidt/httprouter"))
+ (home-page "https://github.com/julienschmidt/httprouter")
+ (synopsis "High performance HTTP request router")
+ (description
+ "Package httprouter is a trie based high performance HTTP request router.")
+ (license license:bsd-3)))
+
(define-public go-github-com-kevinburke-ssh-config
(package
(name "go-github-com-kevinburke-ssh-config")
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 06 Aug 2023 19:56:03 GMT)
Full text and
rfc822 format available.
Message #20 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-bitly-timer-metrics): New variable.
---
gnu/packages/golang.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 0a747f2eee..4721519a9b 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2137,6 +2137,29 @@ (define-public go-github-com-bitly-go-hostpool
robin or epsilon greedy mode, and unresponsive hosts are avoided.")
(license license:expat)))
+(define-public go-github-com-bitly-timer-metrics
+ (package
+ (name "go-github-com-bitly-timer-metrics")
+ (version "1.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bitly/timer_metrics")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "02fhx8hx8126m2cgxw9fm8q2401r7zfann8b5zy5yyark1sgkrb4"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/bitly/timer_metrics"))
+ (home-page "https://github.com/bitly/timer_metrics")
+ (synopsis "Capture timings and enables periodic metrics every n events")
+ (description
+ "This package provides an efficient way to capture timing information and
+periodically output metrics")
+ (license license:expat)))
+
(define-public go-github-com-blanu-dust
(package
(name "go-github-com-blanu-dust")
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 06 Aug 2023 19:56:03 GMT)
Full text and
rfc822 format available.
Message #23 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-mreiferson-go-options): New variable.
---
gnu/packages/golang.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index cdfad943c7..fd3807bb7e 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -6256,6 +6256,29 @@ (define-public go-github-com-mr-tron-base58
encoding and 8 times faster decoding.")
(license license:expat))))
+(define-public go-github-com-mreiferson-go-options
+ (package
+ (name "go-github-com-mreiferson-go-options")
+ (version "1.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mreiferson/go-options")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1pxs9ybrh196qy14ijn4zn51h2z28lj31y6vxrz2xxhgvpmfmxyl"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/mreiferson/go-options"))
+ (home-page "https://github.com/mreiferson/go-options")
+ (synopsis "Go package to structure and resolve options")
+ (description
+ "OPTIONS resolves configuration values set via command line flags, config
+files, and default struct values")
+ (license license:expat)))
+
(define-public go-github-com-mreiferson-go-svc
;; NSQ specific fork of github.com/judwhite/go-svc, as Guix go build system
;; does not support go.mod with `replace' statement.
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 06 Aug 2023 19:56:04 GMT)
Full text and
rfc822 format available.
Message #26 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-nsqio-go-nsq): New variable.
---
gnu/packages/golang.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 637e6ebe73..91b1880476 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3205,6 +3205,30 @@ (define-public go-github-com-nsqio-go-diskqueue
"This package provides a Go package providing a filesystem-backed FIFO queue")
(license license:expat)))
+(define-public go-github-com-nsqio-go-nsq
+ (package
+ (name "go-github-com-nsqio-go-nsq")
+ (version "1.1.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nsqio/go-nsq")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1h9z3z225sdgg7fl3l7x11xn5ch6lm5flgmcj046cdp453qj2qhf"))))
+ (build-system go-build-system)
+ (arguments
+ (list #:tests? #f ;It requires local network setup.
+ #:import-path "github.com/nsqio/go-nsq"))
+ (propagated-inputs (list go-github-com-golang-snappy))
+ (home-page "https://github.com/nsqio/go-nsq")
+ (synopsis "Golang package of high-level Consumer and Produce for NSQ")
+ (description "Package nsq is the official Go package for NSQ
+(@url{http://nsq.io/,http://nsq.io/}).")
+ (license license:expat)))
+
(define-public go-github-com-hebcal-gematriya
(let ((commit "fe3043f73e415eb82727701d10f2fb40f87675e9")
(revision "0"))
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 06 Aug 2023 19:56:04 GMT)
Full text and
rfc822 format available.
Message #29 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-nsqio-go-diskqueue): New variable.
---
gnu/packages/golang.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index fd3807bb7e..637e6ebe73 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3183,6 +3183,28 @@ (define-public go-github-com-nathan-osman-go-sunrise
sunset times from geographical coordinates and a date.")
(license license:expat))))
+(define-public go-github-com-nsqio-go-diskqueue
+ (package
+ (name "go-github-com-nsqio-go-diskqueue")
+ (version "1.1.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nsqio/go-diskqueue")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1hp66hkmfn0nyf3c53a40f94ah11a9rj01r5zp3jph9p54j8rany"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/nsqio/go-diskqueue"))
+ (home-page "https://github.com/nsqio/go-diskqueue")
+ (synopsis "Go package providing a filesystem-backed FIFO queue")
+ (description
+ "This package provides a Go package providing a filesystem-backed FIFO queue")
+ (license license:expat)))
+
(define-public go-github-com-hebcal-gematriya
(let ((commit "fe3043f73e415eb82727701d10f2fb40f87675e9")
(revision "0"))
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 06 Aug 2023 19:56:05 GMT)
Full text and
rfc822 format available.
Message #32 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/high-availability.scm (nsq): New variable.
---
gnu/packages/high-availability.scm | 87 ++++++++++++++++++++++++++++++
1 file changed, 87 insertions(+)
diff --git a/gnu/packages/high-availability.scm b/gnu/packages/high-availability.scm
index 11ff8014cf..9763a04b21 100644
--- a/gnu/packages/high-availability.scm
+++ b/gnu/packages/high-availability.scm
@@ -34,6 +34,7 @@ (define-module (gnu packages high-availability)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages golang)
#:use-module (gnu packages hardware)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
@@ -43,12 +44,14 @@ (define-module (gnu packages high-availability)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages rsync)
+ #:use-module (gnu packages syncthing)
#:use-module (gnu packages tls)
#:use-module (gnu packages valgrind)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xml)
#:use-module (gnu packages)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system go)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
@@ -190,6 +193,90 @@ (define-public kronosnet
in general better performances compared to the old network protocol.")
(license (list license:gpl2+ license:lgpl2.1+))))
+(define-public nsq
+ (package
+ (name "nsq")
+ (version "1.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nsqio/nsq")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ajqjwfn06zsmz21z9mkl4cblarypaf20228pqcd1293zl6y3ry8"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/nsqio/nsq"
+ #:install-source? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'build
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "make"))))
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (setenv "HOME" "/tmp")
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke #$@(if (string-prefix? "x86_64-linux"
+ (or (%current-system)
+ (%current-target-system)))
+ (list "go" "test" "-v" "-race" "./...")
+ (list "go" "test" "-v" "./...")))))))
+ (replace 'install
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "make" (string-append "PREFIX=" #$output)
+ "install")))))))
+ (native-inputs
+ (list go-github-com-bitly-go-hostpool
+ go-github-com-bitly-timer-metrics
+ go-github-com-blang-semver
+ go-github-com-bmizerany-perks-quantile
+ go-github-com-burntsushi-toml
+ go-github-com-davecgh-go-spew
+ go-github-com-golang-snappy ; Move to (gnu packages golang)
+ go-github-com-mreiferson-go-svc
+ go-github-com-julienschmidt-httprouter
+ go-github-com-mreiferson-go-options
+ go-github-com-mreiferson-go-svc
+ go-github-com-nsqio-go-diskqueue
+ go-github-com-nsqio-go-nsq
+ python-wrapper))
+ (home-page "https://nsq.io")
+ (synopsis "Realtime distributed messaging platform")
+ (description
+ "NSQ is a realtime distributed messaging platform designed to operate at
+scale, handling billions of messages per day.
+
+Key features:
+@itemize
+@item support distributed topologies with no SPOF
+@item horizontally scalable (no brokers, seamlessly add more nodes to the
+cluster)
+@item low-latency push based message delivery (performance)
+@item combination load-balanced and multicast style message routing
+@item excel at both streaming (high-throughput) and job oriented
+(low-throughput) workloads
+@item primarily in-memory (beyond a high-water mark messages are transparently
+kept on disk)
+@item runtime discovery service for consumers to find producers (nsqlookupd)
+@item transport layer security (TLS)
+@item data format agnostic
+@item few dependencies (easy to deploy) and a sane, bounded, default
+configuration
+@item simple TCP protocol supporting client libraries in any language
+@item HTTP interface for stats, admin actions, and producers (no client
+library needed to publish)
+@item integrates with statsd for realtime instrumentation
+@item robust cluster administration interface (nsqadmin)
+@end itemize")
+ (license license:expat)))
+
(define-public corosync
(package
(name "corosync")
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sat, 26 Aug 2023 16:19:01 GMT)
Full text and
rfc822 format available.
Message #35 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Hi Guix,
A gentle ping on the status of this issue, please let me know if the
patch service needs to be updated somehow.
Thanks,
Oleg
--
… наш разум - превосходная объяснительная машина которая способна
найти смысл почти в чем угодно, истолковать любой феномен, но
совершенно не в состоянии принять мысль о непредсказуемости.
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 27 Aug 2023 02:03:02 GMT)
Full text and
rfc822 format available.
Message #38 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Hello!
Sharlatan Hellseher <sharlatanus <at> gmail.com> writes:
> * gnu/packages/high-availability.scm (nsq): New variable.
> ---
> gnu/packages/high-availability.scm | 87 ++++++++++++++++++++++++++++++
> 1 file changed, 87 insertions(+)
>
> diff --git a/gnu/packages/high-availability.scm b/gnu/packages/high-availability.scm
> index 11ff8014cf..9763a04b21 100644
> --- a/gnu/packages/high-availability.scm
> +++ b/gnu/packages/high-availability.scm
> @@ -34,6 +34,7 @@ (define-module (gnu packages high-availability)
> #:use-module (gnu packages gcc)
> #:use-module (gnu packages gettext)
> #:use-module (gnu packages glib)
> + #:use-module (gnu packages golang)
> #:use-module (gnu packages hardware)
> #:use-module (gnu packages linux)
> #:use-module (gnu packages lua)
> @@ -43,12 +44,14 @@ (define-module (gnu packages high-availability)
> #:use-module (gnu packages pkg-config)
> #:use-module (gnu packages python)
> #:use-module (gnu packages rsync)
> + #:use-module (gnu packages syncthing)
> #:use-module (gnu packages tls)
> #:use-module (gnu packages valgrind)
> #:use-module (gnu packages version-control)
> #:use-module (gnu packages xml)
> #:use-module (gnu packages)
> #:use-module (guix build-system gnu)
> + #:use-module (guix build-system go)
> #:use-module (guix download)
> #:use-module (guix gexp)
> #:use-module (guix git-download)
> @@ -190,6 +193,90 @@ (define-public kronosnet
> in general better performances compared to the old network protocol.")
> (license (list license:gpl2+ license:lgpl2.1+))))
>
> +(define-public nsq
> + (package
> + (name "nsq")
> + (version "1.2.1")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/nsqio/nsq")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32 "0ajqjwfn06zsmz21z9mkl4cblarypaf20228pqcd1293zl6y3ry8"))))
> + (build-system go-build-system)
> + (arguments
> + (list
> + #:import-path "github.com/nsqio/nsq"
> + #:install-source? #f
> + #:phases
> + #~(modify-phases %standard-phases
> + (replace 'build
> + (lambda* (#:key import-path #:allow-other-keys)
> + (with-directory-excursion (string-append "src/" import-path)
> + (invoke "make"))))
> + (replace 'check
> + (lambda* (#:key tests? import-path #:allow-other-keys)
> + (when tests?
> + (setenv "HOME" "/tmp")
> + (with-directory-excursion (string-append "src/" import-path)
> + (invoke #$@(if (string-prefix? "x86_64-linux"
> + (or (%current-system)
> + (%current-target-system)))
The target should be checked before the system, as current-system is
always defined, and would shortcut the or. But you can now safely
forget about this detail and use the 'target-x86?' procedure instead,
which comes from (guix tilers).
> + (list "go" "test" "-v" "-race" "./...")
> + (list "go" "test" "-v" "./...")))))))
> + (replace 'install
> + (lambda* (#:key import-path #:allow-other-keys)
> + (with-directory-excursion (string-append "src/" import-path)
> + (invoke "make" (string-append "PREFIX=" #$output)
> + "install")))))))
> + (native-inputs
> + (list go-github-com-bitly-go-hostpool
> + go-github-com-bitly-timer-metrics
> + go-github-com-blang-semver
> + go-github-com-bmizerany-perks-quantile
> + go-github-com-burntsushi-toml
> + go-github-com-davecgh-go-spew
> + go-github-com-golang-snappy ; Move to (gnu packages golang)
> + go-github-com-mreiferson-go-svc
> + go-github-com-julienschmidt-httprouter
> + go-github-com-mreiferson-go-options
> + go-github-com-mreiferson-go-svc
> + go-github-com-nsqio-go-diskqueue
> + go-github-com-nsqio-go-nsq
> + python-wrapper))
> + (home-page "https://nsq.io")
> + (synopsis "Realtime distributed messaging platform")
> + (description
> + "NSQ is a realtime distributed messaging platform designed to operate at
> +scale, handling billions of messages per day.
> +
> +Key features:
> +@itemize
> +@item support distributed topologies with no SPOF
What is SPOF?
> +@item horizontally scalable (no brokers, seamlessly add more nodes to the
> +cluster)
> +@item low-latency push based message delivery (performance)
> +@item combination load-balanced and multicast style message routing
I'd replace 'combination' here with the 'combine' verb.
> +@item excel at both streaming (high-throughput) and job oriented
> +(low-throughput) workloads
> +@item primarily in-memory (beyond a high-water mark messages are transparently
> +kept on disk)
> +@item runtime discovery service for consumers to find producers (nsqlookupd)
> +@item transport layer security (TLS)
> +@item data format agnostic
> +@item few dependencies (easy to deploy) and a sane, bounded, default
> +configuration
> +@item simple TCP protocol supporting client libraries in any language
> +@item HTTP interface for stats, admin actions, and producers (no client
> +library needed to publish)
> +@item integrates with statsd for realtime instrumentation
The imperative rather than descriptive verb tense is used elsewhere
here, I'd stick with it (integrate with ...).
Could you send a v2 addressing the above?
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 27 Aug 2023 02:10:01 GMT)
Full text and
rfc822 format available.
Message #41 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Sharlatan Hellseher <sharlatanus <at> gmail.com> writes:
> * gnu/packages/golang.scm (go-github-com-bitly-timer-metrics): New variable.
> ---
> gnu/packages/golang.scm | 23 +++++++++++++++++++++++
> 1 file changed, 23 insertions(+)
>
> diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
> index 0a747f2eee..4721519a9b 100644
> --- a/gnu/packages/golang.scm
> +++ b/gnu/packages/golang.scm
> @@ -2137,6 +2137,29 @@ (define-public go-github-com-bitly-go-hostpool
> robin or epsilon greedy mode, and unresponsive hosts are avoided.")
> (license license:expat)))
>
> +(define-public go-github-com-bitly-timer-metrics
> + (package
> + (name "go-github-com-bitly-timer-metrics")
> + (version "1.0.0")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/bitly/timer_metrics")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "02fhx8hx8126m2cgxw9fm8q2401r7zfann8b5zy5yyark1sgkrb4"))))
> + (build-system go-build-system)
> + (arguments
> + '(#:import-path "github.com/bitly/timer_metrics"))
> + (home-page "https://github.com/bitly/timer_metrics")
> + (synopsis "Capture timings and enables periodic metrics every n
> events")
s/enables/enable/
Maybe use @var{n} if that's supported.
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 27 Aug 2023 02:11:01 GMT)
Full text and
rfc822 format available.
Message #44 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Sharlatan Hellseher <sharlatanus <at> gmail.com> writes:
> * gnu/packages/golang.scm (go-github-com-bmizerany-perks-quantile): New variable.
> ---
> gnu/packages/golang.scm | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
> index 4721519a9b..ce46e02158 100644
> --- a/gnu/packages/golang.scm
> +++ b/gnu/packages/golang.scm
> @@ -9033,6 +9033,30 @@ (define-public go-github-com-bmatcuk-doublestar
> matching and globbing with support for \"doublestar\" patterns.")
> (license license:expat)))
>
> +(define-public go-github-com-bmizerany-perks-quantile
> + (package
> + (name "go-github-com-bmizerany-perks-quantile")
> + (version "0.0.0-20230307044200-03f9df79da1e")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/bmizerany/perks")
> + (commit (go-version->git-ref version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "1f2a99v3618bz2mf61iwhdjm3xi1gam6v4apqgcrz71gj7ba9943"))))
> + (build-system go-build-system)
> + (arguments
> + (list #:unpack-path "github.com/bmizerany/perks"
> + #:import-path "github.com/bmizerany/perks/quantile"))
> + (home-page "https://github.com/bmizerany/perks")
> + (synopsis "Perks for Golang")
I'd use "Library for computing quantiles"
> + (description
> + "Perks contains the Go package quantile that computes approximate quantiles
the Go package @code{quantile} [...]
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 27 Aug 2023 02:14:02 GMT)
Full text and
rfc822 format available.
Message #47 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Hi,
Sharlatan Hellseher <sharlatanus <at> gmail.com> writes:
> * gnu/packages/golang.scm (go-github-com-mreiferson-go-svc): New variable.
> ---
> gnu/packages/golang.scm | 28 ++++++++++++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
> index ce46e02158..7890e4d583 100644
> --- a/gnu/packages/golang.scm
> +++ b/gnu/packages/golang.scm
> @@ -6256,6 +6256,34 @@ (define-public go-github-com-mr-tron-base58
> encoding and 8 times faster decoding.")
> (license license:expat))))
>
> +(define-public go-github-com-mreiferson-go-svc
> + ;; NSQ specific fork of github.com/judwhite/go-svc, as Guix go build system
> + ;; does not support go.mod with `replace' statement.
> + (let ((commit "7a96e00010f68d9436e3de53a70c53f209a0c244")
> + (revision "0"))
> + (package
> + (name "go-github-com-mreiferson-go-svc")
> + (version (git-version "1.2.1" revision commit))
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/mreiferson/go-svc")
> + (commit commit)))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "1acgb0n3svhnraqj1fz5qc5n3b4vc5ffwyk9vfi6gcfkibm0hgmd"))))
> + (build-system go-build-system)
> + (arguments
> + '(#:import-path "github.com/judwhite/go-svc"))
> + (propagated-inputs (list go-golang-org-x-sys))
> + (home-page "https://github.com/mreiferson/go-svc")
> + (synopsis "Go Windows Service wrapper that plays nice with Linux")
> + (description
> + "Go Windows Service wrapper that plays nice with Linux. Windows tests
> +@@url{https://github.com/judwhite/go-svc/raw/master/svc/svc_windows_test.go,here}.")
> + (license license:expat))))
Reading this makes me wonder when the code path would ever be used on
GNU/Linux. Probably never. Perhaps an alternative would eb to edit it
out of the go.mod, if it still builds without too many problems.
Otherwise, LGTM.
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 27 Aug 2023 02:15:02 GMT)
Full text and
rfc822 format available.
Message #50 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Sharlatan Hellseher <sharlatanus <at> gmail.com> writes:
> * gnu/packages/golang.scm (go-github-com-julienschmidt-httprouter): New variable.
> ---
> gnu/packages/golang.scm | 22 ++++++++++++++++++++++
> 1 file changed, 22 insertions(+)
>
> diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
> index 7890e4d583..cdfad943c7 100644
> --- a/gnu/packages/golang.scm
> +++ b/gnu/packages/golang.scm
> @@ -9922,6 +9922,28 @@ (define-public go-github-com-juju-ansiterm
> for color and styles.")
> (license license:lgpl3)))
>
> +(define-public go-github-com-julienschmidt-httprouter
> + (package
> + (name "go-github-com-julienschmidt-httprouter")
> + (version "1.3.0")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/julienschmidt/httprouter")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "1a6sy0ysqknsjssjh7qg1dqn21xmj9a36c57nrk7srfmab4ffmk1"))))
> + (build-system go-build-system)
> + (arguments
> + '(#:import-path "github.com/julienschmidt/httprouter"))
> + (home-page "https://github.com/julienschmidt/httprouter")
> + (synopsis "High performance HTTP request router")
> + (description
> + "Package httprouter is a trie based high performance HTTP
> request router.")
Nitpick: @code{httprouter}
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 27 Aug 2023 02:16:01 GMT)
Full text and
rfc822 format available.
Message #53 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Sharlatan Hellseher <sharlatanus <at> gmail.com> writes:
> * gnu/packages/golang.scm (go-github-com-mreiferson-go-options): New variable.
> ---
> gnu/packages/golang.scm | 23 +++++++++++++++++++++++
> 1 file changed, 23 insertions(+)
>
> diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
> index cdfad943c7..fd3807bb7e 100644
> --- a/gnu/packages/golang.scm
> +++ b/gnu/packages/golang.scm
> @@ -6256,6 +6256,29 @@ (define-public go-github-com-mr-tron-base58
> encoding and 8 times faster decoding.")
> (license license:expat))))
>
> +(define-public go-github-com-mreiferson-go-options
> + (package
> + (name "go-github-com-mreiferson-go-options")
> + (version "1.0.0")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/mreiferson/go-options")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "1pxs9ybrh196qy14ijn4zn51h2z28lj31y6vxrz2xxhgvpmfmxyl"))))
> + (build-system go-build-system)
> + (arguments
> + '(#:import-path "github.com/mreiferson/go-options"))
> + (home-page "https://github.com/mreiferson/go-options")
> + (synopsis "Go package to structure and resolve options")
> + (description
> + "OPTIONS resolves configuration values set via command line
> flags, config
Maybe, "The @code{options} Go package resolves [...]"
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 27 Aug 2023 02:19:02 GMT)
Full text and
rfc822 format available.
Message #56 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Sharlatan Hellseher <sharlatanus <at> gmail.com> writes:
> * gnu/packages/golang.scm (go-github-com-nsqio-go-diskqueue): New variable.
> ---
> gnu/packages/golang.scm | 22 ++++++++++++++++++++++
> 1 file changed, 22 insertions(+)
>
> diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
> index fd3807bb7e..637e6ebe73 100644
> --- a/gnu/packages/golang.scm
> +++ b/gnu/packages/golang.scm
> @@ -3183,6 +3183,28 @@ (define-public go-github-com-nathan-osman-go-sunrise
> sunset times from geographical coordinates and a date.")
> (license license:expat))))
>
> +(define-public go-github-com-nsqio-go-diskqueue
> + (package
> + (name "go-github-com-nsqio-go-diskqueue")
> + (version "1.1.0")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/nsqio/go-diskqueue")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "1hp66hkmfn0nyf3c53a40f94ah11a9rj01r5zp3jph9p54j8rany"))))
> + (build-system go-build-system)
> + (arguments
> + '(#:import-path "github.com/nsqio/go-diskqueue"))
> + (home-page "https://github.com/nsqio/go-diskqueue")
> + (synopsis "Go package providing a filesystem-backed FIFO queue")
> + (description
> + "This package provides a Go package providing a filesystem-backed FIFO queue")
I'd use something like "The @code{diskqueue} Go package provides a
filesystem-backed FIFO queue." to avoid the using "provides" twice in
the same sentence.
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 27 Aug 2023 02:24:01 GMT)
Full text and
rfc822 format available.
Message #59 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Sharlatan Hellseher <sharlatanus <at> gmail.com> writes:
> * gnu/packages/golang.scm (go-github-com-nsqio-go-nsq): New variable.
> ---
> gnu/packages/golang.scm | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
> index 637e6ebe73..91b1880476 100644
> --- a/gnu/packages/golang.scm
> +++ b/gnu/packages/golang.scm
> @@ -3205,6 +3205,30 @@ (define-public go-github-com-nsqio-go-diskqueue
> "This package provides a Go package providing a filesystem-backed FIFO queue")
> (license license:expat)))
>
> +(define-public go-github-com-nsqio-go-nsq
> + (package
> + (name "go-github-com-nsqio-go-nsq")
> + (version "1.1.0")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/nsqio/go-nsq")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "1h9z3z225sdgg7fl3l7x11xn5ch6lm5flgmcj046cdp453qj2qhf"))))
> + (build-system go-build-system)
> + (arguments
> + (list #:tests? #f ;It requires local network setup.
> + #:import-path "github.com/nsqio/go-nsq"))
> + (propagated-inputs (list go-github-com-golang-snappy))
> + (home-page "https://github.com/nsqio/go-nsq")
> + (synopsis "Golang package of high-level Consumer and Produce for NSQ")
> + (description "Package nsq is the official Go package for NSQ
> +(@url{http://nsq.io/,http://nsq.io/}).")
The description should provide more detail than the synopsis, not less
:-). I'd use something like this, inspired by [0].
--8<---------------cut here---------------start------------->8---
The @code{nsq} Go module provides a high-level consumer and producer
types as well as low-level functions to communicate over the NSQ
protocol.
--8<---------------cut here---------------end--------------->8---
Another thing; when the URL name is the same as the URL itself, you
don't need to repeat it in the @url command.
[0] https://pkg.go.dev/github.com/nsqio/go-nsq?utm_source=godoc#section-documentation
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 27 Aug 2023 02:25:02 GMT)
Full text and
rfc822 format available.
Message #62 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Hi Oleg,
Sharlatan Hellseher <sharlatanus <at> gmail.com> writes:
> Hi Guix,
>
> A gentle ping on the status of this issue, please let me know if the
> patch service needs to be updated somehow.
The series looks good! I've commented with minor (mostly cosmetic)
suggestions; I look forward to a v2!
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Fri, 01 Sep 2023 19:59:01 GMT)
Full text and
rfc822 format available.
Message #65 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Hi Guix!
@Maxim thanks for review points I think I've covered all of them in v2, patch
set was rebased from master's the latest pull.
One note on <[PATCH 4/9] gnu: Add go-github-com-mreiferson-go-svc>, without
setting the import path causes build to fail as the code still imports it as
forked name, it does not fail if go.mod is in use which is abandon in Guix
right now.
Thanks,
Oleg
Sharlatan Hellseher (9):
gnu: Add go-github-com-bitly-go-hostpool.
gnu: Add go-github-com-bitly-timer-metrics.
gnu: Add go-github-com-bmizerany-perks-quantile.
gnu: Add go-github-com-mreiferson-go-svc.
gnu: Add go-github-com-julienschmidt-httprouter.
gnu: Add go-github-com-mreiferson-go-options.
gnu: Add go-github-com-nsqio-go-diskqueue.
gnu: Add go-github-com-nsqio-go-nsq.
gnu: Add nsq.
gnu/packages/golang.scm | 197 ++++++++++++++++++++++++++++-
gnu/packages/high-availability.scm | 86 +++++++++++++
2 files changed, 282 insertions(+), 1 deletion(-)
base-commit: 7309da3ba64a191f074807275d8c5661a25c035c
--
2.40.1
Information forwarded
to
cox.katherine.e+guix <at> gmail.com, guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Fri, 01 Sep 2023 19:59:02 GMT)
Full text and
rfc822 format available.
Message #68 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-bitly-timer-metrics): New variable.
---
gnu/packages/golang.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 70d5af6107..b569c9edaa 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2137,6 +2137,29 @@ (define-public go-github-com-bitly-go-hostpool
robin or epsilon greedy mode, and unresponsive hosts are avoided.")
(license license:expat)))
+(define-public go-github-com-bitly-timer-metrics
+ (package
+ (name "go-github-com-bitly-timer-metrics")
+ (version "1.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bitly/timer_metrics")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "02fhx8hx8126m2cgxw9fm8q2401r7zfann8b5zy5yyark1sgkrb4"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/bitly/timer_metrics"))
+ (home-page "https://github.com/bitly/timer_metrics")
+ (synopsis "Capture timings and enable periodic metrics every @var{n} events")
+ (description
+ "This package provides an efficient way to capture timing information and
+periodically output metrics")
+ (license license:expat)))
+
(define-public go-github-com-blanu-dust
(package
(name "go-github-com-blanu-dust")
--
2.40.1
Information forwarded
to
cox.katherine.e+guix <at> gmail.com, guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Fri, 01 Sep 2023 19:59:02 GMT)
Full text and
rfc822 format available.
Message #71 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-bitly-go-hostpool): New variable.
---
gnu/packages/golang.scm | 27 ++++++++++++++++++++++++++-
1 file changed, 26 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 5a53838435..70d5af6107 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -25,7 +25,7 @@
;;; Copyright © 2020 Martin Becze <mjbecze <at> riseup.net>
;;; Copyright © 2021, 2022 Ricardo Wurmus <rekado <at> elephly.net>
;;; Copyright © 2021 Guillaume Le Vaillant <glv <at> posteo.net>
-;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus <at> mgail.com>
+;;; Copyright © 2021, 2023 Sharlatan Hellseher <sharlatanus <at> mgail.com>
;;; Copyright © 2021 Sarah Morgensen <iskarian <at> mgsn.dev>
;;; Copyright © 2021 Raghav Gururajan <rg <at> raghavgururajan.name>
;;; Copyright © 2021 jgart <jgart <at> dismail.de>
@@ -2112,6 +2112,31 @@ (define-public go-github-com-dhowett-go-plist
types.")
(license license:giftware))))
+(define-public go-github-com-bitly-go-hostpool
+ (package
+ (name "go-github-com-bitly-go-hostpool")
+ (version "0.1.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bitly/go-hostpool")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1iibj7dwymczw7cknrh6glc6sdpp4yap2plnyr8qphynwrzlz73w"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/bitly/go-hostpool"))
+ (native-inputs (list go-github-com-stretchr-testify))
+ (home-page "https://github.com/bitly/go-hostpool")
+ (synopsis "Pool among multiple hosts from Golang")
+ (description
+ "This package provides a Go package to intelligently and flexibly pool among
+multiple hosts from your Go application. Host selection can operate in round
+robin or epsilon greedy mode, and unresponsive hosts are avoided.")
+ (license license:expat)))
+
(define-public go-github-com-blanu-dust
(package
(name "go-github-com-blanu-dust")
--
2.40.1
Information forwarded
to
cox.katherine.e+guix <at> gmail.com, guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Fri, 01 Sep 2023 19:59:03 GMT)
Full text and
rfc822 format available.
Message #74 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-bmizerany-perks-quantile): New variable.
---
gnu/packages/golang.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index b569c9edaa..ab5ed46b9f 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -9050,6 +9050,30 @@ (define-public go-github-com-bmatcuk-doublestar
matching and globbing with support for \"doublestar\" patterns.")
(license license:expat)))
+(define-public go-github-com-bmizerany-perks-quantile
+ (package
+ (name "go-github-com-bmizerany-perks-quantile")
+ (version "0.0.0-20230307044200-03f9df79da1e")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bmizerany/perks")
+ (commit (go-version->git-ref version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1f2a99v3618bz2mf61iwhdjm3xi1gam6v4apqgcrz71gj7ba9943"))))
+ (build-system go-build-system)
+ (arguments
+ (list #:unpack-path "github.com/bmizerany/perks"
+ #:import-path "github.com/bmizerany/perks/quantile"))
+ (home-page "https://github.com/bmizerany/perks")
+ (synopsis "Library for computing quantiles")
+ (description
+ "Perks contains the Go package @code{quantile} that computes approximate
+quantiles over an unbounded data stream within low memory and CPU bounds.")
+ (license license:bsd-2)))
+
(define-public go-github-com-dlclark-regexp2
(package
(name "go-github-com-dlclark-regexp2")
--
2.40.1
Information forwarded
to
cox.katherine.e+guix <at> gmail.com, guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Fri, 01 Sep 2023 19:59:03 GMT)
Full text and
rfc822 format available.
Message #77 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-mreiferson-go-svc): New variable.
---
gnu/packages/golang.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index ab5ed46b9f..897d84f444 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -6273,6 +6273,34 @@ (define-public go-github-com-mr-tron-base58
encoding and 8 times faster decoding.")
(license license:expat))))
+(define-public go-github-com-mreiferson-go-svc
+ ;; NSQ specific fork of github.com/judwhite/go-svc, as Guix go build system
+ ;; does not support go.mod with `replace' statement.
+ (let ((commit "7a96e00010f68d9436e3de53a70c53f209a0c244")
+ (revision "0"))
+ (package
+ (name "go-github-com-mreiferson-go-svc")
+ (version (git-version "1.2.1" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mreiferson/go-svc")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1acgb0n3svhnraqj1fz5qc5n3b4vc5ffwyk9vfi6gcfkibm0hgmd"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/judwhite/go-svc"))
+ (propagated-inputs (list go-golang-org-x-sys))
+ (home-page "https://github.com/mreiferson/go-svc")
+ (synopsis "Go Windows Service wrapper that plays nice with Linux")
+ (description
+ "Go Windows Service wrapper that plays nice with Linux. Windows tests
+@@url{https://github.com/judwhite/go-svc/raw/master/svc/svc_windows_test.go,here}.")
+ (license license:expat))))
+
(define-public go-github-com-gxed-hashland-keccakpg
(let ((commit "d9f6b97f8db22dd1e090fd0bbbe98f09cc7dd0a8")
(revision "0"))
--
2.40.1
Information forwarded
to
cox.katherine.e+guix <at> gmail.com, guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Fri, 01 Sep 2023 19:59:04 GMT)
Full text and
rfc822 format available.
Message #80 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-julienschmidt-httprouter): New variable.
---
gnu/packages/golang.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 897d84f444..a7c005d43e 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -9961,6 +9961,29 @@ (define-public go-github-com-juju-ansiterm
for color and styles.")
(license license:lgpl3)))
+(define-public go-github-com-julienschmidt-httprouter
+ (package
+ (name "go-github-com-julienschmidt-httprouter")
+ (version "1.3.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/julienschmidt/httprouter")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1a6sy0ysqknsjssjh7qg1dqn21xmj9a36c57nrk7srfmab4ffmk1"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/julienschmidt/httprouter"))
+ (home-page "https://github.com/julienschmidt/httprouter")
+ (synopsis "High performance HTTP request router")
+ (description
+ "Package @code{httprouter} is a trie based high performance HTTP request
+router.")
+ (license license:bsd-3)))
+
(define-public go-github-com-kevinburke-ssh-config
(package
(name "go-github-com-kevinburke-ssh-config")
--
2.40.1
Information forwarded
to
cox.katherine.e+guix <at> gmail.com, guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Fri, 01 Sep 2023 19:59:04 GMT)
Full text and
rfc822 format available.
Message #83 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-mreiferson-go-options): New variable.
---
gnu/packages/golang.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index a7c005d43e..62505ff732 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -6273,6 +6273,29 @@ (define-public go-github-com-mr-tron-base58
encoding and 8 times faster decoding.")
(license license:expat))))
+(define-public go-github-com-mreiferson-go-options
+ (package
+ (name "go-github-com-mreiferson-go-options")
+ (version "1.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mreiferson/go-options")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1pxs9ybrh196qy14ijn4zn51h2z28lj31y6vxrz2xxhgvpmfmxyl"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/mreiferson/go-options"))
+ (home-page "https://github.com/mreiferson/go-options")
+ (synopsis "Go package to structure and resolve options")
+ (description
+ "The @code{options} Go package resolves configuration values set via
+command line flags, config files, and default struct values")
+ (license license:expat)))
+
(define-public go-github-com-mreiferson-go-svc
;; NSQ specific fork of github.com/judwhite/go-svc, as Guix go build system
;; does not support go.mod with `replace' statement.
--
2.40.1
Information forwarded
to
cox.katherine.e+guix <at> gmail.com, guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Fri, 01 Sep 2023 19:59:04 GMT)
Full text and
rfc822 format available.
Message #86 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-nsqio-go-diskqueue): New variable.
---
gnu/packages/golang.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 62505ff732..756700ef97 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3183,6 +3183,29 @@ (define-public go-github-com-nathan-osman-go-sunrise
sunset times from geographical coordinates and a date.")
(license license:expat))))
+(define-public go-github-com-nsqio-go-diskqueue
+ (package
+ (name "go-github-com-nsqio-go-diskqueue")
+ (version "1.1.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nsqio/go-diskqueue")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1hp66hkmfn0nyf3c53a40f94ah11a9rj01r5zp3jph9p54j8rany"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/nsqio/go-diskqueue"))
+ (home-page "https://github.com/nsqio/go-diskqueue")
+ (synopsis "Go package providing a filesystem-backed FIFO queue")
+ (description
+ "The @code{diskqueue} Go package provides a filesystem-backed FIFO
+queue.")
+ (license license:expat)))
+
(define-public go-github-com-hebcal-gematriya
(let ((commit "fe3043f73e415eb82727701d10f2fb40f87675e9")
(revision "0"))
--
2.40.1
Information forwarded
to
cox.katherine.e+guix <at> gmail.com, guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Fri, 01 Sep 2023 19:59:05 GMT)
Full text and
rfc822 format available.
Message #89 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/golang.scm (go-github-com-nsqio-go-nsq): New variable.
---
gnu/packages/golang.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 756700ef97..1f70741f5b 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3206,6 +3206,32 @@ (define-public go-github-com-nsqio-go-diskqueue
queue.")
(license license:expat)))
+(define-public go-github-com-nsqio-go-nsq
+ (package
+ (name "go-github-com-nsqio-go-nsq")
+ (version "1.1.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nsqio/go-nsq")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1h9z3z225sdgg7fl3l7x11xn5ch6lm5flgmcj046cdp453qj2qhf"))))
+ (build-system go-build-system)
+ (arguments
+ (list #:tests? #f ;It requires local network setup.
+ #:import-path "github.com/nsqio/go-nsq"))
+ (propagated-inputs (list go-github-com-golang-snappy))
+ (home-page "https://github.com/nsqio/go-nsq")
+ (synopsis "Golang package of high-level Consumer and Produce for NSQ")
+ (description
+ "The @code{nsq} Go module provides a high-level consumer and producer
+types as well as low-level functions to communicate over the NSQ protocol
+@url{https://nsq.io/}.")
+ (license license:expat)))
+
(define-public go-github-com-hebcal-gematriya
(let ((commit "fe3043f73e415eb82727701d10f2fb40f87675e9")
(revision "0"))
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Fri, 01 Sep 2023 19:59:05 GMT)
Full text and
rfc822 format available.
Message #92 received at 65118 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/high-availability.scm (nsq): New variable.
---
gnu/packages/high-availability.scm | 86 ++++++++++++++++++++++++++++++
1 file changed, 86 insertions(+)
diff --git a/gnu/packages/high-availability.scm b/gnu/packages/high-availability.scm
index 11ff8014cf..553095cb75 100644
--- a/gnu/packages/high-availability.scm
+++ b/gnu/packages/high-availability.scm
@@ -34,6 +34,7 @@ (define-module (gnu packages high-availability)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages golang)
#:use-module (gnu packages hardware)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
@@ -43,12 +44,14 @@ (define-module (gnu packages high-availability)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages rsync)
+ #:use-module (gnu packages syncthing)
#:use-module (gnu packages tls)
#:use-module (gnu packages valgrind)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xml)
#:use-module (gnu packages)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system go)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
@@ -190,6 +193,89 @@ (define-public kronosnet
in general better performances compared to the old network protocol.")
(license (list license:gpl2+ license:lgpl2.1+))))
+(define-public nsq
+ (package
+ (name "nsq")
+ (version "1.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nsqio/nsq")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ajqjwfn06zsmz21z9mkl4cblarypaf20228pqcd1293zl6y3ry8"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/nsqio/nsq"
+ #:install-source? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'build
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "make"))))
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (setenv "HOME" "/tmp")
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke #$@(if (target-x86?)
+ (list "go" "test" "-v" "-race" "./...")
+ (list "go" "test" "-v" "./...")))))))
+ (replace 'install
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "make" (string-append "PREFIX=" #$output)
+ "install")))))))
+ (native-inputs
+ (list go-github-com-bitly-go-hostpool
+ go-github-com-bitly-timer-metrics
+ go-github-com-blang-semver
+ go-github-com-bmizerany-perks-quantile
+ go-github-com-burntsushi-toml
+ go-github-com-davecgh-go-spew
+ go-github-com-golang-snappy ; Move to (gnu packages golang)
+ go-github-com-julienschmidt-httprouter
+ go-github-com-mreiferson-go-options
+ go-github-com-mreiferson-go-svc
+ go-github-com-nsqio-go-diskqueue
+ go-github-com-nsqio-go-nsq
+ python-wrapper))
+ (home-page "https://nsq.io")
+ (synopsis "Realtime distributed messaging platform")
+ (description
+ "NSQ is a realtime distributed messaging platform designed to operate at
+scale, handling billions of messages per day.
+
+Key features:
+@itemize
+@item support distributed topologies without @acronym{SPOF, Single Point of
+Failure}
+@item scale horizontally (no brokers, seamlessly add more nodes to the
+cluster)
+@item low-latency push based message delivery (performance)
+@item combine load-balanced and multicast style message routing
+@item excel at both streaming (high-throughput) and job oriented
+(low-throughput) workloads
+@item primarily in-memory (beyond a high-water mark messages are transparently
+kept on disk)
+@item runtime discovery service for consumers to find producers (nsqlookupd)
+@item transport layer security (TLS)
+@item data format agnostic
+@item few dependencies (easy to deploy) and a sane, bounded, default
+configuration
+@item simple TCP protocol supporting client libraries in any language
+@item HTTP interface for stats, admin actions, and producers (no client
+library needed to publish)
+@item integrate with @acronym{StatsD, Stats aggregation Daemon} for realtime
+instrumentation
+@item robust cluster administration interface (nsqadmin)
+@end itemize")
+ (license license:expat)))
+
(define-public corosync
(package
(name "corosync")
--
2.40.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#65118
; Package
guix-patches
.
(Sun, 03 Sep 2023 14:09:01 GMT)
Full text and
rfc822 format available.
Message #95 received at 65118 <at> debbugs.gnu.org (full text, mbox):
Hi Maxim,
I think I've covered all review points in v2, let me know if you spot
anything else to adjust.
Thanks,
Oleg
--
… наш разум - превосходная объяснительная машина которая способна
найти смысл почти в чем угодно, истолковать любой феномен, но
совершенно не в состоянии принять мысль о непредсказуемости.
Reply sent
to
Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
:
You have taken responsibility.
(Tue, 05 Sep 2023 03:46:03 GMT)
Full text and
rfc822 format available.
Notification sent
to
Sharlatan Hellseher <sharlatanus <at> gmail.com>
:
bug acknowledged by developer.
(Tue, 05 Sep 2023 03:46:03 GMT)
Full text and
rfc822 format available.
Message #100 received at 65118-done <at> debbugs.gnu.org (full text, mbox):
Hi,
Sharlatan Hellseher <sharlatanus <at> gmail.com> writes:
> Hi Maxim,
>
> I think I've covered all review points in v2, let me know if you spot
> anything else to adjust.
I did very small changes to 2 packages, and installed the series!
--
Thanks,
Maxim
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Tue, 03 Oct 2023 11:24:06 GMT)
Full text and
rfc822 format available.
This bug report was last modified 1 year and 220 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.