diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 4428a55cd..e0711191d 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -3,6 +3,16 @@ version: 2 project_name: sonr builds: + - id: hway + goos: [linux, darwin] + goarch: [amd64, arm64] + main: ./cmd/hway + binary: hway + builder: go + gobinary: go + command: build + ldflags: + - -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}} - id: sonr goos: [linux, darwin] goarch: [amd64, arm64] @@ -15,6 +25,13 @@ builds: - -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}} archives: + - id: hway + builds: [hway] + name_template: '{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}{{ with .Arm }}v{{ . }}{{ end }}{{ with .Mips }}_{{ . }}{{ end }}{{ if not (eq .Amd64 "v1") }}{{ .Amd64 }}{{ end }}' + format: tar.gz + files: + - src: README* + - src: CHANGELOG* - id: sonr builds: [sonr] name_template: '{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}{{ with .Arm }}v{{ . }}{{ end }}{{ with .Mips }}_{{ . }}{{ end }}{{ if not (eq .Amd64 "v1") }}{{ .Amd64 }}{{ end }}' @@ -23,6 +40,40 @@ archives: - src: README* - src: CHANGELOG* +brews: + - name: hway + ids: [hway] + commit_author: + name: goreleaserbot + email: bot@goreleaser.com + directory: Formula + caveats: "Run a local hway node and access it with the hway proxy" + homepage: "https://onsonr.dev" + description: "Sonr is a decentralized, permissionless, and censorship-resistant identity network." + dependencies: + - name: ipfs + repository: + owner: onsonr + name: homebrew-tap + branch: master + token: "{{ .Env.GITHUB_PERSONAL_AUTH_TOKEN }}" + - name: sonr + ids: [sonr] + commit_author: + name: goreleaserbot + email: bot@goreleaser.com + directory: Formula + caveats: "Run a local sonr node and access it with the hway proxy" + homepage: "https://onsonr.dev" + description: "Sonr is a decentralized, permissionless, and censorship-resistant identity network." + dependencies: + - name: ipfs + repository: + owner: onsonr + name: homebrew-tap + branch: master + token: "{{ .Env.GITHUB_PERSONAL_AUTH_TOKEN }}" + release: github: owner: onsonr @@ -36,24 +87,6 @@ release: - glob: ./README* - glob: ./LICENSE* -brews: - - name: sonr - ids: [sonr] - commit_author: - name: goreleaserbot - email: bot@goreleaser.com - directory: Formula - caveats: "Run a local sonr node and access it with the hway proxy" - homepage: "https://sonr.io/" - description: "Sonr is a decentralized, permissionless, and censorship-resistant identity network." - dependencies: - - name: ipfs - repository: - owner: onsonr - name: homebrew-tap - branch: master - token: "{{ .Env.GITHUB_PERSONAL_AUTH_TOKEN }}" - announce: telegram: enabled: true diff --git a/crypto/mpc/keyset.go b/crypto/mpc/keyset.go index 1a2ddc6a2..074fe0a18 100644 --- a/crypto/mpc/keyset.go +++ b/crypto/mpc/keyset.go @@ -1,14 +1,9 @@ package mpc import ( - genericecdsa "crypto/ecdsa" "fmt" - "math/big" "github.com/cosmos/cosmos-sdk/types/bech32" - "github.com/onsonr/sonr/crypto/core/curves" - "github.com/onsonr/sonr/crypto/core/protocol" - "golang.org/x/crypto/sha3" ) type ( @@ -64,82 +59,3 @@ func ComputeSonrAddr(pk []byte) (string, error) { } return sonrAddr, nil } - -// For DKG bob starts first. For refresh and sign, Alice starts first. -func RunProtocol(firstParty protocol.Iterator, secondParty protocol.Iterator) (error, error) { - var ( - message *protocol.Message - aErr error - bErr error - ) - - for aErr != protocol.ErrProtocolFinished || bErr != protocol.ErrProtocolFinished { - // Crank each protocol forward one iteration - message, bErr = firstParty.Next(message) - if bErr != nil && bErr != protocol.ErrProtocolFinished { - return nil, bErr - } - - message, aErr = secondParty.Next(message) - if aErr != nil && aErr != protocol.ErrProtocolFinished { - return aErr, nil - } - } - return aErr, bErr -} - -// ComputeEcPoint builds an elliptic curve point from a compressed byte slice -func ComputeEcPoint(pubKey []byte) (*curves.EcPoint, error) { - crv := curves.K256() - x := new(big.Int).SetBytes(pubKey[1:33]) - y := new(big.Int).SetBytes(pubKey[33:]) - ecCurve, err := crv.ToEllipticCurve() - if err != nil { - return nil, fmt.Errorf("error converting curve: %v", err) - } - return &curves.EcPoint{X: x, Y: y, Curve: ecCurve}, nil -} - -func ComputeEcdsaPublicKey(pubKey []byte) (*genericecdsa.PublicKey, error) { - pk, err := ComputeEcPoint(pubKey) - if err != nil { - return nil, err - } - return &genericecdsa.PublicKey{ - Curve: pk.Curve, - X: pk.X, - Y: pk.Y, - }, nil -} - -// VerifySignature verifies the signature of a message -func VerifySignature(pk []byte, msg []byte, sig []byte) (bool, error) { - pp, err := ComputeEcPoint(pk) - if err != nil { - return false, err - } - sigEd, err := DeserializeSignature(sig) - if err != nil { - return false, err - } - hash := sha3.New256() - _, err = hash.Write(msg) - if err != nil { - return false, err - } - digest := hash.Sum(nil) - return curves.VerifyEcdsa(pp, digest[:], sigEd), nil -} - -func checkIteratedErrors(aErr, bErr error) error { - if aErr == protocol.ErrProtocolFinished && bErr == protocol.ErrProtocolFinished { - return nil - } - if aErr != protocol.ErrProtocolFinished { - return aErr - } - if bErr != protocol.ErrProtocolFinished { - return bErr - } - return nil -} diff --git a/crypto/mpc/protocol.go b/crypto/mpc/protocol.go index abf814f9e..14ddddc93 100644 --- a/crypto/mpc/protocol.go +++ b/crypto/mpc/protocol.go @@ -2,12 +2,15 @@ package mpc import ( "crypto/ecdsa" + genericecdsa "crypto/ecdsa" "errors" + "fmt" "math/big" "github.com/onsonr/sonr/crypto/core/curves" "github.com/onsonr/sonr/crypto/core/protocol" "github.com/onsonr/sonr/crypto/tecdsa/dklsv1" + "golang.org/x/crypto/sha3" ) // NewKeyshareSource generates a new MPC keyshare @@ -113,3 +116,82 @@ func DeserializeSignature(sigBytes []byte) (Signature, error) { func VerifyMPCSignature(sig Signature, msg []byte, publicKey *ecdsa.PublicKey) bool { return ecdsa.Verify(publicKey, msg, sig.R, sig.S) } + +// For DKG bob starts first. For refresh and sign, Alice starts first. +func RunProtocol(firstParty protocol.Iterator, secondParty protocol.Iterator) (error, error) { + var ( + message *protocol.Message + aErr error + bErr error + ) + + for aErr != protocol.ErrProtocolFinished || bErr != protocol.ErrProtocolFinished { + // Crank each protocol forward one iteration + message, bErr = firstParty.Next(message) + if bErr != nil && bErr != protocol.ErrProtocolFinished { + return nil, bErr + } + + message, aErr = secondParty.Next(message) + if aErr != nil && aErr != protocol.ErrProtocolFinished { + return aErr, nil + } + } + return aErr, bErr +} + +// ComputeEcPoint builds an elliptic curve point from a compressed byte slice +func ComputeEcPoint(pubKey []byte) (*curves.EcPoint, error) { + crv := curves.K256() + x := new(big.Int).SetBytes(pubKey[1:33]) + y := new(big.Int).SetBytes(pubKey[33:]) + ecCurve, err := crv.ToEllipticCurve() + if err != nil { + return nil, fmt.Errorf("error converting curve: %v", err) + } + return &curves.EcPoint{X: x, Y: y, Curve: ecCurve}, nil +} + +func ComputeEcdsaPublicKey(pubKey []byte) (*genericecdsa.PublicKey, error) { + pk, err := ComputeEcPoint(pubKey) + if err != nil { + return nil, err + } + return &genericecdsa.PublicKey{ + Curve: pk.Curve, + X: pk.X, + Y: pk.Y, + }, nil +} + +// VerifySignature verifies the signature of a message +func VerifySignature(pk []byte, msg []byte, sig []byte) (bool, error) { + pp, err := ComputeEcPoint(pk) + if err != nil { + return false, err + } + sigEd, err := DeserializeSignature(sig) + if err != nil { + return false, err + } + hash := sha3.New256() + _, err = hash.Write(msg) + if err != nil { + return false, err + } + digest := hash.Sum(nil) + return curves.VerifyEcdsa(pp, digest[:], sigEd), nil +} + +func checkIteratedErrors(aErr, bErr error) error { + if aErr == protocol.ErrProtocolFinished && bErr == protocol.ErrProtocolFinished { + return nil + } + if aErr != protocol.ErrProtocolFinished { + return aErr + } + if bErr != protocol.ErrProtocolFinished { + return bErr + } + return nil +} diff --git a/deploy/Taskfile.yml b/deploy/Taskfile.yml deleted file mode 100644 index 5752007c0..000000000 --- a/deploy/Taskfile.yml +++ /dev/null @@ -1,55 +0,0 @@ -# https://taskfile.dev - -version: "3" - -vars: - GREETING: Hello, World! - -tasks: - init:sonrd: - cmds: - - sonrd init {{.NODE_NAME}} --chain-id {{.CHAIN_ID}} --home {{.HOME}} - - init:ipfs: - cmds: - - ipfs init - - init:hway: - cmds: - - sonrd hway init {{.NODE_NAME}} --home {{.HOME}} - - start:sonrd: - cmds: - - sonrd start --home {{.HOME}} - - start:ipfs: - cmds: - - ipfs daemon - - start:hway: - cmds: - - sonrd hway start --home {{.HOME}} - - stop:sonrd: - cmds: - - sonrd stop - - stop:ipfs: - cmds: - - ipfs daemon stop - - stop:hway: - cmds: - - sonrd hway stop - - clean:sonrd: - cmds: - - rm -rf {{.HOME}} - - clean:ipfs: - cmds: - - rm -rf ~/.ipfs - - clean:hway: - cmds: - - rm -rf {{.HOME}}/data/hway diff --git a/deploy/devnet/config/ipfs.config.pkl b/deploy/config/ipfs.config.pkl similarity index 100% rename from deploy/devnet/config/ipfs.config.pkl rename to deploy/config/ipfs.config.pkl diff --git a/deploy/devnet/config/sonr.app.pkl b/deploy/config/sonr.app.pkl similarity index 100% rename from deploy/devnet/config/sonr.app.pkl rename to deploy/config/sonr.app.pkl diff --git a/deploy/devnet/config/sonr.config.pkl b/deploy/config/sonr.config.pkl similarity index 100% rename from deploy/devnet/config/sonr.config.pkl rename to deploy/config/sonr.config.pkl diff --git a/deploy/devnet/devbox.lock b/deploy/devnet/devbox.lock deleted file mode 100644 index 43cbb77f7..000000000 --- a/deploy/devnet/devbox.lock +++ /dev/null @@ -1,251 +0,0 @@ -{ - "lockfile_version": "1", - "packages": { - "air@latest": { - "last_modified": "2024-11-16T04:25:12Z", - "resolved": "github:NixOS/nixpkgs/34a626458d686f1b58139620a8b2793e9e123bba#air", - "source": "devbox-search", - "version": "1.61.1", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/0s90vbnmsyyixs0991md21pbrw8babfb-air-1.61.1", - "default": true - } - ], - "store_path": "/nix/store/0s90vbnmsyyixs0991md21pbrw8babfb-air-1.61.1" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/8mpw2asxs297v26fxqy2y1bq438f344l-air-1.61.1", - "default": true - } - ], - "store_path": "/nix/store/8mpw2asxs297v26fxqy2y1bq438f344l-air-1.61.1" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/abminkf7ldqf9vm14xx5wvsrdx3wrvy6-air-1.61.1", - "default": true - } - ], - "store_path": "/nix/store/abminkf7ldqf9vm14xx5wvsrdx3wrvy6-air-1.61.1" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ajx8v5rbbvglncb97yybg3x9kn95gfrm-air-1.61.1", - "default": true - } - ], - "store_path": "/nix/store/ajx8v5rbbvglncb97yybg3x9kn95gfrm-air-1.61.1" - } - } - }, - "bun@latest": { - "last_modified": "2024-11-18T00:41:09Z", - "resolved": "github:NixOS/nixpkgs/5083ec887760adfe12af64830a66807423a859a7#bun", - "source": "devbox-search", - "version": "1.1.34", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/xnj00gq1mfffvgyisghk4m9f38gc5c5c-bun-1.1.34", - "default": true - } - ], - "store_path": "/nix/store/xnj00gq1mfffvgyisghk4m9f38gc5c5c-bun-1.1.34" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/kccpzv8fb7swmmxbhv805qzq242rhy33-bun-1.1.34", - "default": true - } - ], - "store_path": "/nix/store/kccpzv8fb7swmmxbhv805qzq242rhy33-bun-1.1.34" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/8h5k3l4fpgs3al2wvna7x9ybyyc8k36d-bun-1.1.34", - "default": true - } - ], - "store_path": "/nix/store/8h5k3l4fpgs3al2wvna7x9ybyyc8k36d-bun-1.1.34" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/x089g4srqw71w5jnc87vxbh7m12498i0-bun-1.1.34", - "default": true - } - ], - "store_path": "/nix/store/x089g4srqw71w5jnc87vxbh7m12498i0-bun-1.1.34" - } - } - }, - "ipfs@latest": { - "last_modified": "2023-02-24T09:01:09Z", - "resolved": "github:NixOS/nixpkgs/7d0ed7f2e5aea07ab22ccb338d27fbe347ed2f11#ipfs", - "source": "devbox-search", - "version": "0.17.0" - }, - "skate@latest": { - "last_modified": "2024-11-16T04:25:12Z", - "resolved": "github:NixOS/nixpkgs/34a626458d686f1b58139620a8b2793e9e123bba#skate", - "source": "devbox-search", - "version": "1.0.0", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/q6yhpyfbqiabyic6ymx5rp2db62bnbvr-skate-1.0.0", - "default": true - } - ], - "store_path": "/nix/store/q6yhpyfbqiabyic6ymx5rp2db62bnbvr-skate-1.0.0" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/q55dbgvc4xwvr2g02dks6j2j699qni2k-skate-1.0.0", - "default": true - } - ], - "store_path": "/nix/store/q55dbgvc4xwvr2g02dks6j2j699qni2k-skate-1.0.0" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/s1hy525y8ciya3nrns9kryy3jlcw8igv-skate-1.0.0", - "default": true - } - ], - "store_path": "/nix/store/s1hy525y8ciya3nrns9kryy3jlcw8igv-skate-1.0.0" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/8s03iazymz77nv6pjxpz7wair0m646wv-skate-1.0.0", - "default": true - } - ], - "store_path": "/nix/store/8s03iazymz77nv6pjxpz7wair0m646wv-skate-1.0.0" - } - } - }, - "templ@latest": { - "last_modified": "2024-11-16T04:25:12Z", - "resolved": "github:NixOS/nixpkgs/34a626458d686f1b58139620a8b2793e9e123bba#templ", - "source": "devbox-search", - "version": "0.2.793", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ivargvf76g71k5gk3iz4al52rsy28w38-templ-0.2.793", - "default": true - } - ], - "store_path": "/nix/store/ivargvf76g71k5gk3iz4al52rsy28w38-templ-0.2.793" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/03654iddn006yx5j1lqq496hax60v8p5-templ-0.2.793", - "default": true - } - ], - "store_path": "/nix/store/03654iddn006yx5j1lqq496hax60v8p5-templ-0.2.793" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/blvd5wbd1ix6m745s4zx3b84kwzprshq-templ-0.2.793", - "default": true - } - ], - "store_path": "/nix/store/blvd5wbd1ix6m745s4zx3b84kwzprshq-templ-0.2.793" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/sn5h79d36r86i6a8rm1k52c2ij1s32kx-templ-0.2.793", - "default": true - } - ], - "store_path": "/nix/store/sn5h79d36r86i6a8rm1k52c2ij1s32kx-templ-0.2.793" - } - } - }, - "tigerbeetle@latest": { - "last_modified": "2024-11-16T04:25:12Z", - "resolved": "github:NixOS/nixpkgs/34a626458d686f1b58139620a8b2793e9e123bba#tigerbeetle", - "source": "devbox-search", - "version": "0.16.12", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/mm3jzwf24p35afr55v7kl5a0h6962i6p-tigerbeetle-0.16.12", - "default": true - } - ], - "store_path": "/nix/store/mm3jzwf24p35afr55v7kl5a0h6962i6p-tigerbeetle-0.16.12" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/4106973gg3crfxq0gwrgwn4hcx64mzyy-tigerbeetle-0.16.12", - "default": true - } - ], - "store_path": "/nix/store/4106973gg3crfxq0gwrgwn4hcx64mzyy-tigerbeetle-0.16.12" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/6lnwnr3mvdamm5lxjjqkaagw2pyqlq0a-tigerbeetle-0.16.12", - "default": true - } - ], - "store_path": "/nix/store/6lnwnr3mvdamm5lxjjqkaagw2pyqlq0a-tigerbeetle-0.16.12" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/afrj2ph61xz0lh7f3d1g1d7v2rslbvny-tigerbeetle-0.16.12", - "default": true - } - ], - "store_path": "/nix/store/afrj2ph61xz0lh7f3d1g1d7v2rslbvny-tigerbeetle-0.16.12" - } - } - } - } -} diff --git a/deploy/devnet/sink/schema.sql b/deploy/sink/schema.sql similarity index 100% rename from deploy/devnet/sink/schema.sql rename to deploy/sink/schema.sql diff --git a/deploy/testnet/config/ipfs.config.pkl b/deploy/testnet/config/ipfs.config.pkl deleted file mode 100644 index 8fe12985f..000000000 --- a/deploy/testnet/config/ipfs.config.pkl +++ /dev/null @@ -1,202 +0,0 @@ -import "https://pkl.sh/ipfs.net/0.0.1/Config.pkl" - -API { - HTTPHeaders { - `Access-Control-Allow-Origin` = new { "*" } - } -} - -Addresses { - API = "/ip4/127.0.0.1/tcp/5001" - Gateway = "/ip4/127.0.0.1/tcp/8080" - Swarm = new { - "/ip4/0.0.0.0/tcp/4001" - "/ip6/::/tcp/4001" - "/ip4/0.0.0.0/udp/4001/quic" - "/ip6/::/udp/4001/quic" - } -} - -Bootstrap { - "/dnsaddr/bootstrap.libp2p.io/p2p/QmQCU2EcMqAqQPR2i9bChDtGNJchTbq5TbXJJ16u19uLTa" - "/dnsaddr/bootstrap.libp2p.io/p2p/QmbLHAnMoJPWSCR5Zhtx6BHJX9KiKNN6tpvbUcqanj75Nb" - "/dnsaddr/bootstrap.libp2p.io/p2p/QmcZf59bWwK5XFi76CZX8cbJ4BhTzzA3gU1ZjYZcYW3dwt" - "/ip4/104.131.131.82/tcp/4001/p2p/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ" - "/ip4/104.131.131.82/udp/4001/quic/p2p/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ" - "/dnsaddr/bootstrap.libp2p.io/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN" -} - -Datastore { - BloomFilterSize = 0 - GCPeriod = "1h" - HashOnRead = false - StorageGCWatermark = 90 - StorageMax = "10GB" - Spec = new { - mounts = new { - new { - prefix = "flatfs.datastore" - child = new { - path = "blocks" - shardFunc = "/repo/flatfs/shard/v1/next-to-last/2" - type = "flatfs" - sync = true - } - mountpoint = "/blocks" - type = "measure" - } - new { - prefix = "leveldb.datastore" - child = new { - compression = "none" - path = "datastore" - type = "levelds" - } - mountpoint = "/" - type = "measure" - } - } - type = "mount" - } -} - -Discovery { - MDNS = new { - Enabled = true - } -} - -Experimental { - StrategicProviding = false - UrlstoreEnabled = false - AcceleratedDHTClient = false - GraphsyncEnabled = false - FilestoreEnabled = false - Libp2pStreamMounting = false - P2pHttpProxy = false -} - -Gateway { - HTTPHeaders = new { - `Access-Control-Allow-Headers` = new { - "X-Requested-With" - "Range" - "User-Agent" - } - `Access-Control-Allow-Methods` = new { "GET" } - `Access-Control-Allow-Origin` = new { "*" } - } - NoDNSLink = false - NoFetch = false - PublicGateways = null - RootRedirect = "" - Writable = false -} - -Identity { - PrivKey = "CAESQP0FRhYf5Nvxg0wrbN+VTK7kWdgy+3AKoxU3vNH0K9FHVpXyx6/mHKyCaPjqI11YsHUW0B2ZODGROPafyS6IeWY=" - PeerID = "12D3KooWFeMr1tHFs8WAF11rKDULJbmKg9rE5aVhYJU23oC7pqjB" -} - -Ipns { - RecordLifetime = "" - RepublishPeriod = "" - ResolveCacheSize = 128 -} - -Migration { - Keep = "" -} - -Mounts { - IPNS = "/ipns" - FuseAllowOther = false - IPFS = "/ipfs" -} - -Peering { - Peers = new { - new { - Addrs = new { "/dnsaddr/node-1.ingress.cloudflare-ipfs.com" } - ID = "QmcFf2FH3CEgTNHeMRGhN7HNHU1EXAxoEk6EFuSyXCsvRE" - } - new { - Addrs = new { "/dnsaddr/node-2.ingress.cloudflare-ipfs.com" } - ID = "QmcFmLd5ySfk2WZuJ1mfSWLDjdmHZq7rSAua4GoeSQfs1z" - } - new { - Addrs = new { "/dnsaddr/node-3.ingress.cloudflare-ipfs.com" } - ID = "QmcfFmzSDVbwexQ9Au2pt5YEXHK5xajwgaU6PpkbLWerMa" - } - new { - Addrs = new { "/dnsaddr/node-4.ingress.cloudflare-ipfs.com" } - ID = "QmcfJeB3Js1FG7T8YaZATEiaHqNKVdQfybYYkbT1knUswx" - } - new { - Addrs = new { "/dnsaddr/node-5.ingress.cloudflare-ipfs.com" } - ID = "QmcfVvzK4tMdFmpJjEKDUoqRgP4W9FnmJoziYX5GXJJ8eZ" - } - new { - Addrs = new { "/dnsaddr/node-6.ingress.cloudflare-ipfs.com" } - ID = "QmcfZD3VKrUxyP9BbyUnZDpbqDnT7cQ4WjPP8TRLXaoE7G" - } - new { - Addrs = new { "/dnsaddr/node-7.ingress.cloudflare-ipfs.com" } - ID = "QmcfZP2LuW4jxviTeG8fi28qjnZScACb8PEgHAc17ZEri3" - } - new { - Addrs = new { "/dnsaddr/node-8.ingress.cloudflare-ipfs.com" } - ID = "QmcfgsJsMtx6qJb74akCw1M24X1zFwgGo11h1cuhwQjtJP" - } - new { - Addrs = new { "/dnsaddr/node-9.ingress.cloudflare-ipfs.com" } - ID = "Qmcfr2FC7pFzJbTSDfYaSy1J8Uuy8ccGLeLyqJCKJvTHMi" - } - new { - Addrs = new { "/dnsaddr/node-10.ingress.cloudflare-ipfs.com" } - ID = "QmcfR3V5YAtHBzxVACWCzXTt26SyEkxdwhGJ6875A8BuWx" - } - new { - Addrs = new { "/dnsaddr/node-11.ingress.cloudflare-ipfs.com" } - ID = "Qmcfuo1TM9uUiJp6dTbm915Rf1aTqm3a3dnmCdDQLHgvL5" - } - new { - Addrs = new { "/dnsaddr/node-12.ingress.cloudflare-ipfs.com" } - ID = "QmcfV2sg9zaq7UUHVCGuSvT2M2rnLBAPsiE79vVyK3Cuev" - } - } -} - -Provider { - Strategy = "" -} - -Pubsub { - Router = "" - DisableSigning = false -} - -Reprovider { - Strategy = "all" - Interval = "12h" -} - -Routing { - Methods = null - Routers = null - Type = "dht" -} - -Swarm { - AddrFilters = null - ConnMgr = new {} - DisableBandwidthMetrics = false - DisableNatPortMap = false - RelayClient = new {} - ResourceMgr = new {} - Transports = new { - Multiplexers = new {} - Network = new {} - Security = new {} - } -} diff --git a/deploy/testnet/config/sonr.app.pkl b/deploy/testnet/config/sonr.app.pkl deleted file mode 100644 index b65786b54..000000000 --- a/deploy/testnet/config/sonr.app.pkl +++ /dev/null @@ -1,3 +0,0 @@ -amends "https://pkl.sh/sonr.chain/0.0.2/App.pkl" - - diff --git a/deploy/testnet/config/sonr.config.pkl b/deploy/testnet/config/sonr.config.pkl deleted file mode 100644 index ef647ff32..000000000 --- a/deploy/testnet/config/sonr.config.pkl +++ /dev/null @@ -1,3 +0,0 @@ -amends "https://pkl.sh/sonr.chain/0.0.2/Genesis.pkl" - - diff --git a/deploy/testnet/devbox.lock b/deploy/testnet/devbox.lock deleted file mode 100644 index 33d3cc1eb..000000000 --- a/deploy/testnet/devbox.lock +++ /dev/null @@ -1,404 +0,0 @@ -{ - "lockfile_version": "1", - "packages": { - "bun@latest": { - "last_modified": "2024-11-18T00:41:09Z", - "resolved": "github:NixOS/nixpkgs/5083ec887760adfe12af64830a66807423a859a7#bun", - "source": "devbox-search", - "version": "1.1.34", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/xnj00gq1mfffvgyisghk4m9f38gc5c5c-bun-1.1.34", - "default": true - } - ], - "store_path": "/nix/store/xnj00gq1mfffvgyisghk4m9f38gc5c5c-bun-1.1.34" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/kccpzv8fb7swmmxbhv805qzq242rhy33-bun-1.1.34", - "default": true - } - ], - "store_path": "/nix/store/kccpzv8fb7swmmxbhv805qzq242rhy33-bun-1.1.34" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/8h5k3l4fpgs3al2wvna7x9ybyyc8k36d-bun-1.1.34", - "default": true - } - ], - "store_path": "/nix/store/8h5k3l4fpgs3al2wvna7x9ybyyc8k36d-bun-1.1.34" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/x089g4srqw71w5jnc87vxbh7m12498i0-bun-1.1.34", - "default": true - } - ], - "store_path": "/nix/store/x089g4srqw71w5jnc87vxbh7m12498i0-bun-1.1.34" - } - } - }, - "cloudflared@latest": { - "last_modified": "2024-11-18T00:41:09Z", - "resolved": "github:NixOS/nixpkgs/5083ec887760adfe12af64830a66807423a859a7#cloudflared", - "source": "devbox-search", - "version": "2024.11.0", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/95knk04xlh78swlk9a6kg524rfykzzmz-cloudflared-2024.11.0", - "default": true - } - ], - "store_path": "/nix/store/95knk04xlh78swlk9a6kg524rfykzzmz-cloudflared-2024.11.0" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/2d6mh1pi99m19bc9m3phcsfgygbfpyig-cloudflared-2024.11.0", - "default": true - } - ], - "store_path": "/nix/store/2d6mh1pi99m19bc9m3phcsfgygbfpyig-cloudflared-2024.11.0" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/4dii539ldfv0f9n7xigfy19ivrg3ng2n-cloudflared-2024.11.0", - "default": true - } - ], - "store_path": "/nix/store/4dii539ldfv0f9n7xigfy19ivrg3ng2n-cloudflared-2024.11.0" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/hlnabpfi58mpd16symqb7kp8xc2lf1pf-cloudflared-2024.11.0", - "default": true - } - ], - "store_path": "/nix/store/hlnabpfi58mpd16symqb7kp8xc2lf1pf-cloudflared-2024.11.0" - } - } - }, - "go@1.23": { - "last_modified": "2024-11-16T04:25:12Z", - "resolved": "github:NixOS/nixpkgs/34a626458d686f1b58139620a8b2793e9e123bba#go", - "source": "devbox-search", - "version": "1.23.3", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/qrj2wp6vzfpjfrrlcmr22818zg83fb73-go-1.23.3", - "default": true - } - ], - "store_path": "/nix/store/qrj2wp6vzfpjfrrlcmr22818zg83fb73-go-1.23.3" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/dm66qyl19skrwcmk4rb9xcs64xc1d071-go-1.23.3", - "default": true - } - ], - "store_path": "/nix/store/dm66qyl19skrwcmk4rb9xcs64xc1d071-go-1.23.3" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/vkjn6njpz4gy5ma763vh8hh93bgjwycr-go-1.23.3", - "default": true - } - ], - "store_path": "/nix/store/vkjn6njpz4gy5ma763vh8hh93bgjwycr-go-1.23.3" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/bavnchxi7v6xs077jxv7fl5rrqc3y87w-go-1.23.3", - "default": true - } - ], - "store_path": "/nix/store/bavnchxi7v6xs077jxv7fl5rrqc3y87w-go-1.23.3" - } - } - }, - "ipfs@latest": { - "last_modified": "2023-02-24T09:01:09Z", - "resolved": "github:NixOS/nixpkgs/7d0ed7f2e5aea07ab22ccb338d27fbe347ed2f11#ipfs", - "source": "devbox-search", - "version": "0.17.0" - }, - "matrix-synapse@latest": { - "last_modified": "2024-11-18T00:41:09Z", - "resolved": "github:NixOS/nixpkgs/5083ec887760adfe12af64830a66807423a859a7#matrix-synapse", - "source": "devbox-search", - "version": "1.119.0", - "systems": { - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/dfgj6lgmxy18qd5v9z91376i0b1z06jx-matrix-synapse-wrapped-1.119.0", - "default": true - } - ], - "store_path": "/nix/store/dfgj6lgmxy18qd5v9z91376i0b1z06jx-matrix-synapse-wrapped-1.119.0" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/570l35c4n3qdxaszrf6bz4rrrw87pkil-matrix-synapse-wrapped-1.119.0", - "default": true - } - ], - "store_path": "/nix/store/570l35c4n3qdxaszrf6bz4rrrw87pkil-matrix-synapse-wrapped-1.119.0" - } - } - }, - "postgresql@latest": { - "last_modified": "2024-11-22T01:27:12Z", - "plugin_version": "0.0.2", - "resolved": "github:NixOS/nixpkgs/8edf06bea5bcbee082df1b7369ff973b91618b8d#postgresql", - "source": "devbox-search", - "version": "16.4", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/j6n9b877yhrnkp9z9p1gllxpnfvdrbrb-postgresql-16.4", - "default": true - }, - { - "name": "man", - "path": "/nix/store/465icqyw6m38jxpx5yr1ri26ki0f96sz-postgresql-16.4-man", - "default": true - }, - { - "name": "lib", - "path": "/nix/store/l9w6d22hrcrxkv005g2gbzhvk64vp4rm-postgresql-16.4-lib" - }, - { - "name": "dev", - "path": "/nix/store/jvw9nsblsbh9m4n551sq7qnw82hhsv08-postgresql-16.4-dev" - }, - { - "name": "doc", - "path": "/nix/store/fk1x8k1qsiaasp73qnzyrzw4ylaf1xy6-postgresql-16.4-doc" - } - ], - "store_path": "/nix/store/j6n9b877yhrnkp9z9p1gllxpnfvdrbrb-postgresql-16.4" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/2ywn472iqfdiyw5w4frm63rn3nyrkgn1-postgresql-16.4", - "default": true - }, - { - "name": "man", - "path": "/nix/store/650fqsb195p9x00jgqgzkisjwddbvgfd-postgresql-16.4-man", - "default": true - }, - { - "name": "debug", - "path": "/nix/store/wm34pd2y04mjgvhanqw4ymmhds56l9da-postgresql-16.4-debug" - }, - { - "name": "dev", - "path": "/nix/store/ai2ckvi44jdh9i5078gj5brdwsxk4ydm-postgresql-16.4-dev" - }, - { - "name": "doc", - "path": "/nix/store/qys6z2y4iwr0f6ahpq9gcv9hb551w479-postgresql-16.4-doc" - }, - { - "name": "lib", - "path": "/nix/store/pii1vyxbzggi7aqy7xglav8p52c0qfp2-postgresql-16.4-lib" - } - ], - "store_path": "/nix/store/2ywn472iqfdiyw5w4frm63rn3nyrkgn1-postgresql-16.4" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/5k1p2jjnsdcsvk8zpsqxlzhajh1x9ghq-postgresql-16.4", - "default": true - }, - { - "name": "man", - "path": "/nix/store/p8b24icm7xiwlky1dggqcinn1ah92agl-postgresql-16.4-man", - "default": true - }, - { - "name": "dev", - "path": "/nix/store/cvl9wdw387jk02bbhm1qvidzl18hayyr-postgresql-16.4-dev" - }, - { - "name": "doc", - "path": "/nix/store/ysmwxhh3s2l1k2jkzxq0bv6vdzlgr14j-postgresql-16.4-doc" - }, - { - "name": "lib", - "path": "/nix/store/4va0gp1c718dk1zyqs0il2gn7a81spr0-postgresql-16.4-lib" - } - ], - "store_path": "/nix/store/5k1p2jjnsdcsvk8zpsqxlzhajh1x9ghq-postgresql-16.4" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ypx0whdqvwbql73nija0zrm4z3rgcm9l-postgresql-16.4", - "default": true - }, - { - "name": "man", - "path": "/nix/store/7x75jfmpc7x36863cf6kr61ikcz787ki-postgresql-16.4-man", - "default": true - }, - { - "name": "doc", - "path": "/nix/store/4c7h8sg2i0jim6hzmzhjw5nn0zmx1xvd-postgresql-16.4-doc" - }, - { - "name": "lib", - "path": "/nix/store/xd8ks7bs2p7gjgk8h98bfg8801swl9m0-postgresql-16.4-lib" - }, - { - "name": "debug", - "path": "/nix/store/pxhd0wq2sbafamjmcp7f890qza76gwav-postgresql-16.4-debug" - }, - { - "name": "dev", - "path": "/nix/store/20i6jma3fbm4sw060hdnrs311fw4aczj-postgresql-16.4-dev" - } - ], - "store_path": "/nix/store/ypx0whdqvwbql73nija0zrm4z3rgcm9l-postgresql-16.4" - } - } - }, - "skate@latest": { - "last_modified": "2024-11-16T04:25:12Z", - "resolved": "github:NixOS/nixpkgs/34a626458d686f1b58139620a8b2793e9e123bba#skate", - "source": "devbox-search", - "version": "1.0.0", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/q6yhpyfbqiabyic6ymx5rp2db62bnbvr-skate-1.0.0", - "default": true - } - ], - "store_path": "/nix/store/q6yhpyfbqiabyic6ymx5rp2db62bnbvr-skate-1.0.0" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/q55dbgvc4xwvr2g02dks6j2j699qni2k-skate-1.0.0", - "default": true - } - ], - "store_path": "/nix/store/q55dbgvc4xwvr2g02dks6j2j699qni2k-skate-1.0.0" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/s1hy525y8ciya3nrns9kryy3jlcw8igv-skate-1.0.0", - "default": true - } - ], - "store_path": "/nix/store/s1hy525y8ciya3nrns9kryy3jlcw8igv-skate-1.0.0" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/8s03iazymz77nv6pjxpz7wair0m646wv-skate-1.0.0", - "default": true - } - ], - "store_path": "/nix/store/8s03iazymz77nv6pjxpz7wair0m646wv-skate-1.0.0" - } - } - }, - "tigerbeetle@latest": { - "last_modified": "2024-11-16T04:25:12Z", - "resolved": "github:NixOS/nixpkgs/34a626458d686f1b58139620a8b2793e9e123bba#tigerbeetle", - "source": "devbox-search", - "version": "0.16.12", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/mm3jzwf24p35afr55v7kl5a0h6962i6p-tigerbeetle-0.16.12", - "default": true - } - ], - "store_path": "/nix/store/mm3jzwf24p35afr55v7kl5a0h6962i6p-tigerbeetle-0.16.12" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/4106973gg3crfxq0gwrgwn4hcx64mzyy-tigerbeetle-0.16.12", - "default": true - } - ], - "store_path": "/nix/store/4106973gg3crfxq0gwrgwn4hcx64mzyy-tigerbeetle-0.16.12" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/6lnwnr3mvdamm5lxjjqkaagw2pyqlq0a-tigerbeetle-0.16.12", - "default": true - } - ], - "store_path": "/nix/store/6lnwnr3mvdamm5lxjjqkaagw2pyqlq0a-tigerbeetle-0.16.12" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/afrj2ph61xz0lh7f3d1g1d7v2rslbvny-tigerbeetle-0.16.12", - "default": true - } - ], - "store_path": "/nix/store/afrj2ph61xz0lh7f3d1g1d7v2rslbvny-tigerbeetle-0.16.12" - } - } - } - } -} diff --git a/deploy/testnet/process-compose.yaml b/deploy/testnet/process-compose.yaml deleted file mode 100644 index 2eb1092ad..000000000 --- a/deploy/testnet/process-compose.yaml +++ /dev/null @@ -1,29 +0,0 @@ -version: "0.6" - -processes: - ipfs: - namespace: testnet - command: "devbox run ipfs" - background: true - availability: - restart: never - max_restarts: 0 - - sonr: - namespace: testnet - background: true - command: "devbox run sonr" - restart: never - max_restarts: 1 - depends: - - ipfs - - hway: - namespace: testnet - background: true - command: "devbox run hway" - restart: never - max_restarts: 1 - depends: - - ipfs - - sonr diff --git a/deploy/testnet/sink/schema.sql b/deploy/testnet/sink/schema.sql deleted file mode 100644 index ce5a241ba..000000000 --- a/deploy/testnet/sink/schema.sql +++ /dev/null @@ -1,85 +0,0 @@ -/* - This file defines the database schema for the PostgresQL ("psql") event sink - implementation in CometBFT. The operator must create a database and install - this schema before using the database to index events. - */ - --- The blocks table records metadata about each block. --- The block record does not include its events or transactions (see tx_results). -CREATE TABLE blocks ( - rowid BIGSERIAL PRIMARY KEY, - - height BIGINT NOT NULL, - chain_id VARCHAR NOT NULL, - - -- When this block header was logged into the sink, in UTC. - created_at TIMESTAMPTZ NOT NULL, - - UNIQUE (height, chain_id) -); - --- Index blocks by height and chain, since we need to resolve block IDs when --- indexing transaction records and transaction events. -CREATE INDEX idx_blocks_height_chain ON blocks(height, chain_id); - --- The tx_results table records metadata about transaction results. Note that --- the events from a transaction are stored separately. -CREATE TABLE tx_results ( - rowid BIGSERIAL PRIMARY KEY, - - -- The block to which this transaction belongs. - block_id BIGINT NOT NULL REFERENCES blocks(rowid), - -- The sequential index of the transaction within the block. - index INTEGER NOT NULL, - -- When this result record was logged into the sink, in UTC. - created_at TIMESTAMPTZ NOT NULL, - -- The hex-encoded hash of the transaction. - tx_hash VARCHAR NOT NULL, - -- The protobuf wire encoding of the TxResult message. - tx_result BYTEA NOT NULL, - - UNIQUE (block_id, index) -); - --- The events table records events. All events (both block and transaction) are --- associated with a block ID; transaction events also have a transaction ID. -CREATE TABLE events ( - rowid BIGSERIAL PRIMARY KEY, - - -- The block and transaction this event belongs to. - -- If tx_id is NULL, this is a block event. - block_id BIGINT NOT NULL REFERENCES blocks(rowid), - tx_id BIGINT NULL REFERENCES tx_results(rowid), - - -- The application-defined type label for the event. - type VARCHAR NOT NULL -); - --- The attributes table records event attributes. -CREATE TABLE attributes ( - event_id BIGINT NOT NULL REFERENCES events(rowid), - key VARCHAR NOT NULL, -- bare key - composite_key VARCHAR NOT NULL, -- composed type.key - value VARCHAR NULL, - - UNIQUE (event_id, key) -); - --- A joined view of events and their attributes. Events that do not have any --- attributes are represented as a single row with empty key and value fields. -CREATE VIEW event_attributes AS - SELECT block_id, tx_id, type, key, composite_key, value - FROM events LEFT JOIN attributes ON (events.rowid = attributes.event_id); - --- A joined view of all block events (those having tx_id NULL). -CREATE VIEW block_events AS - SELECT blocks.rowid as block_id, height, chain_id, type, key, composite_key, value - FROM blocks JOIN event_attributes ON (blocks.rowid = event_attributes.block_id) - WHERE event_attributes.tx_id IS NULL; - --- A joined view of all transaction events. -CREATE VIEW tx_events AS - SELECT height, index, chain_id, type, key, composite_key, value, tx_results.created_at - FROM blocks JOIN tx_results ON (blocks.rowid = tx_results.block_id) - JOIN event_attributes ON (tx_results.rowid = event_attributes.tx_id) - WHERE event_attributes.tx_id IS NOT NULL; diff --git a/devbox.json b/devbox.json index cdf4e3159..dc0b3a88c 100644 --- a/devbox.json +++ b/devbox.json @@ -1,13 +1,9 @@ { "$schema": "https://raw.githubusercontent.com/jetify-com/devbox/0.12.0/.schema/devbox.schema.json", "packages": [ - "go@1.22", "bun@latest", "gum@latest", - "ipfs@latest", "skate@latest", - "air@latest", - "go-task@latest", "templ@latest", "tigerbeetle@latest", "process-compose@latest" @@ -26,39 +22,16 @@ "ACC1_ADDRESS": "idx1hj5fveer5cjtn4wd6wstzugjfdxzl0xpecp0nd", "ACC0_MNEMONIC": "$(skate get ACC0_MNEMONIC)", "ACC1_MNEMONIC": "$(skate get ACC1_MNEMONIC)", - "TUNNEL_TOKEN": "$(skate get CLOUDFLARE_TUNNEL_TOKEN)", "TURNSTILE_SITE_KEY": "$(skate get TURNSTILE_SITE_KEY)", - "TEMPL_EXPERIMENT": "rawgo", "PC_NO_SERVER": "true", "PC_LOG_FILE": "./sonr.log" }, "shell": { "scripts": { - "deploy": [ - "gum spin --title='Generating PKL' -- make pkl-gen", - "gum spin --title='Building Motr WASM' -- make motr-build", - "gum spin --title='Uploading to Bucket' -- make deploy-cdn" - ], - "devnet:start": [ - "process-compose up -f deploy/devnet/process-compose.yaml" - ], - "devnet:attach": [ - "cd deploy/devnet", - "process-compose attach" - ], - "devnet:stop": [ - "cd deploy/devnet", - "process-compose down " - ], - "testnet:start": [ - "process-compose up -f deploy/testnet/process-compose.yaml --detached --hide-disabled" - ], - "testnet:stop": [ - "process-compose down -f deploy/testnet/process-compose.yaml --remove-orphans" - ], - "testnet:restart": [ - "process-compose restart -f deploy/testnet/process-compose.yaml --remove-orphans" - ] + "start": ["process-compose up --hide-disabled"], + "start:detached": ["process-compose up --detached --hide-disabled"], + "attach": ["process-compose attach"], + "stop": ["process-compose down "] } } } diff --git a/devbox.lock b/devbox.lock index 9c89d60c4..bfbf21127 100644 --- a/devbox.lock +++ b/devbox.lock @@ -1,54 +1,6 @@ { "lockfile_version": "1", "packages": { - "air@latest": { - "last_modified": "2024-11-28T07:51:56Z", - "resolved": "github:NixOS/nixpkgs/226216574ada4c3ecefcbbec41f39ce4655f78ef#air", - "source": "devbox-search", - "version": "1.61.1", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/0s90vbnmsyyixs0991md21pbrw8babfb-air-1.61.1", - "default": true - } - ], - "store_path": "/nix/store/0s90vbnmsyyixs0991md21pbrw8babfb-air-1.61.1" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/8mpw2asxs297v26fxqy2y1bq438f344l-air-1.61.1", - "default": true - } - ], - "store_path": "/nix/store/8mpw2asxs297v26fxqy2y1bq438f344l-air-1.61.1" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/abminkf7ldqf9vm14xx5wvsrdx3wrvy6-air-1.61.1", - "default": true - } - ], - "store_path": "/nix/store/abminkf7ldqf9vm14xx5wvsrdx3wrvy6-air-1.61.1" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ajx8v5rbbvglncb97yybg3x9kn95gfrm-air-1.61.1", - "default": true - } - ], - "store_path": "/nix/store/ajx8v5rbbvglncb97yybg3x9kn95gfrm-air-1.61.1" - } - } - }, "bun@latest": { "last_modified": "2024-11-26T10:33:56Z", "resolved": "github:NixOS/nixpkgs/af51545ec9a44eadf3fe3547610a5cdd882bc34e#bun", @@ -97,102 +49,6 @@ } } }, - "go-task@latest": { - "last_modified": "2024-11-28T07:51:56Z", - "resolved": "github:NixOS/nixpkgs/226216574ada4c3ecefcbbec41f39ce4655f78ef#go-task", - "source": "devbox-search", - "version": "3.40.0", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ynnx5bghcar86a89026rdysvpf51b2li-go-task-3.40.0", - "default": true - } - ], - "store_path": "/nix/store/ynnx5bghcar86a89026rdysvpf51b2li-go-task-3.40.0" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/2ga7yc7nn0k01n2w3wa6fjbp0i31r6d6-go-task-3.40.0", - "default": true - } - ], - "store_path": "/nix/store/2ga7yc7nn0k01n2w3wa6fjbp0i31r6d6-go-task-3.40.0" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/0fc73lrh98s9i7qjsxk8gjddxam5kv76-go-task-3.40.0", - "default": true - } - ], - "store_path": "/nix/store/0fc73lrh98s9i7qjsxk8gjddxam5kv76-go-task-3.40.0" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/x5pbyv5p0yj3fl77j4bmgcj8s7jjcjwn-go-task-3.40.0", - "default": true - } - ], - "store_path": "/nix/store/x5pbyv5p0yj3fl77j4bmgcj8s7jjcjwn-go-task-3.40.0" - } - } - }, - "go@1.22": { - "last_modified": "2024-11-28T07:51:56Z", - "resolved": "github:NixOS/nixpkgs/226216574ada4c3ecefcbbec41f39ce4655f78ef#go_1_22", - "source": "devbox-search", - "version": "1.22.9", - "systems": { - "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/4nf51i4ah186y2jy3fad2fyvpa49qx6q-go-1.22.9", - "default": true - } - ], - "store_path": "/nix/store/4nf51i4ah186y2jy3fad2fyvpa49qx6q-go-1.22.9" - }, - "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/8w8vzwgp55yl8j1ljgm4wzdgjkvkv5v3-go-1.22.9", - "default": true - } - ], - "store_path": "/nix/store/8w8vzwgp55yl8j1ljgm4wzdgjkvkv5v3-go-1.22.9" - }, - "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/vlih7j78ki05i8nvzdsxvws7a7ksq04m-go-1.22.9", - "default": true - } - ], - "store_path": "/nix/store/vlih7j78ki05i8nvzdsxvws7a7ksq04m-go-1.22.9" - }, - "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/frc5188kgv3ws0n999c7cy5vi2f8k4jp-go-1.22.9", - "default": true - } - ], - "store_path": "/nix/store/frc5188kgv3ws0n999c7cy5vi2f8k4jp-go-1.22.9" - } - } - }, "gum@latest": { "last_modified": "2024-11-16T04:25:12Z", "resolved": "github:NixOS/nixpkgs/34a626458d686f1b58139620a8b2793e9e123bba#gum", @@ -241,12 +97,6 @@ } } }, - "ipfs@latest": { - "last_modified": "2023-02-24T09:01:09Z", - "resolved": "github:NixOS/nixpkgs/7d0ed7f2e5aea07ab22ccb338d27fbe347ed2f11#ipfs", - "source": "devbox-search", - "version": "0.17.0" - }, "process-compose@latest": { "last_modified": "2024-11-28T07:51:56Z", "resolved": "github:NixOS/nixpkgs/226216574ada4c3ecefcbbec41f39ce4655f78ef#process-compose", diff --git a/docs/docs/design/index.md b/docs/docs/design/index.md deleted file mode 100644 index 4dcf312d2..000000000 --- a/docs/docs/design/index.md +++ /dev/null @@ -1,118 +0,0 @@ -