aboutsummaryrefslogtreecommitdiff
path: root/lib/_ak_config
diff options
context:
space:
mode:
Diffstat (limited to 'lib/_ak_config')
-rwxr-xr-xlib/_ak_config48
1 files changed, 39 insertions, 9 deletions
diff --git a/lib/_ak_config b/lib/_ak_config
index 45d0112..085d79f 100755
--- a/lib/_ak_config
+++ b/lib/_ak_config
@@ -1,39 +1,69 @@
-#!/bin/bash
-source $AK_LIBDIR/_ak_node
+#!/usr/bin/env bash
+###
+### arching-kaos-tools
+### Tools to interact and build an Arching Kaos Infochain
+### Copyright (C) 2021 - 2025 kaotisk
+###
+### This program is free software: you can redistribute it and/or modify
+### it under the terms of the GNU General Public License as published by
+### the Free Software Foundation, either version 3 of the License, or
+### (at your option) any later version.
+###
+### This program is distributed in the hope that it will be useful,
+### but WITHOUT ANY WARRANTY; without even the implied warranty of
+### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+### GNU General Public License for more details.
+###
+### You should have received a copy of the GNU General Public License
+### along with this program. If not, see <http://www.gnu.org/licenses/>.
+###
+source $AK_LIBDIR/_ak_lib_load
+_ak_lib_load _ak_node
+_ak_lib_load _ak_fs
-_ak_config_show(){
+function _ak_config_show(){
# We will be using our public key also to put it in the block later
+ tempdir="$(_ak_make_temp_directory)"
+ cd $tempdir
KEY="self.pub"
ak-gpg --export-key-self-to-file
_ak_log_debug "$KEY"
GPG_PUB_KEY=$(_ak_ipfs_add $KEY)
rm $KEY
profile="$(ak-profile -l)"
-
echo '
{
"profile":'$profile',
"genesis":"'$(cat $AK_WORKDIR/config/zgenesis)'",
- "gpg":"'$GPG_PUB_KEY'",
+ "keymaps":'$(ak gpg -l 2>/dev/null | while read line; do ak gpg --export-key $line $line && ak fs --add $line | sed -e 's/.*/{"fingerprint":"'$line'","map":"&"},/' ; done | tr -d '\n'|sed 's/^/[/;s/,$/],/')'
+ "gpg":{
+ "ipfs":"'$GPG_PUB_KEY'",
+ "fingerprint":"'$(ak gpg --get-key-fingerprint-from-ipfs $GPG_PUB_KEY)'"
+ },
"zchain":"'$(cat $AK_WORKDIR/config/zchain)'",
"zlatest":"'$(ak zchain --get-latest)'"
}'| jq;
+ cd
+ rm -rf $tempdir
}
-_ak_config_publish(){
+function _ak_config_publish(){
_ak_config_show | jq -c -M > tmpfile
+ akfs_map_v3="$(_ak_fs_import tmpfile)"
ipfs_hash="$(_ak_ipfs_add tmpfile)"
_ak_ipfs_config_publish $ipfs_hash
if [ $? != 0 ]
then
- echo -e "\033[0;34mError on publishing\033[0;0m\nYour information:\n"
- cat tmpfile
+ _ak_log_error "Error on publishing"
+ _ak_log_debug "Your information:"
+ cat tmpfile | while read line; do _ak_log_debug "$line"; done
exit 1
fi
rm tmpfile
}
-_ak_config_published(){
+function _ak_config_published(){
_ak_ipfs_cat $(_ak_node_info_ipfs_hash) | jq
}
+_ak_log_debug "_ak_config loaded $(caller)"