Skip to content

Instantly share code, notes, and snippets.

View d10r's full-sized avatar

Didi d10r

View GitHub Profile
#!/bin/bash
# adjusts remotes of local repo if forking after clone (move origin -> upstream, add fork as origin)
set -u
set -e
die () {
echo >&2 "### $@"
exit 1
@d10r
d10r / ipfs_sync_remote.sh
Last active March 30, 2017 21:00
Remote part of a simple ipfs replication solution. To be executed by a cronjob
#/bin/bash
set -e
set -u
# that's where my ipfs executable currently lives
PATH=$PATH:/usr/local/bin/
LOCAL_PINS_FILE="$HOME/.ipfs/pinned.list"
@d10r
d10r / ipfs_sync_local.sh
Created March 30, 2017 20:59
Local part of a simple ipfs replication solution. To be executed by a cronjob
#!/bin/bash
# Checks the locally pinned files against a previously persisted.
# If something changed, the updated list file is pushed to a given server (needs to be ssh accessible without password).
# Finally, the new list is persisted locally.
# Note that the local ipfs daemon needs to be running in order for the server to be able to fetch.
# The local ipfs config may be restricted to connect only to that server (add as only Bootstrap node and disable discovery).
set -e
set -u

Keybase proof

I hereby claim:

  • I am d10r on github.
  • I am d10r (https://keybase.io/d10r) on keybase.
  • I have a public key ASAxWoUozAPxm1_2D1h8iuMAXFFX9D88s7NJ5AfWUquUeAo

To claim this, I am signing this object:

@d10r
d10r / artis_monitor_running.sh
Created July 18, 2020 11:34
minimal script for stateless monitoring/alerting (stall detection) for an Ethereum/ARTIS node via its RPC interface
#!/bin/bash
# Statelessly checks if the given chain (identified by its rpc) is running.
# Definition of running: the most recent block was authored less than the given number of seconds ago
#
# argument $1: URL to the RPC node to query
# argument $2: threshold for how old - in seconds - the most recent block may be. If older, the chain is considered as not running
# argument $3: space separated list of recipients the Email alert should go to
#
# Note that this script is not designed to give any feedback about what's wrong in case it fails. It just sounds an alarm if it doesn't run through as expected.
@d10r
d10r / attestation.txt
Created March 29, 2021 20:43
ZKOPRU trusted setup attestation
I contributed to the ZKOPRU Trusted Setup Multi-Party Ceremony.
The following are my contribution signatures:
Circuit: zk_transaction_1_2
Contributor # 145
Hash: 3e7767e1 8634a9de 10ec121f 5f354775
8e0dd9e1 5b46e875 4a5201a7 1708bb9d
282e48d0 19784e6c 2cab7391 b5f0cf45
5bc3a9d1 f89cfde3 aab2e5b8 e92d170e
@d10r
d10r / README.txt
Created April 30, 2021 08:57
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.1+commit.df193b15.js&optimize=false&runs=200&gist=
REMIX EXAMPLE PROJECT
Remix example project is present when Remix loads very first time or there are no files existing in the File Explorer.
It contains 3 directories:
1. 'contracts': Holds three contracts with different complexity level, denoted with number prefix in file name.
2. 'scripts': Holds two scripts to deploy a contract. It is explained below.
3. 'tests': Contains one test file for 'Ballot' contract with unit tests in Solidity.
SCRIPTS
@d10r
d10r / balancecheck.py
Created January 11, 2022 21:18
checks the balance of an account on an EVM chain and reports it via a Webhook (tested with Discord)
# checks the balance of the given account and reports it via webhook
# usage:
# python3 balancecheck.py <account> <min_balance>
# ENV vars: RPC, WEBHOOK
import requests
import sys
import os
account = sys.argv[1]
@d10r
d10r / hdkeys.js
Created February 5, 2022 21:35
exploring HD key derivation
/*
BIP32 - Hierarchical Deterministic Wallet defines the semantics of a derivation path
This is some examples for paths mapped to Ethereum addresses
0 invalid (must start with m)
m 0x9b4aeeec68a20e186e98a404312869ff3330eac3
m' 0x9b4aeeec68a20e186e98a404312869ff3330eac3 (there's only 1 master)
m/ invalid
m/0 0x80e76859d6615e17c3fef155903fa9062c7bacc7 - this is the default account (child 0)
{
"schema-version": "1",
"name": "sentinel-threshold",
"networks": {
"137": {
"comment": "Polygon: USDCx 0.01/month",
"thresholds": [{
"address": "0xCAa7349CEA390F89641fe306D93591f87595dc1F",
"above": "3858024691"
}]