Circles v2: Open Community Deployment Ceremony
Hey Circles!
We’re about to launch Circles v2, and we want everyone to be part of it. So, we’re turning the deployment into an open ceremony where anyone can join in.
How to Join the Ceremony (overview)
- Check out the deployment instructions in the README. More details below too.
- Deploy the
rc-v1.0.0-beta
(commit bb1ed9a) contracts to Gnosis Chain (with the script). - Share your deployment details in this HackMD file - there is no login required, so please play nice
- You can join in with your name or stay anonymous - up to you!
Picking the “Official” Deployment
[UPDATE]: if people want to search for a vanity address for Hub.sol that is for sure appreciated, so if you have some compute power idle this weekend, please give it a try. A great vanity address will take precedence over the random selection (yes this will be a bit subjective, but unlikely to cause a dispute as it’s not so easy to find more than 6 characters). Failing to find a good vanity address we can fall back to the random selection of the original ceremony. Open deployment ceremony for Circles v2 - #5 by Ben
We’ll choose one deployment to be the official one. We’ll do this by looking at all the (correctly deployed) Hub.sol
addresses and picking the one “closest” to a the first Gnosis Chain block hash on Monday morning (14 October 2024 00:00:01 UTC). This way we ensure picking a verifiably random community deployment. Again, more details below.
So please, if you want to participate you should do so from now, till latest Sunday. We understand that this is a small window, but Circles’ 4th anniversary is coming up on Tuesday 15 October, so we want to have all our ducks in order by then. Thanks for understanding .
Come Be Part of It
Whether you’re into coding or just curious about how this works, you’re welcome to join in. This is a chance for all of us to launch Circles v2 together.
Got questions? Just ask here in the thread.
Thanks for being part of Circles all these years (or newly joined) !
About Circles ambassadors team
Now some more detailed instructions on how to contribute your deployment
You will need:
- A computer with some software installed (js/node, forge, git)
- A private key with some (less than 1) XDAI on Gnosis Chain mainnet. If you want to remain anonymous, consider whether this account has been linked to you in the past (indirectly).
We’ll summarize the relevant steps that are also in the README file.
Step 1: Set Up Your Environment
- Install Foundry if you haven’t already.
- Clone the repository:
git clone https://github.com/aboutcircles/circles-contracts-v2 cd circles-contracts-v2
- Checkout the specific commit:
git checkout rc-v1.0.0-beta
- Install dependencies:
forge install
- Already build and test the code
forge build forge test
Step 2: Prepare for Deployment
- Copy
.env.example
to.env
:cp .env.example .env
- Edit
.env
and set your private key. Make sure this account has some XDAI for gas fees. Specifically you only need to fill in your private key in that file:PRIVATE_KEY_GNOSIS=<YOUR_KEY_HERE>
Step 3: Deploy the Contracts
- Run the deployment script for Gnosis Chain mainnet - CORRECTION: also run npm install:
cd script/deployments/ npm install gnosisChainDeploy.sh
- The script will generate text files with deployment information. These files will be in a new directory:
script/deployments/gnosischain-rc-1.0.0-beta-bb1ed9a-<day>-<time>/
Step 4: Report Your Deployment
- Go to the HackMD file we’ve set up for the ceremony. No login is required, so you can access this shared notebook anonymously.
- Copy the content of the two important text files generated during deployment from the deployment folder (see above). Specifically you want to share the content of:
gnosischain-artefacts-<identifier>.txt
with verification data for each deployed contract- and
gnosischain-<identifier>.log
with a better human-readable summary of the deployment
- Append this information into the HackMD file, respecting the other content already there.
- If you wish, you can add a nickname or stay anonymous. No need to write more, we just need a list of deployed addresses to make our life easier.
Step 5: Verification
As soon as a first deployment is reported, we’ll make sure it is verified, and then all following deployments should automatically get recognised by gnosisscan.io or gnosis.blockscout.com as well.
Important Technical Notes
- The deployment we’ll use will be chosen based on the
Hub.sol
address closest to the first Gnosis Chain block hash on Monday, October 14, 2024, at 00:00:01 UTC. (Closest will be determined as the Kademlia XOR “randomised distance”) - Make sure your deployment is complete and correct. Only valid deployments will be considered.
- If you encounter any issues or have questions during the process, please ask in this thread. We’re here to help! Or connect over telegram @about_circles
Thank you for participating in our open deployment ceremony for Circles. Your involvement helps ensure a continued open community of people building Circles together!