astroport/zen/ipns_TAG_refresh.sh

65 lines
2.2 KiB
Bash
Executable File

#!/bin/bash
########################################################################
# Author: Fred (support@qo-op.com)
# Version: 2020.04.28
# 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##*/}"
########################################################################
# \\///
# qo-op
############# '$MY_PATH/$ME'
########################################################################
# ex: ./'$ME'
# SYNC IPFS SWARM PEERS SHARED DATA .12D3KooW****
########################################################################'
########################################################################
# ENVIRONEMENT DETECTION + IPFS ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_info
########################################################################
IPFSNODEID=$(ipfs id -f='<id>\n')
[[ $IPFSNODEID == "" ]] && echo "ERROR missing IPFS Node id !! IPFS is not installed !?" && exit 1
########################################################################
[[ ! -f ~/.ssb/secret.dunikey ]] && $MY_PATH/tools/secret2dunikey.sh
G1PUB=$(cat ~/.ssb/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2)
########################################################################
echo '
_ _ _ _
/ \ / \ / \ / \
( I | P | N | S )
\_/ \_/ \_/ \_/
ZENTAG REFRESH
'
echo "I am /ipns/$IPFSNODEID controling and refreshing my ZenTag"
count=0
[[ ! -d ~/.zen/tag/ ]] && exit 1
for id in ~/.zen/tag/*; # Alternative search
do
count=$((count+1))
ipnskey=$(cat $id/_tag.uid)
zenvalue=$(cat $id/_tag.zen)
passengername=$(cat $id/_passenger.filename)
echo "ZenTag $count : $ipnskey ($zenvalue Zen) $passengername"
# TODO: Add control to alert ZenTags strange behaviour
# TODO :SECURITY BREACH: DO NOT PUBLISH _QRCODE.write.png !!!
I=$(ipfs add -qr ${id} | tail -n 1)
# ZenTag IPNS name publish
Tkey=$(ipfs key list | grep -F ${ipnskey}.key)
J=$(ipfs name publish -k ${Tkey} --quieter /ipfs/${I})
echo "http://127.0.0.1/ipns/$J"
done