Sneakersync
Synchronize files through the sneakernet, i.e. using a removable drive.
Requirements:
- rsync. The version must support extended attributes (
-Xflag). - 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-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:
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:
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:
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
- Create a filesystem on a removable drive that matches the source and target computers.
- Optional, but highly recommended: encrypt your removable drive.
- Store the configuration in a file named
sneakersync.cfgon the root of the drive. - To send data, run
sneakersync send <PATH_TO_YOUR_DRIVE>. - Move your drive to the other computer and plug it in.
- To receive data, run
sneakersync receive <PATH_TO_YOUR_DRIVE>.
Known limitations:
- The last access time (
atime) is not preserved: rsync needs to access files in order to transfer them. - The creation / meta-data change time (
ctime) is not preserved: this attribute is not user-modifiable.
Metadata
Release files for sneakersync 1.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| sneakersync-1.2.2.tar.gz | 5.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sneakersync-1.2.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.8 kB
Release files / sneakersync-1.2.2.tar.gz
| Download URL | sneakersync-1.2.2.tar.gz |
|---|---|
| Size | 5.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
956d071ece5418751b62c8a98129b5502fc95d0c448ddf9912bc88b9a2c6659d
|
|
BLAKE2b-256 checksum How to use checksums |
2ade38edc193d8f42bbc063a1622744d382c61df23563f1db49796f5f35a5986
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.2
|
Release files / sneakersync-1.2.2-py3-none-any.whl
| Download URL | sneakersync-1.2.2-py3-none-any.whl |
|---|---|
| Size | 7.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b1c70adcc794802f17899adc65b5c7b656f1455bb3ecee22f83756af7be2c113
|
|
BLAKE2b-256 checksum How to use checksums |
96e744ceedb60d45df124dd5167f8848699968da4020b78059f147de9d4cd59d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.2
|
Security for sneakersync 1.2.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.