Files
davidandClaude Sonnet 5 cd1ee3631d Fix become-precedence bug, dead Tailscale install path, and make meshcore config self-sufficient
- ansible_become: true as a group_vars connection variable silently took
  precedence over every task-level `become: false` in this repo, so
  every "unprivileged" task (pipx installs, user script deploys,
  legacy .env.local writes) was actually running as root the whole
  time. Move become to a play-level keyword in site.yml instead, which
  correctly loses to a task's own become: false. Also stop relying on
  ansible_env.HOME (which reflected root's home once facts were
  gathered under the old broken setup) and use /home/{{ remote_user }}
  directly, with explicit owner/group so ownership self-heals.
- meshcore_capture: 99-user.toml.j2 now defines every broker
  (including letsmesh-us/eu) fully rather than assuming
  config.d/10-letsmesh.toml was auto-installed — that preset only gets
  created on some install paths (fresh install) and not others
  (migrate), so the old partial-override form silently dropped
  brokers on migrated nodes.
- base: install libffi-dev/pkg-config on armv6 (Pi Zero W) — cffi has
  no prebuilt wheel for that architecture and fails to compile
  without the headers.
- dm-ashwell: migrated off the legacy layout to the current
  installer's system-service layout; drop its layout override now
  that it matches the group default.
- meshcore-capture-update.sh: fix a YAML folded scalar (>-) collapsing
  the shebang and command onto one line, corrupting the script.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
2026-07-07 06:32:37 +01:00

28 lines
2.0 KiB
YAML

remote_user: david
ansible_user: "{{ remote_user }}"
# become is set at the play level in site.yml, NOT here — ansible_become as a
# connection variable takes precedence over a task's own `become: false`
# keyword, which silently broke every become:false task in this repo (they
# all ran as root regardless). Play-level `become:` correctly loses to a
# task-level override.
meshcore_description: "meshcore management"
# Same values as dotnetwork/ansible/inventory/group_vars/all/vars.yml
ssh_pubkey_dotlaptop_lin: "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJykGDnyJkOfPyzNTCaEFx5niy6kAAo/7nLzbhB9tmj2 [email protected]"
ssh_pubkey_dotlaptop_win: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC7l0kU6LRzmgCADHFmdxu6zU6Zt3mD7VyaNyLXfWdT6YsU2Q6KsKfxQlrzPgnJzEnqxqHybcEb4KO22ktIaFkDE3o1eLPYF02EOtYB3xHhqnuctn9o3GP/50kbqgeFA2NiDs2+QbtqtPzBefFes95c5ezYckzJ4qmGUm2DaNoJiSffn4wNqx8bGU7FpR4bLAc2Z+2MTW7SRr3/nbmgzjs5E6t2CX/HBQXMBSTSGZiGShpU7/WqQBOeFM51+xoL+vfHlUuOjGOPAFAeHlS9Gys7/sjG8cjBDpfKaUGMhB8lCZZJ/2O1Xpecq+Vf37gr7xwqeTTpWrbCIUH4ACkB3Mpn5fTfarMwG3rUjQ9Kl5+BBB/t6lIrS4JJoDuoZ9/GwTt7vWiq4mFk93fLCwVIvJTF88D+TXP+dhNQ3OD8E5LrQ6obk7fTSbk5TJBsdKAnH8ab9njadmLrYL6o9OQFnz+n6Lvcc7piAznB4yyD8tz24mcbLjx0l2rBbDTsb7l2yt2vFZnK2Wp4PXcgk+PwD/jY2xUbHUysolIkxO7BoqN4W7mI4mJaVun+H1hSYbaJZ22U1zDtybLaaTbLVwidWvmidELM49FZ+tD95gZbo0d16JHYJRjRctia4l2tYSrCD891GSFfEZ784oXzhVZYyEGNaisdmIykUjV9CBsswa28PQ== [email protected]"
# WiFi networks every node joins: dotnetwork here at home, dotmobile (phone
# hotspot) as a field-troubleshooting fallback. Nodes also join a
# host-specific wifi_ssid_location for their deployed site (host_vars).
wifi_ssid_dotnetwork: "dotnetwork"
wifi_password_dotnetwork: "{{ vault_wifi_dotnetwork }}"
wifi_ssid_dotmobile: "dotmobile"
wifi_password_dotmobile: "{{ vault_wifi_dotnetwork }}"
# meshcore-packet-capture install generation — see roles/meshcore_capture/tasks/main.yml.
# New nodes get the current upstream layout by default; older nodes override
# this to "legacy" in their own host_vars.
meshcore_capture_layout: "system"