34 lines
827 B
Markdown
34 lines
827 B
Markdown
|
# syndicate-sh
|
||
|
|
||
|
This is an implementation of the Syndicate network protocol (based on
|
||
|
[Preserves](https://preserves.gitlab.io/)) for Bash.
|
||
|
|
||
|
**Q.** Is this a joke, or is this serious?
|
||
|
**A.** Yes.
|
||
|
|
||
|
## Dependencies
|
||
|
|
||
|
First, it depends on Bash-specific shell features.
|
||
|
|
||
|
Second, you'll need the `preserves-tool` program, which `syndicate.sh`
|
||
|
uses to slice and dice network packets. It's written in Rust, so you
|
||
|
can get it with:
|
||
|
|
||
|
cargo install preserves-tools
|
||
|
|
||
|
Third, you'll need a Syndicate network server ("broker"). The best
|
||
|
option at present is the Rust-language server:
|
||
|
|
||
|
cargo install syndicate-server
|
||
|
|
||
|
## Running the demo
|
||
|
|
||
|
Start the server in one terminal, in the same directory as the
|
||
|
`syndicate.sh` file:
|
||
|
|
||
|
syndicate-server -s ./sock
|
||
|
|
||
|
Then, in one or more other terminals, run `syndicate.sh`:
|
||
|
|
||
|
./syndicate.sh
|