One `makepkg -si` from packaging/test-pack/ builds and installs both peerspeak and pixelpass from the public gitbutter repos over https, so a tester can clone the repo and get a working voice+screenshare pair in one command. pixelpass installs to /usr/bin so peerspeak's screen-share button finds it. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
53 lines
2.2 KiB
Markdown
53 lines
2.2 KiB
Markdown
# PeerSpeak + PixelPass — CachyOS/Arch test pack
|
|
|
|
A single **split PKGBUILD** that builds the latest code from the public gitbutter
|
|
repos and installs **both** programs at once:
|
|
|
|
- `peerspeak` — decentralized P2P voice chat
|
|
- `pixelpass` — P2P screen sharing (peerspeak launches it for the screen-share button)
|
|
|
|
## Build & install (one command)
|
|
|
|
```sh
|
|
git clone https://gitbutter.xyz/mollusk/peerspeak.git
|
|
cd peerspeak/packaging/test-pack
|
|
makepkg -si
|
|
```
|
|
|
|
`makepkg -si` auto-installs every dependency via pacman before building —
|
|
including the Rust toolchain itself (the `cargo` makedepend is provided by the
|
|
`rust` package), `git`, `pkgconf`, pipewire + opus for peerspeak, and the
|
|
gstreamer/VA-API stack for pixelpass. The only prerequisite is the `base-devel`
|
|
group (which provides `makepkg`). If you already use `rustup`, that satisfies the
|
|
`cargo` makedepend and the `rust` package won't be pulled in — no conflict.
|
|
|
|
When it finishes you'll have `peerspeak` and `pixelpass` on your PATH at
|
|
`/usr/bin`. To rebuild later with fresh upstream code, re-run `makepkg -si`; the
|
|
git sources re-pull `main` and the version bumps automatically.
|
|
|
|
> Skip the test step with `makepkg -si --nocheck` for a faster build.
|
|
|
|
## Running the cross-internet test
|
|
|
|
1. Launch `peerspeak` on both machines.
|
|
2. One person **creates** a room and shares the room code/ticket with the other.
|
|
3. The other **joins** with that code.
|
|
4. iroh does NAT hole-punching automatically; if a direct path can't be made it
|
|
falls back to a public n0 relay — **no port forwarding required**.
|
|
5. Allow the app through any local firewall if prompted (outbound UDP / QUIC;
|
|
nothing needs to be opened inbound for relay mode).
|
|
|
|
### What we're smoke-testing
|
|
- Two real humans, two networks, over the internet.
|
|
- Mic capture + remote playback both directions, no crackle/dropouts.
|
|
- Mute / deafen, push-to-talk.
|
|
- Text chat in-room.
|
|
- Avatars (presets + custom upload) show up on the other side.
|
|
- Screen share: click the screen-share control → it launches `pixelpass`; the
|
|
viewer opens in `mpv` on the receiving side.
|
|
- Notification chimes (join/leave/etc.).
|
|
- Leave / rejoin cleanly.
|
|
|
|
If anything misbehaves, grab the log path peerspeak prints on startup and the
|
|
exact repro steps.
|