#!/bin/bash set -aeou pipefail keepassdb="$HOME/Nextcloud/passwords/Passwords.kdbx" type wg >/dev/null 2>&1 || { printf "wireguard is not installed\n" >&2; exit 1; } type keepassxc-cli >/dev/null 2>&1 || { printf "KeepassXC is not installed\n" >&2; exit 1; } printf "Enter password for %s: " "$keepassdb": read -s -r password printf "\n" networks=$(echo "$password" | keepassxc-cli ls "$keepassdb" /Wireguard/"$HOSTNAME") umask 077 for network in $networks;do echo "configuring /etc/wireguard/${network}.conf" echo "$password" | keepassxc-cli show -q --attributes Notes "$keepassdb" /Wireguard/"$HOSTNAME"/"$network" | sudo tee /etc/wireguard/"${network}".conf > /dev/null done unset password