Crate ruplicity [] [src]

A library for reading duplicity backups.

This library provides utilities to manage duplicity backups 1. Backup files could be prensent in the local file system, or can be accessed remotely, provided that the right backend is implemented. This is a rust version of the original duplicity project, that is written in Python. The goal is to provide a library to be used for different purposes (e.g. a command line utility, a fusion filesystem, etc.) and to improve overall performances. Compatibility with the original duplicity backup format is guaranteed.

Example

In this example we open a directory containing a backup, and print informations about the files in all the snapshots.

use ruplicity::Backup;
use ruplicity::backend::local::LocalBackend;
use ruplicity::time_utils::TimeDisplay;

// use the local backend to open a path in the file system containing a backup
let backend = LocalBackend::new("tests/backups/single_vol");
let backup = Backup::new(backend).unwrap();
for snapshot in backup.snapshots().unwrap() {
    println!("Snapshot {}", snapshot.time().into_local_display());
    println!("{}", snapshot.entries().unwrap());
}

Reexports

pub use backend::Backend;

Modules

backend

Transport layer for backup files.

collections

Operations on backup files.

signatures

Operations on backup signatures.

time_utils

Utilities to parse and display timestamps.

Structs

Backup

A top level representation of a duplicity backup.

Snapshot

A snapshot in a backup.

SnapshotEntries

Contains the files present in a certain backup snapshot.

Snapshots

An iterator over the snapshots in a backup.