unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#70234] [PATCH v2 0/4] gnu: Add go-github-com-multiformats-go-multibase.
@ 2024-04-06  8:30 Artyom V. Poptsov
  2024-04-06  8:40 ` [bug#70234] [PATCH 1/4] gnu: Add go-github-com-multiformats-go-base32 Artyom V. Poptsov
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Artyom V. Poptsov @ 2024-04-06  8:30 UTC (permalink / raw)
  To: 70234; +Cc: Artyom V. Poptsov

This patch series adds "go-multibase" package along with its dependencies.
The package is required for the newer Kubo (IPFS) versions.

The patch series is updated based on recommendations from Sharlatan Hellseher,
namely "multibase" specification is placed into a new separate module named
"specifications.scm".

Artyom V. Poptsov (4):
  gnu: Add go-github-com-multiformats-go-base32.
  gnu: Add go-github-com-multiformats-go-base36.
  gnu: Add specification-multibase.
  gnu: Add go-github-com-multiformats-go-multibase.

 gnu/local.mk                    |  3 +-
 gnu/packages/golang-xyz.scm     | 86 ++++++++++++++++++++++++++++++++-
 gnu/packages/specifications.scm | 53 ++++++++++++++++++++
 3 files changed, 140 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/specifications.scm


base-commit: bfc614397b5f146056bda4b5a8e3a67bd1ca7b23
-- 
2.41.0





^ permalink raw reply	[flat|nested] 6+ messages in thread

* [bug#70234] [PATCH 1/4] gnu: Add go-github-com-multiformats-go-base32.
  2024-04-06  8:30 [bug#70234] [PATCH v2 0/4] gnu: Add go-github-com-multiformats-go-multibase Artyom V. Poptsov
@ 2024-04-06  8:40 ` Artyom V. Poptsov
  2024-04-06  8:40 ` [bug#70234] [PATCH 2/4] gnu: Add go-github-com-multiformats-go-base36 Artyom V. Poptsov
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Artyom V. Poptsov @ 2024-04-06  8:40 UTC (permalink / raw)
  To: 70234; +Cc: Artyom V. Poptsov

* gnu/packages/golang-xyz.scm (go-github-com-multiformats-go-base32): New
  variable.

Change-Id: If6c54a3c2d0a62e61e524da85c76ad6bf7f7bcbe
---
 gnu/packages/golang-xyz.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm
index d357584469..786c1f276f 100644
--- a/gnu/packages/golang-xyz.scm
+++ b/gnu/packages/golang-xyz.scm
@@ -44,6 +44,7 @@
 (define-module (gnu packages golang-xyz)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix build-system go)
+  #:use-module (guix build-system copy)
   #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module (guix packages)
@@ -1761,6 +1762,29 @@ (define-public go-github-com-mreiferson-go-svc
 @url{https://github.com/judwhite/go-svc/raw/master/svc/svc_windows_test.go,here}.")
       (license license:expat))))
 
+(define-public go-github-com-multiformats-go-base32
+  (package
+    (name "go-github-com-multiformats-go-base32")
+    (version "0.1.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/multiformats/go-base32")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0ala6gaa5r5mqcg6cdwfg492hpz41cjbfwyn1ljd6qvya3n0qqiv"))))
+    (build-system go-build-system)
+    (arguments
+     (list
+      #:import-path "github.com/multiformats/go-base32"))
+    (home-page "https://github.com/multiformats/go-base32")
+    (synopsis "Go @code{base32} encoding package with @code{NoPadding} option")
+    (description
+     "@code{base32} encoding package from Go with @code{NoPadding} option")
+    (license license:bsd-3)))
+
 (define-public go-github-com-multiformats-go-varint
   (package
     (name "go-github-com-multiformats-go-varint")
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#70234] [PATCH 2/4] gnu: Add go-github-com-multiformats-go-base36.
  2024-04-06  8:30 [bug#70234] [PATCH v2 0/4] gnu: Add go-github-com-multiformats-go-multibase Artyom V. Poptsov
  2024-04-06  8:40 ` [bug#70234] [PATCH 1/4] gnu: Add go-github-com-multiformats-go-base32 Artyom V. Poptsov
@ 2024-04-06  8:40 ` Artyom V. Poptsov
  2024-04-06  8:40 ` [bug#70234] [PATCH 3/4] gnu: Add specification-multibase Artyom V. Poptsov
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Artyom V. Poptsov @ 2024-04-06  8:40 UTC (permalink / raw)
  To: 70234; +Cc: Artyom V. Poptsov

* gnu/packages/golang-xyz.scm (go-github-com-multiformats-go-base36): New
  variable.

Change-Id: I27c5540fddae55ae9ce12a205d6f7f7c9a01569b
---
 gnu/packages/golang-xyz.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm
index 786c1f276f..5395935c41 100644
--- a/gnu/packages/golang-xyz.scm
+++ b/gnu/packages/golang-xyz.scm
@@ -1785,6 +1785,29 @@ (define-public go-github-com-multiformats-go-base32
      "@code{base32} encoding package from Go with @code{NoPadding} option")
     (license license:bsd-3)))
 
