X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=install.texi;h=b8b6016a851cbd0f26db01952c9f34e287a0ae74;hb=c19a111af499e05273906e9d5f7c059ab38d6f02;hp=9ce6459908d4b5aafc2cac67a2b817085ec25434;hpb=5d6df51d96f29e1188cb7a4a8bec06a9d970484b;p=gogost.git diff --git a/install.texi b/install.texi index 9ce6459..b8b6016 100644 --- a/install.texi +++ b/install.texi @@ -1,18 +1,15 @@ @node Download @unnumbered Download -@set VERSION 4.2.4 - Preferable way is to download tarball with the signature from website and, for example, run tests with benchmarks: @example -$ [fetch|wget] http://gogost.cypherpunks.ru/gogost-@value{VERSION}.tar.xz -$ [fetch|wget] http://gogost.cypherpunks.ru/gogost-@value{VERSION}.tar.xz.sig -$ gpg --verify gogost-@value{VERSION}.tar.xz.sig gogost-@value{VERSION}.tar.xz -$ xz --decompress --stdout gogost-@value{VERSION}.tar.xz | tar xf - +$ [fetch|wget] http://www.gogost.cypherpunks.ru/gogost-@value{VERSION}.tar.zst +$ [fetch|wget] http://www.gogost.cypherpunks.ru/gogost-@value{VERSION}.tar.zst.sig +$ gpg --verify gogost-@value{VERSION}.tar.zst.sig gogost-@value{VERSION}.tar.zst +$ zstd --decompress --stdout gogost-@value{VERSION}.tar.zst | tar xf - $ cd gogost-@value{VERSION} -$ redo bench $ redo all $ echo hello world | ./streebog256 f72018189a5cfb803dbe1f2149cf554c40093d8e7f81c21e08ac5bcd09d9934d @@ -20,12 +17,9 @@ f72018189a5cfb803dbe1f2149cf554c40093d8e7f81c21e08ac5bcd09d9934d It uses @url{http://cr.yp.to/redo.html, redo} build system for that examples. You can use either dozen of various implementations, or at -least minimalistic POSIX shell @code{apenwarr/do}: - -@example -$ [fetch|wget] https://github.com/apenwarr/redo/raw/master/minimal/do -$ mv do redo ; chmod +x redo -@end example +least minimalistic POSIX shell @command{contrib/do} (just replace +@command{redo} with @command{contrib/do} in the example above) included +in tarball. @include download.texi @@ -33,10 +27,9 @@ And then you can include its source code in your project for example like this: @example -$ mkdir -p myproj/src -$ cp -r gogost-@value{VERSION}/src/go.cypherpunks.ru myproj/src -$ export GOPATH=$PWD/myproj -$ cd myproj/src +$ mkdir -p myproj/vendor/go.cypherpunks.ru/gogost +$ mv gogost-@value{VERSION} myproj/vendor/go.cypherpunks.ru/gogost/v5 +$ cd myproj $ cat > main.go < @itemize -@item @url{https://lists.cypherpunks.ru/mailman/listinfo/gost, gost} maillist +@item @url{http://lists.cypherpunks.ru/gost.html, gost} maillist @item @example $ gpg --auto-key-locate dane --locate-keys gogost at cypherpunks dot ru -$ gpg --auto-key-locate wkd --locate-keys gogost at cypherpunks dot ru +$ gpg --auto-key-locate wkd --locate-keys gogost at cypherpunks dot ru @end example @item @@ -87,25 +80,45 @@ $ gpg --auto-key-locate wkd --locate-keys gogost at cypherpunks dot ru @end itemize -GoGOST is also @command{go get}-able. For example to use +GoGOST is also @command{go get}-able. For example to install @command{streebog256} utility: @example -$ go get go.cypherpunks.ru/gogost/cmd/streebog256 +$ go install go.cypherpunks.ru/gogost/v5/cmd/streebog256@@latest @end example -@code{go.cypherpunks.ru} uses @url{http://ca.cypherpunks.ru/, ca.cypherpunks.ru} -certificate authority. If you have issues using either -@code{sum.golang.org} or @code{proxy.golang.org}, then you can disable -their usage with @env{GOPRIVATE=go.cypherpunks.ru/gogost} environment -variable. +@code{go.cypherpunks.ru} uses @code{ca.cypherpunks.ru} X.509 CA +authority, that may complicate installation: + +@itemize + +@item Go's default @code{proxy.golang.org} and @code{sum.golang.org} +services won't be able to verify @code{go.cypherpunks.ru}'s TLS +authenticity, because there are no common trust anchors. You can skip +their usage by setting @env{$GOPRIVATE=go.cypherpunks.ru}. -Also you can use @code{replace} feature inside your @file{go.mod}, like: +@item You can (temporarily) override CA certificate bundle during installation: @example -require go.cypherpunks.ru/gogost/v4 v@value{VERSION} -replace go.cypherpunks.ru/gogost/v4 => /home/stargrave/gogost-@value{VERSION}/src/go.cypherpunks.ru/gogost/v4 +$ [fetch|wget] http://www.ca.cypherpunks.ru/cert.pem +$ [fetch|wget] http://www.ca.cypherpunks.ru/cert.pem.asc +$ gpg --auto-key-locate dane --locate-keys stargrave at stargrave dot org +$ gpg --auto-key-locate wkd --locate-keys stargrave at gnupg dot net +$ gpg --verify cert.pem.asc +$ SSL_CERT_FILE=`pwd`/cert.pem GIT_SSL_CAINFO=`pwd`/cert.pem go get \ + go.cypherpunks.ru/gogost/v5 @end example +@item You can unpack tarball somewhere and use @code{replace} command in +your local @file{go.mod}: + +@example +require go.cypherpunks.ru/gogost/v5 v@value{VERSION} +replace go.cypherpunks.ru/gogost/v5 => /path/to/gogost-@value{VERSION} +@end example + +@end itemize + You can obtain development source code with -@command{git clone git://git.cypherpunks.ru/gogost.git}. +@command{git clone git://git.cypherpunks.ru/gogost.git} +(also you can use @url{https://git.cypherpunks.ru/gogost.git}).