summary refs log tree commit diff
path: root/gnu/packages/tor.scm
diff options
context:
space:
mode:
authorDanial Behzadi <dani.behzi@ubuntu.com>2021-06-27 07:45:58 +0430
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2021-06-30 09:56:30 +0200
commit387b66b643a796df33d4fcb30549559dadcf0e0f (patch)
treed089eb3796dff0bb898d2bd61b5f0d3a943f0289 /gnu/packages/tor.scm
parent1fef9a442737dbdb82d4f6a3f5249207789d8d89 (diff)
downloadguix-387b66b643a796df33d4fcb30549559dadcf0e0f.tar.gz
gnu: Add tractor.
* gnu/packages/tor.scm (tractor): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Diffstat (limited to 'gnu/packages/tor.scm')
-rw-r--r--gnu/packages/tor.scm46
1 files changed, 46 insertions, 0 deletions
diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm
index b18e057977..2d9aac1924 100644
--- a/gnu/packages/tor.scm
+++ b/gnu/packages/tor.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
 ;;; Copyright © 2020 André Batista <nandre@riseup.net>
+;;; Copyright © 2021 Danial Behzadi <dani.behzi@ubuntu.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -41,6 +42,7 @@
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages pcre)
+  #:use-module (gnu packages glib)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-crypto)
@@ -424,3 +426,47 @@ statistics and status reports on:
 
 Potential client and exit connections are scrubbed of sensitive information.")
     (license license:gpl3+)))
+
+(define-public tractor
+  (package
+    (name "tractor")
+    (version "3.10")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "traxtor" version))
+       (sha256
+        (base32
+         "0cysxfynsnf5p61m7n6kb58bn1cf81n68clxh5irp44kjshi0q6l"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("glib:bin" ,glib "bin")))       ; for glib-compile-schemas.
+    (inputs
+     `(("python-fire" ,python-fire)
+       ("python-psutil" ,python-psutil)
+       ("python-pygobject" ,python-pygobject)
+       ("python-requests" ,python-requests)
+       ("python-stem" ,python-stem)
+       ("python-termcolor" ,python-termcolor)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'install-man-page
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (man1 (string-append out "/share/man/man1")))
+               (install-file "tractor/man/tractor.1" man1)
+               #t)))
+         (add-after 'install 'install-gschema
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (schemas (string-append out "/share/glib-2.0/schemas")))
+               (install-file "tractor/tractor.gschema.xml" schemas)
+               #t))))))
+    (home-page "https://framagit.org/tractor")
+    (synopsis "Setup an onion routing proxy")
+    (description
+     "This package uses Python stem library to provide a connection through
+the onion proxy and sets up proxy in user session, so you don't have to mess
+up with TOR on your system anymore.")
+    (license license:gpl3+)))