diff options
-rw-r--r-- | gnu/packages/ipfs.scm | 51 |
1 files changed, 50 insertions, 1 deletions
diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm index 7fb50452b6..5d426dc326 100644 --- a/gnu/packages/ipfs.scm +++ b/gnu/packages/ipfs.scm @@ -37,7 +37,8 @@ #:use-module (gnu packages golang-web) #:use-module (gnu packages golang-xyz) #:use-module (gnu packages python) - #:use-module (gnu packages shells)) + #:use-module (gnu packages shells) + #:use-module (gnu packages specifications)) (define-public go-github-com-ipfs-go-block-format (package @@ -298,6 +299,54 @@ throughout its lifetime.") order to be a part of the @acronym{IPLD, InterPlanetary Linked Data} merkle-forest.") (license license:expat))) +(define-public go-github-com-ipld-go-ipld-prime + (package + (name "go-github-com-ipld-go-ipld-prime") + (version "0.21.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ipld/go-ipld-prime") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1ycb08h0hvq3mw3sbjkjzp5sfcxmss155jxiv5gjg7myxvzk91ja")))) + (build-system go-build-system) + (arguments + (list + #:go go-1.21 + #:unpack-path "github.com/ipld/go-ipld-prime/" + #:import-path "github.com/ipld/go-ipld-prime/" + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'copy-ipld-specfs + (lambda* (#:key import-path #:allow-other-keys) + (copy-recursively + (string-append #$(this-package-native-input + "specification-ipld") + "/share/ipld/") + (string-append "src/" import-path "/ipld"))))))) + (native-inputs + (list go-github-com-frankban-quicktest + go-github-com-warpfork-go-testmark + specification-ipld)) + (propagated-inputs + (list go-github-com-google-go-cmp-cmp + go-github-com-ipfs-go-block-format + go-github-com-ipfs-go-cid + go-github-com-multiformats-go-multicodec + go-github-com-multiformats-go-multihash + go-github-com-polydawn-refmt + go-gopkg-in-yaml-v2)) + (home-page "https://github.com/ipld/go-ipld-prime") + (synopsis "Golang interfaces for the IPLD Data Model") + (description + "@code{go-ipld-prime} is an implementation of the IPLD spec interfaces, a +batteries-included codec implementations of IPLD for CBOR and JSON, and tooling for +basic operations on IPLD objects (traversals, etc).") + (license license:expat))) + (define-public go-github-com-ipfs-go-ipfs-api (let ((commit "dafc2a13a4389ac1a6c2786e34ab70a4f26d3a3f") |