=============================================== ElectrumFairChainsX - Reimplementation of ElectrumX Server
For a future network with bigger blocks.
- Licence: MIT
- Language: Python (>= 3.6)
- Author: Sebastian Gampe
See https://electrumx.readthedocs.io/
Notice: The ElectrumX installation is partionally different ! For Installation follow the Installation instructions below
Recommend version 3.7.4
python3 -V to check your installed version
Download Python source ( gzipped or tar.gz ) https://www.python.org/downloads/release/python-374/ and extract it
tar -xvf Python-3.7.4.tgz cd Python-3.7.4 ./configure make sudo make install alternatively sudo make altinstall
sudo pip3 install aiorpcx sudo pip3 install attrs sudo pip3 install plyvel sudo pip3 install pylru sudo pip3 install aiohttp python3 setup.py build sudo python3 setup.py install create a SSL Certificate in fairchains data folder to be able to provide SSL support.
sudo apt-get update sudo apt-get install openssl cd ~/.fairchains openssl genrsa -out electrumx.key 2048 openssl req -new -key electrumx.key -out electrumx.csr openssl x509 -req -days 1825 -in electrumx.csr -signkey electrumx.key -out electrumx.crt Example:
# netname selects the fairchain to use netname=FairCoinXchain # electrumX can only be used when FairChain txindex is enabled txindex=1 # connection parameter for JSON-RPC / API # ALL of this 4 parameters are mandatory to use electrumfairchainsX rpcconnect=127.0.0.1 rpcport=8399 rpcuser=fairchains rpcpassword=FDFfd2!§2sa The JSON-File will created by the fairchains-tool ( https://github.com/FairChains/fairchains )
If you are not the creator of an public FairChain then you can try to get it from fairchains-collection repository ( https://github.com/TonyFord/fairchains-collection.git ) or ask the creator.
The creator of FairChain must ensure that some PEERS are available and default ports are known. For this purposes the creator should create a <myFairChain>.electrumx.json file.
Example:
{ "PEER_DEFAULT_PORTS" : { "t": "52811", "s": "52812" }, "PEERS" : [ "electrum.example.co s", "electrumfair.example.org s" ], "SERVICES" : [ "rcp://127.0.0.1:8002", "ssl://<server.example.org:52812>" ], "REPORT_SERVICES" : [ "ssl://<electrum.example.co>:52812" ] } SERVICES should be the address of the server where peers/clients can connect. It is recommend to use the default ports for the services, see PEER_DEFAULT_PORTS REPORT_SERVICES is the address to a peer where the SERVICES will reported.
If you are not the creator of an public FairChain then you can try to get it from fairchains-collection repository ( https://github.com/TonyFord/fairchains-collection.git ) or ask the creator.
description from forked source
| Variable | electrumx | electrumfairchainsx |
|---|---|---|
fairchains_path | - | /home/USERNAME/.fairchains/commandline --fairchains-path <yourpath> |
path_to_fairchains_json | - | (fairchains_path)/<your_fairchain_name>.json |
DB_DIRECTORY | Environment | (fairchains_path)/<your_fairchain_name>.electrumX |
DAEMON_URL | Environment | <rpcuser>:<rpcpassword>@<rpcconnect>:<rpcport> get from fairchains.conf |
COIN | Environment | FairChains |
SERVICES | Environment | SERVICES get from (fairchains_path)/<your_fairchain_name>.electrumx.json |
REPORT_SERVICES | Environment | REPORT_SERVICES get from (fairchains_path)/<your_fairchain_name>.electrumx.json |
SSL_KEYFILE | Environment | (fairchains_path)/electrumx.key |
SSL_CERTFILE | Environment | (fairchains_path)/electrumx.crt |
sudo adduser <username> sudo usermod -aG sudo <username> https://www.digitalocean.com/community/tutorials/how-to-create-a-sudo-user-on-ubuntu-quickstart