@node Installation @unnumbered Installation 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. 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: @multitable @columnfractions .40 .20 .40 @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/bigeagle/water} @tab GNU/Linux @tab BSD 3-Clause @end multitable Get @ref{Prepared tarballs, the tarball}, check its @ref{Tarballs integrity check, authenticity} and run @code{make}. @emph{govpn-client}, @emph{govpn-server}, @emph{govpn-verifier} binaries will be built in the current directory: @example % wget http://www.cypherpunks.ru/govpn/download/govpn-2.3.tar.xz % wget http://www.cypherpunks.ru/govpn/download/govpn-2.3.tar.xz.sig % gpg --verify govpn-2.3.tar.xz.sig govpn-2.3.tar.xz % tar xf 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:: @end menu @include download.texi @include sources.texi @include integrity.texi