#!/bin/bash PROGRAM="$(basename $0)" title(){ echo "Arching Kaos Configuration Tool" echo "===============================" } usage(){ title echo "" echo "Usage: $PROGRAM [ show | publish | get-published ]" echo "" echo " show Show current configuration (from FileSystem)" echo " publish Publish current configuration" echo " get-published Get published ak-config (from IPFS)" echo "" exit 0 } show(){ echo ' { "profile":'$(ak-profile index | jq -cM)', "genesis":"'$(cat $HOME/.arching-kaos/config/zgenesis)'", "gpg":"'$GPG_PUB_KEY'", "zchain":"'$(cat $HOME/.arching-kaos/config/zchain)'", "zlatest":"'$(ak-get-zlatest)'" }'; } publish(){ show | jq -c -M > tmpfile ipfs key list | grep ak-config 2> /dev/null 1>&2 if [ "$?" -ne 0 ] then ipfs key gen ak-config fi ak-ipfs-name-publish --key=ak-config /ipfs/$(ak-ipfs-add tmpfile) if [ "$?" != 0 ] then echo -e "\033[0;34mError on publishing\033[0;0m\nYour information:\n" cat tmpfile exit 1 fi rm tmpfile } published(){ ak-ipfs-cat $(ak-akid-get-ipfs-hash) | jq -c } # We will be using our public key also to put it in the block later KEY="tmp-gpg.pub" gpg2 --homedir $AK_GPGHOME --armour --output $KEY --export $AK_FINGERPRINT GPG_PUB_KEY=$(ak-ipfs-add $KEY) rm $KEY if [ ! -z $1 ]; then case $1 in show) show;exit;; publish) publish;exit;; get-published) published;exit;; *) usage;exit;; esac else usage fi