Message ID | 20161030164427.1817-1-arunisaac@systemreboot.net |
---|---|
State | New |
Headers | show |
> + (arguments > + `(#:make-flags `("CC=gcc" > + ,(string-append "PREFIX=" %output)) > + #:phases > + (modify-phases %standard-phases > + (delete 'configure)))) I haven't moved the binary to /bin yet. If we can come to some consensus on that, I'll make that change as well. > + (synopsis "Per-process bandwidth monitor") > + (description "NetHogs is a small 'net top' tool for Linux. > +Instead of breaking the traffic down per protocol or per subnet, like > +most tools do, it groups bandwidth by process. I've updated the synopsis and description as discussed earlier.
On Sun, Oct 30, 2016 at 10:34:54PM +0530, Arun Isaac wrote: > > > + (arguments > > + `(#:make-flags `("CC=gcc" > > + ,(string-append "PREFIX=" %output)) > > + #:phases > > + (modify-phases %standard-phases > > + (delete 'configure)))) > > I haven't moved the binary to /bin yet. If we can come to some consensus > on that, I'll make that change as well. We typically package what the upstream maintainers offer, and only make changes in order to fix bugs or to adapt the software to the functional packaging paradigm. In this case, I don't see a reason to change the directory the software is installed to. Is there a reason to change it?
> We typically package what the upstream maintainers offer, and only make > changes in order to fix bugs or to adapt the software to the functional > packaging paradigm. In this case, I don't see a reason to change the > directory the software is installed to. Is there a reason to change it? /sbin is for programs that need superuser privileges. nethogs does need superuser privileges. So, I don't think we should move it to /bin. If everything else is fine, please consider the patch for inclusion into Guix. Thanks.
On Sun, Oct 30, 2016 at 11:16:55PM +0530, Arun Isaac wrote: > > > We typically package what the upstream maintainers offer, and only make > > changes in order to fix bugs or to adapt the software to the functional > > packaging paradigm. In this case, I don't see a reason to change the > > directory the software is installed to. Is there a reason to change it? > > /sbin is for programs that need superuser privileges. nethogs does need > superuser privileges. So, I don't think we should move it to /bin. > > If everything else is fine, please consider the patch for inclusion into > Guix. Okay, pushed! This is another package I can now install from Guix instead of my host distro :) Thank you!
> Okay, pushed!
Thanks!
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index ac88673..d0e0a79 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -991,3 +991,39 @@ the bandwidth, loss, and other parameters.") license:ncsa ; src/{units,iperf_locale,tcp_window_size}.c license:expat ; src/{cjson,net}.[ch] license:public-domain)))) ; src/portable_endian.h + +(define-public nethogs + (package + (name "nethogs") + (version "0.8.5") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/raboof/nethogs/archive/v" + version ".tar.gz")) + (sha256 + (base32 + "1k4x8r7s4dgcb6n2rjn28h2yyij92mwm69phncl3597cdxr954va")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system gnu-build-system) + (inputs + `(("libpcap" ,libpcap) + ("ncurses" ,ncurses))) + (arguments + `(#:make-flags `("CC=gcc" + ,(string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (home-page "https://github.com/raboof/nethogs") + (synopsis "Per-process bandwidth monitor") + (description "NetHogs is a small 'net top' tool for Linux. +Instead of breaking the traffic down per protocol or per subnet, like +most tools do, it groups bandwidth by process. + +NetHogs does not rely on a special kernel module to be loaded. If +there's suddenly a lot of network traffic, you can fire up NetHogs and +immediately see which PID is causing this. This makes it easy to +identify programs that have gone wild and are suddenly taking up your +bandwidth.") + (license license:gpl2+)))