RavePop/backup-restore.sh

240 lines
7.8 KiB
Bash
Raw Permalink Normal View History

2024-11-04 22:06:49 +00:00
#!/usr/bin/env bash
bold=$(tput bold) # ${bold}
normal=$(tput sgr0) # ${normal}
yellow=$(tput setaf 3) # ${yellow}
zenity --info --title='Please pick a folder!' --text='Choose a folder! / Válassz egy mappát!' --width='350' --height='100'
# Folder variable
FOLDER=$(zenity --file-selection --title="Choose a backup directory" --directory)
if [[ $? -eq 1 ]]; then
echo You did not pick a ${bold}${yellow}folder.${normal} Exiting!
exit 1
else
echo Backups will be saved into ${bold}${yellow}$FOLDER${normal}
fi
# Zenity ablak megjelenítése
user_choice=$(zenity --list --radiolist --width='650' --height='370' \
--title="Pick your language! / Válaszd ki a nyelvet!" \
--text="Válassz az alábbi opciók közül:" \
--column="Válassz" --column="Rendszer nyelv" \
FALSE "Backup - English Language" \
FALSE "Backup - Magyar Nyelv" \
FALSE "Restore Script / Helyreállítás")
if [[ $? -eq 1 ]]; then
echo ${bold}${yellow}A script futása leállítva. Kilépés!${normal}
exit 1
fi
if [[ $user_choice = *"Backup - English Language"* ]]; then
echo
echo ---------------------------------------------
echo ${bold}${yellow}Started English Backup script${normal}
echo
echo RaveConsole -- Superuser permission required
echo
echo RaveConsole -- Backup script started!
echo
echo RaveConsole -- Copying folder: Desktop
sudo rsync -ap --info=progress2 /home/$USER/Desktop $FOLDER
echo RaveConsole -- Desktop copied
echo
echo RaveConsole -- Copying folder: Documents
sudo rsync -ap --info=progress2 /home/$USER/Documents $FOLDER
echo RaveConsole -- Documents copied
echo
echo RaveConsole -- Copying folder: Downloads
sudo rsync -ap --info=progress2 /home/$USER/Downloads $FOLDER
echo RaveConsole -- Downloads copied
echo
echo RAVECONSOLE -- Copying folder: Games
sudo rsync -ap --info=progress2 /home/$USER/Games $FOLDER
echo RAVECONSOLE -- Games copied
echo
echo RaveConsole -- Copying folder: Music
sudo rsync -ap --info=progress2 /home/$USER/Music $FOLDER
echo RaveConsole -- Music copied
echo
echo RaveConsole -- Copying folder: Pictures
sudo rsync -ap --info=progress2 /home/$USER/Pictures $FOLDER
echo RaveConsole -- Pictures copied
echo
echo RaveConsole -- Copying folder: Videos
sudo rsync -ap --info=progress2 /home/$USER/Videos $FOLDER
echo RaveConsole -- Videos copied
echo
echo RaveConsole -- Copying folder: Templates
sudo rsync -ap --info=progress2 /home/$USER/Videos $FOLDER
echo RaveConsole -- Templates copied
echo
echo RaveConsole -- Copying folder: .config
sudo rsync -ap --info=progress2 /home/$USER/.config/ $FOLDER/.config
echo RaveConsole -- .config copied
echo
echo RaveConsole -- Copying folder: .mozilla
sudo rsync -ap --info=progress2 /home/$USER/.mozilla $FOLDER
echo RaveConsole -- .mozilla copied
echo
echo RaveConsole -- Copying folder: .icons
sudo rsync -ap --info=progress2 /home/$USER/.icons $FOLDER
echo RaveConsole -- .icons copied
echo
echo RaveConsole -- Copying folder: .themes
sudo rsync -ap --info=progress2 /home/$USER/.themes $FOLDER
echo RaveConsole -- .themes copied
echo
echo RaveConsole -- Copying folder: .var
sudo rsync -ap --info=progress2 /home/$USER/.var $FOLDER
echo RaveConsole -- .var copied
echo
echo RaveConsole -- Copying folder: gnome-shell
sudo mkdir -p $FOLDER/.local/share/
sudo rsync -ap --info=progress2 /home/$USER/.local/share/gnome-shell $FOLDER/.local/share/
echo RaveConsole -- gnome-shell copied
echo
echo RaveConsole -- Copying folder: .local/share/flatpak/overrides
sudo mkdir -p $FOLDER/.local/share/flatpak
sudo rsync -ap --info=progress2 /home/$USER/.local/share/flatpak/overrides $FOLDER/.local/share/flatpak
echo RaveConsole -- .local/share/flatpak/overrides copied
echo
echo RaveConsole -- Changing Owner of SAVES Folder
sudo chown -R $USER:$USER $FOLDER
echo RaveConsole -- Owner of SAVES Folder been changed to $USER
echo
# Keyboard shortcuts backup
echo RaveConsole -- Saving Custom UI settings
dconf dump / > $FOLDER/$USER-ui
dconf dump /org/gnome/settings-daemon/plugins/media-keys/ > $FOLDER/$USER-shortcuts
echo RaveConsole -- All Custom UI settings have been saved
echo
echo ${bold}${yellow}English Backup script finished.${normal}
echo ---------------------------------------------
echo
fi
if [[ $user_choice = *"Backup - Magyar Nyelv"* ]]; then
# Wayland Auto-Enable
echo
echo ---------------------------------------------
echo ${bold}${yellow}Magyar backup script indítva.${normal}
echo
echo
echo RaveConsole -- Mappa másolása: Asztal
sudo rsync -ap --info=progress2 /home/$USER/Asztal $FOLDER
echo RaveConsole -- Asztal másolva
echo
echo RaveConsole -- Mappa másolása: Dokumentumok
sudo rsync -ap --info=progress2 /home/$USER/Dokumentumok $FOLDER
echo RaveConsole -- Dokumentumok másolva
echo
echo RaveConsole -- Mappa másolása: Letöltések
sudo rsync -ap --info=progress2 /home/$USER/Letöltések $FOLDER
echo RaveConsole -- Letöltések másolva
echo
echo RAVECONSOLE -- Mappa másolása: Games
sudo rsync -ap --info=progress2 /home/$USER/Games $FOLDER
echo RAVECONSOLE -- Games másolva
echo
echo RaveConsole -- Mappa másolása: Zenék
sudo rsync -ap --info=progress2 /home/$USER/Zenék $FOLDER
echo RaveConsole -- Zenék másolva
echo
echo RaveConsole -- Mappa másolása: Képek
sudo rsync -ap --info=progress2 /home/$USER/Képek $FOLDER
echo RaveConsole -- Képek másolva
echo
echo RaveConsole -- Mappa másolása: Videók
sudo rsync -ap --info=progress2 /home/$USER/Videók $FOLDER
echo RaveConsole -- Videók másolva
echo
echo RaveConsole -- Mappa másolása: Sablonok
sudo rsync -ap --info=progress2 /home/$USER/Videók $FOLDER
echo RaveConsole -- Sablonok másolva
echo
echo RaveConsole -- Mappa másolása: .config
sudo rsync -ap --info=progress2 /home/$USER/.config/ $FOLDER/.config
echo RaveConsole -- .config másolva
echo
echo RaveConsole -- Mappa másolása: .mozilla
sudo rsync -ap --info=progress2 /home/$USER/.mozilla $FOLDER
echo RaveConsole -- .mozilla másolva
echo
echo RaveConsole -- Mappa másolása: .icons
sudo rsync -ap --info=progress2 /home/$USER/.icons $FOLDER
echo RaveConsole -- .icons másolva
echo
echo RaveConsole -- Mappa másolása: .themes
sudo rsync -ap --info=progress2 /home/$USER/.themes $FOLDER
echo RaveConsole -- .themes másolva
echo
echo RaveConsole -- Mappa másolása: .var
sudo rsync -ap --info=progress2 /home/$USER/.var $FOLDER
echo RaveConsole -- .var másolva
echo
echo RaveConsole -- Mappa másolása: gnome-shell
sudo mkdir -p $FOLDER/.local/share/
sudo rsync -ap --info=progress2 /home/$USER/.local/share/gnome-shell $FOLDER/.local/share/
echo RaveConsole -- gnome-shell másolva
echo
echo RaveConsole -- Mappa másolása: .local/share/flatpak/overrides
sudo mkdir -p $FOLDER/.local/share/flatpak
sudo rsync -ap --info=progress2 /home/$USER/.local/share/flatpak/overrides $FOLDER/.local/share/flatpak
echo RaveConsole -- .local/share/flatpak/overrides másolva
echo
echo RaveConsole -- Changing Owner of SAVES Folder
sudo chown -R $USER:$USER $FOLDER
echo RaveConsole -- Owner of SAVES Folder been changed to $USER
echo
# Keyboard shortcuts backup
echo RaveConsole -- Saving Custom UI settings
dconf dump / > $FOLDER/$USER-ui
dconf dump /org/gnome/settings-daemon/plugins/media-keys/ > $FOLDER/$USER-shortcuts
echo RaveConsole -- All Custom UI settings have been saved
echo
echo ${bold}${yellow}Magyar backup script befejezve.${normal}
echo ---------------------------------------------
echo
fi
if [[ $user_choice = *"Restore Script / Helyreállítás"* ]]; then
sudo rsync -ap --info=progress2 $FOLDER/ /home/$USER/test
fi