diff options
author | Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> | 2018-07-31 13:19:33 +0200 |
---|---|---|
committer | Ricardo Wurmus <rekado@elephly.net> | 2018-08-01 20:31:42 +0200 |
commit | a8253fbe5ff0371e783edc8bb949996f07dd643a (patch) | |
tree | 836d733b7fbc20e2c54f8bb59b53e17b659971e4 /gnu/packages/networking.scm | |
parent | c54511fde0b74bb53c144a84641e3b78ee629dd2 (diff) | |
download | patches-a8253fbe5ff0371e783edc8bb949996f07dd643a.tar patches-a8253fbe5ff0371e783edc8bb949996f07dd643a.tar.gz |
gnu: Add net-snmp.
* gnu/packages/networking.scm (net-snmp): New variable.
Co-authored-by: Marius Bakke <mbakke@fastmail.com>
Co-authored-by: Oleg Pykhalov <go.wigust@gmail.com>
Diffstat (limited to 'gnu/packages/networking.scm')
-rw-r--r-- | gnu/packages/networking.scm | 79 |
1 files changed, 78 insertions, 1 deletions
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 90967b9b1f..fad4f526ea 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2017, 2018 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015, 2016, 2017 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2016 Raimon Grau <raimonster@gmail.com> @@ -23,6 +23,8 @@ ;;; Copyright © 2018 Tonton <tonton@riseup.net> ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2018 Theodoros Foradis <theodoros@foradis.org> +;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1965,3 +1967,78 @@ Features: @item Destination IP blacklist @end itemize") (license license:asl2.0)))) + +(define-public net-snmp + (package + (name "net-snmp") + (version "5.8") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/net-snmp/net-snmp/" + version "/net-snmp-" version ".tar.gz")) + (sha256 + (base32 + "1pvajzj9gmj56dmwix0ywmkmy2pglh6nny646hkm7ghfhh03bz5j")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Drop bundled libraries. + (delete-file-recursively "snmplib/openssl") + #t)))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + ;; XXX: With parallel build enabled, Perl modules may not get linked with + ;; libnetsnmp. See e.g. <https://bugzilla.novell.com/show_bug.cgi?id=819497>. + #:parallel-build? #f + #:configure-flags + (list (string-append "LDFLAGS=-Wl,-rpath=" + (assoc-ref %outputs "out") + "/lib") + "--with-logfile=/var/log/snmpd.log") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-tests + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "testing/fulltests/support/simple_TESTCONF.sh" + (("NETSTAT=\"\"") + (string-append "NETSTAT=\"" (which "netstat") "\""))) + (substitute* '("testing/fulltests/default/T065agentextend_simple" + "testing/fulltests/default/T115agentxperl_simple") + (("/usr/bin/env") (which "env"))) + (substitute* "testing/fulltests/default/T065agentextend_sh_simple" + (("/bin/sh") (which "sh"))) + ;; These tests require network access. + (for-each delete-file + '("testing/fulltests/default/T070com2sec_simple" + "testing/fulltests/default/T071com2sec6_simple")) + #t)) + (add-after 'unpack 'patch-Makefile.PL + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "Makefile.in" + (("Makefile.PL -NET") + (string-append "Makefile.PL PREFIX=" + (assoc-ref outputs "out") + " INSTALLDIRS=site" " NO_PERLLOCAL=1" + " -NET"))) + #t))))) + (inputs + `(("perl" ,perl) + ("openssl" ,openssl) + ("libnl" ,libnl))) + ;; These inputs are only needed for tests. + (native-inputs + `(("net-tools" ,net-tools) + ("coreutils" ,coreutils) + ("grep" ,grep))) + (home-page "http://www.net-snmp.org/") + (synopsis "Simple Network Management Protocol library and tools") + (description "The @dfn{Simple Network Management Protocol} (SNMP) is a +widely used protocol for monitoring the health and welfare of network +equipment (e.g. routers), computer equipment and even devices like UPSs. +Net-SNMP is a suite of applications used to implement SNMP v1, SNMP v2c and +SNMP v3 using both IPv4 and IPv6.") + (license (list license:bsd-3 + (license:non-copyleft + "http://www.net-snmp.org/about/license.html" + "CMU/UCD copyright notice"))))) |