Troubleshooting¶
Start with doctor. Fix what it reports before chasing mesh or signature issues.
Doctor¶
Online probe when remotes should be reachable:
PEP 668 (externally managed environment)¶
System Python may refuse installs. opip and pip-rns can prompt for recovery when interactive:
- create or use a virtualenv
- install with --user when that is acceptable
- install with --target into a directory you control
Non-interactive example with an explicit target:
opip install ./pkg.opip --target "$HOME/.local/opip-target"
pip-rns install ./pkg.whl --venv "$HOME/.venvs/app"
Remember destinations to avoid repeating the path:
opip install ./pkg.opip --target /opt/wheels --remember-target
pip-rns install pkg --venv /path/to/venv --remember-venv
Signature or trust failures¶
Symptoms: install stops on a signed release or bundle.
Checks:
pip-rns trust ls
opip verify ./pkg.opip --require-signature
opip verify ./pkg.opip --signer YOUR_IDENTITY_HEX --require-signature
Fixes:
- add the publisher with pip-rns trust add
- pass --verify or --signer with the correct identity
- confirm the .rsg sidecar traveled with the artifact
- only then consider --insecure for a one-off debug install
Discovery hears nothing¶
- Confirm Reticulum is up and the rns package imports
- Widen the listen window:
- Nodes must announce git.repositories during that window
- Discovery is passive. Silence usually means nobody announced nearby
Then scan:
Short name not found¶
Resolution order is aliases, then indexes, then discovery packages.
pip-rns alias ls
pip-rns index sync
pip-rns index list
pip-rns discover packages
pip-rns search yourquery
Add an alias if you know the remote:
Expensive clone / branch installs¶
Branch refs clone source. Prefer a release when one exists:
pip-rns release list rns://identity/group/repo
pip-rns install --from-release rns://identity/group/repo --ref v1.0.0
Cache reuse lives under ~/.local/share/pip-rns/cache. Force a fresh clone with PIP_RNS_NO_CACHE=1 only when debugging.
Offline install misses artifacts¶
--offline never contacts RNS. Export again on a connected host, or drop --offline if a fetch is acceptable.
pip-rns export rns://identity/group/repo --ref v1.0.0 -o ./mirror
pip-rns install --offline ./mirror
Completions or color oddities¶
Color settings:
Classic Windows consoles stay colorless unless Windows Terminal / ConEmu / ANSICON or FORCE_COLOR is set.
Helpful exits¶
- Ctrl-C and prompt cancel exit cleanly
- Interactive command help:
- Root README for the compact command list
Still stuck¶
- Capture doctor output from both tools
- Note whether the path is release, source, local wheel, or .opip
- Note interactive vs CI (--no-interactive or CI=1)
- Confirm the publisher identity you expect
Then re-read trust or sneakernet for the path you are on.