@node Installation
@unnumbered Installation
-GoVPN is written on @url{http://golang.org/, Go programming language},
+Possibly GoVPN already exists in your distribution:
+
+@itemize
+@item @url{https://aur.archlinux.org/packages/govpn/, AUR}
+@item @url{http://www.freshports.org/security/govpn/, FreeBSD ports}
+@end itemize
+
+GoVPN is written on Go programming language and you have to install Go
+compiler (1.5+ version is highly recommended): @code{lang/go} port in
+FreeBSD and @code{golang} package in most GNU/Linux distributions.
@emph{Make} is recommended for convenient building.
-@url{https://www.gnu.org/software/texinfo/, Texinfo}
-is used for building documentation.
+@url{https://www.gnu.org/software/texinfo/, Texinfo} is used for
+building documentation.
+Possibly you also need to install TUN/TAP interface utilities (depending
+on your operating system): @code{uml-utilities} package in most
+GNU/Linux distributions.
Included required libraries:
@headitem Library @tab Platform @tab Licence
@item @code{golang.org/x/crypto} @tab All @tab BSD 3-Clause
@item @code{github.com/agl/ed25519} @tab All @tab BSD 3-Clause
+@item @code{github.com/dchest/blake2b} @tab All @tab CC0 1.0
+@item @code{github.com/magical/argon2} @tab All @tab BSD 2-Clause
@item @code{github.com/bigeagle/water} @tab GNU/Linux @tab BSD 3-Clause
@end multitable
-Get the tarball and run @code{make}.
+Get @ref{Tarballs, the tarball}, check its
+@ref{Integrity, integrity and authenticity} and run @code{make}.
@emph{govpn-client}, @emph{govpn-server}, @emph{govpn-verifier}
-binaries will be build in the current directory.
+binaries will be built in the current directory:
@example
% wget http://www.cypherpunks.ru/govpn/download/govpn-2.3.tar.xz
% make -C govpn-2.3 all
@end example
+There is @code{install} target respecting @code{DESTDIR}. It will
+install binaries, info-documentation and utilities.
+
@menu
-* Prepared tarballs::
-* Development source code::
-* Tarballs integrity check::
+* Prepared tarballs: Tarballs.
+* Tarballs integrity check: Integrity.
+* Development source code: Sources.
@end menu
@include download.texi
-@include sources.texi
@include integrity.texi
+@include sources.texi