From 13b8bc09a31ed2fb9ed5c82ce0c984bc77fcea7f Mon Sep 17 00:00:00 2001 From: Arthur Rodrigues Date: Tue, 27 Jan 2026 22:33:26 -0300 Subject: gnu: Add go-github-com-cloudflare-redoctober. * gnu/packages/golang-crypto.scm (go-github-com-cloudflare-redoctober): New variable. Change-Id: Ibe13fbc7fc9776a3530d38534a6566e3576e7fe0 Modified-by: Sharlatan Hellseher Signed-off-by: Sharlatan Hellseher --- gnu/packages/golang-crypto.scm | 54 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/golang-crypto.scm b/gnu/packages/golang-crypto.scm index 844e8d37a9..d36186c3e5 100644 --- a/gnu/packages/golang-crypto.scm +++ b/gnu/packages/golang-crypto.scm @@ -64,6 +64,7 @@ #:use-module (gnu packages golang-xyz) #:use-module (gnu packages password-utils) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages prometheus) #:use-module (gnu packages security-token) #:use-module (gnu packages specifications) #:use-module (gnu packages tls)) @@ -599,6 +600,59 @@ cryptographic algorithms targeting Post-Quantum (PQ) and Elliptic Curve Cryptography (ECC).") (license license:bsd-3))) +(define-public go-github-com-cloudflare-redoctober + (package + (name "go-github-com-cloudflare-redoctober") + (version "0.0.0-20241112165158-ce2ad370627b") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cloudflare/redoctober") + (commit (go-version->git-ref version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0mlmm68x0y4m6dzris6ggkhzfxpd99df4syj3zc6350q3fxi0kv9")) + (snippet + #~(begin (use-modules (guix build utils)) + (delete-file-recursively "vendor"))))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/cloudflare/redoctober" + #:test-flags #~(list "-vet=off") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-imports + (lambda* (#:key tests? import-path #:allow-other-keys) + (with-directory-excursion (string-append "src/" import-path) + (substitute* "server/server.go" + (("github.com/coreos/go-systemd/activation") + "github.com/coreos/go-systemd/v22/activation"))))) + (add-before 'check 'fix-bin-path-for-tests + (lambda* (#:key tests? import-path #:allow-other-keys) + (with-directory-excursion (string-append "src/" import-path) + (substitute* "redoctober_test.go" + (("\\./redoctober") + (string-append #$output "/bin/redoctober"))))))))) + (propagated-inputs + (list go-github-com-coreos-go-systemd-v22 + ;; Reporting to Sentry is not enabled by default in + ;; . + go-github-com-getsentry-sentry-go + go-github-com-prometheus-client-golang + go-golang-org-x-crypto)) + (home-page "https://github.com/cloudflare/redoctober") + (synopsis "Cloudflare Red October key management support for Golang") + (description + "This package provides an implementation of the Red October keyserver +protocol for Golang. It uses the +@url{https://en.wikipedia.org/wiki/Two-person_rule, Two-Person Rule} to +protect sensitive data, which means it supports generating, distributing, and +recovering keys among multiple parties with configurable quorum requirements. +The package include Go source library and @code{redoctober} command.") + (license license:bsd-2))) + (define-public go-github-com-cloudwego-base64x (package (name "go-github-com-cloudwego-base64x") -- cgit v1.3