Extract ingress hub scripts for Ubuntu compatibility (flakes-d4np)
Extract scripts from mixins/nixos/container/ingress.nix into standalone files under mixins/home/container/ingress/, refactor NixOS module to reference them, and add ubuntu-setup-ingress.bash for Ubuntu container support.
Tasks
- Extract hub-index.html from ingress.nix
- Extract generate-ingress-config.bash
- Extract ingress-sync-api.py
- Extract ingress.bash (status script)
- Extract ingress-sync.bash
- Create mixins/home/container/ingress/default.nix (Nix packages)
- Refactor mixins/nixos/container/ingress.nix to use shared scripts
- Create ubuntu-setup-ingress.bash
Summary of Changes
Extracted inline scripts from the NixOS module into standalone files:
- Scripts live in
mixins/home/container/ingress/(source of truth) - Copies in
mixins/nixos/container/ingress-scripts/(needed due to Nix flake autowire boundaries) - NixOS module refactored to use
builtins.readFileon local copies - Home Manager module adds scripts to PATH via
home.packages ubuntu-setup-ingress.bashhandles apt packages, systemd units, dnsmasq, resolved, sudo rules- All three configs (yolo, yolo-lima, home/yj) evaluate successfully