WireGuard Public Key should not be entered by the user
The WireGuard tunnel public key is derived from the private key. There isn't a compelling reason to allow the user to manually enter it separately, as it only presents an additional opportunity for error/misunderstanding.
We should make the field read only and populate it with the value derived from the private key automatically when saving.
The user will need to copy the value, however, so it must still be displayed. We could opt to not store the public key at all, but then that means we would need to run a shell command to get the public key on each page load when editing a WireGuard peer which seems undesirable.
WireGuard: Make pubkey read only, populate automatically. Fixes #11322
While here, add a link to copy the public key to the clipboard.