]> Cypherpunks.ru repositories - govpn.git/blobdiff - doc/installation.texi
Use convenient simpler Go 1.9's sync.Map
[govpn.git] / doc / installation.texi
index 5aa954311a92ab2755fdeb1acbc1752af6b923fd..1f8a74c36bf06b4a70a4965f2c595b21d6b554c8 100644 (file)
@@ -1,39 +1,47 @@
 @node Installation
 @unnumbered Installation
 
-GoVPN is written on @url{http://golang.org/, Go programming language},
-with @code{golang.org/x/crypto} libraries dependencies.
-@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.
+Possibly GoVPN already exists in your distribution:
 
-@include download.texi
+@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:
 
-You @strong{have to} verify downloaded archives integrity and check
-their signature to be sure that you have got trusted, untampered
-software. For integrity and authentication of downloaded binaries
-@url{https://www.gnupg.org/, The GNU Privacy Guard} is used. You must
-download signature provided with the tarball.
-
-For the very first time you have to import signing public keys. They
-are provided below, but be sure that you are reading them from the
-trusted source. Alternatively check this page from other sources (Tor's
-hidden service for example) and look for the mailing list announcements.
-
-For example you can get tarball, set proper @code{$GOPATH} and run
-@code{make} (that will install all necessary libraries and build
-client/server binaries) like this:
-
-@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
+@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
 
-@include pubkey.texi
+There is @command{install} target respecting @env{DESTDIR}.
+It will install binaries, info-documentation and utilities.
+
+@menu
+* Prepared tarballs: Tarballs.
+* Tarballs integrity check: Integrity.
+* Development source code: Sources.
+@end menu
+
+@include download.texi
+@include integrity.texi
+@include sources.texi