install.sh : Add an option to create a backup

This commit is contained in:
Roza.
2024-08-20 08:26:20 +08:00
parent a80c03b592
commit d6fe7227f6
2 changed files with 12 additions and 0 deletions
+1
View File
@@ -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}
+11
View File
@@ -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/"
}