From 55567ca43444544d033602834181ce042acd9a19 Mon Sep 17 00:00:00 2001 From: Manolis Ragkousis Date: Tue, 21 Jun 2022 00:41:29 +0300 Subject: gnu: networking: Add arp-scan * gnu/packages/networking.scm (arp-scan): New variable. Signed-off-by: Christopher Baines --- gnu/packages/networking.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu/packages/networking.scm') diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 065a190321..b308b7e595 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -50,6 +50,7 @@ ;;; Copyright © 2022 Simon South ;;; Copyright © 2022 Pierre Langlois ;;; Copyright © 2022 Petr Hodina +;;; Copyright © 2022 Manolis Fragkiskos Ragkousis ;;; ;;; This file is part of GNU Guix. ;;; @@ -184,6 +185,33 @@ (define-public usrsctp runs on top of IP or UDP, and supports both v4 and v6 versions.") (license license:bsd-3))) +(define-public arp-scan + (package + (name "arp-scan") + (version "1.9.7") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/royhills/arp-scan/") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1mf7a4f9vzvnkiavc87aqyciswggsb4fpy7j05jxnvjyyxv3l7gp")))) + (build-system gnu-build-system) + (inputs + (list libpcap)) + (native-inputs + (list autoconf automake libtool pkg-config)) + (propagated-inputs + (list perl-libwww)) + (home-page "https://github.com/royhills/arp-scan") + (synopsis "Discover and fingerprint IP hosts on the local network using ARP") + (description "Arp-scan is a tool that uses ARP to discover and fingerprint +IP hosts on the local network.") + (license license:gpl3+))) + (define-public axel (package (name "axel") -- cgit v1.2.3 From b7279f1f0503e97aa23e91b5e74297def2d61f94 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 21 Jun 2022 23:43:14 +0200 Subject: gnu: libcamera: Update to 0.0.0-1. * gnu/packages/networking.scm (libcamera): Update to 0.0.0-1. [arguments]: Disable Python bindings in #:configure-flags. Disable gstreamer tests. [inputs]: Add LIBYAML, PYTHON-JINJA2, and PYTHON-PLY. --- gnu/packages/networking.scm | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) (limited to 'gnu/packages/networking.scm') diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index b308b7e595..8f1827c5aa 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -244,33 +244,37 @@ (define-public axel (define-public libcamera (package (name "libcamera") - (version "0.0.0") + (version "0.0.0-1") (source (origin (method git-fetch) (uri (git-reference (url "git://linuxtv.org/libcamera.git") - (commit "74c8b508338ccdd0780aa1e067a1e8fcb9ee326b"))) + (commit "10be87fa7c3bfb097b21ca3d469c67e40c333f7e"))) (file-name (git-file-name name version)) (sha256 - (base32 "0d9lp8b9gyxh4jwfh55kp8zl1xyyg32z684v3y29378zpksncss1")))) + (base32 "0qgirhlalmk9f9v6piwz50dr2asb64rvbb9zb1vix7y9zh7m11by")))) (build-system meson-build-system) (outputs '("out" "doc")) (arguments `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas #:configure-flags (list - "-Dv4l2=true") + "-Dv4l2=true" + ;; XXX: Requires bundled pybind11. + "-Dpycamera=disabled") #:phases (modify-phases %standard-phases (add-after 'unpack 'disable-failing-tests (lambda _ (substitute* "test/meson.build" (("\\['list-cameras', 'list-cameras.cpp'\\],") - "")) - #t)) + "") + ;; TODO: Why do the gstreamer tests fail. + (("^subdir\\('gstreamer'\\)") + "")))) (add-after 'install 'move-doc (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -278,8 +282,7 @@ (define-public libcamera (mkdir-p (string-append doc "/share")) (rename-file (string-append out "/share/doc") - (string-append doc "/share/doc")) - #t)))))) + (string-append doc "/share/doc")))))))) (native-inputs `(("dot" ,graphviz) ("doxygen" ,doxygen) @@ -294,8 +297,11 @@ (define-public libcamera ("gnutls" ,gnutls) ("libtiff" ,libtiff) ("openssl" ,openssl) + ("python-jinja2" ,python-jinja2) + ("python-ply" ,python-ply) ("qt5" ,qtbase-5) - ("udev" ,eudev))) + ("udev" ,eudev) + ("yaml" ,libyaml))) (synopsis "Camera stack and framework") (description "LibCamera is a complex camera support library for GNU+Linux, Android, and ChromeOS.") -- cgit v1.2.3 From e9bd919270f7075b47014664a70b9e8558404355 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 21 Jun 2022 23:50:13 +0200 Subject: gnu: libcamera: Remove input labels. * gnu/packages/networking.scm (libcamera)[native-inputs, inputs]: Remove labels. --- gnu/packages/networking.scm | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) (limited to 'gnu/packages/networking.scm') diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 8f1827c5aa..473df7f3d0 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -284,24 +284,24 @@ (define-public libcamera (string-append out "/share/doc") (string-append doc "/share/doc")))))))) (native-inputs - `(("dot" ,graphviz) - ("doxygen" ,doxygen) - ("pkg-config" ,pkg-config) - ("python" ,python-wrapper) - ("sphinx" ,python-sphinx) - ("yaml" ,python-pyyaml))) + (list graphviz ;for 'dot' + doxygen + pkg-config + python-wrapper + python-sphinx + python-pyyaml)) (inputs - `(("boost" ,boost) - ("glib" ,glib) - ("gstreamer" ,gst-plugins-base) - ("gnutls" ,gnutls) - ("libtiff" ,libtiff) - ("openssl" ,openssl) - ("python-jinja2" ,python-jinja2) - ("python-ply" ,python-ply) - ("qt5" ,qtbase-5) - ("udev" ,eudev) - ("yaml" ,libyaml))) + (list boost + eudev + glib + gst-plugins-base + gnutls + libtiff + libyaml + openssl + python-jinja2 + python-ply + qtbase-5)) (synopsis "Camera stack and framework") (description "LibCamera is a complex camera support library for GNU+Linux, Android, and ChromeOS.") -- cgit v1.2.3 From 185ae9b410a43f0415e83f9fb88549c21ca4a673 Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Thu, 23 Jun 2022 23:06:55 -0400 Subject: gnu: docker: Update to 20.10.17. * gnu/packages/docker.scm (%docker-version): Update to 20.10.17. (docker-libnetwork)[source]: Update commit according to vendor.conf. Reset revision to 1. Simplify snippet. (docker)[origin]: Remove docker-fix-tests.patch. [arguments]: Adapt 'patch-paths phase, substitute "ip6tables" and buildkit-qemu. Remove trailing #t. [native-inputs]: Replace go-1.14 by go. (docker-cli)[source]: Update hash. [arguments]: Set GO_LINKMODE to "dynamic". Remove trailing #t. [phases]{check}: Replace 'if' with 'when'. * gnu/packages/networking.scm (go-sctp): Update commit according to docker-libnetwork's vendor.conf. * gnu/packages/patches/docker-fix-tests.patch: Delete. * gnu/local.mk (dist_patch_DATA): Remove patch. Co-authored-by: Maxim Cournoyer --- gnu/local.mk | 1 - gnu/packages/docker.scm | 96 ++++++++++++----------------- gnu/packages/networking.scm | 6 +- gnu/packages/patches/docker-fix-tests.patch | 28 --------- 4 files changed, 43 insertions(+), 88 deletions(-) delete mode 100644 gnu/packages/patches/docker-fix-tests.patch (limited to 'gnu/packages/networking.scm') diff --git a/gnu/local.mk b/gnu/local.mk index 58a83c4916..353b91cfd2 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1004,7 +1004,6 @@ dist_patch_DATA = \ %D%/packages/patches/docbook-xsl-support-old-url.patch \ %D%/packages/patches/doc++-include-directives.patch \ %D%/packages/patches/doc++-segfault-fix.patch \ - %D%/packages/patches/docker-fix-tests.patch \ %D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \ %D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \ %D%/packages/patches/dstat-skip-devices-without-io.patch \ diff --git a/gnu/packages/docker.scm b/gnu/packages/docker.scm index 5be32ab554..5ff574dbc9 100644 --- a/gnu/packages/docker.scm +++ b/gnu/packages/docker.scm @@ -54,7 +54,7 @@ (define-module (gnu packages docker) ;; Note - when changing Docker versions it is important to update the versions ;; of several associated packages (docker-libnetwork and go-sctp). -(define %docker-version "19.03.15") +(define %docker-version "20.10.17") (define-public python-docker (package @@ -252,11 +252,10 @@ (define-public containerd ;;; anyway, as it needs many dependencies that aren't being satisfied. (define docker-libnetwork ;; There are no recent release for libnetwork, so choose the last commit of - ;; the branch that Docker uses, as can be seen in the Docker source file - ;; 'hack/dockerfile/install/proxy.installer'. NOTE - It is important that - ;; this version is kept in sync with the version of Docker being used. - ;; This commit is the "bump_19.03" branch, as mentioned in Docker's vendor.conf. - (let ((commit "55e924b8a84231a065879156c0de95aefc5f5435") + ;; the branch that Docker uses, as can be seen in the 'vendor.conf' Docker + ;; source file. NOTE - It is important that this version is kept in sync + ;; with the version of Docker being used. + (let ((commit "f6ccccb1c082a432c2a5814aaedaca56af33d9ea") (version (version-major+minor %docker-version)) (revision "1")) (package @@ -271,12 +270,10 @@ (define docker-libnetwork (file-name (git-file-name name version)) (sha256 (base32 - "19syb3scwiykn44gqfaqrgqv8a0df4ps0ykf3za9xkjc5cyi99mp")) + "0nxpr0h0smv4n641g41vxibr5r85ixfcvs9cp3c4fc7zvrhjc49s")) ;; Delete bundled ("vendored") free software source code. (modules '((guix build utils))) - (snippet '(begin - (delete-file-recursively "vendor") - #t)))) + (snippet '(delete-file-recursively "vendor")))) (build-system go-build-system) (arguments `(#:import-path "github.com/moby/libnetwork/")) @@ -324,9 +321,7 @@ (define-public docker (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0419iha9zmwlhzhnbfxlsa13vgd04yifnsr8qqnj2ks5dxrcajl8")) - (patches - (search-patches "docker-fix-tests.patch")))) + (base32 "0hn7fg717rggwk6dbicrwa7aglqp7dp0jp5rvn6p9gfcnrp2w97d")))) (build-system gnu-build-system) (arguments `(#:modules @@ -369,9 +364,10 @@ (define-public docker (("DefaultRuntimeBinary = .*") (string-append "DefaultRuntimeBinary = \"" (assoc-ref inputs "runc") - "/sbin/runc\"\n")) - (("DefaultRuntimeName = .*") - (string-append "DefaultRuntimeName = \"" + "/sbin/runc\"\n"))) + (substitute* "daemon/runtime_unix.go" + (("defaultRuntimeName = .*") + (string-append "defaultRuntimeName = \"" (assoc-ref inputs "runc") "/sbin/runc\"\n"))) (substitute* "daemon/config/config.go" @@ -400,16 +396,6 @@ (define-public docker (substitute* "pkg/archive/archive.go" (("string\\{\"xz") (string-append "string{\"" (assoc-ref inputs "xz") "/bin/xz"))) - ;; TODO: Remove when Docker proper uses v1.14.x to build - (substitute* "registry/resumable/resumablerequestreader_test.go" - (("I%27m%20not%20an%20url" all) - (string-append "\"" all "\""))) - ;; TODO: Remove when Docker proper uses v1.14.x to build - (substitute* "vendor/gotest.tools/x/subtest/context.go" - (("func \\(tc \\*testcase\\) Cleanup\\(" all) - (string-append all "func()")) - (("tc\\.Cleanup\\(" all) - (string-append all "nil"))) (let ((source-files (filter (lambda (name) (not (string-contains name "test"))) @@ -446,6 +432,7 @@ (define-public docker ("blkid" "util-linux" "sbin/blkid") ("unpigz" "pigz" "bin/unpigz") ("iptables" "iptables" "sbin/iptables") + ("ip6tables" "iptables" "sbin/ip6tables") ("iptables-legacy" "iptables" "sbin/iptables") ("ip" "iproute2" "sbin/ip")) @@ -494,10 +481,13 @@ (define-public docker "exec.Command") ;; Search for ZFS in PATH. (("\\ isn't found. + ;; FIXME: We might need to package buildkit and docker's + ;; buildx plugin, to support qemu-based docker containers. + (("\\ .pc) - go-1.14 gotestsum pkg-config)) + go gotestsum pkg-config)) (synopsis "Docker container component library, and daemon") (description "This package provides a framework to assemble specialized container systems. It includes components for orchestration, image @@ -609,13 +595,13 @@ (define-public docker-cli (version %docker-version) (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/docker/cli") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "1asapjj8brvbkd5irgdq82fx1ihrc14qaq30jxvjwflfm5yb7lv0")))) + (method git-fetch) + (uri (git-reference + (url "https://github.com/docker/cli") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0ksicj4iqvgp9jabd4xmhkf3vax6dwn4f5dsr73bdqj4mf3ahav0")))) (build-system go-build-system) (arguments `(#:import-path "github.com/docker/cli" @@ -635,21 +621,20 @@ (define-public docker-cli ;; Make build reproducible. (setenv "BUILDTIME" "1970-01-01 00:00:01.000000000+00:00") (symlink "src/github.com/docker/cli/scripts" "./scripts") - (symlink "src/github.com/docker/cli/docker.Makefile" "./docker.Makefile") - #t)) + (symlink "src/github.com/docker/cli/docker.Makefile" "./docker.Makefile"))) (replace 'build (lambda _ - (invoke "./scripts/build/dynbinary"))) + (setenv "GO_LINKMODE" "dynamic") + (invoke "./scripts/build/binary"))) (replace 'check (lambda* (#:key make-flags tests? #:allow-other-keys) (setenv "PATH" (string-append (getcwd) "/build:" (getenv "PATH"))) - (if tests? - ;; Use the newly-built docker client for the tests. - (with-directory-excursion "src/github.com/docker/cli" - ;; TODO: Run test-e2e as well? - (apply invoke "make" "-f" "docker.Makefile" "test-unit" - (or make-flags '()))) - #t))) + (when tests? + ;; Use the newly-built docker client for the tests. + (with-directory-excursion "src/github.com/docker/cli" + ;; TODO: Run test-e2e as well? + (apply invoke "make" "-f" "docker.Makefile" "test-unit" + (or make-flags '())))))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -662,8 +647,7 @@ (define-public docker-cli (string-append etc "/fish/completions")) (install-file "zsh/_docker" (string-append etc "/zsh/site-functions"))) - (install-file "build/docker" out-bin) - #t)))))) + (install-file "build/docker" out-bin))))))) (native-inputs (list go libltdl pkg-config)) (synopsis "Command line interface to Docker") diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 473df7f3d0..b4c50bc783 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -1778,8 +1778,8 @@ (define-public go-netns (define-public go-sctp ;; docker-libnetwork-cmd-proxy requires this exact commit. ;; This commit is mentioned in docker-libnetwork-cmd-proxy's vendor.conf. - (let ((commit "6e2cb1366111dcf547c13531e3a263a067715847") - (revision "2")) + (let ((commit "f2269e66cdee387bd321445d5d300893449805be") + (revision "3")) (package (name "go-sctp") (version (git-version "0.0.0" revision commit)) @@ -1791,7 +1791,7 @@ (define-public go-sctp (file-name (git-file-name name version)) (sha256 (base32 - "1ba90fmpdwxa1ba4hrsjhi3gfy3pwmz7x8amw1p5dc9p5a7nnqrb")))) + "04463rnn9y9psp11ac5di6wrwxlhymw5h9hfhhhnxqwla90ikp0g")))) (build-system go-build-system) (arguments `(#:tests? #f ; Test suite is flakey. diff --git a/gnu/packages/patches/docker-fix-tests.patch b/gnu/packages/patches/docker-fix-tests.patch deleted file mode 100644 index 3e3e318e25..0000000000 --- a/gnu/packages/patches/docker-fix-tests.patch +++ /dev/null @@ -1,28 +0,0 @@ -Author: Danny Milosavljevic -The socket name ended up too long inside the container. -Use a shorter one. ---- a/pkg/authorization/authz_unix_test.go 2019-01-10 01:55:02.997985947 +0100 -+++ b/pkg/authorization/authz_unix_test.go 2019-01-10 02:03:21.177439757 +0100 -@@ -24,7 +24,7 @@ - ) - - const ( -- pluginAddress = "authz-test-plugin.sock" -+ pluginAddress = "/tmp/authz-test-plugin.sock" - ) - - func TestAuthZRequestPluginError(t *testing.T) { -@@ -263,12 +263,7 @@ - - // createTestPlugin creates a new sample authorization plugin - func createTestPlugin(t *testing.T) *authorizationPlugin { -- pwd, err := os.Getwd() -- if err != nil { -- t.Fatal(err) -- } -- -- client, err := plugins.NewClient("unix:///"+path.Join(pwd, pluginAddress), &tlsconfig.Options{InsecureSkipVerify: true}) -+ client, err := plugins.NewClient("unix:///"+path.Join("/", pluginAddress), &tlsconfig.Options{InsecureSkipVerify: true}) - if err != nil { - t.Fatalf("Failed to create client %v", err) - } -- cgit v1.2.3