From 05a47d99a60e46eef9f82c73cf4041810470f5c7 Mon Sep 17 00:00:00 2001 From: Alex Griffin Date: Tue, 19 Nov 2019 19:59:32 -0600 Subject: [PATCH] gnu: Add netcat-openbsd. * gnu/packages/admin.scm (netcat-openbsd): New variable. --- gnu/packages/admin.scm | 59 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 761b26a8d6..f07416c8a1 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -27,6 +27,7 @@ ;;; Copyright © 2019 Björn Höfling ;;; Copyright © 2019 Jakob L. Kreuze ;;; Copyright © 2019 Hartmut Goebel +;;; Copyright © 2019 Alex Griffin ;;; ;;; This file is part of GNU Guix. ;;; @@ -67,6 +68,7 @@ #:use-module (gnu packages file) #:use-module (gnu packages ncurses) #:use-module (gnu packages readline) + #:use-module (gnu packages libbsd) #:use-module (gnu packages linux) #:use-module (gnu packages lua) #:use-module (gnu packages guile) @@ -87,6 +89,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages openldap) #:use-module (gnu packages mcrypt) + #:use-module (gnu packages patchutils) #:use-module (gnu packages pkg-config) #:use-module (gnu packages popt) #:use-module (gnu packages python) @@ -620,6 +623,62 @@ and exploration tool, since it can create almost any kind of connection you would need and has several interesting built-in capabilities.") (license license:gpl2+))) +(define-public netcat-openbsd + (package + (name "netcat-openbsd") + (version "1.203-2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://salsa.debian.org/debian/netcat-openbsd.git") + (commit (string-append "debian/" version)))) + (sha256 + (base32 + "0j85gzbjzs6yrhgabh3zkwzd27qkr5s0zjjczl0hah8q7yhrjk3m")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no test suite + #:make-flags + (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out")) + (string-append "CFLAGS=-I" (assoc-ref %build-inputs "libbsd") "/include") + "LDFLAGS=-lbsd") + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'patch + (lambda _ + (setenv "QUILT_PATCHES" "debian/patches") + (invoke "quilt" "push" "-a") + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (doc (string-append out "/share/doc/netcat-openbsd-" ,version)) + (man (string-append out "/share/man/man1"))) + (install-file "nc" bin) + (install-file "nc.1" man) + (install-file "debian/copyright" doc) + #t)))))) + (inputs `(("libbsd" ,libbsd))) + (native-inputs `(("pkg-config" ,pkg-config) + ("quilt" ,quilt))) + (home-page "https://packages.debian.org/sid/netcat-openbsd") + (synopsis "TCP/IP swiss army knife") + (description + "A simple Unix utility which reads and writes data across network +connections using TCP or UDP protocol. It is designed to be a reliable +\"back-end\" tool that can be used directly or easily driven by other programs +and scripts. At the same time it is a feature-rich network debugging and +exploration tool, since it can create almost any kind of connection you would +need and has several interesting built-in capabilities. + +This package contains the OpenBSD rewrite of netcat, including support for +IPv6, proxies, and Unix sockets.") + (license (list license:bsd-3 + license:bsd-2)))) ; atomicio.*, socks.c + (define-public sipcalc (package (name "sipcalc") -- 2.24.0