Synchronize files through the sneakernet
Project description
# Sneakersync
Synchronize files through the [sneakernet](https://en.wikipedia.org/wiki/Sneakernet), i.e. using a removable drive.
Requirements:
* [rsync](https://rsync.samba.org/). The version must support extended attributes (`-X` flag).
* A removable drive with a filesystem matching the source and target computers.
* Feet or a compatible mean of transportation of the removable drive between computers.
## Installation
Simply run `pip install sneakersync`.
## Configuration
The configuration is a [YAML](https://en.wikipedia.org/wiki/YAML)-formatted file that contains *modules* (directories to be synchronized) and *filters* (rules that exclude or include files or directories). Each module must contain a *root* entry (the top-level path to be synchronized) and may contain filters; if no filter is specified, all files and directories below the root of the module are included. Filters are defined by a list of *include* or *exclude* directives.
A minimal example which synchronizes the home folder of a user would look like:
```yaml
modules:
- root: /home/john.doe
```
To exclude a directory (and its content) and files with a given extension from a module, add a *filters* directive:
```yaml
modules:
- root: /home/john.doe
filters:
- exclude: /home/john.doe/.firefox/caches
- exclude: *.pyc
```
To filter entries from all modules, use the top-level *filters* directive:
```yaml
modules:
- root: /home/john.doe
- root: /home/jane.blogs
filters:
- exclude: .firefox/caches
```
Filters defined at the top-level will have priority over module-level filters.
## Usage
1. Create a filesystem on a removable drive that matches the source and target computers.
2. Optional, but highly recommended: [encrypt](https://en.wikipedia.org/wiki/Disk_encryption) your removable drive.
3. Store the [configuration](#configuration) in a file named `sneakersync.cfg` on the root of the drive.
4. To send data, run `sneakersync send <PATH_TO_YOUR_DRIVE>`.
5. Move your drive to the other computer and plug it in.
6. To receive data, run `sneakersync receive <PATH_TO_YOUR_DRIVE>`.
Synchronize files through the [sneakernet](https://en.wikipedia.org/wiki/Sneakernet), i.e. using a removable drive.
Requirements:
* [rsync](https://rsync.samba.org/). The version must support extended attributes (`-X` flag).
* A removable drive with a filesystem matching the source and target computers.
* Feet or a compatible mean of transportation of the removable drive between computers.
## Installation
Simply run `pip install sneakersync`.
## Configuration
The configuration is a [YAML](https://en.wikipedia.org/wiki/YAML)-formatted file that contains *modules* (directories to be synchronized) and *filters* (rules that exclude or include files or directories). Each module must contain a *root* entry (the top-level path to be synchronized) and may contain filters; if no filter is specified, all files and directories below the root of the module are included. Filters are defined by a list of *include* or *exclude* directives.
A minimal example which synchronizes the home folder of a user would look like:
```yaml
modules:
- root: /home/john.doe
```
To exclude a directory (and its content) and files with a given extension from a module, add a *filters* directive:
```yaml
modules:
- root: /home/john.doe
filters:
- exclude: /home/john.doe/.firefox/caches
- exclude: *.pyc
```
To filter entries from all modules, use the top-level *filters* directive:
```yaml
modules:
- root: /home/john.doe
- root: /home/jane.blogs
filters:
- exclude: .firefox/caches
```
Filters defined at the top-level will have priority over module-level filters.
## Usage
1. Create a filesystem on a removable drive that matches the source and target computers.
2. Optional, but highly recommended: [encrypt](https://en.wikipedia.org/wiki/Disk_encryption) your removable drive.
3. Store the [configuration](#configuration) in a file named `sneakersync.cfg` on the root of the drive.
4. To send data, run `sneakersync send <PATH_TO_YOUR_DRIVE>`.
5. Move your drive to the other computer and plug it in.
6. To receive data, run `sneakersync receive <PATH_TO_YOUR_DRIVE>`.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
sneakersync-1.0.0.tar.gz
(3.6 kB
view hashes)
Built Distributions
Close
Hashes for sneakersync-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd81a740b2c0e19c62e5a5c4e5a3b6777db2997e049b29248258b76293caba46 |
|
MD5 | 18e47c765ac04088a4f6625c3102112c |
|
BLAKE2b-256 | 1ec2d417eb036552ad11d9713832ee3d85978ef4d99a4b885cf452a03c37cf36 |
Close
Hashes for sneakersync-1.0.0-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1254522d60277a3b655a643a0acc668a4a4a694b65c69275f51d2d56882e061c |
|
MD5 | b79e029b275f955612cb5c8620cd2b3f |
|
BLAKE2b-256 | bc7d19a8f480798529f494f324df01041973619cbea7e576cf6914a729a5ec7f |