From 61ac75445320890e9be38dc04492cae3caf657a2 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 29 Jan 2017 14:08:14 +0100 Subject: gnu: Add nyx. * gnu/packages/tor.scm (nyx): New variable. --- gnu/packages/tor.scm | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) (limited to 'gnu/packages/tor.scm') diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index 6695ebbf32..9339dcdd70 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2014, 2015 Mark H Weaver ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016, 2017 ng0 +;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -227,3 +228,66 @@ (define-public onionshare from you.") (license (list license:gpl3+ license:bsd-3)))) ; onionshare/socks.py + +(define-public nyx + ;; The last ‘arm’ relase was 5 years ago. Meanwhile, python3 support has + ;; been added and the software was renamed to ‘nyx’. + (let ((commit "fea209127484d9b304b908a4711c9528b1d065bc") + (revision "1")) ; Guix package revision + (package + (name "nyx") + (version (string-append "1.9-" + revision "." (string-take commit 7))) + (source + (origin + (method git-fetch) + (file-name (string-append name "-" version "-checkout")) + (uri (git-reference + (url "https://git.torproject.org/nyx.git") + (commit commit))) + (sha256 + (base32 + "1g0l4988076xg5gs0x0nxzlg58rfx5g5agmklvyh4yp03vxncdb9")))) + (build-system python-build-system) + (native-inputs + `(("python-mock" ,python-mock) + ("python-pep8" ,python-pep8) + ("python-pyflakes" ,python-pyflakes))) + (inputs + `(("python-stem" ,python-stem))) + (arguments + `(#:configure-flags + (list (string-append "--man-page=" + (assoc-ref %outputs "out") + "/share/man/man1/nyx.1") + (string-append "--sample-path=" + (assoc-ref %outputs "out") + "/share/doc/nyx/nyxrc.sample")) + #:use-setuptools? #f ; setup.py still uses distutils + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (zero? (system* "./run_tests.py" "--unit"))))))) + ;; A Nyx home page is ‘being worked on’. Use Arm's for now, which at + ;; least mentions the new source repository: + (home-page "http://www.atagar.com/arm/") + (synopsis "Tor relay status monitor") + (description "Nyx (formerly Anonymizing Relay Monitor or \"arm\") +monitors the performance of relays participating in the +@uref{https://www.torproject.org/, Tor anonymity network}. It displays this +information visually and in real time, using a curses-based terminal interface. +This makes Nyx well-suited for remote shell connections and servers without a +graphical display. It's like @command{top} for Tor, providing detailed +statistics and status reports on: + +@enumerate +@item connections (with IP address, hostname, fingerprint, and consensus data), +@item bandwidth, processor, and memory usage, +@item the relay's current configuration, +@item logged events, +@item and much more. +@end enumerate + +Potential client and exit connections are scrubbed of sensitive information.") + (license license:gpl3+)))) -- cgit v1.2.3