diff --git a/scriptdata/environment-variables b/scriptdata/environment-variables index b2e752c62..96f37bffd 100644 --- a/scriptdata/environment-variables +++ b/scriptdata/environment-variables @@ -4,4 +4,5 @@ XDG_CACHE_HOME=${XDG_CACHE_HOME:-$HOME/.cache} XDG_CONFIG_HOME=${XDG_CONFIG_HOME:-$HOME/.config} XDG_DATA_HOME=${XDG_DATA_HOME:-$HOME/.local/share} XDG_STATE_HOME=${XDG_STATE_HOME:-$HOME/.local/state} +BACKUP_DIR=${BACKUP_DIR:-$HOME/backup} diff --git a/scriptdata/functions b/scriptdata/functions index 37f17acd2..98e18c977 100644 --- a/scriptdata/functions +++ b/scriptdata/functions @@ -72,3 +72,14 @@ function prevent_sudo_or_root(){ root)echo -e "\e[31m[$0]: This script is NOT to be executed with sudo or as root. Aborting...\e[0m";exit 1;; esac } + + +function backup_configs() { + local backup_dir="$BACKUP_DIR" + mkdir -p "$backup_dir" + echo "Backing up $XDG_CONFIG_HOME to $backup_dir/config_backup" + rsync -av --progress "$XDG_CONFIG_HOME/" "$backup_dir/config_backup/" + + echo "Backing up $HOME/.local to $backup_dir/local_backup" + rsync -av --progress "$HOME/.local/" "$backup_dir/local_backup/" +} \ No newline at end of file