hyperhive/nix/host-modules/hive-gateway
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas 0b1b08dfe6 fix(3149): the host asks the hive's resolver, at the bridge IP
Per mara: a general fix, not one name in one container.

Every container inherits a COPY of the host's /etc/resolv.conf at start
(nixos-containers.nix: cp --remove-destination, one shot, not a
bind-mount), so the address written there is the address every container
tries - in its own netns. That makes the value load-bearing:

  value       host  host-netns containers  bridged containers
  127.0.0.1    ok           ok             THEIR OWN loopback
  bridge IP    ok           ok                    ok

dnsmasq binds lo and the bridge, so the bridge IP works for the host
too. It is the only value correct on both sides of a netns boundary.

resolveLocalQueries goes ON for its plumbing, not its address: it points
dnsmasq's own upstreams at a separate resolv-file, without which
dnsmasq reads /etc/resolv.conf and every non-hive query loops the moment
the host is pointed at dnsmasq. Its two loopback-publishing effects
(networking.nameservers and resolvconf.useLocalResolver) are overridden.

Cost: the host's DNS now depends on dnsmasq being up. Every container
already did.

The forge container keeps its hosts entry from the previous commit -
not redundancy, a fallback in a different failure domain: it works with
no DNS at all, so SSO does not ride on a host-wide resolver change.
2026-08-12 21:09:21 +02:00
..
default.nix fix(3149): the host asks the hive's resolver, at the bridge IP 2026-08-12 21:09:21 +02:00
dnsmasq.nix fix(3149): the host asks the hive's resolver, at the bridge IP 2026-08-12 21:09:21 +02:00
error-pages.nix feat(3189): the sso vhost serves a themed page instead of a bare 502 2026-08-12 10:29:16 +02:00
options.nix docs(3191): the gateway's comments describe a host service, not a container 2026-08-12 12:20:28 +02:00
vhosts.nix fix(3213): the swarm UI vhost forces https 2026-08-12 20:12:45 +02:00