How to set up Duplicacy Utils on Ubuntu

Install powershell

Following the documentation here: Installing PowerShell on Ubuntu - PowerShell | Microsoft Docs

# Update the list of packages
sudo apt-get update
# Install pre-requisite packages.
sudo apt-get install -y wget apt-transport-https software-properties-common
# Download the Microsoft repository GPG keys
wget -q
# Register the Microsoft repository GPG keys
sudo dpkg -i packages-microsoft-prod.deb
# Update the list of packages after we added
sudo apt-get update
# Install PowerShell
sudo apt-get install -y powershell
# Start PowerShell

Create the folder where duplicacy resides:

mkdir /var/zz/duplicacy/.duplicacy
cd /var/zz/duplicacy/.duplicacy

Download duplicacy executable:

curl -L -o duplicacy.exe

Clone duplicacy utils:

git clone

Update the user config:

nano duplicacy-utils/config.user.ps1

This is what i use:

$duplicacyExePath = ".duplicacy/duplicacy.exe"

$duplicacyBackupNumberOfThreads = 20
$telegramToken = 123456

$mergeNotificationsIntoOne = $true

$scheduledTaskRandomDelay = (New-TimeSpan -Minutes 5)
$scheduledTaskRepetitionInterval = (New-TimeSpan -Hours 12)

Test-run duplicacy-utils

pwsh duplicacy-utils/backup.ps1

Create the scheduled task via systemd

pwsh duplicacy-utils/create-scheduled-tasks/create-scheduled-task-linux-systemd.ps1

Symlink the folders which will be backed up

ln -sf /var/discourse/containers/           /var/zz/duplicacy/discourse__containers_link
ln -sf /var/discourse/shared/web/backups/   /var/zz/duplicacy/discourse__shared__web__backups_link
ln -sf /var/discourse/shared/web/uploads/   /var/zz/duplicacy/discourse__shared__web__uploads_link
ln -sf /var/zz                              /var/zz/duplicacy/var__zz_link

Set up the filters file

echo "@/var/zz/duplicacy/.duplicacy/duplicacy-utils/filters/filters_general_usage" > filters
echo "e:var__zz_link/duplicacy/" >> filters