0e970dcec72e61d3073841e1904187ab73db472b
NEXT_STEPS item 3 needed solid archive handling to be a deliberate contract instead of an incidental RAR header attribute. Add a tiny real solid RAR fixture and S41 to the extended peer-cli scenarios so the Docker harness proves this path end to end. The scenario verifies the source archive with container-bundled `unrar lt`, streams the install with the injected provider, and then asserts the receiver is installed local-only without a root archive or root `version.ini`. It also compares local payload SHA-256 hashes against `unrar p` output and checks the streamed byte count matches the extracted entries. This keeps the existing one metadata pass plus one sequential payload pass contract covered for solid archives. Test Plan: - just fmt - just test - python3 -m py_compile crates/lanspread-peer-cli/scripts/run_extended_scenarios.py - python3 crates/lanspread-peer-cli/scripts/run_extended_scenarios.py S41 --build-image - python3 crates/lanspread-peer-cli/scripts/run_extended_scenarios.py S41 - git diff --check - git diff --cached --check Refs: NEXT_STEPS.md item 3
lanspread
Peer-to-peer game library sharing for LAN parties. Peers discover each other on the local network via mDNS, exchange library metadata over QUIC, and let users browse and download games from each other. Ships as a Tauri desktop app.
Build / install
Install Rust, Deno, and just first, then bootstrap the project:
just setup
That installs the Tauri CLI with cargo install tauri-cli and installs the
Deno/npm dependencies from crates/lanspread-tauri-deno-ts.
Run the desktop app in development mode:
just run
Build without bundling:
just build
Create production bundles:
just bundle
Important just commands
just setup- install the Tauri CLI and frontend dependencies.just run- run the Tauri app in dev mode.just build- build the app without bundling.just bundle- create production bundles.just fmt- format Rust, TOML, and the justfile.just clippy- lint the Rust workspace.just test- run workspace tests.just frontend-test- run frontend tests.just peer-cli-build- build the JSONL peer test harness.just peer-cli-image- build the peer harness Docker image.just peer-cli-run NAME- run one peer harness container.
Description
Languages
Rust
64.6%
TypeScript
12.9%
Python
8.9%
CSS
7.6%
JavaScript
4.9%
Other
1%