docs: repair README and deploy.sh drift
README: tmux requirement wording, invite-only list marker, name
charset, --party on moderation rows, PARTY_SOCKET_DIR whitespace note,
read-only join fallback. deploy.sh: drop phantom tests/run-remote.sh
include (file lives under legacy/ only) and fix the ship-list comment.
SERVERS.md and HISTORY.md were refreshed too but stay local-only per
.git/info/exclude ("Local docs — never published").
This commit is contained in:
parent
44b97e9d6b
commit
2dc9285433
2 changed files with 10 additions and 11 deletions
18
README.md
18
README.md
|
|
@ -11,7 +11,7 @@ Built for small, mutually trusted groups: a hacklab, a tech team, a circle of fr
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
- POSIX shell (`/bin/sh`)
|
- POSIX shell (`/bin/sh`)
|
||||||
- `tmux` ≥ 3.3 (for `server-access`), running when you invoke the script
|
- `tmux` ≥ 3.3 (for `server-access`) on `$PATH`, or named via `PARTY_TMUX`
|
||||||
- A shared system group (default name `party`, override via `TMUX_PARTY_GROUP`). Every host and guest must be a member.
|
- A shared system group (default name `party`, override via `TMUX_PARTY_GROUP`). Every host and guest must be a member.
|
||||||
- `write(1)`, optional: used to ping invited guests. Silently skipped when absent.
|
- `write(1)`, optional: used to ping invited guests. Silently skipped when absent.
|
||||||
|
|
||||||
|
|
@ -53,7 +53,7 @@ party join standup # attach (auto-attaches if only one party is running)
|
||||||
party leave # detach and clean up
|
party leave # detach and clean up
|
||||||
```
|
```
|
||||||
|
|
||||||
The `party` group is the partyline: filesystem access to party sockets is shared among members, and `tmux server-access` decides who is actually let into a given session. No shared install directory is needed: each party keeps its own state under its own per-party private directory.
|
The `party` group is the partyline: filesystem access to party sockets is shared among members, and `tmux server-access` decides who is actually let into a given session. No shared install directory is needed: each party keeps its own state under its own per-party private directory. Parties you haven't been invited to yet show up in `party list` as `invite-only`; `party join` on one tells you which host to ask (exit status 13).
|
||||||
|
|
||||||
## How it works
|
## How it works
|
||||||
|
|
||||||
|
|
@ -71,7 +71,7 @@ Party metadata (host, server pid, group, creation time) lives in a `roster` file
|
||||||
| Variable | Default | Purpose |
|
| Variable | Default | Purpose |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| `TMUX_PARTY_GROUP` | `party` | Shared group for socket access. Override to reuse an existing group (`wheel`, `users`, `staff`), or pass `--group <name>` to `party host`. |
|
| `TMUX_PARTY_GROUP` | `party` | Shared group for socket access. Override to reuse an existing group (`wheel`, `users`, `staff`), or pass `--group <name>` to `party host`. |
|
||||||
| `PARTY_SOCKET_DIR` | `/tmp` | Where each party's private directory (socket + roster) is created. |
|
| `PARTY_SOCKET_DIR` | `/tmp` | Where each party's private directory (socket + roster) is created. No whitespace in the path. |
|
||||||
| `PARTY_TMUX` | `tmux` | tmux binary to use. Override if tmux ≥ 3.3 lives at a non-standard path. |
|
| `PARTY_TMUX` | `tmux` | tmux binary to use. Override if tmux ≥ 3.3 lives at a non-standard path. |
|
||||||
|
|
||||||
## Support
|
## Support
|
||||||
|
|
@ -106,17 +106,17 @@ Three honest caveats, with the full detail in `man party`:
|
||||||
|
|
||||||
| Subcommand | Effect |
|
| Subcommand | Effect |
|
||||||
|---|---|
|
|---|---|
|
||||||
| `party host [name]` | Spawn a dedicated party tmux server. Only the host is on the allowlist. |
|
| `party host [name]` | Spawn a dedicated party tmux server. Only the host is on the allowlist. Names: letters, digits, `_`, `-`; max 63 chars. |
|
||||||
| `party invite alice [-r]` | Add alice to the allowlist. `-r` / `--read-only` invites as a watcher. |
|
| `party invite alice [-r]` | Add alice to the allowlist. `-r` / `--read-only` invites as a watcher. |
|
||||||
| `party voice alice` | Promote alice to read/write. |
|
| `party voice alice` | Promote alice to read/write. `--party <name>` selects among several hosted parties. |
|
||||||
| `party mute alice` | Demote alice to read-only. |
|
| `party mute alice` | Demote alice to read-only. `--party <name>` selects among several hosted parties. |
|
||||||
| `party kick alice` | Revoke alice's invite, disconnect her, kill her guest session. |
|
| `party kick alice` | Revoke alice's invite, disconnect her, kill her guest session. `--party <name>` selects among several hosted parties. |
|
||||||
| `party detach alice` | Disconnect alice; keep her on the allowlist. |
|
| `party detach alice` | Disconnect alice; keep her on the allowlist. `--party <name>` selects among several hosted parties. |
|
||||||
| `party list` | List live parties on this host. |
|
| `party list` | List live parties on this host. |
|
||||||
| `party who [--short]` | Show invited and attached users for the current party. |
|
| `party who [--short]` | Show invited and attached users for the current party. |
|
||||||
| `party status` | Show the caller's own state: hosting, attached, or idle. |
|
| `party status` | Show the caller's own state: hosting, attached, or idle. |
|
||||||
| `party close` | Tear down the party server and its roster entry. Host-only. |
|
| `party close` | Tear down the party server and its roster entry. Host-only. |
|
||||||
| `party join [name] [--passive]` | Join a party. Auto-attaches when one is running; picker otherwise. `--passive` attaches read-only to the host's view (watcher mode). |
|
| `party join [name] [--passive]` | Join a party. Auto-attaches when one is running; picker otherwise. `--passive` attaches read-only to the host's view (watcher mode). Read-only invitees always join passive. |
|
||||||
| `party leave` | Detach and clean up the per-guest session. |
|
| `party leave` | Detach and clean up the per-guest session. |
|
||||||
| `party role [active\|passive\|switch]` | Flip your clients between guest and host session. No arg prints the current role. |
|
| `party role [active\|passive\|switch]` | Flip your clients between guest and host session. No arg prints the current role. |
|
||||||
| `party --help` | Help text. |
|
| `party --help` | Help text. |
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# Sync the deployable surface to a remote host for `make install`. Pins the
|
# Sync the deployable surface to a remote host for `make install`. Pins the
|
||||||
# include list to the seven items the project ships: Makefile, party, party.1,
|
# include list to what the project ships: Makefile, party, party.1,
|
||||||
# README.md, tools/post-install.sh, and tests/ (so the host can run `make
|
# README.md, tools/post-install.sh, and tests/ (so the host can run `make
|
||||||
# check` as a target-OS smoke test). This is the dev-rsync variant. The
|
# check` as a target-OS smoke test). This is the dev-rsync variant. The
|
||||||
# release-tarball variant strips tests/ as well; not implemented here.
|
# release-tarball variant strips tests/ as well; not implemented here.
|
||||||
|
|
@ -44,6 +44,5 @@ exec rsync -av --delete "$@" \
|
||||||
--include='/tests/' \
|
--include='/tests/' \
|
||||||
--include='/tests/*.bats' \
|
--include='/tests/*.bats' \
|
||||||
--include='/tests/helpers.bash' \
|
--include='/tests/helpers.bash' \
|
||||||
--include='/tests/run-remote.sh' \
|
|
||||||
--exclude='*' \
|
--exclude='*' \
|
||||||
./ "$dest"
|
./ "$dest"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue