Clone this repository
For self-hosted knots, clone URLs may differ based on your setup.
update.sh: the hash probes ran under pipefail/errexit, so an expected hash-mismatch build produced an empty result and the script exited without touching the hashes.
Picks up the darwin tinc-up fix on lassulus/fixes: route the IPv4 prefix into
the utun. Without it macOS only installed a host route for the tunnel address
and every IPv4 packet for the mesh left through the default gateway. Same bug
kartei carried in its copy of the module (krebs/kartei#65); 28a957a6 switched
barnacle to tincr own module, which never had that fix.
Integration branch = Mic92/main + #101 (NAT-leaf dial, loop clock, tunnel-address gate) + #109 (EMSGSIZE clamps minmtu, counts as probe miss, TCP fallback, MTU_INFO clamp mid-rediscovery). Fixes the retiolum blackhole seen as 'pmtu 1293 (min 1319 max 1488)'.
update.sh now blanks both hashes before the probe builds: with the old ones in place nix reused the cached FODs and the bump built stale code.
kartei's darwinModules.retiolum pulled tincd from kartei's own tincr
input, so barnacle ran a different daemon than the NixOS nodes. Now
every machine runs 5pkgs/tincr (Lassulus/tincr fix/edge-walk-address):
barnacle imports tincr's darwinModules.tincr directly with
services.tincr.package set, and reproduces the shim's settings itself
(node data from kartei's hosts.nix exactly as 2configs/retiolum.nix
does, connectTo = krebs hubs + neoprism/starkstrom, LocalDiscovery,
Broadcast = no, the BEGIN/END RETIOLUM HOSTS block in /etc/hosts).
kartei is host database only on both platforms.
New flake input `tincr` (fork branch, module only); kartei's tincr/
crane/fenix follow it so the lock has a single node each.
Three daemon fixes pending upstream as Mic92/tincr#101:
- NAT-leaf dialled at its hub's listener (#100): the ID-mismatch
"orange is neoprism" loop every AutoConnect round.
- Stale loop clock: an accepted conn was timestamped from before the
poll, so the ping sweep reaped it mid-handshake ("Timeout … during
authentication") — every reconnect to an idle listener died.
- Tunnel-address gate: meta/UDP endpoints inside a mesh Subnet
(ignavia↔massulus/barnacle via 42:0:ce16::…) are no longer dialled,
accepted, learnt or published; Android EIO on UDP now falls back to
the relay; per-packet "Broadcasting packet" log demoted to trace.
cargoHash unchanged (same Cargo.lock). update.sh tracks the fork
branch until the PR merges.
Language servers, providers, git/bat/wl-clipboard and 300 unused
treesitter grammars came from the wrapper; take them from PATH instead
and ship only the grammars we edit. Drop lsp-lines, virtual_lines is
builtin.