Conversation
ddac16c to
dad2cc7
Compare
|
Oh wow, impressive work! I just spent a couple of hours reading restic documentation and reading your code. Here are my thoughts. I don't see any advantage to restic over bup, except possibly that adding support for encryption could be easier with restic. Otherwise the two softwares are almost identical. Restic lacks support for adding redundacy information and fixing broken backups, I think? So I stand by my comment on #54 that this backend could be used as a fallback in case bup is not installed but restic is. Of course if experience later shows that restic is overall the better choice we could reverse the priority order. I see no problem with merging this with just default password, effectively disabling encryption. Later we can always add encryption to both bup and restic, if desired. One possibility that we need to decide how to handle is that user selects versioned backup for his plan and bup is available the first time that a backup save job runs. That means a bup repo gets created at the destination. If later bup is not available we need to detect that the destination already has a bup repo and not just switch to using restic for saving. Maybe we just show an error message and abort then. For restoring it would be nice to have filedigger working for both. If possible. Please investigate how it could be done to get a list of unique timestamps for a given file or folder. The QAbstractItemModel can make use of the canFetchMore() thing to do lazy exploring of the backup repo. I think it should be OK to not do a kioslave for restic, instead just fuse mount the backup like you currently do. I think you can continue working on your branch and we wait with merging this PR until we are happy with the whole thing. I will look more at details of the code when the overall feature set looks good. Thank you! |
|
Actually, one of the reasons I'm not using bup at the moment is: "bup only has experimental support for pruning old backups". No way to recycle space safely is a no-go for me. I'm stuck with rsync when using Kup. I already have some code ready to support file digger. I can include in this PM then. I cannot create another PM I guess cause it relies on this one. |
e76e176 to
449993f
Compare
|
I kept working on this patch and at the moment I think we have most of what we need. The patch is not ready yet, much testing is needed, but most of the features are implemented, and I added some others:
This patch includes a draft of abstraction of each component, which is then implemented for Bup and for Restic. This should make it simpler to add other backup systems in the future. |
|
I am really interested in restic support. I was looking for dummy remote repository, and restic has it. It lack compression, but you can share a repository between computers, which is better in my case. |
This is a work in progress of the implementation of restic support into Kup as per #54. There are a few critical points:
I'm open to suggestions. I'd personally consider these the minimal set of features to make restic support of some use. Any help is welcome!