summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/contributing.texi2
-rw-r--r--doc/guix.texi12
-rw-r--r--gnu/packages/audio.scm4
-rw-r--r--gnu/packages/dns.scm8
-rw-r--r--gnu/packages/elixir.scm21
-rw-r--r--gnu/packages/finance.scm117
-rw-r--r--gnu/packages/guile-xyz.scm55
-rw-r--r--gnu/packages/machine-learning.scm26
-rw-r--r--gnu/packages/python-web.scm40
-rw-r--r--gnu/packages/python-xyz.scm20
10 files changed, 188 insertions, 117 deletions
diff --git a/doc/contributing.texi b/doc/contributing.texi
index 34def99c9b..6d3f1622f3 100644
--- a/doc/contributing.texi
+++ b/doc/contributing.texi
@@ -1449,7 +1449,7 @@ already ran @code{bootstrap} and @code{configure}:
The first command updates all packages in @code{(gnu packages
astronomy)} to the latest versions and writes changes back to the file.
-The second invokes @code{etc/commiter.scm} script, a helper script for
+The second invokes @code{etc/committer.scm} script, a helper script for
larger scale updates; it identifies each package diff and creates
corresponding commits with the correct style.
diff --git a/doc/guix.texi b/doc/guix.texi
index 8bf0c873d4..bffaeb5bbc 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -23331,7 +23331,7 @@ This must be either @code{'client} or @code{'server}. Otherwise,
an error is raised. Set the @code{'server} value if you want to
run a bridge to help censored users connect to the Tor network, see
@url{https://community.torproject.org/relay/setup/bridge/,
-the Tor project's brige guide}. Set the @code{'client} value
+the Tor project's bridge guide}. Set the @code{'client} value
if you want to connect to somebody else's bridge, see
@url{https://bridges.torproject.org/, the Tor project's
``Get Bridges'' page}. In both cases the required
@@ -38954,7 +38954,7 @@ system shutdown.
@quotation Note
@code{battery-level}, @code{remaining-minutes}, and @code{timeout} work
-in a conjunction, so the first that occurs will cause the initation of a
+in a conjunction, so the first that occurs will cause the initiation of a
shutdown.
@end quotation
@@ -38965,7 +38965,7 @@ apcupsd will initiate a system shutdown.
@quotation Note
@code{battery-level}, @code{remaining-minutes}, and @code{timeout} work
-in a conjunction, so the first that occurs will cause the initation of a
+in a conjunction, so the first that occurs will cause the initiation of a
shutdown.
@end quotation
@@ -38976,7 +38976,7 @@ of 0 disables this timer.
@quotation Note
@code{battery-level}, @code{remaining-minutes}, and @code{timeout} work
-in a conjunction, so the first that occurs will cause the initation of a
+in a conjunction, so the first that occurs will cause the initiation of a
shutdown.
@end quotation
@@ -42982,7 +42982,7 @@ cache. Use with caution.
@end quotation
@quotation Warning
-@option{'share} will not work for multiple concurrent invokation of
+@option{'share} will not work for multiple concurrent invocation of
@command{guix}, e.g. if two user accounts run @command{guix time
machine} at the same time, the results will be fun but not useful.
@end quotation
@@ -51299,7 +51299,7 @@ following configuration:
"/home/alice/Pictures"))))))))
@end lisp
-In general it is preferrable to extend the @code{home-restic-backup-service-type},
+In general it is preferable to extend the @code{home-restic-backup-service-type},
as shown in the example above. This is because it takes care of wrapping everything
with @code{for-home}, which enables the @code{home-restic-backup-service-type} and
@code{restic-backup-service-type} to share the same codebase.
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 622ce50020..4027a3e1de 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -3575,14 +3575,14 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.")
(define-public python-soundfile
(package
(name "python-soundfile")
- (version "0.13.0")
+ (version "0.13.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "soundfile" version))
(sha256
(base32
- "0mc3g5l9fzj57m62zrwwz0w86cbihpna3mikgh8kpmz7ppc9jcz8"))))
+ "0nqf7z2wrb70vppjv5729565h0p3azgl6nqa10bp6a9h3smqvimj"))))
(build-system pyproject-build-system)
(arguments
(list
diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index 7cb86ad144..5e981ac02c 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -851,7 +851,7 @@ Extensions} (DNSSEC).")
(define-public knot
(package
(name "knot")
- (version "3.4.6")
+ (version "3.4.8")
(source
(origin
(method git-fetch)
@@ -860,7 +860,7 @@ Extensions} (DNSSEC).")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0chdlzasng3q3ss4yfppf8fbkkiqllqz4p6s8a6jgwhcbiylmmdi"))
+ (base32 "0zydnb9kbk65kbrg01sxl48a5ikdap7lhm1wvmcmk5vhvgxdbb53"))
(patches
(search-patches "knot-remove-runtime-deps.patch"))
(modules '((guix build utils)))
@@ -993,14 +993,14 @@ synthesis, and on-the-fly re-configuration.")
(define-public knot-resolver
(package
(name "knot-resolver")
- (version "5.7.5")
+ (version "5.7.6")
(source (origin
(method url-fetch)
(uri (string-append "https://secure.nic.cz/files/knot-resolver/"
"knot-resolver-" version ".tar.xz"))
(sha256
(base32
- "0rnz7k5pjqd4ds46iyf6r7xwrci0apm2sr6lpaf9sncjmbwrq8w0"))))
+ "0x6n0h2vd7756rgyzmzhsvky5j7p4brsynnwp13ya003aqxcs32h"))))
(build-system meson-build-system)
(outputs '("out" "doc"))
(arguments
diff --git a/gnu/packages/elixir.scm b/gnu/packages/elixir.scm
index 96ba0421ea..0e53223f10 100644
--- a/gnu/packages/elixir.scm
+++ b/gnu/packages/elixir.scm
@@ -8,7 +8,7 @@
;;; Copyright © 2021 Oskar Köök <oskar@maatriks.ee>
;;; Copyright © 2021 Cees de Groot <cg@evrl.com>
;;; Copyright © 2024 Andrew Tropin <andrew@trop.in>
-;;; Copyright © 2024 Ivan Sokolov <ivan-p-sokolov@ya.ru>
+;;; Copyright © 2024, 2025 Ivan Sokolov <ivan-p-sokolov@ya.ru>
;;; Copyright © 2024, 2025 Igor Goryachev <igor@goryachev.org>
;;;
;;; This file is part of GNU Guix.
@@ -200,23 +200,24 @@ being successfully used in web development and the embedded software domain.")
(delete 'bootstrap)
(delete 'configure)
(replace 'build
- (lambda* (#:key inputs #:allow-other-keys)
+ (lambda _
(setenv "MIX_ENV" "prod")
(invoke "mix" "compile")))
(replace 'install
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (define X.Y #$(version-major+minor (package-version elixir)))
- (define out (string-append (assoc-ref outputs "out")
- "/lib/elixir/" X.Y "/hex"))
- (mkdir-p out)
- (let* ((prod-dir "_build/prod/lib/hex")
+ (lambda _
+ (let* ((X.Y #$(version-major+minor
+ (package-version
+ (lookup-package-input this-package "elixir"))))
+ (out (string-append #$output "/lib/elixir/" X.Y "/hex"))
+ (prod-dir "_build/prod/lib/hex")
(prod-dir-mix (string-append prod-dir "/.mix")))
(and (directory-exists? prod-dir-mix)
(delete-file-recursively prod-dir-mix))
- (copy-recursively "_build/prod/lib/hex" out)))))))
+ (mkdir-p out)
+ (copy-recursively prod-dir out)))))))
(synopsis "Package manager for the Erlang VM")
(description
"This project provides tasks that integrate with Mix, Elixir's build
tool.")
- (home-page "https://hexdocs.pm/makeup_elixir/")
+ (home-page "https://hexdocs.pm/hex/api-reference.html")
(license license:bsd-2)))
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 20c5356765..f2177edfad 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -562,10 +562,80 @@ It's not clear at the moment whether one day it will be possible to
do so.")
(license license:agpl3+)))
+(define-public python-electrum-ecc
+ (package
+ (name "python-electrum-ecc")
+ (version "0.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "electrum_ecc" version))
+ (sha256
+ (base32 "1lmp5zmhabaxp6jha3xlsmqviivrxxhsy20x6z42ayqgd9cvhczp"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Delete the vendored dependency.
+ (delete-file-recursively "libsecp256k1")))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'unpack 'prepare-env
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Do not attempt to compile vendored libsecp256k1.
+ (setenv "ELECTRUM_ECC_DONT_COMPILE" "1")
+ ;; Make the package find our libsecp256k1.
+ (substitute* "src/electrum_ecc/ecc_fast.py"
+ (("library_paths = \\[\\]")
+ (string-append
+ "library_paths = ['"
+ (search-input-file inputs "/lib/libsecp256k1.so")
+ "']"))))))))
+ (native-inputs (list python-pytest python-setuptools python-wheel))
+ (inputs (list libsecp256k1))
+ (home-page "https://github.com/spesmilo/electrum-ecc")
+ (synopsis "Pure python ctypes wrapper for libsecp256k1")
+ (description "This package provides a pure Python ctypes wrapper for
+@code{libsecp256k1}.")
+ (license license:expat)))
+
+(define-public electrum-aionostr
+ (package
+ (name "electrum-aionostr")
+ (version "0.0.11")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "electrum_aionostr" version))
+ (sha256
+ (base32 "10fgidah8ca59j3gssg9b434j49c1dd9cs3224nanjsxwl0ivsqf"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ ;; Test below fails to match an exit code, pointing to this in Click:
+ ;; https://github.com/pallets/click/pull/1489
+ ;; This was fixed in Click 8.2.0.
+ #:test-flags #~(list "-k" "not test_command_line_interface")))
+ (inputs (list python-aiohttp
+ python-aiohttp-socks
+ python-aiorpcx
+ python-cryptography
+ python-electrum-ecc))
+ (native-inputs (list python-click
+ python-pytest
+ python-setuptools
+ python-wheel))
+ (home-page "https://github.com/spesmilo/electrum-aionostr")
+ (synopsis "Asyncio nostr client")
+ (description "This package is a fork of @code{aionostr} that does not
+require Coincurve.")
+ (license license:bsd-3)))
+
(define-public electrum
(package
(name "electrum")
- (version "4.4.6")
+ (version "4.6.1")
(source
(origin
(method url-fetch)
@@ -573,42 +643,51 @@ do so.")
version "/Electrum-"
version ".tar.gz"))
(sha256
- (base32 "1f0hb8xmqv1j9pf82xpyvxnn2dzmi93rhf0sh0iqakja2pbl4707"))
+ (base32 "1h7z019sp99csrj1djmhlm9y7vyyzl7wvar7z9x4jx59lmmvs1xs"))
(modules '((guix build utils)))
(snippet
'(begin
;; Delete the bundled dependencies.
(delete-file-recursively "packages")))))
- (build-system python-build-system)
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ ;; Either pycryptodomex or cryptography must be available.
+ ;; This package uses python-cryptography, but this test checks for
+ ;; cryptodomex anyway. Skip it since it's not useful.
+ #:test-flags #~(list "-k" "not test_pycryptodomex_is_available")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'relax-deps
+ (lambda _
+ (substitute* "contrib/requirements/requirements.txt"
+ ;; These packages have tight version requirements because
+ ;; the developer does not want to introduce Hatchling in
+ ;; the build environment. They do work at runtime.
+ (("attrs.*") "attrs")
+ (("dnspython.*") "dnspython"))))
+ (add-before 'check 'set-home
+ (lambda _ ; 3 tests run mkdir
+ (setenv "HOME" "/tmp"))))))
+ (native-inputs (list python-pytest python-setuptools python-wheel))
(inputs
- (list libsecp256k1
+ (list electrum-aionostr
python-aiohttp
python-aiohttp-socks
python-aiorpcx
python-attrs
- python-bitstring
- python-btchip-python
python-certifi
python-cryptography
python-dnspython
+ python-electrum-ecc
python-hidapi
- python-ledgerblue
+ python-jsonpatch
python-protobuf
- python-pyqt
+ python-pyaes
+ python-pyqt-6
python-qdarkstyle
python-qrcode
zbar))
- (arguments
- `(#:tests? #f ; no tests
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'use-libsecp256k1-input
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "electrum/ecc_fast.py"
- (("library_paths = \\[\\]")
- (string-append "library_paths = ['"
- (assoc-ref inputs "libsecp256k1")
- "/lib/libsecp256k1.so']"))))))))
(home-page "https://electrum.org/")
(synopsis "Bitcoin wallet")
(description
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 7ace87bc11..3c52d46eda 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -6339,22 +6339,20 @@ Relay Chat} (IRC).")
(define-public guile-websocket
(package
(name "guile-websocket")
- (version "0.2.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://files.dthompson.us/guile-websocket/"
- "guile-websocket-" version ".tar.gz"))
- (sha256
- (base32
- "143ng1x5xwy218wd1svj718ikqnrglwsywyzpd3ap9jnivw66g7f"))))
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://files.dthompson.us/releases/"
+ "guile-websocket/guile-websocket-" version
+ ".tar.gz"))
+ (sha256
+ (base32 "0mbxbwc5flrafh77sl0cbfclpk3vys0hh3fqmdl9v3nqyl0cbsij"))))
(build-system gnu-build-system)
(arguments
- '(#:make-flags
- '("GUILE_AUTO_COMPILE=0")))
- (native-inputs
- (list autoconf automake pkg-config))
- (inputs
- (list guile-3.0 guile-gnutls))
+ '(#:make-flags '("GUILE_AUTO_COMPILE=0")))
+ (native-inputs (list autoconf automake pkg-config))
+ (inputs (list guile-3.0 guile-gnutls))
(synopsis "Websocket server/client for Guile")
(description "Guile-websocket provides an implementation of the
WebSocket protocol as defined by RFC 6455.")
@@ -6978,25 +6976,24 @@ or @code{LuaBind} but for Scheme.")
(name "guile-cbor")
(version "0.1.0")
(source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://inqlab.net/git/guile-cbor.git")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256 (base32 "0bdqg3ifayf7m2j09lqrgdfprbdaa67azf09bcq9b4k71inxfnxl"))))
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://codeberg.org/pukkamustard/guile-cbor/")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0bdqg3ifayf7m2j09lqrgdfprbdaa67azf09bcq9b4k71inxfnxl"))))
(build-system gnu-build-system)
- (arguments `())
- (native-inputs
- (list autoconf automake pkg-config texinfo))
+ (native-inputs (list autoconf automake pkg-config texinfo))
(inputs (list guile-3.0))
(synopsis "Guile implementation of CBOR")
(description
- "The Concise Binary Object Representation (CBOR), as specified by RFC 8949, is
-a binary data serialization format. CBOR is similar to JSON but serializes to
-binary which is smaller and faster to generate and parse. This package provides
-a Guile implementation of CBOR.")
- (home-page "https://inqlab.net/git/guile-cbor.git")
+ "The Concise Binary Object Representation (CBOR), as specified by RFC
+8949, is a binary data serialization format. CBOR is similar to JSON but
+serializes to binary which is smaller and faster to generate and parse. This
+package provides a Guile implementation of CBOR.")
+ (home-page "https://codeberg.org/pukkamustard/guile-cbor/")
(license license:gpl3+)))
(define-public guile-qr-code
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index d35a8e366a..2b6955b406 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -4104,32 +4104,6 @@ any function). It currently contains the interface and IO code from the Shap
project, and it will potentially also do the same for the Lime project.")
(license license:expat)))
-(define-public python-keras-applications
- (package
- (name "python-keras-applications")
- (version "1.0.8")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "Keras_Applications" version))
- (sha256
- (base32
- "1rcz31ca4axa6kzhjx4lwqxbg4wvlljkj8qj9a7p9sfd5fhzjyam"))))
- (build-system python-build-system)
- ;; The tests require Keras, but this package is needed to build Keras.
- (arguments '(#:tests? #f))
- (propagated-inputs
- (list python-h5py python-numpy))
- (native-inputs
- (list python-pytest python-pytest-cov
- python-pytest-xdist))
- (home-page "https://github.com/keras-team/keras-applications")
- (synopsis "Reference implementations of popular deep learning models")
- (description
- "This package provides reference implementations of popular deep learning
-models for use with the Keras deep learning framework.")
- (license license:expat)))
-
(define-public gloo
(let ((version "0.0.0") ; no proper version tag
(commit "81925d1c674c34f0dc34dd9a0f2151c1b6f701eb")
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 2cbc1bb167..9ab20defae 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -835,7 +835,7 @@ of a fake DNS resolver.")
(define-public python-huggingface-hub
(package
(name "python-huggingface-hub")
- (version "0.23.2")
+ (version "0.31.4")
(source
(origin
(method git-fetch)
@@ -844,7 +844,7 @@ of a fake DNS resolver.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0hygxqcixkc1d9sr47j2km6z0p17aj4k1dzm4cvpddrvhrgqayq5"))))
+ (base32 "1rjkrmvvyzxlbnbndrg4v9qq39grn46c26zrdjgpf114gci5pwap"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -881,7 +881,13 @@ of a fake DNS resolver.")
"-k" (string-append
"not test_push_to_hub"
" and not test_from_pretrained_model_id_only"
- " and not test_from_pretrained_model_id_and_revision"))
+ " and not test_from_pretrained_model_id_and_revision"
+ ;; These all require internet access
+ " and not test_auth"
+ " and not test_oauth"
+ " and not test_utils_sha"
+ " and not test_inference_providers"
+ " and not test_xet"))
#:phases
'(modify-phases %standard-phases
(add-before 'check 'pre-check
@@ -908,6 +914,7 @@ of a fake DNS resolver.")
python-pytest-asyncio
python-pytest-cov
python-pytest-env
+ python-pytest-mock
python-pytest-rerunfailures
python-pytest-vcr
python-pytest-xdist
@@ -918,7 +925,7 @@ of a fake DNS resolver.")
python-typing-extensions
python-urllib3
python-wheel))
- (home-page "https://github.com/huggingface/huggingface_hub")
+ (home-page "https://huggingface.co/docs/huggingface_hub/")
(synopsis "Client library for accessing the huggingface.co hub")
(description
"This package provides a client library to download and publish models,
@@ -1617,17 +1624,30 @@ It features a minimal TLS 1.3 implementation, a QUIC stack and an HTTP/3 stack."
(define-public python-aiorpcx
(package
(name "python-aiorpcx")
- (version "0.22.1")
+ (version "0.25.0")
(source
(origin
- (method url-fetch)
- (uri (pypi-uri "aiorpcX" version))
+ (method git-fetch)
+ ;; PyPI misses the util.py file used for tests.
+ (uri (git-reference
+ (url "https://github.com/kyuupichan/aiorpcX")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0lx54bcinp44fmr8q4bbffsqbkg8kdcwykf9i5jj0bj3sfzgf9k0"))))
- (build-system python-build-system)
+ "0sn4xxlpy0kb5b25bqrjzh2m6bskdyydc6cq8bigb7g5dacksn4q"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ ;; This test opens a remote connection.
+ #~(list "-k" "not test_create_connection_resolve_good")))
+ (native-inputs (list python-pytest
+ python-pytest-asyncio
+ python-setuptools
+ python-wheel))
(propagated-inputs
- (list python-attrs))
+ (list python-attrs python-websockets))
(home-page "https://github.com/kyuupichan/aiorpcX")
(synopsis "Generic asyncio RPC implementation")
(description
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e7b3b98c96..6b65e112d1 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -35271,23 +35271,23 @@ handling those variations.")
(define-public python-qdarkstyle
(package
(name "python-qdarkstyle")
- (version "2.8.1")
+ (version "3.2.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "QDarkStyle" version))
(sha256
(base32
- "0883vzg35fzpyl1aiijzpfcdfvpq5vi325w0m7xkx7nxplh02fym"))))
- (build-system python-build-system)
- (arguments
- `(;; Fails unable to detect valid Qt bindings even when
- ;; added as native-inputs.
- #:tests? #f))
+ "1bpi0asa7sd5ch6x6b60n5yias04nsx6kcwji40228g9lrs7y2qc"))))
+ (build-system pyproject-build-system)
+ (native-inputs (list python-pytest
+ python-qtsass
+ python-setuptools
+ python-watchdog
+ python-wheel))
(propagated-inputs
- (list python-helpdev python-qtpy))
- (home-page
- "https://github.com/ColinDuquesnoy/QDarkStyleSheet")
+ (list python-qtpy python-pyqt-6))
+ (home-page "https://github.com/ColinDuquesnoy/QDarkStyleSheet")
(synopsis
"Complete dark stylesheet for Python and Qt applications")
(description "QDarkStyle is the most complete dark stylesheet for Python and