Archived
1
0
Fork 0

gnu: opendht: Update to 2.2.0rc7-1.c8a0b44.

* gnu/packages/networking.scm (opendht): Update to 2.2.0rc7-1.c8a0b44.
This commit is contained in:
Maxim Cournoyer 2021-06-06 23:04:35 -04:00
parent b1372ad8cb
commit d2686be816
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -3529,87 +3529,90 @@ and targeted primarily for asynchronous processing of HTTP-requests.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public opendht (define-public opendht
(package ;; Jami requires unreleased features of OpenDHT.
(name "opendht") (let ((commit "c8a0b443f3117e2fa1343d2cb3c091f502b1a24e")
(version "2.2.0rc7") ;jami requires >= 2.2.0 (revision "1"))
(source (origin (package
(method git-fetch) (name "opendht")
(uri (git-reference (version (git-version "2.2.0rc7" revision commit))
(url "https://github.com/savoirfairelinux/opendht") (source (origin
(commit version))) (method git-fetch)
(file-name (git-file-name name version)) (uri (git-reference
(sha256 (url "https://github.com/savoirfairelinux/opendht")
(base32 (commit commit)))
"0wkynjzwzl5q46hy1yb9npi5hvknnj17rjkax5v3acqjmd0y48h9")))) (file-name (git-file-name name version))
;; Since 2.0, the gnu-build-system does not seem to work anymore, upstream bug? (sha256
(outputs '("out" "tools" "debug")) (base32
(build-system cmake-build-system) "062irb9yii66n2fzbpsjf7v2v53zzvakr1wjmi4l1jaz33fwx5by"))))
(inputs ;; Since 2.0, the gnu-build-system does not seem to work anymore, upstream bug?
`(("argon2" ,argon2) (outputs '("out" "tools" "debug"))
("nettle" ,nettle-3.7) (build-system cmake-build-system)
("readline" ,readline) (inputs
("jsoncpp" ,jsoncpp) `(("argon2" ,argon2)
("openssl" ,openssl) ;required for the DHT proxy ("nettle" ,nettle-3.7)
("fmt" ,fmt))) ("readline" ,readline)
(propagated-inputs ("jsoncpp" ,jsoncpp)
`(("gnutls" ,gnutls) ;included in opendht/crypto.h ("openssl" ,openssl) ;required for the DHT proxy
("msgpack" ,msgpack) ;included in several installed headers ("fmt" ,fmt)))
("restinio" ,restinio))) ;included in opendht/http.h (propagated-inputs
(native-inputs `(("gnutls" ,gnutls) ;included in opendht/crypto.h
`(("autoconf" ,autoconf) ("msgpack" ,msgpack) ;included in several installed headers
("automake" ,automake) ("restinio" ,restinio))) ;included in opendht/http.h
("pkg-config" ,pkg-config) (native-inputs
("python" ,python) `(("autoconf" ,autoconf)
("python-cython" ,python-cython) ("automake" ,automake)
("libtool" ,libtool) ("pkg-config" ,pkg-config)
("cppunit" ,cppunit))) ("python" ,python)
(arguments ("python-cython" ,python-cython)
`(#:imported-modules ((guix build python-build-system) ;for site-packages ("libtool" ,libtool)
,@%cmake-build-system-modules) ("cppunit" ,cppunit)))
#:modules (((guix build python-build-system) #:prefix python:) (arguments
(guix build cmake-build-system) `(#:imported-modules ((guix build python-build-system) ;for site-packages
(guix build utils)) ,@%cmake-build-system-modules)
#:tests? #f ; Tests require network connection. #:modules (((guix build python-build-system) #:prefix python:)
#:configure-flags (guix build cmake-build-system)
'( ;;"-DOPENDHT_TESTS=on" (guix build utils))
"-DOPENDHT_STATIC=off" #:tests? #f ; Tests require network connection.
"-DOPENDHT_TOOLS=on" #:configure-flags
"-DOPENDHT_PYTHON=on" '( ;;"-DOPENDHT_TESTS=on"
"-DOPENDHT_PROXY_SERVER=on" "-DOPENDHT_STATIC=off"
"-DOPENDHT_PUSH_NOTIFICATIONS=on" "-DOPENDHT_TOOLS=on"
"-DOPENDHT_PROXY_SERVER_IDENTITY=on" "-DOPENDHT_PYTHON=on"
"-DOPENDHT_PROXY_CLIENT=on") "-DOPENDHT_PROXY_SERVER=on"
#:phases "-DOPENDHT_PUSH_NOTIFICATIONS=on"
(modify-phases %standard-phases "-DOPENDHT_PROXY_SERVER_IDENTITY=on"
(add-after 'unpack 'fix-python-installation-prefix "-DOPENDHT_PROXY_CLIENT=on")
;; Specify the installation prefix for the compiled Python module #:phases
;; that would otherwise attempt to installs itself to Python's own (modify-phases %standard-phases
;; site-packages directory. (add-after 'unpack 'fix-python-installation-prefix
(lambda* (#:key inputs outputs #:allow-other-keys) ;; Specify the installation prefix for the compiled Python module
(substitute* "python/CMakeLists.txt" ;; that would otherwise attempt to installs itself to Python's own
(("--root=\\\\\\$ENV\\{DESTDIR\\}") ;; site-packages directory.
(string-append "--root=/ --single-version-externally-managed " (lambda* (#:key inputs outputs #:allow-other-keys)
"--prefix=${CMAKE_INSTALL_PREFIX}"))))) (substitute* "python/CMakeLists.txt"
(add-after 'unpack 'specify-runpath-for-python-module (("--root=\\\\\\$ENV\\{DESTDIR\\}")
(lambda* (#:key outputs #:allow-other-keys) (string-append "--root=/ --single-version-externally-managed "
(let ((out (assoc-ref outputs "out"))) "--prefix=${CMAKE_INSTALL_PREFIX}")))))
(substitute* "python/setup.py.in" (add-after 'unpack 'specify-runpath-for-python-module
(("extra_link_args=\\[(.*)\\]" _ args) (lambda* (#:key outputs #:allow-other-keys)
(string-append "extra_link_args=[" args (let ((out (assoc-ref outputs "out")))
", '-Wl,-rpath=" out "/lib']")))))) (substitute* "python/setup.py.in"
(add-after 'install 'move-and-wrap-tools (("extra_link_args=\\[(.*)\\]" _ args)
(lambda* (#:key inputs outputs #:allow-other-keys) (string-append "extra_link_args=[" args
(let ((out (assoc-ref outputs "out")) ", '-Wl,-rpath=" out "/lib']"))))))
(tools (assoc-ref outputs "tools")) (add-after 'install 'move-and-wrap-tools
(site-packages (python:site-packages inputs outputs))) (lambda* (#:key inputs outputs #:allow-other-keys)
(mkdir tools) (let ((out (assoc-ref outputs "out"))
(rename-file (string-append out "/bin") (tools (assoc-ref outputs "tools"))
(string-append tools "/bin")) (site-packages (python:site-packages inputs outputs)))
(wrap-program (string-append tools "/bin/dhtcluster") (mkdir tools)
`("PYTHONPATH" prefix (,site-packages))))))))) (rename-file (string-append out "/bin")
(home-page "https://github.com/savoirfairelinux/opendht/") (string-append tools "/bin"))
(synopsis "Lightweight Distributed Hash Table (DHT) library") (wrap-program (string-append tools "/bin/dhtcluster")
(description "OpenDHT provides an easy to use distributed in-memory data `("PYTHONPATH" prefix (,site-packages)))))))))
(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. 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 Values are distributed over the network, with redundancy. It includes the
following features: following features:
@ -3632,7 +3635,7 @@ library (get, put, etc.) with text values.
@item dhtchat @item dhtchat
A very simple IM client working over the DHT. A very simple IM client working over the DHT.
@end table") @end table")
(license license:gpl3+))) (license license:gpl3+))))
(define-public frrouting (define-public frrouting
(package (package