summary refs log tree commit diff
path: root/gnu/packages/networking.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2024-05-26 22:43:42 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2024-05-29 21:15:38 -0400
commite36774495faabae54f25286e065136d48cb22c4d (patch)
treeaec6db481b83d5e147527b339449b11c7d74f7d9 /gnu/packages/networking.scm
parenta033b85c5c76911634a9cbc38bda3751d7e99665 (diff)
downloadguix-e36774495faabae54f25286e065136d48cb22c4d.tar.gz
gnu: opendht: Update to 3.1.11-0.318d02c.
* gnu/packages/networking.scm (opendht): Update to 3.1.11-0.318d02c.

Change-Id: I36f7bb3a5979e3286c9a54b29dceb7daf6161b7a
Diffstat (limited to 'gnu/packages/networking.scm')
-rw-r--r--gnu/packages/networking.scm228
1 files changed, 116 insertions, 112 deletions
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index e62f3d2ecb..35779460a3 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -3848,117 +3848,121 @@ and targeted primarily for asynchronous processing of HTTP-requests.")
        (replace "llhttp" http-parser)))))
 
 (define-public opendht
-  (package
-    (name "opendht")
-    (version "3.1.11")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/savoirfairelinux/opendht")
-                    (commit (string-append "v" version))))
-              (file-name (git-file-name name version))
-              (sha256
-               (base32
-                "05zli0c14wg5dafw12xjhnva0rlsm3dgiksn6n9g8ab990d915ll"))))
-    (outputs '("out" "python" "tools" "debug"))
-    (build-system gnu-build-system)
-    (arguments
-     (list
-      #:imported-modules `((guix build python-build-system) ;for site-packages
-                           ,@%gnu-build-system-modules)
-      #:modules '(((guix build python-build-system) #:prefix python:)
-                  (guix build gnu-build-system)
-                  (guix build utils))
-      #:configure-flags
-      #~(list "--disable-static"        ;to reduce size
-              "--enable-tests"
-              "--enable-proxy-server"
-              "--enable-push-notifications"
-              "--enable-proxy-server-identity"
-              "--enable-proxy-client")
-      #:phases
-      #~(modify-phases %standard-phases
-          (add-after 'unpack 'disable-problematic-tests
-            (lambda _
-              ;; The dhtrunnertester test suite includes 'testListen', which
-              ;; is sensitive to the performance/load of the machine it runs
-              ;; on, introducing nondeterminism (see:
-              ;; https://github.com/savoirfairelinux/opendht/issues/626).
-              (substitute* "tests/Makefile.am"
-                (("\\bdhtrunnertester\\.(h|cpp)\\b")
-                 ""))))
-          (add-after 'unupack 'relax-test-timeouts
-            (lambda _
-              ;; At least the 'test_send_json' has been seen to fail
-              ;; non-deterministically, but it seems hard to reproducible that
-              ;; failure.
-              (substitute* "tests/httptester.cpp"
-                (("std::chrono::seconds\\(10)")
-                 "std::chrono::seconds(30)"))))
-          (add-after 'unpack 'fix-python-installation-prefix
-            ;; Specify the installation prefix for the compiled Python module
-            ;; that would otherwise attempt to installs itself to Python's own
-            ;; site-packages directory.
-            (lambda _
-              (substitute* "python/Makefile.am"
-                (("--root=\\$\\(DESTDIR)/")
-                 (string-append "--root=/ --single-version-externally-managed "
-                                "--prefix=" #$output:python)))))
-          (add-after 'unpack 'specify-runpath-for-python-module
-            (lambda _
-              (substitute* "python/setup.py.in"
-                (("extra_link_args=\\[(.*)\\]" _ args)
-                 (string-append "extra_link_args=[" args
-                                ", '-Wl,-rpath=" #$output "/lib']")))))
-          (replace 'check
-            (lambda* (#:key tests? #:allow-other-keys)
-              (when tests?
-                (invoke "tests/opendht_unit_tests"))))
-          (add-before 'bootstrap 'delete-autogen.sh
-            (lambda _
-              ;; The autogen.sh script lacks a shebang, cannot be executed
-              ;; directly.  Let the bootstrap phase invoke autoreconf itself.
-              (delete-file "autogen.sh")))
-          (add-after 'install 'move-and-wrap-tools
-            (lambda* (#:key inputs outputs #:allow-other-keys)
-              (let* ((tools (assoc-ref outputs "tools"))
-                     (dhtcluster (string-append tools "/bin/dhtcluster"))
-                     (site-packages (python:site-packages inputs outputs)))
-                (mkdir tools)
-                (rename-file (string-append #$output "/bin")
-                             (string-append tools "/bin"))
-                ;; TODO: Contribute a patch to python/Makefile.am to
-                ;; automate this.
-                (copy-file "python/tools/dhtcluster.py" dhtcluster)
-                (chmod dhtcluster #o555)
-                (wrap-program dhtcluster
-                  `("GUIX_PYTHONPATH" prefix (,site-packages)))))))))
-    (inputs
-     (list bash-minimal
-           fmt
-           readline))
-    (propagated-inputs
-     (list msgpack-cxx                  ;included in several installed headers
-           restinio-0.6                 ;included in opendht/http.h
-           ;; The following are listed in the 'Requires.private' field of
-           ;; opendht.pc:
-           argon2
-           gnutls
-           jsoncpp
-           nettle
-           openssl                      ;required for the DHT proxy
-           python))
-    (native-inputs
-     (list autoconf
-           automake
-           pkg-config
-           python
-           python-cython
-           libtool
-           cppunit))
-    (home-page "https://github.com/savoirfairelinux/opendht/")
-    (synopsis "Lightweight Distributed Hash Table (DHT) library")
-    (description "OpenDHT provides an easy to use distributed in-memory data
+  ;; Temporarily use the latest commit, as the latest release lacks a 'detach'
+  ;; procedure used by a recent DhtNet, required by Jami.
+  (let ((commit "318d02c55a7061a771a632ff2224b0d195a80d42")
+        (revision "0"))
+    (package
+      (name "opendht")
+      (version (git-version "3.1.11" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/savoirfairelinux/opendht")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0d4m9bxvwa1pz8r0sfrjjyml4yp5v7n4vy8ad7k4hcryyvd5npb0"))))
+      (outputs '("out" "python" "tools" "debug"))
+      (build-system gnu-build-system)
+      (arguments
+       (list
+        #:imported-modules `((guix build python-build-system) ;for site-packages
+                             ,@%gnu-build-system-modules)
+        #:modules '(((guix build python-build-system) #:prefix python:)
+                    (guix build gnu-build-system)
+                    (guix build utils))
+        #:configure-flags
+        #~(list "--disable-static"        ;to reduce size
+                "--enable-tests"
+                "--enable-proxy-server"
+                "--enable-push-notifications"
+                "--enable-proxy-server-identity"
+                "--enable-proxy-client")
+        #:phases
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'disable-problematic-tests
+              (lambda _
+                ;; The dhtrunnertester test suite includes 'testListen', which
+                ;; is sensitive to the performance/load of the machine it runs
+                ;; on, introducing nondeterminism (see:
+                ;; https://github.com/savoirfairelinux/opendht/issues/626).
+                (substitute* "tests/Makefile.am"
+                  (("\\bdhtrunnertester\\.(h|cpp)\\b")
+                   ""))))
+            (add-after 'unupack 'relax-test-timeouts
+              (lambda _
+                ;; At least the 'test_send_json' has been seen to fail
+                ;; non-deterministically, but it seems hard to reproducible that
+                ;; failure.
+                (substitute* "tests/httptester.cpp"
+                  (("std::chrono::seconds\\(10)")
+                   "std::chrono::seconds(30)"))))
+            (add-after 'unpack 'fix-python-installation-prefix
+              ;; Specify the installation prefix for the compiled Python module
+              ;; that would otherwise attempt to installs itself to Python's own
+              ;; site-packages directory.
+              (lambda _
+                (substitute* "python/Makefile.am"
+                  (("--root=\\$\\(DESTDIR)/")
+                   (string-append "--root=/ --single-version-externally-managed "
+                                  "--prefix=" #$output:python)))))
+            (add-after 'unpack 'specify-runpath-for-python-module
+              (lambda _
+                (substitute* "python/setup.py.in"
+                  (("extra_link_args=\\[(.*)\\]" _ args)
+                   (string-append "extra_link_args=[" args
+                                  ", '-Wl,-rpath=" #$output "/lib']")))))
+            (replace 'check
+              (lambda* (#:key tests? #:allow-other-keys)
+                (when tests?
+                  (invoke "tests/opendht_unit_tests"))))
+            (add-before 'bootstrap 'delete-autogen.sh
+              (lambda _
+                ;; The autogen.sh script lacks a shebang, cannot be executed
+                ;; directly.  Let the bootstrap phase invoke autoreconf itself.
+                (delete-file "autogen.sh")))
+            (add-after 'install 'move-and-wrap-tools
+              (lambda* (#:key inputs outputs #:allow-other-keys)
+                (let* ((tools (assoc-ref outputs "tools"))
+                       (dhtcluster (string-append tools "/bin/dhtcluster"))
+                       (site-packages (python:site-packages inputs outputs)))
+                  (mkdir tools)
+                  (rename-file (string-append #$output "/bin")
+                               (string-append tools "/bin"))
+                  ;; TODO: Contribute a patch to python/Makefile.am to
+                  ;; automate this.
+                  (copy-file "python/tools/dhtcluster.py" dhtcluster)
+                  (chmod dhtcluster #o555)
+                  (wrap-program dhtcluster
+                    `("GUIX_PYTHONPATH" prefix (,site-packages)))))))))
+      (inputs
+       (list bash-minimal
+             fmt
+             readline))
+      (propagated-inputs
+       (list msgpack-cxx                  ;included in several installed headers
+             restinio-0.6                 ;included in opendht/http.h
+             ;; The following are listed in the 'Requires.private' field of
+             ;; opendht.pc:
+             argon2
+             gnutls
+             jsoncpp
+             nettle
+             openssl                      ;required for the DHT proxy
+             python))
+      (native-inputs
+       (list autoconf
+             automake
+             pkg-config
+             python
+             python-cython
+             libtool
+             cppunit))
+      (home-page "https://github.com/savoirfairelinux/opendht/")
+      (synopsis "Lightweight Distributed Hash Table (DHT) library")
+      (description "OpenDHT provides an easy to use distributed in-memory data
 store.  Every node in the network can read and write values to the store.
 Values are distributed over the network, with redundancy.  It includes the
 following features:
@@ -3981,7 +3985,7 @@ library (get, put, etc.) with text values.
 @item dhtchat
 A very simple IM client working over the DHT.
 @end table")
-    (license license:gpl3+)))
+      (license license:gpl3+))))
 
 (define-public dhtnet
   ;; There is no tag nor release; use the latest available commit.