Das neueste duplicity unter macOS installieren und zum Laufen bringen

Seit einer Woche funktioniert das Backup meines Mac mini auf Backblaze mit duplicity nicht mehr.

Das erste Problem war beim manuellen Aufruf des Backup-Scripts rasch erkannt: Letzte Woche scheint es mit den internen DHCP- und DNS-Servern ein Problem gegeben zu haben, weshalb der Mac mini nicht seinen ordentlichen DNS-Namen erhielt. duplicity verweigerte deshalb das Backup, da es davon ausgehen musste, dass jemand versucht, zwei Systeme auf dieselbe Destination zu sichern. Die Kommandozeilenoption --allow-source-mismatch löste dieses Problem.

Nichtdestotrotz konnte ich das Backup-Script nicht ausführen, weil das Python-Modul duplicity nicht (mehr) gefunden werden konnte. Da hatten wohl die Updates der letzten Tage irgendwas zerschossen.

Auf meinem System habe ich MacPorts installiert und verwende deren Python-Interpreter, um Python-Scripts laufen zu lassen. duplicity habe ich auch als MacPorts-Paket installiert. Doch ich konnte mich erinnern, dass ich nicht dieses duplicity verwende, sondern jeweils den neuesten Quellcode von launchpad.net herunterlade.

Nach viel Pröbeln dann die Lösung (ich ging auf Nummer sicher und installierte Duplicity sowie alle benötigten Python-Pakete für alle drei vorhandenen Python-Versionen):

cd ~/Downloads/duplicity-1.0.1

sudo /opt/local/bin/python3.7 setup.py install --librsync-dir=/opt/local
sudo /opt/local/bin/python3.8 setup.py install --librsync-dir=/opt/local
sudo /opt/local/bin/python3.9 setup.py install --librsync-dir=/opt/local

sudo /opt/local/bin/python3.7 -m pip install -r requirements.txt
sudo /opt/local/bin/python3.8 -m pip install -r requirements.txt
sudo /opt/local/bin/python3.9 -m pip install -r requirements.txt

sudo /opt/local/bin/python3.7 -m pip install b2sdk
sudo /opt/local/bin/python3.8 -m pip install b2sdk
sudo /opt/local/bin/python3.9 -m pip install b2sdk