#!/bin/bash # Default variables function="install" # Options . <(wget -qO- https://raw.githubusercontent.com/letsnode/Utils/main/bashbuilder/colors.sh) -- option_value(){ echo "$1" | sed -e 's%^--[^=]*=%%g; s%^-[^=]*=%%g'; } while test $# -gt 0; do case "$1" in -h|--help) . <(wget -qO- https://raw.githubusercontent.com/letsnode/Utils/main/bashbuilder/logo.sh) echo echo -e "${C_LGn}Functionality${RES}: the script performs many actions related to a Zeitgeist node" echo echo -e "${C_LGn}Usage${RES}: script ${C_LGn}[OPTIONS]${RES}" echo echo -e "${C_LGn}Options${RES}:" echo -e " -h, --help show the help page" echo -e " -u, --update update the node" echo echo -e "${C_LGn}Useful URLs${RES}:" echo -e "https://raw.githubusercontent.com/letsnode/Zeitgeist/main/tools.sh — script URL" echo -e "https://t.me/letskynode — node Community" echo -e "https://teletype.in/@letskynode — guides and articles" echo return 0 2>/dev/null; exit 0 ;; -u|--update) function="update" shift ;; *|--) break ;; esac done # Functions printf_n(){ printf "$1\n" "${@:2}"; } install() { printf_n "${C_R}I don't want.${RES}" } update() { printf_n "${C_LGn}Checking for update...${RES}" status=`docker pull zeitgeistpm/zeitgeist-node-parachain:latest` if ! grep -q "Image is up to date for" <<< "$status"; then printf_n "${C_LGn}Updating...${RES}" docker stop zeitgeist_node docker rm zeitgeist_node docker run -dit --name zeitgeist_node --restart always --network host -v $HOME/.zeitgeist:/zeitgeist/data -u $(id -u ${USER}):$(id -g ${USER}) \ zeitgeistpm/zeitgeist-node-parachain \ -d /zeitgeist/data \ --name "$zeitgeist_moniker" \ --validator \ --pruning archive \ --state-cache-size 1 \ --db-cache `bc <<< "$(cat /proc/meminfo | awk 'NR == 1 {print $2}')/2024"` \ --in-peers 100 \ --out-peers 100 \ -- \ --pruning 1000 \ --name "$zeitgeist_moniker (Embedded Relay)" else printf_n "${C_LGn}Node version is current!${RES}" fi } # Actions sudo apt install wget -y &>/dev/null . /root/.bash_profile . <(wget -qO- https://raw.githubusercontent.com/letsnode/Utils/main/bashbuilder/logo.sh) cd $function