First of all, great work. Duplicati is quite impressive and already beats the pants off a lot of commercial systems I’ve used in my 25+ years in IT.
One small thing I would love to see is the ability to tag backups and/or add comments to versions both at version creation and at arbitrary occasions in the future. I’m thinking along the lines of tags commit comments in revision control packages (Git, Perforce, etc).
To illustrate, I’ll use a recent real-world scenario: I made sweeping changes to my Photo library (which I smartly had backed up with Duplicati for several months before) and didn’t notice that some EXIF data had been broken for quite some time following. Subsequent changes were made and now I was several revisions deep. Through a lot of datestamp research and a long afternoon learning the finer points of exiftool, I was able to eventually figure out the version(s) I needed to restore from Duplicati but it was a painful process.
What I would love to do is be able to run a backup before I’m going to do such things in the future and either programatically or manually tag it as “The one before I screw everything up” or some more proper descriptive text. (For bonus points, I would love to then also be able to “pin” that version as a “NEVER DELETE” version - another potential feature ask.)
I have also had occasions where I’ve wanted to note specific events retroactively, i.e. “This was the last backup before I moved to a new workstation.” Being able to tag arbitrary versions would be the ask.
I know I can do this outside of Duplicati with judicious note-taking but it would make the package a more complete solution for archiving.
Again, thanks for your hard work. I am rapidly becoming a Duplicati evangelist.
Hello @DrBrynzo and welcome to the forum!
There’s something like this probably ready to emerge in the next canary release. All I’ve seen are documents:
Add backup description field for notes #2214
Add Description field to backups #3391
EDIT: Looking more closely, this might be for the backup, not the backup version. We’ll know when it arrives…
I believe the Description field is not what was asked in this thread. The description is about a general description for the backup as a whole, not a specific run.
Also, I fully support the suggestion!
Correct, I’m hoping for a per-version naming scheme. Ideally, one that could be specified at backup time, i.e.:
duplicati-cli backup [source] [target] <various options> --backup-comment="Preparing for migration to new storage array."
But also offering the ability to retroactively name a backup run/version, i.e. “2018 Q4 Keep - Final version before someone inserted cat GIFs during the NYE party.”
FYI, I was poking around restic and discovered it’s pretty much doing what I’m hoping for with it’s “tag” commands. I’m not swayed enough by the rest of restic enough to want to switch though. Tags are pretty much the only thing I like better there.
Let’s see… New table to store comment… Update dlist format to include comment on… Add parameter to accept comment… Update UI to get / show comment…
Sounds good to me!
Question - should an empty comment being passed to a previous version that already has a comment be treated as “please delete comment” or “ignore this unfilled parameter” (meaning a specific delete comment feature is needed)?
The concept I had was that it would be a single tag. An update would replace an existing tag. It would be on the user to make the tag meaningful by retaining existing information in the update/replacement or not. Likewise, a “delete” would be updating using an empty string, perhaps?