diff --git a/app/app.go b/app/app.go index 0c7c45fb6..e2b1509a1 100644 --- a/app/app.go +++ b/app/app.go @@ -292,6 +292,7 @@ func NewComposableApp( encodingConfig EncodingConfig, appOpts servertypes.AppOptions, wasmOpts []wasm.Option, + devnetGov *string, baseAppOptions ...func(*baseapp.BaseApp), ) *ComposableApp { appCodec := encodingConfig.Marshaler @@ -332,6 +333,7 @@ func NewComposableApp( appOpts, wasmOpts, enabledProposals, + devnetGov, ) transferModule := transfer.NewAppModule(app.TransferKeeper) diff --git a/app/helpers/test_helpers.go b/app/helpers/test_helpers.go index 1646262fa..ede708692 100644 --- a/app/helpers/test_helpers.go +++ b/app/helpers/test_helpers.go @@ -102,6 +102,7 @@ func setup(withGenesis bool, invCheckPeriod uint, opts ...wasm.Option) (*composa encCdc, EmptyAppOptions{}, opts, + nil, ) if withGenesis { return app, composable.NewDefaultGenesisState() diff --git a/app/keepers/keepers.go b/app/keepers/keepers.go index be5bb4282..088e130b9 100644 --- a/app/keepers/keepers.go +++ b/app/keepers/keepers.go @@ -172,6 +172,7 @@ func (appKeepers *AppKeepers) InitNormalKeepers( appOpts servertypes.AppOptions, wasmOpts []wasm.Option, enabledProposals []wasm.ProposalType, + devnetGov *string, ) { // add keepers appKeepers.AccountKeeper = authkeeper.NewAccountKeeper( @@ -252,7 +253,12 @@ func (appKeepers *AppKeepers) InitNormalKeepers( appCodec, appKeepers.keys[ibchost.StoreKey], appKeepers.GetSubspace(ibchost.ModuleName), appKeepers.StakingKeeper, appKeepers.UpgradeKeeper, appKeepers.ScopedIBCKeeper, ) - appKeepers.Wasm08Keeper = wasm08Keeper.NewKeeper(appCodec, appKeepers.keys[wasm08types.StoreKey], authorityAddress, homePath, &appKeepers.IBCKeeper.ClientKeeper) + govModuleAuthority := authtypes.NewModuleAddress(govtypes.ModuleName).String() + if devnetGov != nil { + govModuleAuthority = *devnetGov + } + + appKeepers.Wasm08Keeper = wasm08Keeper.NewKeeper(appCodec, appKeepers.keys[wasm08types.StoreKey], govModuleAuthority, homePath, &appKeepers.IBCKeeper.ClientKeeper) // ICA Host keeper appKeepers.ICAHostKeeper = icahostkeeper.NewKeeper( @@ -395,7 +401,7 @@ func (appKeepers *AppKeepers) InitNormalKeepers( wasmDir, wasmConfig, availableCapabilities, - authtypes.NewModuleAddress(govtypes.ModuleName).String(), + govModuleAuthority, wasmOpts..., ) diff --git a/app/test_helpers.go b/app/test_helpers.go index 97f5df118..536630458 100644 --- a/app/test_helpers.go +++ b/app/test_helpers.go @@ -84,6 +84,7 @@ func setup(tb testing.TB, withGenesis bool, invCheckPeriod uint) (*ComposableApp MakeEncodingConfig(), EmptyBaseAppOptions{}, wasmOpts, + nil, baseAppOpts...) if withGenesis { return app, NewDefaultGenesisState() diff --git a/cmd/centaurid/cmd/root.go b/cmd/centaurid/cmd/root.go index 007663989..6b32ca9f5 100644 --- a/cmd/centaurid/cmd/root.go +++ b/cmd/centaurid/cmd/root.go @@ -38,6 +38,11 @@ import ( // this line is used by starport scaffolding # stargate/root/import ) +const ( + // if set, than uses specific key for governance instead of default (default is production; this override for local devtest) + flagDevnetGov = "devnet-gov" +) + var ChainID string // NewRootCmd creates a new root command for simd. It is called once in the @@ -75,7 +80,6 @@ func NewRootCmd() (*cobra.Command, app.EncodingConfig) { if err := client.SetCmdClientContextHandler(initClientCtx, cmd); err != nil { return err } - customAppTemplate, customAppConfig := initAppConfig() customTMConfig := initTendermintConfig() @@ -184,8 +188,8 @@ func initRootCmd(rootCmd *cobra.Command, encodingConfig app.EncodingConfig) { // this line is used by starport scaffolding # stargate/root/commands ) - a := appCreator{encodingConfig} - server.AddCommands(rootCmd, app.DefaultNodeHome, a.newApp, a.appExport, addModuleInitFlags) + appCreator := appCreator{encodingConfig} + server.AddCommands(rootCmd, app.DefaultNodeHome, appCreator.newApp, appCreator.appExport, addModuleInitFlags) // add keybase, auxiliary RPC, query, and tx child commands rootCmd.AddCommand( @@ -198,6 +202,7 @@ func initRootCmd(rootCmd *cobra.Command, encodingConfig app.EncodingConfig) { func addModuleInitFlags(startCmd *cobra.Command) { crisis.AddModuleInitFlags(startCmd) + startCmd.Flags().String(flagDevnetGov, "", "Sets the devnet governance key (if not set, uses the default production key)") // this line is used by starport scaffolding # stargate/root/initFlags } @@ -267,6 +272,11 @@ func (a appCreator) newApp(logger log.Logger, db dbm.DB, traceStore io.Writer, a skipUpgradeHeights[h] = true } + var devnetGov *string + devnetGovOption, _ := appOpts.Get(flagDevnetGov).(string) + if devnetGovOption != "" { + devnetGov = &devnetGovOption + } baseappOptions := server.DefaultBaseappOptions(appOpts) var emptyWasmOpts []wasm.Option @@ -280,6 +290,7 @@ func (a appCreator) newApp(logger log.Logger, db dbm.DB, traceStore io.Writer, a // this line is used by starport scaffolding # stargate/root/appArgument appOpts, emptyWasmOpts, + devnetGov, baseappOptions..., ) @@ -312,6 +323,7 @@ func (a appCreator) appExport( a.encCfg, appOpts, emptyWasmOpts, + nil, ) if err := anApp.LoadHeight(height); err != nil { @@ -330,6 +342,7 @@ func (a appCreator) appExport( a.encCfg, appOpts, emptyWasmOpts, + nil, ) } diff --git a/flake.lock b/flake.lock new file mode 100644 index 000000000..7052e3fc2 --- /dev/null +++ b/flake.lock @@ -0,0 +1,1548 @@ +{ + "nodes": { + "akash-src": { + "flake": false, + "locked": { + "lastModified": 1648485085, + "narHash": "sha256-33FPy0dn6QuqneEqZYkFoCRm9agG7PE+9C/pYH9Gwx4=", + "owner": "ovrclk", + "repo": "akash", + "rev": "5b8b6bbede6c9fbb2df1ca536b8edfcf5652adf8", + "type": "github" + }, + "original": { + "owner": "ovrclk", + "ref": "v0.15.0-rc17", + "repo": "akash", + "type": "github" + } + }, + "apalache-src": { + "flake": false, + "locked": { + "lastModified": 1692625213, + "narHash": "sha256-Z/tmBMv+QshFJLo2kBgBdkqfKwF93CgURVIbYF3dwJE=", + "owner": "informalsystems", + "repo": "apalache", + "rev": "ec979d4554360faf9d73ddf72dccf350614076d5", + "type": "github" + }, + "original": { + "owner": "informalsystems", + "ref": "v0.42.0", + "repo": "apalache", + "type": "github" + } + }, + "beaker-src": { + "flake": false, + "locked": { + "lastModified": 1686823358, + "narHash": "sha256-bQiN5Q7RV4Uupc7rk1rGurRvCTy+5EiiB4p3bHct7M0=", + "owner": "osmosis-labs", + "repo": "beaker", + "rev": "f3c7a9fc6886aa2b4e0d259f70058d6c23c225e5", + "type": "github" + }, + "original": { + "owner": "osmosis-labs", + "ref": "v0.1.6", + "repo": "beaker", + "type": "github" + } + }, + "celestia-src": { + "flake": false, + "locked": { + "lastModified": 1700494564, + "narHash": "sha256-O6KrCStrZLmWy3xybQUNsWEb3O7vIRCFDE9MsEtsFro=", + "owner": "celestiaorg", + "repo": "celestia-app", + "rev": "2dbfabf1849e166974c1287c35b43e5e07727643", + "type": "github" + }, + "original": { + "owner": "celestiaorg", + "ref": "v1.4.0", + "repo": "celestia-app", + "type": "github" + } + }, + "centauri-src": { + "flake": false, + "locked": { + "lastModified": 1701431373, + "narHash": "sha256-EpZ1CQN0gMU8W1u3CMbqlaHeeVpQO2i1GPg6pOyOQTc=", + "owner": "ComposableFi", + "repo": "composable-cosmos", + "rev": "387c96b434db9d96b0506aa7f14536d9bdec968c", + "type": "github" + }, + "original": { + "owner": "ComposableFi", + "repo": "composable-cosmos", + "rev": "387c96b434db9d96b0506aa7f14536d9bdec968c", + "type": "github" + } + }, + "cometbft-src": { + "flake": false, + "locked": { + "lastModified": 1694550324, + "narHash": "sha256-G5gchJMn/BFzwYx8/ikPDL5fS/TuFIBF4DKJbkalp/M=", + "owner": "cometbft", + "repo": "cometbft", + "rev": "66a5a9da9f7a3306f382eb9142ccb9c9f7997d3f", + "type": "github" + }, + "original": { + "owner": "cometbft", + "ref": "v0.38.0", + "repo": "cometbft", + "type": "github" + } + }, + "cosmos": { + "inputs": { + "akash-src": "akash-src", + "apalache-src": "apalache-src", + "beaker-src": "beaker-src", + "celestia-src": "celestia-src", + "centauri-src": "centauri-src", + "cometbft-src": "cometbft-src", + "cosmos-sdk-src": "cosmos-sdk-src", + "cosmwasm-src": "cosmwasm-src", + "crescent-src": "crescent-src", + "cw-plus-src": "cw-plus-src", + "evmos-src": "evmos-src", + "flake-parts": "flake-parts", + "gaia-main-src": "gaia-main-src", + "gaia10-src": "gaia10-src", + "gaia11-src": "gaia11-src", + "gaia12-src": "gaia12-src", + "gaia13-src": "gaia13-src", + "gaia14-src": "gaia14-src", + "gaia5-src": "gaia5-src", + "gaia6-ordered-src": "gaia6-ordered-src", + "gaia6-src": "gaia6-src", + "gaia7-src": "gaia7-src", + "gaia8-src": "gaia8-src", + "gaia9-src": "gaia9-src", + "gex-src": "gex-src", + "gomod2nix": "gomod2nix", + "hermes-src": "hermes-src", + "ibc-go-v2-src": "ibc-go-v2-src", + "ibc-go-v3-src": "ibc-go-v3-src", + "ibc-go-v4-src": "ibc-go-v4-src", + "ibc-go-v5-src": "ibc-go-v5-src", + "ibc-go-v6-src": "ibc-go-v6-src", + "ibc-go-v7-src": "ibc-go-v7-src", + "ibc-go-v8-channel-upgrade-src": "ibc-go-v8-channel-upgrade-src", + "ibc-go-v8-src": "ibc-go-v8-src", + "ibc-rs-src": "ibc-rs-src", + "ica-src": "ica-src", + "ignite-cli-src": "ignite-cli-src", + "interchain-security-src": "interchain-security-src", + "iris-src": "iris-src", + "ixo-src": "ixo-src", + "juno-src": "juno-src", + "migaloo-src": "migaloo-src", + "namada-src": "namada-src", + "neutron-src": "neutron-src", + "nix-std": "nix-std", + "nixpkgs": [ + "nixpkgs" + ], + "osmosis-src": "osmosis-src", + "provenance-src": "provenance-src", + "regen-src": "regen-src", + "relayer-src": "relayer-src", + "rust-overlay": "rust-overlay", + "sbt-derivation": "sbt-derivation", + "sconfig-src": "sconfig-src", + "sentinel-src": "sentinel-src", + "sifchain-src": "sifchain-src", + "stargaze-src": "stargaze-src", + "stoml-src": "stoml-src", + "stride-consumer-src": "stride-consumer-src", + "stride-src": "stride-src", + "umee-src": "umee-src", + "wasmd-src": "wasmd-src", + "wasmd_next-src": "wasmd_next-src", + "wasmvm_1-src": "wasmvm_1-src", + "wasmvm_1_1_1-src": "wasmvm_1_1_1-src", + "wasmvm_1_1_2-src": "wasmvm_1_1_2-src", + "wasmvm_1_2_3-src": "wasmvm_1_2_3-src", + "wasmvm_1_2_4-src": "wasmvm_1_2_4-src", + "wasmvm_1_3_0-src": "wasmvm_1_3_0-src", + "wasmvm_1_5_0-src": "wasmvm_1_5_0-src", + "wasmvm_1_beta7-src": "wasmvm_1_beta7-src" + }, + "locked": { + "lastModified": 1703683453, + "narHash": "sha256-uMgdhucQZTNFPa+5v3GXnhFEgXsIIytx16Lp+qI4/tI=", + "owner": "informalsystems", + "repo": "cosmos.nix", + "rev": "8429e606fa6b968f6f01752f702b7ba7ce9a9992", + "type": "github" + }, + "original": { + "owner": "informalsystems", + "repo": "cosmos.nix", + "type": "github" + } + }, + "cosmos-sdk-src": { + "flake": false, + "locked": { + "lastModified": 1658846655, + "narHash": "sha256-Xs83vbgt4+YH2LRJx7692nIjRBr5QCYoUHI17njsjlw=", + "owner": "cosmos", + "repo": "cosmos-sdk", + "rev": "a1143138716b64bc4fa0aa53c0f0fa59eb675bb7", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v0.46.0", + "repo": "cosmos-sdk", + "type": "github" + } + }, + "cosmwasm-src": { + "flake": false, + "locked": { + "lastModified": 1698745412, + "narHash": "sha256-41s5jLFzw9Jo+dirAVOad1dtUqCBY6rIz/6TRc0frMw=", + "owner": "CosmWasm", + "repo": "cosmwasm", + "rev": "89891f0bb2de2c83d00600208695d0d5e1b617ac", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v1.5.0", + "repo": "cosmwasm", + "type": "github" + } + }, + "crescent-src": { + "flake": false, + "locked": { + "lastModified": 1647869429, + "narHash": "sha256-c1xiTB/HgtQJSwD3ccFQIoSHPbJK6rf1nSjnM3r0oCE=", + "owner": "crescent-network", + "repo": "crescent", + "rev": "01980cfd06b06786109eaba78c154e6db1adc3d6", + "type": "github" + }, + "original": { + "owner": "crescent-network", + "ref": "v1.0.0-rc3", + "repo": "crescent", + "type": "github" + } + }, + "cw-plus-src": { + "flake": false, + "locked": { + "lastModified": 1700757493, + "narHash": "sha256-E5vkY+B4BDoTDtvuB+7Tm3k/5dCYPSjUujMWcgYsWf0=", + "owner": "CosmWasm", + "repo": "cw-plus", + "rev": "d33824679d5b91ca0b4615a8dede7e0028947486", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v1.1.2", + "repo": "cw-plus", + "type": "github" + } + }, + "evmos-src": { + "flake": false, + "locked": { + "lastModified": 1702504794, + "narHash": "sha256-ECXXQ0hx/MXascMP6aXf880zts/dNPpQM9jOCIHTLZQ=", + "owner": "evmos", + "repo": "evmos", + "rev": "6f94d2002c01b7f7908a69089ed6996ac2bb450c", + "type": "github" + }, + "original": { + "owner": "evmos", + "ref": "v16.0.0-rc4", + "repo": "evmos", + "type": "github" + } + }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1701473968, + "narHash": "sha256-YcVE5emp1qQ8ieHUnxt1wCZCC3ZfAS+SRRWZ2TMda7E=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "34fed993f1674c8d06d58b37ce1e0fe5eebcb9f5", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib_2" + }, + "locked": { + "lastModified": 1701473968, + "narHash": "sha256-YcVE5emp1qQ8ieHUnxt1wCZCC3ZfAS+SRRWZ2TMda7E=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "34fed993f1674c8d06d58b37ce1e0fe5eebcb9f5", + "type": "github" + }, + "original": { + "id": "flake-parts", + "type": "indirect" + } + }, + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { + "inputs": { + "systems": "systems_2" + }, + "locked": { + "lastModified": 1681202837, + "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "cfacdce06f30d2b68473a46042957675eebb3401", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_3": { + "locked": { + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_4": { + "inputs": { + "systems": "systems_3" + }, + "locked": { + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "gaia-main-src": { + "flake": false, + "locked": { + "lastModified": 1702388853, + "narHash": "sha256-1O8ncSd0mUNEUHSTi2U9d21Dv1yszQKohjp/AS6IxcU=", + "owner": "cosmos", + "repo": "gaia", + "rev": "2dc2b82ea9da34b3c4823458919004f1a583a597", + "type": "github" + }, + "original": { + "owner": "cosmos", + "repo": "gaia", + "type": "github" + } + }, + "gaia10-src": { + "flake": false, + "locked": { + "lastModified": 1688401730, + "narHash": "sha256-F72AxDI1OdleE8If5s4HJbORqMsDVsdEO5q7nrK07E8=", + "owner": "cosmos", + "repo": "gaia", + "rev": "a2b14cdd568273e12b80579b4e22681df95b4cb9", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v10.0.2", + "repo": "gaia", + "type": "github" + } + }, + "gaia11-src": { + "flake": false, + "locked": { + "lastModified": 1690464504, + "narHash": "sha256-bIegGSPDdDRbznfgsrojsGCwCPSesNknpffTFskc7fE=", + "owner": "cosmos", + "repo": "gaia", + "rev": "541a8d86af28231c767d6db52eb88ba9496ad0c4", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v11.0.0", + "repo": "gaia", + "type": "github" + } + }, + "gaia12-src": { + "flake": false, + "locked": { + "lastModified": 1692870038, + "narHash": "sha256-KqpkazhGGQWzvHiiwCiE7ciA8+L2t2HgxN8270zuGd0=", + "owner": "cosmos", + "repo": "gaia", + "rev": "6f8067d76ce30996f83645862153ccfaf5f13dd1", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v12.0.0", + "repo": "gaia", + "type": "github" + } + }, + "gaia13-src": { + "flake": false, + "locked": { + "lastModified": 1699370179, + "narHash": "sha256-bvJ33JL1Fr7ilnnYEjrjnbS/dbFkyhZ2uq6u39CeTa0=", + "owner": "cosmos", + "repo": "gaia", + "rev": "2406abb61856b61904ff06c7be2a355babcc3dfc", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v13.0.2", + "repo": "gaia", + "type": "github" + } + }, + "gaia14-src": { + "flake": false, + "locked": { + "lastModified": 1700067649, + "narHash": "sha256-7AnaIy/SElf/Uj2xTbHzLSgPY68SgQqqJZ2BPmt6czo=", + "owner": "cosmos", + "repo": "gaia", + "rev": "189b57be735d64d0dbf0945717b49017a1beb11e", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v14.0.0", + "repo": "gaia", + "type": "github" + } + }, + "gaia5-src": { + "flake": false, + "locked": { + "lastModified": 1634231239, + "narHash": "sha256-NfR9GRBNBlm5hB3lFea+Vlf4dkapZIZg0sZuyOX2cn8=", + "owner": "cosmos", + "repo": "gaia", + "rev": "b72cc994f7156c8a8991e6beed2dde84ad274588", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v5.0.8", + "repo": "gaia", + "type": "github" + } + }, + "gaia6-ordered-src": { + "flake": false, + "locked": { + "lastModified": 1648034337, + "narHash": "sha256-yw3WUCLRvn46xlWAnk6nBmvc3T91aryvBcOOfJ2ocPA=", + "owner": "informalsystems", + "repo": "gaia", + "rev": "d9e61fb98308dea2e02e8c6c6a9ab969dc240cc7", + "type": "github" + }, + "original": { + "owner": "informalsystems", + "ref": "v6.0.4-ordered", + "repo": "gaia", + "type": "github" + } + }, + "gaia6-src": { + "flake": false, + "locked": { + "lastModified": 1646904235, + "narHash": "sha256-JdD0DTdMo05ggGvpHN5hugEEtGA0/WQ4bhbryDlfGXo=", + "owner": "cosmos", + "repo": "gaia", + "rev": "305668ab9d962431c79d718bb0ffdeec77a46439", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v6.0.4", + "repo": "gaia", + "type": "github" + } + }, + "gaia7-src": { + "flake": false, + "locked": { + "lastModified": 1665762684, + "narHash": "sha256-hsDqDASwTPIb1BGOqa9nu4C5Y5q3hBoXYhkAFY7B9Cs=", + "owner": "cosmos", + "repo": "gaia", + "rev": "5db8fcc9a229730f5115bed82d0f85b6db7184b4", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v7.1.0", + "repo": "gaia", + "type": "github" + } + }, + "gaia8-src": { + "flake": false, + "locked": { + "lastModified": 1676667875, + "narHash": "sha256-8XPcJRQEQDtTbGFg0pWexkNdWESn1FoKvz4T2Z8UPDw=", + "owner": "cosmos", + "repo": "gaia", + "rev": "890ab3aa2e5788537b0d2ebc9bafdc968340e0e5", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v8.0.1", + "repo": "gaia", + "type": "github" + } + }, + "gaia9-src": { + "flake": false, + "locked": { + "lastModified": 1681924944, + "narHash": "sha256-UIM6yfqs1yZZ2BO/bBB43pPYSW1IzaYsk2f500tDYzA=", + "owner": "cosmos", + "repo": "gaia", + "rev": "05b6b87d3c9121e933eab437772ea56f33ae268f", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v9.0.3", + "repo": "gaia", + "type": "github" + } + }, + "gex-src": { + "flake": false, + "locked": { + "lastModified": 1697704475, + "narHash": "sha256-lgJVxn7Q2I8TBdvbzyn7bl1MN5StEw3NvRzCvBFFuB8=", + "owner": "cosmos", + "repo": "gex", + "rev": "233d335dc9e8c89fb318d1081fae74435f6cac11", + "type": "github" + }, + "original": { + "owner": "cosmos", + "repo": "gex", + "rev": "233d335dc9e8c89fb318d1081fae74435f6cac11", + "type": "github" + } + }, + "gomod2nix": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1702956934, + "narHash": "sha256-f1NuMA2mZ3Chw2CjlUkRAzNgDw0TYyj1i5YZJRByDdo=", + "owner": "JonathanLorimer", + "repo": "gomod2nix", + "rev": "6d2fce6003d08eee42648f2931de8449d3de1f5f", + "type": "github" + }, + "original": { + "owner": "JonathanLorimer", + "ref": "jonathan/update-go", + "repo": "gomod2nix", + "type": "github" + } + }, + "gomod2nix_2": { + "inputs": { + "flake-utils": "flake-utils_4", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1701687253, + "narHash": "sha256-qJCMxIKWXonJODPF2oV7mCd0xu7VYVenTucrY0bizto=", + "owner": "nix-community", + "repo": "gomod2nix", + "rev": "001bbfa22e2adeb87c34c6015e5694e88721cabe", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "gomod2nix", + "type": "github" + } + }, + "hermes-src": { + "flake": false, + "locked": { + "lastModified": 1702629809, + "narHash": "sha256-JTZMp4By/pGsMdKzfi4H1LQS1RKYQHBq5NEju5ADX/s=", + "owner": "informalsystems", + "repo": "hermes", + "rev": "ab732666fe35de129ada98731280d03411f6375f", + "type": "github" + }, + "original": { + "owner": "informalsystems", + "ref": "v1.7.4", + "repo": "hermes", + "type": "github" + } + }, + "ibc-go-v2-src": { + "flake": false, + "locked": { + "lastModified": 1663274791, + "narHash": "sha256-LuJvlXmGRyJAiM6+uk+NuamjIsEqMqF20twBmB0p8+k=", + "owner": "cosmos", + "repo": "ibc-go", + "rev": "e45fa32d1cf91c36807428f688d8e2ec88947940", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v2.4.1", + "repo": "ibc-go", + "type": "github" + } + }, + "ibc-go-v3-src": { + "flake": false, + "locked": { + "lastModified": 1663683283, + "narHash": "sha256-Er24B1unLYR/gG4JSrV+vZ/cPD6t7OFvtqp7AJCtDSE=", + "owner": "cosmos", + "repo": "ibc-go", + "rev": "250157f3fd40abaf9f8f1452cd78bf3304c38c72", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v3.3.0", + "repo": "ibc-go", + "type": "github" + } + }, + "ibc-go-v4-src": { + "flake": false, + "locked": { + "lastModified": 1667809128, + "narHash": "sha256-R1/AH6laXdaMftgwnV4t/pL3QoKnZ1UaBGoqOipOvQI=", + "owner": "cosmos", + "repo": "ibc-go", + "rev": "ecb845d5e43f53decf48f8ed88c7847a9a4375cb", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v4.2.0", + "repo": "ibc-go", + "type": "github" + } + }, + "ibc-go-v5-src": { + "flake": false, + "locked": { + "lastModified": 1668024626, + "narHash": "sha256-+Z78PyGODLr2Y5G8evubsoQE3tyUcxCHJDsLXKTmdlI=", + "owner": "cosmos", + "repo": "ibc-go", + "rev": "c0acd5bd1778f2b7ecdf593006f56bd3e273bd49", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v5.1.0", + "repo": "ibc-go", + "type": "github" + } + }, + "ibc-go-v6-src": { + "flake": false, + "locked": { + "lastModified": 1671525236, + "narHash": "sha256-V8kUNwgNfx1tZJazlnaTF6wBb7ztueh1KrAGgiP8hCM=", + "owner": "cosmos", + "repo": "ibc-go", + "rev": "d34cef7e075dda1a24a0a3e9b6d3eff406cc606c", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v6.1.0", + "repo": "ibc-go", + "type": "github" + } + }, + "ibc-go-v7-src": { + "flake": false, + "locked": { + "lastModified": 1693509694, + "narHash": "sha256-umh/ckDALt0ugXwN8glcaCkGfAQvXY7S3Jd95Do2XeA=", + "owner": "cosmos", + "repo": "ibc-go", + "rev": "c75650a1a037a9fecba5a9005df380f707520ff7", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v7.3.0", + "repo": "ibc-go", + "type": "github" + } + }, + "ibc-go-v8-channel-upgrade-src": { + "flake": false, + "locked": { + "lastModified": 1695726576, + "narHash": "sha256-mM6h1KAi8lQUrJakxI6f8WI+vpmBhCnAysk3hTZBI7M=", + "owner": "cosmos", + "repo": "ibc-go", + "rev": "63c30108f0ecf954108cf51f50f3d36ec58c7e51", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "04-channel-upgrades-alpha.0", + "repo": "ibc-go", + "type": "github" + } + }, + "ibc-go-v8-src": { + "flake": false, + "locked": { + "lastModified": 1699602904, + "narHash": "sha256-BcP3y874QviVsV+04p9CioolyvmWH82ORbb5EB2GyRI=", + "owner": "cosmos", + "repo": "ibc-go", + "rev": "2551dea41cd3c512845007ca895c8402afa9b79f", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v8.0.0", + "repo": "ibc-go", + "type": "github" + } + }, + "ibc-rs-src": { + "flake": false, + "locked": { + "lastModified": 1661171856, + "narHash": "sha256-M9KsPQdvyTArDe3sTi29+gfs69KHtpoNYLgI7IHYo9U=", + "owner": "informalsystems", + "repo": "ibc-rs", + "rev": "ed4dd8c8b4ebd695730de2a1c69f3011cb179352", + "type": "github" + }, + "original": { + "owner": "informalsystems", + "ref": "v1.0.0", + "repo": "ibc-rs", + "type": "github" + } + }, + "ica-src": { + "flake": false, + "locked": { + "lastModified": 1695202199, + "narHash": "sha256-8RwZSnqqZzVjQsSMTckNhmTy3VYyubVmgE/hU6ntq9M=", + "owner": "cosmos", + "repo": "interchain-accounts-demo", + "rev": "9d9ec3f4f7e37e9d2a1c7f4a199e7d18c17e14db", + "type": "github" + }, + "original": { + "owner": "cosmos", + "repo": "interchain-accounts-demo", + "type": "github" + } + }, + "ignite-cli-src": { + "flake": false, + "locked": { + "lastModified": 1662991379, + "narHash": "sha256-sVgIjecswxD8OBXRXoVk2BNsTXzUcYAb6QZk0rVrQqo=", + "owner": "ignite", + "repo": "cli", + "rev": "21c6430cfcc17c69885524990c448d4a3f56461c", + "type": "github" + }, + "original": { + "owner": "ignite", + "ref": "v0.24.0", + "repo": "cli", + "type": "github" + } + }, + "interchain-security-src": { + "flake": false, + "locked": { + "lastModified": 1700577019, + "narHash": "sha256-adBzn51PKoRsCL9gIzC5Tcqmu7u3GjxTcDj2jpZ/da8=", + "owner": "cosmos", + "repo": "interchain-security", + "rev": "03aada4af3243dbf739a12adfacc7b37232df694", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "feat/ics-misbehaviour-handling", + "repo": "interchain-security", + "type": "github" + } + }, + "iris-src": { + "flake": false, + "locked": { + "lastModified": 1618986686, + "narHash": "sha256-1nPJOuYeGjzBYFCS0IiC5j9TJd5KVa9IL0kROks328E=", + "owner": "irisnet", + "repo": "irishub", + "rev": "53e156b2ee7eeb0b9d5b263066d0d3c88a1af736", + "type": "github" + }, + "original": { + "owner": "irisnet", + "ref": "v1.1.1", + "repo": "irishub", + "type": "github" + } + }, + "ixo-src": { + "flake": false, + "locked": { + "lastModified": 1645476442, + "narHash": "sha256-Ewp9UyoH6z7YGrcXVpYJveRvDq02c1mNZj2hzlOoW8s=", + "owner": "ixofoundation", + "repo": "ixo-blockchain", + "rev": "2bef5d79205057be71677837dc1174be848e13e9", + "type": "github" + }, + "original": { + "owner": "ixofoundation", + "ref": "v0.18.0-rc1", + "repo": "ixo-blockchain", + "type": "github" + } + }, + "juno-src": { + "flake": false, + "locked": { + "lastModified": 1697166503, + "narHash": "sha256-z9TOeDyUnn1T8Z662XqQJ9ydVIKKB54YISt7ms4xvos=", + "owner": "CosmosContracts", + "repo": "juno", + "rev": "48507ed9b83511089cbf1fdc5bae54cae4a7f4b2", + "type": "github" + }, + "original": { + "owner": "CosmosContracts", + "ref": "v17.1.1", + "repo": "juno", + "type": "github" + } + }, + "migaloo-src": { + "flake": false, + "locked": { + "lastModified": 1699273936, + "narHash": "sha256-O+vGWFnV3+bvXinxl1QjVyDnQskp5H1VnlL+TaMfiSs=", + "owner": "White-Whale-Defi-Platform", + "repo": "migaloo-chain", + "rev": "de98de2dd96917ae1ab79161d573fc0b4ee1facf", + "type": "github" + }, + "original": { + "owner": "White-Whale-Defi-Platform", + "ref": "v3.0.2", + "repo": "migaloo-chain", + "type": "github" + } + }, + "namada-src": { + "flake": false, + "locked": { + "lastModified": 1702488720, + "narHash": "sha256-WyIVffqszY3rz3ClQJlpDaexLGQk8pVK+Y3k/D9Lvxg=", + "owner": "anoma", + "repo": "namada", + "rev": "468d3d3bcadd2bd11760855d2bbfcc0b4ce27e14", + "type": "github" + }, + "original": { + "owner": "anoma", + "ref": "v0.28.1", + "repo": "namada", + "type": "github" + } + }, + "neutron-src": { + "flake": false, + "locked": { + "lastModified": 1701174344, + "narHash": "sha256-NuoOlrciBeL2f/A7wlQBqYlYJhSYucXRhLgxdasfyhI=", + "owner": "neutron-org", + "repo": "neutron", + "rev": "e605ed3db4381994ee8185ba4a0ff0877d34e67f", + "type": "github" + }, + "original": { + "owner": "neutron-org", + "ref": "v2.0.0", + "repo": "neutron", + "type": "github" + } + }, + "nix-std": { + "locked": { + "lastModified": 1701658249, + "narHash": "sha256-KIt1TUuBvldhaVRta010MI5FeQlB8WadjqljybjesN0=", + "owner": "chessai", + "repo": "nix-std", + "rev": "715db541ffff4194620e48d210b76f73a74b5b5d", + "type": "github" + }, + "original": { + "owner": "chessai", + "repo": "nix-std", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1702272962, + "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "master", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-lib": { + "locked": { + "dir": "lib", + "lastModified": 1701253981, + "narHash": "sha256-ztaDIyZ7HrTAfEEUt9AtTDNoCYxUdSd6NrRHaYOIxtk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e92039b55bcd58469325ded85d4f58dd5a4eaf58", + "type": "github" + }, + "original": { + "dir": "lib", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-lib_2": { + "locked": { + "dir": "lib", + "lastModified": 1701253981, + "narHash": "sha256-ztaDIyZ7HrTAfEEUt9AtTDNoCYxUdSd6NrRHaYOIxtk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e92039b55bcd58469325ded85d4f58dd5a4eaf58", + "type": "github" + }, + "original": { + "dir": "lib", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1681358109, + "narHash": "sha256-eKyxW4OohHQx9Urxi7TQlFBTDWII+F+x2hklDOQPB50=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "96ba1c52e54e74c3197f4d43026b3f3d92e83ff9", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { + "locked": { + "lastModified": 1674990008, + "narHash": "sha256-4zOyp+hFW2Y7imxIpZqZGT8CEqKmDjwgfD6BzRUE0mQ=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d2bbcbe6c626d339b25a4995711f07625b508214", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { + "locked": { + "lastModified": 1703438236, + "narHash": "sha256-aqVBq1u09yFhL7bj1/xyUeJjzr92fXVvQSSEx6AdB1M=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "5f64a12a728902226210bf01d25ec6cbb9d9265b", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "osmosis-src": { + "flake": false, + "locked": { + "lastModified": 1702398856, + "narHash": "sha256-4uLO7izIZ8JvKTfUXbYkxQFpIjwMEcO81WvhklrzI9E=", + "owner": "osmosis-labs", + "repo": "osmosis", + "rev": "b0aee0006ce55d0851773084bd7880db7e32ad70", + "type": "github" + }, + "original": { + "owner": "osmosis-labs", + "ref": "v21.0.0", + "repo": "osmosis", + "type": "github" + } + }, + "provenance-src": { + "flake": false, + "locked": { + "lastModified": 1699901286, + "narHash": "sha256-dTX3kg2QUsC9SwsaommP4IFgIdQgWZrGQNtp/B+fzys=", + "owner": "provenance-io", + "repo": "provenance", + "rev": "91b0813de2f93d03cefe8efb226dc32f02690840", + "type": "github" + }, + "original": { + "owner": "provenance-io", + "ref": "v1.17.0", + "repo": "provenance", + "type": "github" + } + }, + "regen-src": { + "flake": false, + "locked": { + "lastModified": 1645832054, + "narHash": "sha256-lDb0/Bw4hAX71jsCQJUju1mKYNacWEVezx6+KdIdu6Q=", + "owner": "regen-network", + "repo": "regen-ledger", + "rev": "5fb6268ed18a488ab88fb3bfa4b84e10892a7562", + "type": "github" + }, + "original": { + "owner": "regen-network", + "ref": "v3.0.0", + "repo": "regen-ledger", + "type": "github" + } + }, + "relayer-src": { + "flake": false, + "locked": { + "lastModified": 1635197290, + "narHash": "sha256-xD+xZG4Gb6557y/jkXTGdbt8qJ6izMgC4H3uo2/j5vU=", + "owner": "cosmos", + "repo": "relayer", + "rev": "7797aa103af68faa4269af586fe6df1d30e91d4a", + "type": "github" + }, + "original": { + "owner": "cosmos", + "ref": "v1.0.0", + "repo": "relayer", + "type": "github" + } + }, + "root": { + "inputs": { + "cosmos": "cosmos", + "flake-parts": "flake-parts_2", + "gomod2nix": "gomod2nix_2", + "nixpkgs": "nixpkgs_4" + } + }, + "rust-overlay": { + "inputs": { + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1702347444, + "narHash": "sha256-ueDw7aQf4Xyk69XnDD0YNWDlFdlOgJGPeWFa7uu/cfw=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "bc13176f27cf3be724d18924b4f6aa47686ca2e3", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, + "sbt-derivation": { + "inputs": { + "flake-utils": "flake-utils_3", + "nixpkgs": "nixpkgs_3" + }, + "locked": { + "lastModified": 1698464090, + "narHash": "sha256-Pnej7WZIPomYWg8f/CZ65sfW85IfIUjYhphMMg7/LT0=", + "owner": "zaninime", + "repo": "sbt-derivation", + "rev": "6762cf2c31de50efd9ff905cbcc87239995a4ef9", + "type": "github" + }, + "original": { + "owner": "zaninime", + "repo": "sbt-derivation", + "type": "github" + } + }, + "sconfig-src": { + "flake": false, + "locked": { + "lastModified": 1679585941, + "narHash": "sha256-ywh9IcqMWbRHqJkGJezcDCvfbBYNJH7ualKvPJQRcHA=", + "owner": "freshautomations", + "repo": "sconfig", + "rev": "41450b55f3b37b4b7a0fdf4a69c707619dbeb47c", + "type": "github" + }, + "original": { + "owner": "freshautomations", + "repo": "sconfig", + "type": "github" + } + }, + "sentinel-src": { + "flake": false, + "locked": { + "lastModified": 1647195309, + "narHash": "sha256-+ZobsjLNxVL3+zi6OEFQhff6Gbd9kng8B0haqcOoiP0=", + "owner": "sentinel-official", + "repo": "hub", + "rev": "7001dc8bc4517efa33cfcc83e8b127528b5bdf2e", + "type": "github" + }, + "original": { + "owner": "sentinel-official", + "ref": "v0.9.0-rc0", + "repo": "hub", + "type": "github" + } + }, + "sifchain-src": { + "flake": false, + "locked": { + "lastModified": 1648486445, + "narHash": "sha256-n5fmWtdrc0Rhs6Uo+zjcSXmyEFVIsA5L9dlrbRXGDmU=", + "owner": "Sifchain", + "repo": "sifnode", + "rev": "269cfadf6a4c08879247c2b8373323ae7239a425", + "type": "github" + }, + "original": { + "owner": "Sifchain", + "ref": "v0.12.1", + "repo": "sifnode", + "type": "github" + } + }, + "stargaze-src": { + "flake": false, + "locked": { + "lastModified": 1645539964, + "narHash": "sha256-5I5pdnBJHwNaI2Soet+zH3aH+pUbYdC9TgHBjOd1TmA=", + "owner": "public-awesome", + "repo": "stargaze", + "rev": "6ee57f18714a6d94cc6205afcd1af2ab655f8f0f", + "type": "github" + }, + "original": { + "owner": "public-awesome", + "ref": "v3.0.0", + "repo": "stargaze", + "type": "github" + } + }, + "stoml-src": { + "flake": false, + "locked": { + "lastModified": 1666796497, + "narHash": "sha256-Adjag1/Hd2wrar2/anD6jQEMDvUc2TOIG7DlEgxpTXc=", + "owner": "freshautomations", + "repo": "stoml", + "rev": "4b2cd09b5795a54fddc215f0d24e24071894b3cf", + "type": "github" + }, + "original": { + "owner": "freshautomations", + "repo": "stoml", + "type": "github" + } + }, + "stride-consumer-src": { + "flake": false, + "locked": { + "lastModified": 1689464372, + "narHash": "sha256-DByig9ISs9x9Kvakc8LFL558VKhM+UBiaESWgyVzI0w=", + "owner": "Stride-Labs", + "repo": "stride", + "rev": "bbf0bb7f52878f3205c76bb1e96662fe7bd7af8d", + "type": "github" + }, + "original": { + "owner": "Stride-Labs", + "ref": "v12.1.0", + "repo": "stride", + "type": "github" + } + }, + "stride-src": { + "flake": false, + "locked": { + "lastModified": 1679819302, + "narHash": "sha256-fdjnFHPBZNnhDyVoMuPfqNb6YUYRdcMO73FlZHjIuzA=", + "owner": "Stride-Labs", + "repo": "stride", + "rev": "3c69e7644859981b1fd9313eb1f0c5e5886e4a0d", + "type": "github" + }, + "original": { + "owner": "Stride-Labs", + "ref": "v8.0.0", + "repo": "stride", + "type": "github" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_2": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_3": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "umee-src": { + "flake": false, + "locked": { + "lastModified": 1649261156, + "narHash": "sha256-hydRL/88fHCW/k7z7GoqAwvynZuvLEDLyA6A9Cm+6UY=", + "owner": "umee-network", + "repo": "umee", + "rev": "42f57545251ce5337dcc5fe4309520ead89183b9", + "type": "github" + }, + "original": { + "owner": "umee-network", + "ref": "v2.0.0", + "repo": "umee", + "type": "github" + } + }, + "wasmd-src": { + "flake": false, + "locked": { + "lastModified": 1669987561, + "narHash": "sha256-F0p555FEeA405tuLn82yUEbRZpJLs85GrUKvSrjTdjk=", + "owner": "CosmWasm", + "repo": "wasmd", + "rev": "a347ace2ff41539fe06c68168bc6f28d6ca9fa52", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v0.30.0", + "repo": "wasmd", + "type": "github" + } + }, + "wasmd_next-src": { + "flake": false, + "locked": { + "lastModified": 1682094944, + "narHash": "sha256-b+6XhBdKyQlrzsYxVRrDf4vHpv8GAJkGwHVfJ9sdf3U=", + "owner": "CosmWasm", + "repo": "wasmd", + "rev": "c2bb27d289f7f72f1471a4b33cb08fdfc8d66f63", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v0.40.0-rc.1", + "repo": "wasmd", + "type": "github" + } + }, + "wasmvm_1-src": { + "flake": false, + "locked": { + "lastModified": 1652698028, + "narHash": "sha256-4m64mPwFLz7aZEKVxM2lJQtX98BkhdKTZb3evpDOk/4=", + "owner": "CosmWasm", + "repo": "wasmvm", + "rev": "bc49a2f4842d023c0038798f343b56f3f0530646", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v1.0.0", + "repo": "wasmvm", + "type": "github" + } + }, + "wasmvm_1_1_1-src": { + "flake": false, + "locked": { + "lastModified": 1663600745, + "narHash": "sha256-9K/G7Wu/TfW4Z+lseEutXbdtr+A40nbVejBphegF5z4=", + "owner": "CosmWasm", + "repo": "wasmvm", + "rev": "3d791055751e428f93f54f64c2d20d20da2ff2a9", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v1.1.1", + "repo": "wasmvm", + "type": "github" + } + }, + "wasmvm_1_1_2-src": { + "flake": false, + "locked": { + "lastModified": 1681833975, + "narHash": "sha256-EbzMNkZUO94jEdX0WgAdy5qfhlCG3lpHpVHyT2FcSDw=", + "owner": "CosmWasm", + "repo": "wasmvm", + "rev": "4f84395b1c623483a3c7936c990c2f7e5dad70d8", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v1.1.2", + "repo": "wasmvm", + "type": "github" + } + }, + "wasmvm_1_2_3-src": { + "flake": false, + "locked": { + "lastModified": 1681831436, + "narHash": "sha256-GscUMJ0Tkg77S9IYA9komyKKoa1AyVXSSaU8hw3ZNwk=", + "owner": "CosmWasm", + "repo": "wasmvm", + "rev": "61e41ae2a80081224f469614a267b0ba2a2d305f", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v1.2.3", + "repo": "wasmvm", + "type": "github" + } + }, + "wasmvm_1_2_4-src": { + "flake": false, + "locked": { + "lastModified": 1685977963, + "narHash": "sha256-/GOvkKLQwsPms7h7yEZYLwbZn9Lzk5qQnBXXoZ/R6JM=", + "owner": "CosmWasm", + "repo": "wasmvm", + "rev": "ba491fe9a663e0b45728dd5f0c43f6a93c97f5fe", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v1.2.4", + "repo": "wasmvm", + "type": "github" + } + }, + "wasmvm_1_3_0-src": { + "flake": false, + "locked": { + "lastModified": 1689589428, + "narHash": "sha256-rsTYvbkYpDkUE4IvILdSL3hXMgAWxz5ltGotJB2t1e4=", + "owner": "CosmWasm", + "repo": "wasmvm", + "rev": "71a9c0dc0ecf9623148e82facb3564fbbf0a896f", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v1.3.0", + "repo": "wasmvm", + "type": "github" + } + }, + "wasmvm_1_5_0-src": { + "flake": false, + "locked": { + "lastModified": 1698746477, + "narHash": "sha256-l0cNF0YjviEl/JLJ4VdvDtIGuAYyFfncVo83ROfQFD8=", + "owner": "CosmWasm", + "repo": "wasmvm", + "rev": "2041b184c146f278157d195361bc6cc6b56cc9d4", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v1.5.0", + "repo": "wasmvm", + "type": "github" + } + }, + "wasmvm_1_beta7-src": { + "flake": false, + "locked": { + "lastModified": 1646675433, + "narHash": "sha256-tt9aAPLxtIRsG1VFM1YAIHSotuBl170EiBcHSWTtARI=", + "owner": "CosmWasm", + "repo": "wasmvm", + "rev": "f7015565a59255cd09ebfcbf9345f3c87666fedd", + "type": "github" + }, + "original": { + "owner": "CosmWasm", + "ref": "v1.0.0-beta7", + "repo": "wasmvm", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} \ No newline at end of file diff --git a/flake.nix b/flake.nix new file mode 100644 index 000000000..fd77c004f --- /dev/null +++ b/flake.nix @@ -0,0 +1,88 @@ +{ + description = "composable-cosmos"; + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + gomod2nix = { + url = github:nix-community/gomod2nix; + inputs.nixpkgs.follows = "nixpkgs"; + }; + cosmos = { + url = "github:informalsystems/cosmos.nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + }; + outputs = inputs @ { + flake-parts, + gomod2nix, + cosmos, + self, + ... + }: + flake-parts.lib.mkFlake {inherit inputs;} { + imports = [ + ]; + systems = ["x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin"]; + perSystem = { + config, + self', + inputs', + pkgs, + system, + ... + }: let + inherit (inputs.gomod2nix.legacyPackages.${system}) buildGoApplication mkGoEvn gomod2nix; + libwasmvm = cosmos.packages.${system}.libwasmvm_1_5_0; + cosmwasm-check = cosmos.packages.${system}.cosmwasm-check; + cosmosLib = cosmos.lib {inherit pkgs cosmwasm-check;}; + in { + formatter = pkgs.alejandra; + devShells = { + default = pkgs.mkShell { + buildInputs = with pkgs; [ + bingo + gci + gnumake + go + delve + golangci-lint + gomod2nix + gotools + libwasmvm + ]; + }; + }; + + packages = rec { + centaurid = buildGoApplication rec { + pname = "centaurid"; + version = "v7.0.0"; + src = ./.; + subPackages = ["cmd/${pname}"]; + modules = ./gomod2nix.toml; + preFixup = '' + ${cosmosLib.wasmdPreFixupPhase libwasmvm pname} + ''; + checkPhase = "true"; + buildInputs = [libwasmvm]; + ldflags = '' + -X github.com/cosmos/cosmos-sdk/version.Name=centauri -X github.com/cosmos/cosmos-sdk/version.AppName=${pname} -X github.com/cosmos/cosmos-sdk/version.Version=${version} -X github.com/cosmos/cosmos-sdk/version.Commit=${self.rev or self.dirtyRev or "dirty"} -X github.com/cometbft/cometbft/version.TMCoreSemVer=v0.37.2 + ''; + }; + default = ci; + ci = pkgs.writeShellApplication { + name = "ci"; + text = '' + go get mvdan.cc/gofumpt + go get github.com/client9/misspell/cmd/misspell + go get golang.org/x/tools/cmd/goimports + make lint + nix fmt + go mod tidy + golangci-lint run --fix + gomod2nix + ''; + }; + }; + }; + }; +} diff --git a/x/transfermiddleware/ibc_ante_test.go b/x/transfermiddleware/ibc_ante_test.go index 0ba0b9c33..da9aafd9f 100644 --- a/x/transfermiddleware/ibc_ante_test.go +++ b/x/transfermiddleware/ibc_ante_test.go @@ -15,7 +15,12 @@ import ( customibctesting "github.com/notional-labs/composable/v6/app/ibctesting" ) -var govAuthorityAddress = "centauri10556m38z4x6pqalr9rl5ytf3cff8q46nk85k9m" // convert from: centauri10556m38z4x6pqalr9rl5ytf3cff8q46nk85k9m +// NOTE: This is the address of the gov authority on the chain that is being tested. +// This means that we need to check bech32 .... everywhere. +var govAuthorityAddress = "cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn" + +// ORIGINAL NOTES: +// convert from: centauri10556m38z4x6pqalr9rl5ytf3cff8q46nk85k9m type TransferTestSuite struct { suite.Suite @@ -55,7 +60,9 @@ func (suite *TransferTestSuite) SetupTest() { suite.wasmKeeper = suite.chainB.GetTestSupport().Wasm08Keeper() msg := wasmtypes.NewMsgPushNewWasmCode(govAuthorityAddress, wasmContract) + response, err := suite.wasmKeeper.PushNewWasmCode(suite.ctx, msg) + suite.Require().NoError(err) suite.Require().NotNil(response.CodeId) suite.coordinator.CodeID = response.CodeId diff --git a/x/transfermiddleware/types/parachain_token_info.pb.go b/x/transfermiddleware/types/parachain_token_info.pb.go index ea33c7e44..854ea11c0 100644 --- a/x/transfermiddleware/types/parachain_token_info.pb.go +++ b/x/transfermiddleware/types/parachain_token_info.pb.go @@ -28,7 +28,7 @@ var _ = time.Kitchen const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package // ParachainIBCTokenInfo represents information about transferable IBC tokens -// from Parachain. +// from Parachain(Substrate based network). type ParachainIBCTokenInfo struct { // ibc_denom is the denomination of the ibced token transferred from the // dotsama chain.