summaryrefslogtreecommitdiff
path: root/gnu/packages/networking.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/networking.scm')
-rw-r--r--gnu/packages/networking.scm458
1 files changed, 330 insertions, 128 deletions
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 1db090b1a3..b31350b145 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -69,6 +69,7 @@
;;; Copyright © 2025 B. Wilson <elaexuotee@wilsonb.com>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -100,6 +101,7 @@
#:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
+ #:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial)
#:use-module (guix utils)
@@ -181,6 +183,7 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages rpc)
#:use-module (gnu packages samba)
#:use-module (gnu packages serialization)
#:use-module (gnu packages shells)
@@ -2021,9 +2024,9 @@ replies, fping will send out a ping packet and move on to the next target in a
round-robin fashion.")
(license license:expat)))
-(define-public gandi.cli
+(define-public gandi-cli
(package
- (name "gandi.cli")
+ (name "gandi-cli")
(version "1.6")
(source
(origin
@@ -2031,34 +2034,41 @@ round-robin fashion.")
(uri (pypi-uri name version))
(sha256
(base32 "1h36jahbp7273wn3yd747kbiwjc0bm3sja67bcxdsd54ln0vyndg"))))
- (build-system python-build-system)
+ (build-system pyproject-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'embed-store-file-names
- (lambda _
- (substitute* (list "gandi/cli/modules/cert.py"
- "gandi/cli/tests/commands/test_certificate.py")
- (("openssl") (which "openssl")))
- #t))
- (add-after 'install 'install-documentation
- ;; The included man page may be outdated but we install it anyway,
- ;; since it's mentioned in 'gandi --help' and better than nothing.
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (man1 (string-append out "/share/man/man1")))
- (mkdir-p man1)
- (with-output-to-file (string-append man1 "/gandi.1")
- (lambda _
- (invoke "rst2man.py" "gandicli.man.rst")))
- #t))))))
+ (list
+ #:test-flags
+ #~(list "--pyargs" "gandi.cli")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'embed-store-file-names
+ (lambda _
+ (substitute* (list "gandi/cli/modules/cert.py"
+ "gandi/cli/tests/commands/test_certificate.py")
+ (("openssl") (which "openssl")))))
+ (add-after 'install 'install-documentation
+ ;; The included man page may be outdated but we install it anyway,
+ ;; since it's mentioned in 'gandi --help' and better than nothing.
+ (lambda _
+ (let* ((man1 (string-append #$output "/share/man/man1")))
+ (mkdir-p man1)
+ (with-output-to-file (string-append man1 "/gandi.1")
+ (lambda _
+ (invoke "rst2man.py" "gandicli.man.rst")))))))))
(native-inputs
- (list python-docutils ; for rst2man.py
- python-pytest python-pytest-cov python-tox))
- (propagated-inputs
- (list openssh)) ; used by gandi/cli/modules/iass.py
+ (list python-docutils-0.19
+ python-pytest
+ python-pytest-cov
+ python-setuptools
+ python-wheel))
(inputs
- (list openssl python-click-7 python-ipy python-pyyaml python-requests))
+ (list openssl
+ python-click-7
+ python-ipy
+ python-pyyaml
+ python-requests))
+ (propagated-inputs
+ (list openssh))
(home-page "https://cli.gandi.net")
(synopsis "Command-line interface to the Gandi.net Web API")
(description
@@ -2067,6 +2077,9 @@ manage, and delete Internet resources from Gandi.net such as domain names,
virtual machines, and certificates.")
(license license:gpl3+)))
+(define-public gandi.cli
+ (deprecated-package "gandi.cli" gandi-cli))
+
(define-public go-sctp
;; docker-libnetwork-cmd-proxy requires this exact commit.
;; This commit is mentioned in docker-libnetwork-cmd-proxy's vendor.conf.
@@ -2168,14 +2181,14 @@ TCP connection, TLS handshake and so on) in the terminal.")
(define-public squid
(package
(name "squid")
- (version "6.10")
+ (version "6.12")
(source
(origin
(method url-fetch)
(uri (string-append "http://www.squid-cache.org/Versions/v6/squid-"
version ".tar.xz"))
(sha256
- (base32 "19q86j2jd2vwv298ialnhqahl0qjxjdbigi5vmq4gw13wy3v21qb"))))
+ (base32 "0l6bng9irigrcy5q9lalynwpc3czk9lx9994dwk179834sxkmpzk"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags
@@ -2973,6 +2986,150 @@ contains a Web interface. Its server can be controlled through remote
procedure calls (RPCs).")
(license license:gpl2+)))
+(define-public opensnitch-daemon
+ (package
+ (name "opensnitch-daemon")
+ (version "1.7.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/evilsocket/opensnitch")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1r36khc8jfijh3385453az10d442kb6mg4ji44qv7kf0k34pn12w"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:install-source? #f
+ #:import-path "github.com/evilsocket/opensnitch/daemon"
+ #:unpack-path "github.com/evilsocket/opensnitch"
+ #:test-flags
+ #~(list "-vet=off" ;; Go@1.24 forces vet, but tests are not ready yet.
+ ;; client_test.go:58: error copying default config file: exit
+ ;; status 1
+ "-skip" "TestClientDefaultConfig")
+ #:test-subdirs
+ ;; Some tests require root access, run only portion of them.
+ #~(list "conman"
+ "firewall/config"
+ "netlink"
+ "procmon"
+ "rule"
+ "tasks"
+ "tasks/nodemonitor"
+ "tasks/pidmonitor")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'build 'fix-default-config-path
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (substitute* (find-files "." "\\.go$")
+ (("/etc/opensnitchd")
+ (string-append #$output "/etc/opensnitchd"))))))
+ (add-before 'build 'build-ui-proto
+ (lambda* (#:key unpack-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" unpack-path
+ "/proto")
+ (invoke "make" "../daemon/ui/protocol/ui.pb.go"))))
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "PRIVILEGED_TESTS" "0")
+ (setenv "NETLINK_TESTS" "0")))
+ (add-after 'install 'rename-binary
+ (lambda _
+ (with-directory-excursion (string-append #$output)
+ (mkdir "sbin")
+ (rename-file "bin/daemon" "sbin/opensnitchd")
+ (delete-file-recursively "bin"))))
+ (add-after 'install 'install-default-config
+ (lambda* (#:key import-path #:allow-other-keys)
+ (let ((dest (string-append #$output "/etc/opensnitchd")))
+ (mkdir-p dest)
+ (with-directory-excursion (string-append "src/" import-path)
+ (for-each (lambda (name)
+ (install-file name dest))
+ '("default-config.json"
+ "network_aliases.json"
+ "system-fw.json")))))))))
+ (native-inputs
+ (list go-github-com-fsnotify-fsnotify
+ go-github-com-cilium-ebpf
+ go-github-com-google-gopacket
+ go-github-com-google-nftables
+ go-github-com-varlink-go-varlink
+ go-github-com-vishvananda-netlink
+ go-golang-org-x-net
+ go-golang-org-x-sys
+ go-google-golang-org-grpc
+ go-google-golang-org-protobuf
+ protobuf protoc-gen-go pkg-config
+ protoc-gen-go-grpc))
+ (inputs
+ (list libnetfilter-queue
+ libnfnetlink
+ libvarlink))
+ (home-page "https://github.com/evilsocket/opensnitch")
+ (synopsis "Interactive application firewall daemon")
+ (description
+ "This package provides a daemon that snitches on programs making outbound
+connections. OpenSnitch is an application-level firewall that gives you
+granular control over outbound network connections on your system. It
+monitors application activity and prompts you to allow or deny connections on
+a per-application basis whenever a new outbound connection is attempted.")
+ (license license:gpl3+)))
+
+(define-public opensnitch-ui
+ (package
+ (inherit opensnitch-daemon)
+ (name "opensnitch-ui")
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:tests? #f ; TODO: Fix virustotal test (upstream)
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "ui")
+ (substitute* "setup.py"
+ (("/usr")
+ #$output))))
+ (add-after 'install 'install-rc
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; Debian does the following after install
+ (with-directory-excursion "i18n"
+ (invoke "make"))
+ (invoke "pyrcc5" "-o" "opensnitch/resources_rc.py"
+ "opensnitch/res/resources.qrc")
+ ;; resources_rc.py is not installed automatically.
+ (install-file "opensnitch/resources_rc.py"
+ (string-append (site-packages inputs outputs) "/opensnitch"))
+ (substitute* "tests/test_nodes.py"
+ (("from opensnitch import ui_pb2")
+ "from opensnitch.proto import ui_pb2"))
+ (for-each (lambda (name)
+ (substitute* name
+ (("^import ui_pb2")
+ "from . import ui_pb2")))
+ (find-files "opensnitch/proto" "ui_pb2_grpc.py")))))))
+ (native-inputs
+ (list python-setuptools
+ python-wheel
+ qttools-5))
+ (inputs
+ (list python-grpcio-tools
+ python-notify2
+ python-pyasn1
+ python-pyinotify
+ python-pyqt
+ python-protobuf
+ python-requests
+ python-slugify
+ qtwayland-5))
+ (synopsis "UI for @code{opensnitch}")))
+
(define-public openvswitch
(package
(name "openvswitch")
@@ -3590,14 +3747,14 @@ eight bytes) tools
(define-public asio
(package
(name "asio")
- (version "1.28.0")
+ (version "1.36.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/asio/asio/"
version " (Stable)/asio-" version ".tar.bz2"))
(sha256
- (base32 "0cp2c4v0kz0ln4bays0s3fr1mcxl527ay2lp7s14qbxx38vc5pfh"))))
+ (base32 "092mh9lmvj0da2wnna0x43wi08fcdl1bxrp6ji6crnfcq7ixpx3v"))))
(build-system gnu-build-system)
(inputs
(list boost openssl))
@@ -3779,7 +3936,7 @@ Ethernet and TAP interfaces is supported. Packet capture is also supported.")
(define-public hcxtools
(package
(name "hcxtools")
- (version "6.3.5")
+ (version "7.0.1")
(source
(origin
(method git-fetch)
@@ -3787,7 +3944,7 @@ Ethernet and TAP interfaces is supported. Packet capture is also supported.")
(url "https://github.com/ZerBea/hcxtools")
(commit version)))
(sha256
- (base32 "0kmgl9q4iq0c5c8hlqmxnzz17nxplmzlnbi3h2q5vz75hn4ccmzi"))
+ (base32 "07j8fcy9fq1i4jns6v1gx85pm34q56022aw391mdzxq5yka7wpjr"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs (list pkg-config))
@@ -3813,7 +3970,7 @@ packets from wireless devices for use with hashcat or John the Ripper.")
(define-public hcxdumptool
(package
(name "hcxdumptool")
- (version "6.3.5")
+ (version "7.0.1")
(source
(origin
(method git-fetch)
@@ -3821,7 +3978,7 @@ packets from wireless devices for use with hashcat or John the Ripper.")
(url "https://github.com/ZerBea/hcxdumptool")
(commit version)))
(sha256
- (base32 "12q5qzni0ggk76wsprk68l8g07rrgv46xw4ycnpvbj9q71p2f3iw"))
+ (base32 "1h03wdm9rcfa0s59kbd1dv550k7c4rpksw5w5djz5q70i23f25h0"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@@ -3976,7 +4133,7 @@ and targeted primarily for asynchronous processing of HTTP-requests.")
(define-public opendht
(package
(name "opendht")
- (version "3.4.0")
+ (version "3.5.4")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3985,8 +4142,7 @@ and targeted primarily for asynchronous processing of HTTP-requests.")
(file-name (git-file-name name version))
(sha256
(base32
- "069y4mgygjsfp5szfbqr7l30g7fbcqqj62h11byyq9k24rl7ilsq"))
- (patches (search-patches "opendht-nanosleep.patch"))))
+ "1qy5fvz4rr480n0sa81n3rx5zskpgk7zqip12b9ly8hk43mxsycs"))))
(outputs '("out" "python" "tools" "debug"))
(build-system gnu-build-system)
(arguments
@@ -4037,6 +4193,15 @@ and targeted primarily for asynchronous processing of HTTP-requests.")
(("extra_link_args=\\[(.*)\\]" _ args)
(string-append "extra_link_args=[" args
", '-Wl,-rpath=" #$output "/lib']")))))
+ ;; This is due to an upstream issue:
+ ;; https://git.jami.net/savoirfairelinux/opendht/-/issues/69
+ (add-after 'unpack 'fix-llhttp-lib-substitution
+ (lambda _
+ (substitute* "configure.ac"
+ (("http_lib")
+ "llhttp_lib")
+ (("-lllhttp")
+ ", libllhttp"))))
;; TODO: build with liburing, requires cmake or meson.
(add-after 'unpack 'pkgconfig-disable-iouring
(lambda _
@@ -4120,8 +4285,8 @@ A very simple IM client working over the DHT.
(define-public dhtnet
;; There is no tag nor release; use the latest available commit.
- (let ((revision "4")
- (commit "6c5ee3a21556d668d047cdedb5c4b746c3c6bdb2"))
+ (let ((revision "5")
+ (commit "f925f5200539d4e1ee6176d828ae08a8a6c3890a"))
(package
(name "dhtnet")
;; The base version is taken from the CMakeLists.txt file (see:
@@ -4135,7 +4300,7 @@ A very simple IM client working over the DHT.
(file-name (git-file-name name version))
(sha256
(base32
- "0np0h19gcibn9d4hyn9vjvlxjc6ma8cg8j1qxh1cam5c9i49h1xv"))))
+ "1dkxs4w6k8ajn8ndy5gp4qg7yvl2z6jf72wxx71panvgy8lrc6y3"))))
(outputs (list "out" "debug"))
(build-system cmake-build-system)
(arguments
@@ -4179,7 +4344,7 @@ for interacting with an OpenDHT distributed network.")
(define-public frrouting
(package
(name "frrouting")
- (version "10.3.1")
+ (version "10.4.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -4188,7 +4353,7 @@ for interacting with an OpenDHT distributed network.")
(file-name (git-file-name name version))
(sha256
(base32
- "1shlxcmvz9ay83wdk2h23yzhqc79hh47v99kq70rymh1d35wr0p7"))))
+ "0c787iv8lrjh92dgng3m8v0i56fx8ln1mhpmdcy8p03z5lxwqjd4"))))
(build-system gnu-build-system)
(inputs
(list c-ares json-c libcap libxcrypt libyang libelf protobuf-c readline))
@@ -4236,77 +4401,75 @@ powerful route filtering syntax and an easy-to-use configuration interface.")
(license license:gpl2+)))
(define-public iwd
- (let ((commit "c4718a53553b8c13cbdd713d3783072589dd1620")
- (revision "1"))
- (package
- (name "iwd")
- (version (git-version "3.8" revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://git.kernel.org/pub/scm/network/wireless/iwd.git")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1dqmqr63srgr8y5x2nb07hami7vva1zkg9lh1a1ca2pfspjpa8q3"))))
- (build-system gnu-build-system)
- (inputs
- (list dbus ell (package-source ell) openresolv readline))
- (native-inputs
- (list autoconf
- automake
- libtool
- pkg-config
- python
- python-docutils
- openssl))
- (arguments
- (list #:configure-flags
- #~(list "--disable-systemd-service"
- "--enable-external-ell"
- "--enable-hwsim"
- "--enable-tools"
- "--enable-wired"
- "--localstatedir=/var"
- (string-append "--with-dbus-datadir=" #$output "/share/")
- (string-append "--with-dbus-busdir="
- #$output "/share/dbus-1/system-services"))
- #:phases
- #~(modify-phases %standard-phases
- (add-after 'unpack 'copy-ell-header-files
- ;; Copy into the source tree two of ell's private header files
- ;; that it shares with iwd, as is required to build with the
- ;; "--enable-external-ell" configure option. See the
- ;; definition of "ell_shared" in iwd's Makefile.am.
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((ell-header-dir (search-input-directory inputs "/ell"))
- (target-dir "ell"))
- (mkdir target-dir)
- (for-each
- (lambda (file-name)
- (copy-file (string-append ell-header-dir "/" file-name)
- (string-append target-dir "/" file-name)))
- '("asn1-private.h" "useful.h")))))
- (add-after 'unpack 'patch-resolvconf-path
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "src/resolve.c"
- (("getenv\\(\"PATH\"\\)")
- (format #f "\"~a\""
- (dirname (search-input-file
- inputs "sbin/resolvconf")))))))
- (add-after 'configure 'patch-Makefile
- (lambda _
- (substitute* "Makefile"
- ;; Don't try to 'mkdir /var'.
- (("\\$\\(MKDIR_P\\) -m 700") "true")))))))
- (home-page "https://iwd.wiki.kernel.org/")
- (synopsis "iNet Wireless Daemon")
- (description "iwd is a wireless daemon for Linux that aims to replace WPA
+ (package
+ (name "iwd")
+ (version "3.9")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.kernel.org/pub/scm/network/wireless/iwd.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0kk88ipi901gibz7275rh6p9hplh5xg00b4bxf3i51wyml3id39m"))))
+ (build-system gnu-build-system)
+ (inputs
+ (list dbus ell (package-source ell) openresolv readline))
+ (native-inputs
+ (list autoconf
+ automake
+ libtool
+ pkg-config
+ python
+ python-docutils
+ openssl))
+ (arguments
+ (list #:configure-flags
+ #~(list "--disable-systemd-service"
+ "--enable-external-ell"
+ "--enable-hwsim"
+ "--enable-tools"
+ "--enable-wired"
+ "--localstatedir=/var"
+ (string-append "--with-dbus-datadir=" #$output "/share/")
+ (string-append "--with-dbus-busdir="
+ #$output "/share/dbus-1/system-services"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'copy-ell-header-files
+ ;; Copy into the source tree two of ell's private header files
+ ;; that it shares with iwd, as is required to build with the
+ ;; "--enable-external-ell" configure option. See the
+ ;; definition of "ell_shared" in iwd's Makefile.am.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((ell-header-dir (search-input-directory inputs "/ell"))
+ (target-dir "ell"))
+ (mkdir target-dir)
+ (for-each
+ (lambda (file-name)
+ (copy-file (string-append ell-header-dir "/" file-name)
+ (string-append target-dir "/" file-name)))
+ '("asn1-private.h" "useful.h")))))
+ (add-after 'unpack 'patch-resolvconf-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/resolve.c"
+ (("getenv\\(\"PATH\"\\)")
+ (format #f "\"~a\""
+ (dirname (search-input-file
+ inputs "sbin/resolvconf")))))))
+ (add-after 'configure 'patch-Makefile
+ (lambda _
+ (substitute* "Makefile"
+ ;; Don't try to 'mkdir /var'.
+ (("\\$\\(MKDIR_P\\) -m 700") "true")))))))
+ (home-page "https://iwd.wiki.kernel.org/")
+ (synopsis "iNet Wireless Daemon")
+ (description "iwd is a wireless daemon for Linux that aims to replace WPA
Supplicant. It optimizes resource utilization by not depending on any external
libraries and instead utilizing features provided by the Linux kernel to the
maximum extent possible.")
- (license license:lgpl2.1+))))
+ (license license:lgpl2.1+)))
(define-public iwgtk
(package
@@ -4751,7 +4914,7 @@ network.")
(define-public ngtcp2
(package
(name "ngtcp2")
- (version "1.13.0")
+ (version "1.15.1")
(source
(origin
(method url-fetch)
@@ -4759,7 +4922,7 @@ network.")
"releases/download/v" version "/"
"ngtcp2-" version ".tar.gz"))
(sha256
- (base32 "1sik0rlpar1dk46ahssv59ik1w360v97hydzari77m8khfjscxd1"))))
+ (base32 "1r3128v6fwn1p7py57frp4ij251z4rv4mfxknhjwylw9i3gr947r"))))
(build-system gnu-build-system)
(arguments
(list
@@ -4852,7 +5015,7 @@ implementing them.")
go-github-com-hashicorp-go-syslog
go-github-com-hjson-hjson-go-v4
go-github-com-kardianos-minwinsvc
- go-github-com-olekukonko-tablewriter
+ go-github-com-olekukonko-tablewriter-0.0.5
go-github-com-quic-go-quic-go
go-github-com-vishvananda-netlink
go-github-com-wlynxg-anet
@@ -4934,16 +5097,16 @@ daemon.")
(define-public nebula
(package
(name "nebula")
- (version "1.9.5")
+ (version "1.9.6")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/slackhq/nebula")
- (commit (string-append "v" version))))
+ (url "https://github.com/slackhq/nebula")
+ (commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
- "1slknnrdnf5a2ask11ql3gwnnl6c5359bp8rd712aq30lxa2d4r0"))
+ "0mcyakwr0r5lw6qgzib54v73a1j6ccaxrz3jf6dsh8daqwp5nmcj"))
;; Remove windows-related binary blobs and files
(snippet
#~(begin
@@ -5012,7 +5175,7 @@ layers.")
(define-public netdiscover
(package
(name "netdiscover")
- (version "0.20")
+ (version "0.21")
(source
(origin
(method git-fetch)
@@ -5020,7 +5183,7 @@ layers.")
(url "https://github.com/netdiscover-scanner/netdiscover")
(commit version)))
(sha256
- (base32 "0k0wdrp2phc38lq2fillfj5myjnq2czwx65s4vg8y5har0d7syr3"))
+ (base32 "0c5av6x2wm7gmhh5wc5961ff3l6kzpx95aj076qwn7v6v28psvpj"))
(file-name (string-append "netdiscover-" version))))
(arguments
`(#:tests? #f)) ; no tests
@@ -5225,21 +5388,24 @@ recording packets that are dropped by the kernel. It provides the commands
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/openrdap/rdap")
- (commit (string-append "v" version))))
+ (url "https://github.com/openrdap/rdap")
+ (commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1w3kwxh3hvkp5x1m6i4ijydmpfpibgf9jkviqrvpcadh335989hn"))))
(build-system go-build-system)
(arguments
(list
+ #:install-source? #f
+ #:import-path "github.com/openrdap/rdap/cmd/rdap"
#:unpack-path "github.com/openrdap/rdap"
- #:import-path "github.com/openrdap/rdap/cmd/rdap"))
- (propagated-inputs (list go-golang-org-x-crypto
- go-github-com-mitchellh-go-homedir
- go-github-com-jarcoal-httpmock
- go-github-com-davecgh-go-spew
- go-github-com-alecthomas-kingpin-v2))
+ #:test-subdirs #~(list "../../..."))) ;test whole libary, starting from import-path
+ (native-inputs
+ (list go-github-com-alecthomas-kingpin-v2
+ go-github-com-davecgh-go-spew
+ go-github-com-jarcoal-httpmock
+ go-github-com-mitchellh-go-homedir
+ go-golang-org-x-crypto))
(home-page "https://www.openrdap.org/")
(synopsis "Command line RDAP client")
(description
@@ -5247,3 +5413,39 @@ recording packets that are dropped by the kernel. It provides the commands
Protocol. RDAP is modern a replacement for WHOIS, which provides domain name
and IP address registration information in JSON format over HTTP.")
(license license:expat)))
+
+(define-public wireproxy
+ (package
+ (name "wireproxy")
+ (version "1.0.10")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/whyvl/wireproxy")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ypk9migx1l7xwcxr542pcdy8q2bm33wp03bqzgav0hp1fsrmi8p"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:install-source? #f
+ #:import-path "github.com/pufferffish/wireproxy/cmd/wireproxy"
+ #:unpack-path "github.com/pufferffish/wireproxy"
+ #:test-subdirs #~(list "../../..."))) ;to test the whole module
+ (native-inputs
+ (list go-github-com-akamensky-argparse
+ go-github-com-go-ini-ini
+ go-github-com-landlock-lsm-go-landlock
+ go-github-com-makenowjust-heredoc-v2
+ go-github-com-things-go-go-socks5
+ go-golang-org-x-net
+ go-golang-zx2c4-com-wireguard
+ go-suah-dev-protect))
+ (home-page "https://github.com/whyvl/wireproxy")
+ (synopsis "Wireguard client that exposes itself as a socks5 proxy")
+ (description
+ "wireproxy is a completely userspace application that connects to a
+wireguard peer, and exposes a socks5/http proxy or tunnels on the machine.")
+ (license license:isc)))