Re: Contributing code to Deja Dup
- From: Michael Terry <mike mterry name>
- To: David Cook <kingandcaptain gmail com>
- Cc: "deja-dup-list gnome org" <deja-dup-list gnome org>
- Subject: Re: Contributing code to Deja Dup
- Date: Mon, 1 Dec 2014 09:02:43 -0500
Hello, thanks for the email! I'm not 100% opposed to the idea. But I fear it may be more complicated than we may initially think. Here are some quick thoughts.
1) Did you have any thoughts on how the UI would look? I suppose we could just add a "+" button to the "Backup locations" tab and let users set more... One problem is that user's might reasonably then want different values for other preferences to apply to each location. Like the "how long to keep files in your backup" setting. The complexity could easily grow.
2) It's a real bummer that we wouldn't be able to re-use the efforts of the first backup to help with the second backup. We couldn't directly copy any backup tarballs over because the backup locations might have different contents. And we couldn't re-use duplicity's idea of what's on disk, because it doesn't offer any way to save/re-use that state between runs.
3) Meaning we'd just kick off two entire backups back-to-back I guess when the scheduled time hit? If we wanted to stagger them, we could keep separate schedules for them (even if we continued to only expose one schedule option like "weekly", we could have them kick off on different days...). I'm not sure whether staggering is better or worse than just doing them both immediately.
4) You ask about the timing of when to do full backups. That we'd get for free. Deja Dup looks at what's in the backup location already and decides if it has been too long since the last full backup.
5) Reporting errors to the user needs some care, if we're backing up both locations back-to-back. Do we delay errors from backup A until we see how backup B went? Let's say that backup A fails for some reason. I suspect we should still try backup B in that case, but maybe only report an error if we can't back up for a *different* reason -- avoiding complaining about a lack of internet connection twice for example. Other issues would be files that we couldn't back up (permission error or whatever). If they happen to be different between runs, I guess we should merge the lists. But there is a whole set of questions like that. (Or we could report the two separate errors as they happen -- or only back up to location B if A went well?)
6) We'd have to make the gsettings schema for the backup location pathless (if that means anything to you, not sure how intimate you are with gsettings).
7) One thought is that we could get most of what you want "for free" for a certain class of users if we simply looked at the mount path instead of the UUID (which as you guessed is what we currently do). The UUID logic was written back before most distros automounted by UUID (how widespread is that now?). My original goal was just to make sure that you never accidentally triggered a backup by plugging in some thumb drive, instead of your backup drive. But if we used mount path, we'd get UUID logic for free nowadays, but we'd also cater to people that had custom fstabs that put both drives in the same mount, right? That's what you originally tried to do, before realizing Deja Dup was using UUIDs? Only really a solution that unblocks the technical users. But a far easier fix at least. Also wouldn't help with any other kind of backup locations (like remote), but I think that's a less common request than "multiple backup drives" which seems to be fairly common -- I guess people take one drive off-site and rotate every now and then.
-mt
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]