#!/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 . ### ## ## Set or get settings for your instance ## ## Usage: ## ## -h, --help Prints this help message ## -g, --get [key] Gets all the settings or, in case key is set, ## returns only the key-value specified ## -s, --set Sets the settings.key to value ## fullprogrampath="$(realpath $0)" PROGRAM=$(basename $0) descriptionString="Settings helper program" source $AK_LIBDIR/_ak_log source $AK_LIBDIR/_ak_script source $AK_LIBDIR/_ak_settings if [ ! -z "$AK_SETTINGS" ] && [ -n "$AK_SETTINGS" ] then _ak_log_debug "AK_SETTINGS = $AK_SETTINGS" else _ak_log_error "No settings variable is set" exit 1 fi if [ ! -d "$AK_SETTINGS" ] then mkdir $AK_SETTINGS if [ $? -ne 0 ] then _ak_log_error "Failed to create settings directory" exit 1 fi _ak_log_info "Created settings directory" fi # Flags to run if [ ! -z $1 ]; then case $1 in -h | --help) _ak_usage; exit;; -g | --get) _ak_settings_get "$2" ; exit;; -s | --set) _ak_settings_set "$2" "$3" ; exit;; * ) _ak_usage;; esac else _ak_usage fi