aboutsummaryrefslogtreecommitdiff
path: root/bin/ak-config
diff options
context:
space:
mode:
Diffstat (limited to 'bin/ak-config')
-rwxr-xr-xbin/ak-config60
1 files changed, 60 insertions, 0 deletions
diff --git a/bin/ak-config b/bin/ak-config
new file mode 100755
index 0000000..bc06e49
--- /dev/null
+++ b/bin/ak-config
@@ -0,0 +1,60 @@
+#!/bin/bash
+PROGRAM="$(basename $0)"
+title(){
+ echo "Arching Kaos Configuration Tool"
+ echo "==============================="
+}
+usage(){
+ title
+ echo ""
+ echo "Usage: $PROGRAM [ <show> | <publish> ]"
+ 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":'$(profile index | json_pp)',
+ "genesis":"'$(cat $HOME/.arching-kaos/config/zgenesis)'",
+ "gpg":"'$GPG_PUB_KEY'",
+ "zchain":"'$(cat $HOME/.arching-kaos/config/zchain)'"
+}';
+}
+
+publish(){
+ show | json_pp > tmpfile
+ ipfs name publish --key=ak-config /ipfs/$(ipfs add -q 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(){
+ ipfs cat $(get_akid)
+}
+
+# We will be using our public key also to put it in the block later
+KEY="tmp-gpg.pub"
+gpg2 --armour --output $KEY --export $FINGERPRINT
+GPG_PUB_KEY=$(ipfs add -q $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