+(define-public go-github-com-multiformats-go-base36
+  (package
+    (name "go-github-com-multiformats-go-base36")
+    (version "0.2.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/multiformats/go-base36")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1wfhsmxkvm97pglfwgiw3ad5g9vqc9nhd61i0kyvsb9lc006g8qq"))))
+    (build-system go-build-system)
+    (arguments
+     (list
+      #:import-path "github.com/multiformats/go-base36"))
+    (home-page "https://github.com/multiformats/go-base36")
+    (synopsis "Optimized @code{base36} codec for Go")
+    (description
+     "Optimized codec for @code{[]byte} <=> @code{base36} string conversion.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public go-github-com-multiformats-go-varint
   (package
     (name "go-github-com-multiformats-go-varint")
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#70234] [PATCH 3/4] gnu: Add specification-multibase.
  2024-04-06  8:30 [bug#70234] [PATCH v2 0/4] gnu: Add go-github-com-multiformats-go-multibase Artyom V. Poptsov
  2024-04-06  8:40 ` [bug#70234] [PATCH 1/4] gnu: Add go-github-com-multiformats-go-base32 Artyom V. Poptsov
  2024-04-06  8:40 ` [bug#70234] [PATCH 2/4] gnu: Add go-github-com-multiformats-go-base36 Artyom V. Poptsov
@ 2024-04-06  8:40 ` Artyom V. Poptsov
  2024-04-06  8:40 ` [bug#70234] [PATCH 4/4] gnu: Add go-github-com-multiformats-go-multibase Artyom V. Poptsov
  2024-04-06 22:06 ` bug#70234: [PATCH v2 0/4] " Sharlatan Hellseher
  4 siblings, 0 replies; 6+ messages in thread
From: Artyom V. Poptsov @ 2024-04-06  8:40 UTC (permalink / raw)
  To: 70234; +Cc: Artyom V. Poptsov

* gnu/packages/specifications.scm: New module.
  (specification-multibase): New variable.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add "gnu/packages/specifications.scm".

Change-Id: I5994e8f8927d5365cc201da30bd49abf03d17574
---
 gnu/local.mk                    |  3 +-
 gnu/packages/specifications.scm | 53 +++++++++++++++++++++++++++++++++
 2 files changed, 55 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/specifications.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index a281a79610..37cb54a4dd 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -49,7 +49,7 @@
 # Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
 # Copyright © 2022 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
 # Copyright © 2022 Remco van 't Veer <remco@remworks.net>
-# Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
+# Copyright © 2022, 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
 # Copyright © 2022, 2023 John Kehayias <john.kehayias@protonmail.com>
 # Copyright © 2022 muradm <mail@muradm.net>
 # Copyright © 2022 Hilton Chain <hako@ultrarare.space>
@@ -609,6 +609,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/sml.scm				\
   %D%/packages/solidity.scm			\
   %D%/packages/sourcehut.scm			\
+  %D%/packages/specifications.scm		\
   %D%/packages/speech.scm			\
   %D%/packages/sphinx.scm			\
   %D%/packages/spice.scm			\
diff --git a/gnu/packages/specifications.scm b/gnu/packages/specifications.scm
new file mode 100644
index 0000000000..ce57a68bdb
--- /dev/null
+++ b/gnu/packages/specifications.scm
@@ -0,0 +1,53 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages specifications)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix gexp)
+  #:use-module (guix utils)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix packages)
+  #:use-module (guix build-system copy))
+
+(define-public specification-multibase
+  (let ((commit "4c8344e37852773de155f587dcf5897771b3fc19")
+        (revision "1"))
+    (package
+      (name "specification-multibase")
+      (version (git-version "0.0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/multiformats/multibase")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "0lz4kdysa6nx7wf1i59647w7dgm344xpvfnsac3pfk2qdky2kq8b"))))
+      (build-system copy-build-system)
+      (arguments
+       '(#:install-plan
+         '(("." "share/multibase/"))))
+      (home-page "https://github.com/multiformats/multibase")
+      (synopsis "Self identifying base encodings")
+      (description
+       "Multibase is a protocol for disambiguating the encoding of
+base-encoded (e.g., @code{base32}, @code{base36}, @code{base64}, @code{base58}, etc.)
+binary appearing in text.")
+      (license (list license:expat license:cc-by-sa3.0)))))
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#70234] [PATCH 4/4] gnu: Add go-github-com-multiformats-go-multibase.
  2024-04-06  8:30 [bug#70234] [PATCH v2 0/4] gnu: Add go-github-com-multiformats-go-multibase Artyom V. Poptsov
                   ` (2 preceding siblings ...)
  2024-04-06  8:40 ` [bug#70234] [PATCH 3/4] gnu: Add specification-multibase Artyom V. Poptsov
@ 2024-04-06  8:40 ` Artyom V. Poptsov
  2024-04-06 22:06 ` bug#70234: [PATCH v2 0/4] " Sharlatan Hellseher
  4 siblings, 0 replies; 6+ messages in thread
From: Artyom V. Poptsov @ 2024-04-06  8:40 UTC (permalink / raw)
  To: 70234; +Cc: Artyom V. Poptsov

* gnu/packages/golang-xyz.scm (go-github-com-multiformats-go-multibase): New
  variable.

Change-Id: If634f1497d628a23f2c2ebb1e8e9f6526faa3f3f
---
 gnu/packages/golang-xyz.scm | 39 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 38 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm
index 5395935c41..7c39f64640 100644
--- a/gnu/packages/golang-xyz.scm
+++ b/gnu/packages/golang-xyz.scm
@@ -56,7 +56,8 @@ (define-module (gnu packages golang-xyz)
   #:use-module (gnu packages golang-check)
   #:use-module (gnu packages golang-compression)
   #:use-module (gnu packages golang-crypto)
-  #:use-module (gnu packages linux))
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages specifications))
 
 ;;; Commentary:
 ;;;
@@ -1808,6 +1809,42 @@ (define-public go-github-com-multiformats-go-base36
      "Optimized codec for @code{[]byte} <=> @code{base36} string conversion.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public go-github-com-multiformats-go-multibase
+  (package
+    (name "go-github-com-multiformats-go-multibase")
+    (version "0.2.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/multiformats/go-multibase")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "11za5yqiq9bkxfg0lvjzgr5d0kawkf2szxj90by9vfnalihqgkrr"))))
+    (build-system go-build-system)
+    (arguments
+     (list
+      #:go go-1.21
+      #:import-path "github.com/multiformats/go-multibase"
+      #:phases #~(modify-phases %standard-phases
+                   (add-after 'unpack 'copy-multibase-specs
+                     (lambda _
+                       (copy-recursively (string-append #$(this-package-native-input
+                                                           "specification-multibase")
+                                                        "/share/multibase/")
+                        "src/github.com/multiformats/go-multibase/spec"))))))
+    (native-inputs (list specification-multibase))
+    (inputs (list go-github-com-mr-tron-base58
+                  go-github-com-multiformats-go-base32
+                  go-github-com-multiformats-go-base36))
+    (home-page "https://github.com/multiformats/go-multibase")
+    (synopsis "Implementation of multibase parser in Go")
+    (description
+     "Implementation of @url{https://github.com/multiformats/multibase,
+multibase} (self identifying base encodings) in Go.")
+    (license license:expat)))
+
 (define-public go-github-com-multiformats-go-varint
   (package
     (name "go-github-com-multiformats-go-varint")
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 6+ messages in thread

* bug#70234: [PATCH v2 0/4] gnu: Add go-github-com-multiformats-go-multibase.
  2024-04-06  8:30 [bug#70234] [PATCH v2 0/4] gnu: Add go-github-com-multiformats-go-multibase Artyom V. Poptsov
                   ` (3 preceding siblings ...)
  2024-04-06  8:40 ` [bug#70234] [PATCH 4/4] gnu: Add go-github-com-multiformats-go-multibase Artyom V. Poptsov
@ 2024-04-06 22:06 ` Sharlatan Hellseher
  4 siblings, 0 replies; 6+ messages in thread
From: Sharlatan Hellseher @ 2024-04-06 22:06 UTC (permalink / raw)
  To: 70234-done

[-- Attachment #1: Type: text/plain, Size: 79 bytes --]


Pushed as 93b19868e6..b315f4d575 to master with minor modifications.

--
Oleg

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-04-06 22:08 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-06  8:30 [bug#70234] [PATCH v2 0/4] gnu: Add go-github-com-multiformats-go-multibase Artyom V. Poptsov
2024-04-06  8:40 ` [bug#70234] [PATCH 1/4] gnu: Add go-github-com-multiformats-go-base32 Artyom V. Poptsov
2024-04-06  8:40 ` [bug#70234] [PATCH 2/4] gnu: Add go-github-com-multiformats-go-base36 Artyom V. Poptsov
2024-04-06  8:40 ` [bug#70234] [PATCH 3/4] gnu: Add specification-multibase Artyom V. Poptsov
2024-04-06  8:40 ` [bug#70234] [PATCH 4/4] gnu: Add go-github-com-multiformats-go-multibase Artyom V. Poptsov
2024-04-06 22:06 ` bug#70234: [PATCH v2 0/4] " Sharlatan Hellseher

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).