#!/bin/bash PROGRAM="$(basename $0)" _ak_config_title(){ echo "Arching Kaos Configuration Tool" echo "===============================" } _ak_config_usage(){ _ak_config_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 } _ak_config_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)'" }'; } _ak_config_publish(){ _ak_config_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 } _ak_config_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) _ak_config_show;exit;; publish) _ak_config_publish;exit;; get-published) _ak_config_published;exit;; *) _ak_config_usage;exit;; esac else _ak_config_usage fi