#!/bin/bash source /opt/scripts/restic/restic.env #We will have to find out whether or not we need to initialize the repo. A non-zero exit code indicates that it has not yet been initialized. restic snapshots if [ "$?" -eq "0" ] then echo "Repo is already initialized, no need to do that." else echo "We need to initialize the repo first." && restic init fi restic backup --verbose / \ --exclude /home/{{ user }}/.cache \ --exclude /home/{{ user }}/cache \ --exclude /home/{{ user }}/.config/Element/Cache/ \ --exclude /home/{{ user }}/.config/Element/GPUCache \ --exclude /home/{{ user }}/.config/Element/Code\ Cache/ \ --exclude /home/{{ user }}/.config/Signal/attachments.noindex \ --exclude /home/{{ user }}/.config/SchildiChat/Cache \ --exclude /home/{{ user }}/.config/SchildiChat/GPUCache \ --exclude /home/{{ user }}/.config/SchildiChat/Code\ Cache/ \ --exclude /home/{{ user }}/.config/Signal/Cache \ --exclude /home/{{ user }}/.config/Signal/GPUCache \ --exclude /home/{{ user }}/.config/Signal/Code\ Cache/ \ --exclude /home/{{ user }}/.local/share/Trash \ --exclude /home/{{ user }}/Bilder \ --exclude /home/{{ user }}/Downloads \ --exclude /home/{{ user }}/gPodder/Downloads/ \ --exclude /home/{{ user }}/Nextcloud \ --exclude /home/{{ user }}/no-backup \ --exclude /home/{{ user }}/synced_folders \ --exclude /home/{{ user }}/sync \ --exclude /home/{{ user }}/Signal_Backups \ --exclude /lost+found \ --exclude /media \ --exclude /mnt \ --exclude /proc \ --exclude /run \ --exclude /root/.cache \ --exclude /sys \ --exclude /tmp \ --exclude /var/cache \ --exclude /var/tmp echo "done! :)"