[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#42380] [PATCH 8/9] gnu: obfs4
From: |
André Batista |
Subject: |
[bug#42380] [PATCH 8/9] gnu: obfs4 |
Date: |
Tue, 15 Sep 2020 12:15:25 -0300 |
From 6e228ba965d65963456f3232cb8bd7fcc25bf822 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Batista?= <nandre@riseup.net>
Date: Mon, 14 Sep 2020 19:05:45 -0300
Subject: [PATCH] gnu: Add obfs4.
To: 42380@debbugs.gnu.org
* gnu/packages/tor.scm (obfs4): New variable.
* Alphabetically order module imports.
---
gnu/packages/tor.scm | 80 ++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 77 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm
index c852c54a5b..dd362d3af8 100644
--- a/gnu/packages/tor.scm
+++ b/gnu/packages/tor.scm
@@ -33,13 +33,16 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system go)
#:use-module (guix build-system python)
#:use-module (gnu packages)
+ #:use-module (gnu packages autotools)
#:use-module (gnu packages base)
- #:use-module (gnu packages libevent)
- #:use-module (gnu packages linux)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages golang)
+ #:use-module (gnu packages libevent)
+ #:use-module (gnu packages linux)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@@ -47,7 +50,6 @@
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
- #:use-module (gnu packages autotools)
#:use-module (gnu packages tls)
#:use-module (gnu packages w3m))
@@ -324,3 +326,75 @@ statistics and status reports on:
Potential client and exit connections are scrubbed of sensitive information.")
(license license:gpl3+)))
+
+(define-public obfs4
+ (package
+ (name "obfs4")
+ (version "0.0.11")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.torproject.org/pluggable-transports/obfs4.git")
+ (commit (string-append "obfs4proxy-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1y2kjwrk64l1h8b87m4iqsanib5rn68gzkdri1vd132qrlypycjn"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "git.torproject.org/pluggable-transports/obfs4.git"
+ #:tests? #f ;; No test files
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'build
+ (lambda* (#:key outputs configure-flags #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (copy-recursively
+ "src/git.torproject.org/pluggable-transports/obfs4.git"
+ "src/gitlab.com/yawning/obfs4.git"
+ #:log (%make-void-port "w"))
+ (with-directory-excursion
+
"src/git.torproject.org/pluggable-transports/obfs4.git/obfs4proxy"
+ (invoke "go" "build" "-ldflags" "-s"))
+ #t)))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (src
"src/git.torproject.org/pluggable-transports/obfs4.git")
+ (bin (string-append out "/bin"))
+ (share (string-append out "/share"))
+ (doc (string-append share "/doc"))
+ (man (string-append share "/man/man1")))
+ (mkdir-p man)
+ (mkdir bin)
+ (mkdir doc)
+ (with-directory-excursion
+ (string-append src "/obfs4proxy")
+ (copy-file "obfs4proxy"
+ (string-append bin "/obfs4proxy")))
+ (with-directory-excursion
+ (string-append src "/doc")
+ (copy-file "obfs4proxy.1"
+ (string-append man "/obfs4proxy.1"))
+ (copy-file "obfs4-spec.txt"
+ (string-append doc "/obfs4-spec.txt")))
+ #t))))))
+ (propagated-inputs
+ `(("go-torproject-org-ptlib" ,go-torproject-org-ptlib)
+ ("go-github-com-agl-ed25519" ,go-github-com-agl-ed25519)
+ ("go-github-com-dchest-siphash" ,go-github-com-dchest-siphash)
+ ("go-github-com-dchest-uniuri" ,go-github-com-dchest-uniuri)
+ ("go-github-com-dsnet-compress" ,go-github-com-dsnet-compress)
+ ("go-schwanenlied-me-yawning-bsaes" ,go-schwanenlied-me-yawning-bsaes)
+ ("go-gitlab-com-yawning-utls" ,go-gitlab-com-yawning-utls)
+ ("go-golang-org-x-net" ,go-golang-org-x-net)
+ ("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
+ ("go-golang-org-x-text" ,go-golang-org-x-text)))
+ (home-page "https://git.torproject.org/pluggable-transports/obfs4.git")
+ (synopsis "Obfs4 implements an obfuscation protocol")
+ (description "This is a look-like nothing obfuscation protocol that
+incorporates ideas and concepts from Philipp Winter's ScrambleSuit protocol.
+The obfs naming was chosen primarily because it was shorter, in terms of
+protocol ancestery obfs4 is much closer to ScrambleSuit than obfs2/obfs3.")
+ (license license:gpl3+)))
--
2.27.0
signature.asc
Description: PGP signature
- [bug#42380] [PATCH 0/9] gnu: Add torbrowser-unbundle., (continued)
- [bug#42380] [PATCH 0/9] gnu: Add go-github-com-dchest-siphash., André Batista, 2020/09/15
- [bug#42380] [PATCH 3/9] gnu: Add go-github-com-dchest-siphash, André Batista, 2020/09/15
- [bug#42380] [PATCH 4/9] gnu: Add go-github-com-dchest-uniuri, André Batista, 2020/09/15
- [bug#42380] [PATCH 5/9] gnu: Add go-github-com-dsnet-compress, André Batista, 2020/09/15
- [bug#42380] [PATCH 6/9] gnu: Add go-schwanenlied-me-yawning-bsaes, André Batista, 2020/09/15
- [bug#42380] [PATCH 7/9] gnu: Add go-gitlab-com-yawning-utls, André Batista, 2020/09/15
- [bug#42380] [PATCH 8/9] gnu: obfs4,
André Batista <=
- [bug#42380] [PATCH 9/9] gnu: Add torbrowser-unbundle, André Batista, 2020/09/15
- [bug#42380] [PATCHv2 9/9] gnu: Add torbrowser-unbundle, André Batista, 2020/09/24