mirror of
https://github.com/bivlked/amneziawg-installer.git
synced 2026-10-19 05:03:18 +00:00
A new install without --protocol now gets AmneziaWG 3.1. On a machine where 3.1 cannot run and the generation was not chosen, the installer installs 2.0 by itself and says why in a block that is the same interactively and under --yes. An explicit --protocol=3.1 on such a machine still stops with the reason code. --protocol=2.0 keeps installing 2.0. Existing installs keep their generation: a server without a generation marker reads as 2.0, as before. 3.1 gives way to 2.0 at step 0 for the architecture (ARM, anything that is not x86_64) and the kernel (older than 6.7, Debian 12), and at step 3 for the installed tools and the loaded module. At step 3 the installer generates one 2.0 parameter set with the saved Jc/Jmin/Jmax and preset (--jc=0, --preset=mobile and --no-cps carry over), applies exactly that set to a temporary interface, reads it back, and only then rewrites the settings file. If the module refuses the set, the install stops with the settings file untouched. A 2.0 set saved by the step 0 fallback is probed the same way at step 3, before any key is made. An install that has reached step 6 (server keys, configs, profiles or a live awg0) is never downgraded, checked at step 0 of the same run and again right before the fallback. Step 6 hands out 3.1 profiles only after the step 3 check passed in the same run, and never falls back. An existing 3.1 server that no longer passes the check is told the reason and a repair that leaves it alone; removal is named only as the last resort, and a failure of the check itself is reported as an installer error, not as a reason to remove anything. The settings file gets two new keys, AWG_PROTOCOL_SOURCE (default or explicit) and AWG_PROTOCOL_FALLBACK (the reason code). The settings writer moved into its own function unchanged, so step 0 and step 3 share it. A short notice before step 1 says the default is 3.1 and who should rerun with --protocol=2.0; the final report names the generation, the fallback reason if any, and the clients 3.1 needs; --help describes the default and the fallback. The README DeepWiki badge is served from docs/badges/deepwiki.svg, since deepwiki.com/badge.svg answers automated clients with a 429 and the GitHub image proxy showed a broken image. |
||
|---|---|---|
| .. | ||
| badges | ||
| RELEASE_PROCESS.md | ||
| ROADMAP.md | ||
| SIGNING_DESIGN.md | ||
| support-matrix.json | ||