]> Cypherpunks.ru repositories - govpn.git/blobdiff - doc/installation.texi
Use convenient simpler Go 1.9's sync.Map
[govpn.git] / doc / installation.texi
index 727647696575480551788b5a4bc2e4eca41fda5e..1f8a74c36bf06b4a70a4965f2c595b21d6b554c8 100644 (file)
@@ -1,46 +1,47 @@
 @node Installation
 @unnumbered Installation
 
-GoVPN is written on @url{http://golang.org/, Go programming language},
-@url{https://www.gnu.org/software/make/, GNU Make} is recommended for
-convenient building. @url{https://www.gnu.org/software/texinfo/, Texinfo}
-is used for building documentation.
-
-Required libraries, dependencies (they are installed automatically when
-using @emph{Make}):
-
-@multitable @columnfractions .40 .20 .40
-@headitem Library @tab Platform @tab Licence
-@item @code{golang.org/x/crypto/poly1305} @tab All @tab BSD 3-Clause
-@item @code{golang.org/x/crypto/salsa20} @tab All @tab BSD 3-Clause
-@item @code{golang.org/x/crypto/xtea} @tab All @tab BSD 3-Clause
-@item @code{golang.org/x/crypto/pbkdf2} @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
-
-You can get tarball, set proper @code{$GOPATH} and run
-@code{make} (that will install all necessary libraries and build
-@emph{govpn-client}, @emph{govpn-server}, @emph{govpn-verifier} binaries:
-
-@example
-% mkdir -p govpn/src
-% set -e
-% 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
+Possibly GoVPN already exists in your distribution:
+
+@itemize
+@item @url{https://aur.archlinux.org/packages/govpn/, Arch Linux AUR}
+@item @url{http://www.freshports.org/security/govpn/, FreeBSD ports}
+@item @url{https://gpo.zugaina.org/net-misc/govpn, Gentoo Portage Overlay}
+@item @url{https://pkgs.org/download/govpn, openSUSE OSS}
+@end itemize
+
+GoVPN is written on @url{https://golang.org/, Go} programming language
+and you have to install Go compiler 1.9+ version: @code{lang/go} port in
+FreeBSD and @code{golang} package in most GNU/Linux distributions.
+@emph{Make} (BSD and GNU ones are fine) is recommended for convenient
+building. @url{https://www.gnu.org/software/texinfo/, Texinfo} (6.1+
+version is recommended) is used for building documentation. Possibly you
+also need to install TUN/TAP interface utilities (depending on your
+operating system): @command{uml-utilities} package in most GNU/Linux
+distributions.
+
+Get @ref{Tarballs, the tarball}, check its
+@ref{Integrity, integrity and authenticity} and run @command{make}.
+@emph{govpn-client}, @emph{govpn-server}, @emph{govpn-verifier}
+binaries will be built in the current directory:
+
+@verbatim
+% wget http://www.govpn.info/download/govpn-2.3.tar.xz
+% wget http://www.govpn.info/download/govpn-2.3.tar.xz.sig
 % gpg --verify govpn-2.3.tar.xz.sig govpn-2.3.tar.xz
-% tar xfC govpn-2.3.tar.xz govpn/src
-% mv govpn/src/govpn-2.3 govpn/src/govpn
-% export GOPATH=$(pwd)/govpn:$GOPATH
-% gmake -C govpn/src/govpn all
-@end example
+% tar xf govpn-2.3.tar.xz
+% make -C govpn-2.3 all
+@end verbatim
+
+There is @command{install} target respecting @env{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