forked from axiom-team/astrXbian
102 lines
6.3 KiB
Bash
Executable File
102 lines
6.3 KiB
Bash
Executable File
#!/bin/bash
|
|
########################################################################
|
|
# Author:
|
|
# Version: 0.1
|
|
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
|
########################################################################
|
|
MY_PATH="`dirname \"$0\"`" # relative
|
|
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
|
ME="${0##*/}"
|
|
YOU=$(ps auxf --sort=+utime | grep -w ipfs | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d " " -f 1) && [[ ! $YOU ]] && echo "ipfs NOT RUNNING. EXIT" && exit 1
|
|
G1PUB=$(cat ~/.zen/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2) && [[ ! $G1PUB ]] && echo "ERREUR G1PUB. EXIT" && exit 1
|
|
IPFSNODEID=$(ipfs id -f='<id>\n')
|
|
[[ -f ~/.zen/ipfs/.$IPFSNODEID/_xbian.zuid ]] && AXID=$(cat ~/.zen/ipfs/.$IPFSNODEID/_xbian.zuid);
|
|
[[ -f ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title ]] && XZUID=$(cat ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title)
|
|
|
|
########################################################################
|
|
## MANAGE "Stargates" 1 to 5.
|
|
## Create and renew ~/.zen/key/
|
|
## Place them into ~/.zen/ipfs/.$IPFSNODEID/FRIENDS/*
|
|
########################################################################
|
|
|
|
[[ ! -d ~/.zen/key/ ]] && mkdir -p ~/.zen/key/1 ~/.zen/key/2 ~/.zen/key/3 ~/.zen/key/4 ~/.zen/key/5
|
|
|
|
########################################################################
|
|
## ipns key generation procedure
|
|
########################################################################
|
|
if [[ ! $(ipfs key list -l | grep "star_") ]]; then
|
|
[[ ! -d ~/.zen/key/ ]] && mkdir -p ~/.zen/key/1 ~/.zen/key/2 ~/.zen/key/3 ~/.zen/key/4 ~/.zen/key/5
|
|
stargate_1=$(ipfs key gen star_1) && key_1=$(ls -t ~/.ipfs/keystore/ | head -n 1) && cp ~/.ipfs/keystore/$key_1 ~/.zen/key/1/ && echo "$stargate_1" > ~/.zen/key/1/stargate
|
|
stargate_2=$(ipfs key gen star_2) && key_2=$(ls -t ~/.ipfs/keystore/ | head -n 1) && cp ~/.ipfs/keystore/$key_2 ~/.zen/key/2/ && echo "$stargate_2" > ~/.zen/key/2/stargate
|
|
stargate_3=$(ipfs key gen star_3) && key_3=$(ls -t ~/.ipfs/keystore/ | head -n 1) && cp ~/.ipfs/keystore/$key_3 ~/.zen/key/3/ && echo "$stargate_3" > ~/.zen/key/3/stargate
|
|
stargate_4=$(ipfs key gen star_4) && key_4=$(ls -t ~/.ipfs/keystore/ | head -n 1) && cp ~/.ipfs/keystore/$key_4 ~/.zen/key/4/ && echo "$stargate_4" > ~/.zen/key/4/stargate
|
|
stargate_5=$(ipfs key gen star_5) && key_5=$(ls -t ~/.ipfs/keystore/ | head -n 1) && cp ~/.ipfs/keystore/$key_5 ~/.zen/key/5/ && echo "$stargate_5" > ~/.zen/key/5/stargate
|
|
else
|
|
ipfs key list -l | grep "star_"
|
|
echo "IPNS star keys already existing... Please remove all 'star_*' ipns keys before running"
|
|
exit 1
|
|
fi
|
|
|
|
echo "******************************************************************"
|
|
echo "STARGATE1 http://127.0.0.1:8181/ipns/$(cat ~/.zen/key/1/stargate)"
|
|
echo "STARGATE2 http://127.0.0.1:8181/ipns/$(cat ~/.zen/key/2/stargate)"
|
|
echo "STARGATE3 http://127.0.0.1:8181/ipns/$(cat ~/.zen/key/3/stargate)"
|
|
echo "STARGATE4 http://127.0.0.1:8181/ipns/$(cat ~/.zen/key/4/stargate)"
|
|
echo "STARGATE5 http://127.0.0.1:8181/ipns/$(cat ~/.zen/key/5/stargate)"
|
|
echo "******************************************************************"
|
|
|
|
########################################################################
|
|
## ipns 5 stargates keys distribution to friends
|
|
########################################################################
|
|
for friendgate in $(ls -d ~/.zen/ipfs/.$IPFSNODEID/FRIENDS/*/); do
|
|
echo "*************************************************************"
|
|
fg1pub=$(echo $friendgate | cut -d '/' -f 8 )
|
|
stars=$(cat ${friendgate}stars.level)
|
|
echo "OPENING $stars STARGATES"
|
|
echo "FRIEND : $fg1pub"
|
|
echo "$friendgate"
|
|
|
|
[[ "$stars" == "" && "$fg1pub" != "" ]] && echo "NO STAR NO FRIEND" && rm -Rf ~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub && continue
|
|
|
|
# DELETE OLD TRANSMITED STARGATES IPNS LINKS
|
|
rm -f ~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate*
|
|
|
|
# DISTRIBUTE ENCRYPT AND PUBLISH NEW STARGATES KEY
|
|
case $stars in
|
|
1)
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/1/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate1.encrypt"
|
|
;;
|
|
2)
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/1/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate1.encrypt"
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/2/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate2.encrypt"
|
|
;;
|
|
3)
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/1/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate1.encrypt"
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/2/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate2.encrypt"
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/3/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate3.encrypt"
|
|
;;
|
|
4)
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/1/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate1.encrypt"
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/2/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate2.encrypt"
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/3/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate3.encrypt"
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/4/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate4.encrypt"
|
|
;;
|
|
5)
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/1/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate1.encrypt"
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/2/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate2.encrypt"
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/3/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate3.encrypt"
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/4/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate4.encrypt"
|
|
$MY_PATH/tools/natools.py encrypt -p $fg1pub -i ~/.zen/key/5/stargate -o "~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/stargate5.encrypt"
|
|
;;
|
|
esac
|
|
ls ~/.zen/ipfs/.$IPFSNODEID/FRIENDS/$fg1pub/
|
|
echo "http://127.0.0.1:8181/ipns/$IPFSNODEID/.$IPFSNODEID/FRIENDS/$fg1pub/"
|
|
echo ""
|
|
done
|
|
|
|
# REFRESH IPNS SELF PUBLISH
|
|
########################################################################
|
|
~/.zen/astrXbian/zen/ipns_self_publish.sh
|
|
########################################################################
|
|
exit 0
|