Repeatedly synchronize local workspace with a (slow) remote machine
Project description
LiveSync
Repeatedly synchronize local workspace with a (slow) remote machine.
Use Case
VS Code Remote Development and similar tools are great as long as your remote machine is powerfull enough. But if your target is a Raspberry Pi, Jetson Nano/Xavier/Orin, Beagle Board or similar it feels like coding in yelly. Especcially if you run powerful extensions like Pylance. LiveSync solves this by watching your code and just copying the changed files to the slow remote machine. It works best if you have some kind of relaoding meachism in place on the target. We obviously recommend NiceGUI.
Install
python3 -m pip install livesync
Usage
cd <my_foder_with_vscode_workspace>
livesync <username>@<host>
LiveSync uses rsync (ssh) to copy the files so the <username>@<host> must be accessable via ssh (ideally by key not password or passphrase, because it will be called over and over).
Press CTRL-C to abort the sync.
Notes
- We suggest you have some auto-reloading in place on the (slow) target machine. Like NiceGUI.
- Only one user can run LiveSync at a time on a target host.
- By default
.git/folders are not synced. - All files and dirs from the
.gitignoreof any source directory are also excluded from sync. - You can create a
.synignorefile in any source directory to skip additional files and dirs from syncing.
Development
git clone git@github.com:zauberzeug/livesync.git
cd livesync
python3 -m pip uninstall livesync # remove previous installed version
python3 -m pip install -e .
Now you can change the code and still use the livesync command from your $PATH variable.
Releases
Just create and push a new tag with the new version name.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file LiveSync-0.1.2.tar.gz.
File metadata
- Download URL: LiveSync-0.1.2.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
03fc2e20cdc06b6ad249b77a076a63a5277b75def474b9228ef42372f5c052ce
|
|
| MD5 |
5b494048a183418b9851af46a17a499f
|
|
| BLAKE2b-256 |
cf9b1df66c2303292cb2c58bd77922a167389b2160e525f9fb69a71715e56fca
|
File details
Details for the file LiveSync-0.1.2-py3-none-any.whl.
File metadata
- Download URL: LiveSync-0.1.2-py3-none-any.whl
- Upload date:
- Size: 5.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdfee67ade3822dd706d932bbdc85d566bbccd99cfbfd8fd8292ea3f0aba4573
|
|
| MD5 |
12699466e89ffc0d9f29598f53befb25
|
|
| BLAKE2b-256 |
a54a12ca5905a869d82f7bdc7f36d71e184935e0fc11f5d9032e982cade354d9
|