menu

Aragon

Aragon is the most powerful and modular way to run DAOs

Channels
# All channels
view-forward
# Announcements
view-forward
# App development
view-forward
# Aragon Agent
view-forward
# Aragon Client
view-forward
# Aragon Connect
view-forward
# aragonOS
view-forward
# aragonUI
view-forward
# Feature requests
view-forward
Team

Multisig deploy

May 19, 2020 at 10:58pm
I am trying to use gnosis multisig to deploy a new dao using aragon devchain. How can I get the raw transaction data for the multisig to sign?

May 21, 2020 at 4:19pm
Hi , sorry for the delay. Creating a new DAO from Gnosis multisig may be a little bit tricky as some of the DAOs require multiple transactions. What template would like to use to create the DAO?
  • reply
  • like

May 22, 2020 at 3:17pm
yeah as I started looking into it I figured it may be easier to create the DAO and then send all funds to the multi-sig. I am using the company template so I just want to ensure that the multsig is the majority token holder when I first create the DAO. Since in this template all permissions are given to the voting app
  • reply
  • like

May 22, 2020 at 9:58pm
If you simply want to ensure the multisig gets the majority of tokens, you can set it up at the initialization of the template:
  • reply
  • like
like-fill
1
  • reply
  • like
Otherwise, it wouldn't probably be to difficult to create it from gnosis. I can definitely send you all the information you need on Monday.
  • reply
  • like

May 25, 2020 at 10:11pm
Hi , so if you want to create a DAO from the Company template, you can use the following ABI:
[{
"constant": false,
"inputs": [
{
"name": "_tokenName",
"type": "string"
},
{
"name": "_tokenSymbol",
"type": "string"
},
{
"name": "_id",
"type": "string"
},
{
"name": "_holders",
"type": "address[]"
},
{
"name": "_stakes",
"type": "uint256[]"
},
{
"name": "_votingSettings",
"type": "uint64[3]"
},
{
"name": "_financePeriod",
"type": "uint64"
},
{
"name": "_useAgentAsVault",
"type": "bool"
}
],
"name": "newTokenAndInstance",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
}]
This is actually only the newTokenAndInstance() function but it should be the only function needed in your case. You can get the full ABI by compiling the solidity project.
The address of the contract on Rinkeby is 0xA3809a525B92a8A290E5d704f9Be6B5046506A7b. And the address on mainnet is 0xd737632caC4d039C9B0EEcc94C12267407a271b5. Those address can be found in the deployments repo.
Edited
  • reply
  • like
For the parameters, you can have a look at the source code for their description but it's basically this:
  • reply
  • like
_tokenName: New token name for the Token Manager _tokenSymbol: New token's symbol _id: You DAO's name. (i.e. the first part of ...aragonid.eth) _holders: List of recipient's addresses for the token. _stakes: Respective number of tokens of each recipients. Array must be the same length as _holders. The number must also be multiplied by 10^18. E.g. 1 token == 1000000000000000000 _votingSettings: An array of the 3 settings for the Voting app: min support, quorum and vote duration (in seconds). E.g. Support of 50% == 500000000000000000, Quorum of 15% == 150000000000000000 and vote duration of 7 days == 604800 _financePeriod:: Duration for accounting periods. (Default is 30 days) _useAgentAsVault: Whether to install the Agent app or not.
  • reply
  • like