diff options
Diffstat (limited to 'gnu')
56 files changed, 1914 insertions, 1284 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index bd568cc095..a2a78dd74f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1183,6 +1183,7 @@ dist_patch_DATA = \ %D%/packages/patches/cursynth-wave-rand.patch \ %D%/packages/patches/cvs-CVE-2017-12836.patch \ %D%/packages/patches/d-feet-drop-unused-meson-argument.patch \ + %D%/packages/patches/daemontools-gcc14.patch \ %D%/packages/patches/dante-non-darwin.patch \ %D%/packages/patches/date-ignore-zonenow.patch \ %D%/packages/patches/date-output-pkg-config-files.patch \ @@ -1749,6 +1750,7 @@ dist_patch_DATA = \ %D%/packages/patches/libcroco-CVE-2020-12825.patch \ %D%/packages/patches/libcyaml-libyaml-compat.patch \ %D%/packages/patches/libexpected-use-provided-catch2.patch \ + %D%/packages/patches/libgcrypt-arm32-register-pressure.patch \ %D%/packages/patches/libgda-CVE-2021-39359.patch \ %D%/packages/patches/libgda-disable-data-proxy-test.patch \ %D%/packages/patches/libgda-fix-build.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index cfbff824d3..237f0e02a8 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -269,7 +269,8 @@ usual file attributes can be checked for inconsistencies.") "daemontools-" version ".tar.gz")) (sha256 (base32 - "07scvw88faxkscxi91031pjkpccql6wspk4yrlnsbrrb5c0kamd5")))) + "07scvw88faxkscxi91031pjkpccql6wspk4yrlnsbrrb5c0kamd5")) + (patches (search-patches "daemontools-gcc14.patch")))) (build-system gnu-build-system) (arguments (list #:tests? #f ;; No tests as far as I can tell. diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 622ce50020..153eed9d9a 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -3527,18 +3527,18 @@ player-like clients.") (version "0.10.0") (source (origin (method url-fetch) - (uri (string-append "http://das.nasophon.de/download/pyliblo-" + (uri (string-append "https://das.nasophon.de/download/pyliblo-" version ".tar.gz")) (sha256 (base32 "13vry6xhxm7adnbyj28w1kpwrh0kf7nw83cz1yq74wl21faz2rzw")))) - (build-system python-build-system) + (build-system pyproject-build-system) (arguments `(#:tests? #f)) ;no tests (native-inputs - (list python-cython)) + (list python-cython python-setuptools python-wheel)) (inputs (list liblo)) - (home-page "http://das.nasophon.de/pyliblo/") + (home-page "https://das.nasophon.de/pyliblo/") (synopsis "Python bindings for liblo") (description "Pyliblo is a Python wrapper for the liblo Open Sound Control (OSC) @@ -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 @@ -4848,21 +4848,18 @@ encode and decode wavpack files.") (license license:gpl3+)))) (define-public libmixed - ;; Release is much outdated. - (let ((commit "9b2668e0d85175b0e92864cfbf1b9e58f77c92e0") - (revision "1")) (package (name "libmixed") - (version (git-version "2.0" revision commit)) + (version "2.4.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/Shirakumo/libmixed") - (commit commit))) + (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0ql2h0hh4jl96sc9i6mk1d6qq261bvsfapinvzr9gx3lpzycpfb7")))) + (base32 "0g9z8mzrdp1j4w4dv6z2xkgknip6m6384n953y20wdvhs71gia1v")))) (build-system cmake-build-system) (arguments (list @@ -4890,7 +4887,7 @@ in audio/video/games. It can serve as a base architecture for complex DSP systems.") (license (list license:bsd-2 ; libsamplerate license:gpl2 ; spiralfft - license:zlib))))) + license:zlib)))) (define-public libmodplug (package @@ -6482,11 +6479,10 @@ as is the case with audio plugins.") (lambda _ (chmod (string-append #$output "/share/carla/carla") #o555))) (add-after 'install 'wrap-executables - (lambda* (#:key inputs #:allow-other-keys) - (wrap-script (string-append #$output "/bin/carla") - #:guile (search-input-file inputs "bin/guile") - `("GUIX_PYTHONPATH" ":" prefix - (,(getenv "GUIX_PYTHONPATH"))))))))) + (lambda _ + (wrap-program (string-append #$output "/bin/carla") + `("GUIX_PYTHONPATH" ":" prefix + (,(getenv "GUIX_PYTHONPATH"))))))))) (inputs (list alsa-lib ffmpeg @@ -6505,10 +6501,7 @@ as is the case with audio plugins.") ;; (ModuleNotFoundError: No module named 'PyQt5') python-wrapper qtbase-5 - zlib - - ;; For WRAP-SCRIPT above. - guile-2.2)) + zlib)) (native-inputs (list pkg-config)) (home-page "https://kx.studio/Applications:Carla") diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index e14d74b186..c59c7fa5db 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -29,6 +29,7 @@ ;;; Copyright © 2024 Spencer King <spencer.king@geneoscopy.com> ;;; Copyright © 2025 nomike Postmann <nomike@nomike.com> ;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -78,6 +79,7 @@ #:use-module (gnu packages bison) #:use-module (gnu packages bioconductor) #:use-module (gnu packages boost) + #:use-module (gnu packages certs) #:use-module (gnu packages check) #:use-module (gnu packages code) #:use-module (gnu packages cmake) @@ -2835,41 +2837,51 @@ specifying the usage of each program for each cell in the data.") parsing of Variant Call Format (VCF) files.") (license license:expat))) -(define-public python-decoupler-py +(define-public python-decoupler (package - (name "python-decoupler-py") - ;; Upstream places release on a new branch, see - ;; <https://github.com/saezlab/decoupler-py/issues/175>. - (version "1.8.0") + (name "python-decoupler") + (version "2.1.1") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/saezlab/decoupler-py") - (commit version))) + (url "https://github.com/scverse/decoupler") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 - "0c3yg7jjb1nxb6hsh9wn7wr8w0ba55gixdbf5fp443nhv1cwlajj")))) + "0b15n5sq940sn29jsgmdkkm4fcpzfq1n221scfwhjxb4ybdpsz4v")))) (build-system pyproject-build-system) (arguments (list #:test-flags - '(list "-k" - ;; These tests require internet access - (string-append "not test_get_resource" - " and not test_show_resources" - " and not test_get_dorothea" - " and not test_get_progeny" - " and not test_get_ksn_omnipath" - ;; This attempts to download things for Omnipath - " and not test_get_collectri")) + '(list "-k" (string-join + ;; Tests requiring internet access to reach out + ;; <datasets.cellxgene.cziscience.com>, <ftp.ebi.ac.uk>, + ;; <omnipathdb.org>, <raw.githubusercontent.com>, + ;; <static.omnipathdb.org>, <www.ensembl.org>, + ;; <www.ncbi.nlm.nih.gov>, and <zenodo.org>. + (list "not test_collectri" + "test_covid5k" + "test_dorothea" + "test_download" + "test_download_anndata" + "test_ensmbl_to_symbol" + "test_erygast1k" + "test_hallmark" + "test_hsctgfb" + "test_knocktf" + "test_msvisium" + "test_pbmc3k" + "test_progeny" + "test_resource" + "test_show_resources" + "test_translate" + ;; XXX: Some precision mismatched. + "test_func_gsea" + "test_net_corr") + " and not ")) #:phases '(modify-phases %standard-phases - (add-after 'unpack 'relax-requirements - (lambda _ - (substitute* "pyproject.toml" - ;; numba = "^0.60.0"; all tests passed. - (("0.60.0") "0.61.0")))) (add-before 'check 'set-home ;; Some tests require a home directory to be set. (lambda _ (setenv "HOME" "/tmp"))) @@ -2878,27 +2890,35 @@ parsing of Variant Call Format (VCF) files.") (lambda _ (setenv "NUMBA_CACHE_DIR" "/tmp")))))) (propagated-inputs (list python-adjusttext python-anndata - python-ipython - python-matplotlib - python-nbsphinx + python-dcor + python-docrep + python-igraph + python-ipywidgets + python-marsilea python-numba - python-numpy - python-numpydoc - python-omnipath - python-scanpy - python-scikit-learn + python-requests python-scipy - python-skranger + python-session-info2 python-tqdm - python-typing-extensions)) - (native-inputs (list python-poetry-core python-pytest)) - (home-page "https://github.com/saezlab/decoupler-py") + python-xgboost)) + (native-inputs + (list nss-certs-for-test + python-hatchling + python-gseapy + python-memory-profiler + python-pytest + python-scanpy)) + (home-page "https://github.com/scverse/decoupler") (synopsis "Framework for modeling, analyzing and interpreting single-cell RNA-seq data") (description "This package provides different statistical methods to extract biological activities from omics data within a unified framework.") - (license license:gpl3+))) + (license license:bsd-3))) + +;; See: <https://github.com/scverse/decoupler/blob/main/CHANGELOG.md#200> +(define-public python-decoupler-py + (deprecated-package "python-decoupler-py" python-decoupler)) (define-public python-demuxem (package @@ -3119,16 +3139,16 @@ servers supporting the protocol.") (define-public python-liana-py (package (name "python-liana-py") - (version "1.4.0") + (version "1.6.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/saezlab/liana-py") - (commit version))) + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 - "1kwbhfmsjhfc6m4kcp4zc2xgzg1qf16ywfkdamn868anwwrvjxzb")))) + "1k6l371wd00m95l5pb2jsmzzxh5nc5v21fg2v0cslr9761q151r9")))) (build-system pyproject-build-system) (arguments (list @@ -3159,27 +3179,30 @@ servers supporting the protocol.") " and not test_bivar_product" ;; XXX unclear failure: large difference in data ;; frames. - " and not test_aggregate_res") + " and not test_aggregate_res" + ;; XXX: ValueError: Only CSR and CSC matrices are + ;; supported. + " and not test_bivar_nondefault" + " and not test_masked_spearman" + " and not test_vectorized_spearman" + " and not test_basic_interpolation" + " and not test_different_methods" + " and not test_fill_value" + " and not test_use_raw_layer_parameters") ;; These need the optional squidpy, which we don't have yet. - "--ignore=liana/tests/test_misty.py" + "--ignore=tests/test_misty.py" ;; These need the optional corneto. - "--ignore=liana/tests/test_causalnet.py" + "--ignore=tests/test_causalnet.py" ;; Needs internet access. - "--ignore=liana/tests/test_orthology.py") + "--ignore=tests/test_orthology.py") #:phases '(modify-phases %standard-phases - (add-after 'unpack 'relax-requirements - (lambda _ - ;; Don't fail the sanity check when these optional inputs aren't - ;; available. - (substitute* "pyproject.toml" - (("^pre-commit =.*") "")))) ;; Numba needs a writable directory to cache functions. (add-before 'build 'set-numba-cache-dir (lambda _ (setenv "NUMBA_CACHE_DIR" "/tmp")))))) (propagated-inputs (list python-anndata python-cell2cell - python-decoupler-py + python-decoupler python-hypothesis python-ipykernel python-ipython @@ -3199,10 +3222,8 @@ servers supporting the protocol.") python-tqdm tzdata)) (native-inputs - (list python-black - python-poetry-core - python-pytest - python-pytest-cov)) + (list python-hatchling + python-pytest)) (home-page "https://github.com/saezlab/liana-py") (synopsis "LIANA is a ligand-receptor analysis framework") (description "This is a Ligand-Receptor inference framework. The @@ -5012,7 +5033,7 @@ package provides command line tools using the Bio++ library.") (define-public blast+ (package (name "blast+") - (version "2.14.0") + (version "2.17.0") (source (origin (method url-fetch) (uri (string-append @@ -5020,7 +5041,7 @@ package provides command line tools using the Bio++ library.") version "/ncbi-blast-" version "+-src.tar.gz")) (sha256 (base32 - "003mn7m4y306k7visv3in3ikfgm8m41z0jq9lyvz10iv1hdpyixz")) + "0ix1bqgaywi3ggis4qvaipb0mk3llhgf52vmc97f744risl5f82h")) (modules '((guix build utils))) (snippet '(begin @@ -5636,7 +5657,7 @@ with MOFA+ in Python.") (define-public python-mudata (package (name "python-mudata") - (version "0.3.1") + (version "0.3.2") (source (origin (method git-fetch) (uri (git-reference @@ -5645,7 +5666,7 @@ with MOFA+ in Python.") (file-name (git-file-name name version)) (sha256 (base32 - "1m1qsqgk8snllavfj99qgm2j7cccviwg7k0k1kfbvqn0bkzc87sa")))) + "17s1w3746d35pcwr97ynhr7s5hfk76vsfcinwyqynx9k3xxi9br4")))) (build-system pyproject-build-system) (arguments (list @@ -7071,16 +7092,16 @@ trees (phylogenies) and characters.") (define-public python-py2bit (package (name "python-py2bit") - (version "0.3.0") + (version "0.3.3") (source (origin (method url-fetch) (uri (pypi-uri "py2bit" version)) (sha256 (base32 - "1vw2nvw1yrl7ikkqsqs1pg239yr5nspvd969r1x9arms1k25a1a5")))) + "0w1p4l1jwg9kkifm0jsg33a212ps0jn61islmnng2afp77y5nkr6")))) (build-system pyproject-build-system) - (native-inputs (list python-setuptools python-wheel)) + (native-inputs (list python-setuptools python-setuptools-scm python-wheel)) (home-page "https://github.com/dpryan79/py2bit") (synopsis "Access 2bit files using lib2bit") (description @@ -8748,18 +8769,7 @@ HMMs).") (sha256 (base32 "1kbr4ydjjhizz6r5m3xd4f0wj7qnn8zs0vnzghhgaa0yhbya5r19")))) - (build-system python-build-system) - (arguments - (list - #:phases - '(modify-phases %standard-phases - ;; Avoid rebuilding the extension. Everything is built during the - ;; 'install phase anyway. - (delete 'build) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "pytest" "-v"))))))) + (build-system pyproject-build-system) (propagated-inputs (list python-matplotlib python-numpy @@ -8769,6 +8779,8 @@ HMMs).") python-pandas python-pytest python-scipy + python-setuptools + python-wheel swig)) (home-page "https://github.com/htseq") (synopsis "Framework for analyzing high-throughput sequencing data") @@ -17043,7 +17055,7 @@ The following file formats are supported: (define-public salmon (package (name "salmon") - (version "1.10.1") + (version "1.10.3") (source (origin (method git-fetch) (uri (git-reference @@ -17052,7 +17064,7 @@ The following file formats are supported: (file-name (git-file-name name version)) (sha256 (base32 - "0grpcajxf2bch4b74zb66pdssda8yc7jvxj5ckaw0xvw1605rpcj")) + "0vii7nlx0ddn62qniwx4abfj6ajwl3w6mizavpa0mkhpxnm06rqw")) (modules '((guix build utils))) (snippet ;; Delete bundled headers for eigen3. @@ -17167,7 +17179,7 @@ The following file formats are supported: (file-name (git-file-name "pufferfish" version)) (sha256 (base32 - "0fcv5rd2k4fabsg489sjfxgjisivhwk1w26gfc88rgpszdkcla36")))))) + "0h12h4wv7k3if1m6as7wvrbd7djm0zsg1vs0xn84bnrswwv5z2l3")))))) (home-page "https://github.com/COMBINE-lab/salmon") (synopsis "Quantification from RNA-seq reads using lightweight alignments") (description "Salmon is a program to produce highly-accurate, @@ -19738,7 +19750,7 @@ implementation differs in these ways: (define-public python-scanpy (package (name "python-scanpy") - (version "1.10.4") + (version "1.11.2") (source (origin (method git-fetch) @@ -19748,12 +19760,14 @@ implementation differs in these ways: (file-name (git-file-name name version)) (sha256 (base32 - "139d6fsdbhg1hqqq5yyl8hr3cqz2mj70i0i8r1mq6z6a8qmq1p4z")))) + "18ddb3jkyjan87f5kymyq951sa5955z41f10h6z954map8dy2136")))) (build-system pyproject-build-system) (arguments (list + ;; 736 passed, 95 skipped, 20 xfailed, 148 warnings #:test-flags '(list "-m" "not gpu" + "--numprocesses" (number->string (parallel-job-count)) ;; These tests require Internet access. "--ignore-glob=tests/notebooks/*" "--ignore=tests/test_clustering.py" @@ -19771,9 +19785,10 @@ implementation differs in these ways: "--ignore=tests/test_preprocessing.py" "--ignore=tests/test_read_10x.py" "--ignore=plotting/_tools/scatterplots.py" - ;; The following tests requires 'scanorama', which isn't - ;; packaged yet. - "--ignore=tests/external/test_scanorama_integrate.py" + ;; Adding additional options does not help to resolve the + ;; faileur: TypeError: _FlakyPlugin._make_test_flaky() got an + ;; unexpected keyword argument 'reruns'. + "--ignore=tests/test_backed.py" "-k" ;; Plot tests that fail. (string-append "not test_clustermap" @@ -19784,6 +19799,8 @@ implementation differs in these ways: " and not test_paga_plots" " and not test_violin" " and not test_scatter_no_basis_per_obs" + " and not test_spatial_general" + " and not test_visium_empty_img_key" ;; These are doctests that fail because of missing ;; datasets. @@ -19801,7 +19818,21 @@ implementation differs in these ways: " and not test_pca_layer" " and not test_pca_sparse" " and not test_pca_reproducible" - " and not test_clip")) + " and not test_clip" + + ;; Missing test data. + " and not test_covariance_eigh_impls" + " and not test_embedding_colorbar_location" + " and not test_sparse_dask_input_errors" + " and not test_sparse_dask_input_errors" + " and not test_spatial_external_img" + + ;; Somehow broken tests. + " and not test_sim_toggleswitch" + " and not scanpy.datasets._datasets.krumsiek11" + " and not scanpy.datasets._datasets.toggleswitch" + " and not scanpy.external.pp._scanorama_integrate.scanorama_integrate" + " and not scanpy.preprocessing._simple.filter_cells")) #:phases #~(modify-phases %standard-phases ;; XXX This should not be necessary, but I noticed while building @@ -19825,9 +19856,12 @@ implementation differs in these ways: (string-append (getcwd) ":" #$(this-package-native-input "python-anndata:source") ":" (getenv "GUIX_PYTHONPATH"))))) - ;; Numba needs a writable dir to cache functions. - (add-before 'check 'set-numba-cache-dir - (lambda _ (setenv "NUMBA_CACHE_DIR" "/tmp")))))) + (add-before 'check 'pre-check + (lambda _ + ;; Numba needs a writable dir to cache functions. + (setenv "NUMBA_CACHE_DIR" "/tmp") + ;; For Matplotlib. + (setenv "HOME" "/tmp")))))) (propagated-inputs (list python-anndata python-dask @@ -19843,27 +19877,30 @@ implementation differs in these ways: python-packaging python-pandas python-patsy + python-pytoml python-scikit-learn python-scipy - python-setuptools ; For pkg_resources. python-seaborn - python-session-info + python-session-info2 + python-setuptools ; For pkg_resources. python-sinfo python-statsmodels python-tables - python-pytoml python-tqdm python-umap-learn)) (native-inputs `(;; This package needs anndata.tests, which is not installed. ("python-anndata:source" ,(package-source python-anndata)) + ("python-flaky" ,python-flaky) ("python-flit" ,python-flit) - ("python-hatchling" ,python-hatchling) ("python-hatch-vcs" ,python-hatch-vcs) + ("python-hatchling" ,python-hatchling) ("python-leidenalg" ,python-leidenalg) ("python-pytest" ,python-pytest) ("python-pytest-mock" ,python-pytest-mock) ("python-pytest-nunit" ,python-pytest-nunit) + ("python-pytest-xdist" ,python-pytest-xdist) + ("python-scanorama" ,python-scanorama) ("python-setuptools-scm" ,python-setuptools-scm))) (home-page "https://github.com/theislab/scanpy") (synopsis "Single-Cell Analysis in Python") @@ -20397,141 +20434,6 @@ includes operations like compartment, insulation or peak calling.") the HiCExplorer and pyGenomeTracks packages.") (license license:gpl3+))) -(define-public python-hicexplorer - (package - (name "python-hicexplorer") - (version "3.7.4") - (source - (origin - ;; The latest version is not available on Pypi. - (method git-fetch) - (uri (git-reference - (url "https://github.com/deeptools/HiCExplorer") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1cjr9l0vcngd0f4dmar388ri1ah1bqybnn53jc85xwh07wfacq7l")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - '(list "hicexplorer/test/general/" - "--ignore" "hicexplorer/test/general/test_hicTADClassifier.py" - "--ignore" "hicexplorer/test/general/test_hicTrainTADClassifier.py" - "-k" - (string-append - ;; Unknown chromosome: ChrX - "not test_build_matrix_restrictionCutFile_two" - ;; fixture 'keepSelfLigation' not found - " and not test_build_matrix_restrictionCutFile_six" - ;; ValueError: object dtype is not supported by sparse matrices - " and not test_hic_transfer_obs_exp_perChromosome" - - ;; No KR balancing available - " and not test_correct_matrix_KR_partial_cool" - " and not test_correct_matrix_KR_cool" - " and not test_correct_matrix_KR_H5")) - #:phases - #~(modify-phases %standard-phases - ;; See https://github.com/deeptools/Knight-Ruiz-Matrix-balancing-algorithm/issues/23 - (add-after 'unpack 'remove-dependency-on-krbalancing - (lambda _ - (substitute* "hicexplorer/hicCorrectMatrix.py" - (("from krbalancing import.*") "") - (("( *)assert\\(args.correctionMethod == 'KR'\\)" m indent) - (string-append m "\n" - indent "log.error('krbalancing not available')\n" - indent "exit(1)"))) - (substitute* "setup.py" - (("\"krbalancing >= 0.0.5\",") "")) - (substitute* "requirements.txt" - (("krbalancing >= 0.0.5") "")))) - (add-after 'unpack 'fix-references - (lambda _ - (let ((site (string-append #$output "/lib/python" - #$(version-major+minor - (package-version python)) - "/site-packages"))) - (substitute* "hicexplorer/lib/tadClassifier.py" - (("model_location = site.getsitepackages\\(\\)\\[0\\]") - (string-append "model_location = \"" site "\"")))) - (substitute* "hicexplorer/hicFindRestSite.py" - (("subprocess.check_output\\(\\[\"cat\"") - (string-append "subprocess.check_output([\"" - (which "cat") "\"")) - (("cmd = 'sort -k1") - (string-append "cmd = '" (which "sort") " -k1"))))) - ;; The tests aim to detect available memory and run more tests when - ;; there is more available memory. Let's run them deterministically - ;; instead and don't run any tests that require more than 1GB of - ;; RAM. - (add-after 'unpack 'run-only-low-mem-tests - (lambda _ - (with-directory-excursion "hicexplorer/test" - (substitute* '("trivial_runs/test_hicBuildMatrix_trivial_runs_2.py" - "trivial_runs/test_hicAggregateContacts_trivial_runs_five.py" - "trivial_runs/test_hicAggregateContacts_trivial_runs_four.py" - "trivial_runs/test_hicAggregateContacts_trivial_runs.py" - "trivial_runs/test_hicAggregateContacts_trivial_runs_two_1.py" - "trivial_runs/test_hicBuildMatrix_trivial_runs.py" - "trivial_runs/test_hicAggregateContacts_trivial_runs_two_3.py" - "trivial_runs/test_hicAggregateContacts_trivial_runs_three.py" - "trivial_runs/test_hicAggregateContacts_trivial_runs_two.py" - "trivial_runs/test_hicAggregateContacts_trivial_runs_two_2.py" - "trivial_runs/test_hicAggregateContacts_trivial_runs_six.py" - "general/test_hicDifferentialTAD.py" - "general/test_hicDetectLoops.py" - "general/test_hicPlotMatrix.py" - "general/test_hicHyperoptDetectLoops.py" - "general/test_hicCreateThresholdFile.py" - "general/test_hicMergeDomains.py" - "general/test_hicHyperoptDetectLoopsHiCCUPS.py" - "general/test_hicAggregateContacts.py" - "general/test_hicInterIntraTAD.py") - (("^memory =.*") "memory = 1\n")))))))) - (propagated-inputs - (list python-biopython - python-cleanlab - python-cooler - python-fit-nbinom - python-future - python-graphviz - python-hic2cool - python-hicmatrix - python-hyperopt - python-imbalanced-learn - python-intervaltree - python-ipykernel - python-jinja2 - python-matplotlib - python-numpy - python-pandas - python-psutil - python-pybedtools - python-pybigwig - python-pygenometracks - python-pysam - python-scikit-learn - python-scipy - python-tables - python-tqdm - python-unidecode)) - (native-inputs - (list graphviz)) ;for hicexplorer/test/test_compute_function.py - (home-page "https://hicexplorer.readthedocs.io") - (synopsis "Process, analyze and visualize Hi-C data") - (description - "HiCExplorer is a powerful and easy to use set of tools to process, -normalize and visualize Hi-C data. HiCExplorer facilitates the creation of -contact matrices, correction of contacts, TAD detection, A/B compartments, -merging, reordering or chromosomes, conversion from different formats -including cooler and detection of long-range contacts. Moreover, it allows -the visualization of multiple contact matrices along with other types of data -like genes, compartments, ChIP-seq coverage tracks (and in general any type of -genomic scores), long range contacts and the visualization of viewpoints.") - (license license:gpl3))) - (define-public python-pygenometracks (package (name "python-pygenometracks") @@ -22979,8 +22881,8 @@ pairs.") (license license:expat))) (define-public r-hdf5dataframe - (let ((commit "1cdb905b1f6af3339938de3e1ca407908bc93e47") - (revision "1")) + (let ((commit "1e30e6b82b5599d5d98fbcb8bf7312dd1711ca3c") + (revision "2")) (package (name "r-hdf5dataframe") (version (git-version "0.0.0" revision commit)) @@ -22992,12 +22894,12 @@ pairs.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "1pk22h56x873gahj2nwnwxzyq5a27h363mxk1491irypvk78dpn9")))) + (base32 "0y6hp31gy17v87ll4rij6pwy6b7k7gnw8iwnvzsaa13ga73g69ak")))) (properties `((upstream-name . "HDF5DataFrame"))) (build-system r-build-system) (propagated-inputs (list r-biocgenerics r-delayedarray r-hdf5array r-rhdf5 r-s4vectors)) - (native-inputs (list r-knitr)) + (native-inputs (list r-knitr r-testthat)) (home-page "https://github.com/BIMSBbioinfo/HDF5DataFrame") (synopsis "Bioconductor-friendly bindings for Parquet") (description @@ -23132,6 +23034,7 @@ guix_python <- \"~a\";" python-scipy python-tifffile python-zarr + which ;tests/testthat/test_conversion.R zlib)) (propagated-inputs (list r-data-table r-dplyr @@ -23660,7 +23563,7 @@ compute communities on graphs weighted or unweighted.") (define-public ivar (package (name "ivar") - (version "1.4.2") + (version "1.4.4") (source (origin (method git-fetch) (uri (git-reference @@ -23669,7 +23572,7 @@ compute communities on graphs weighted or unweighted.") (file-name (git-file-name name version)) (sha256 (base32 - "0v3rsak84ilg4iaynwpmmkj507vham5rjk2pfsmylpaqylgc69yx")))) + "1bwygjv81m4yv5ycxb5gx22k6njgwrzzs7jrsadq6363klcv4irh")))) (build-system gnu-build-system) (arguments (list diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 9660cff1c7..b6c767e3bf 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -2775,16 +2775,18 @@ across test runs.") (define-public python-pytest-sugar (package (name "python-pytest-sugar") - (version "0.9.3") + (version "1.0.0") (source (origin (method url-fetch) (uri (pypi-uri "pytest-sugar" version)) (sha256 - (base32 "1i0hv3h49zvl62jbiyjag84carbrp3zprqzxffdr291nxavvac0n")))) - (build-system python-build-system) + (base32 "02kc4y0ry4y9lp63kjq9p7yvbjijfxn1fcn6wx6c1c7mb0rfh8k4")))) + (build-system pyproject-build-system) (propagated-inputs (list python-packaging python-pytest python-termcolor)) + (native-inputs + (list python-setuptools python-wheel)) (home-page "https://pivotfinland.com/pytest-sugar/") (synopsis "Plugin for pytest that changes the default look and feel") (description diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 1e8ed923bd..cf96024888 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -2553,7 +2553,7 @@ download times, and other distribution and storage costs.") (define-public quazip (package (name "quazip") - (version "1.4") + (version "1.5") (source (origin (method git-fetch) @@ -2562,7 +2562,7 @@ download times, and other distribution and storage costs.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1jsw4xm5wyaqcj1pma5zzd8f5xbgd5lcjh18ah3kg36xz5i69yi4")))) + (base32 "0ni1656g2xf0cspwjp645hhd2p4iaqki4z26xhkxz04l5nzsdrh0")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ;no test diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 64b7d820b4..1d1c395d8d 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -53413,21 +53413,40 @@ the @code{raster} package that is suitable for extracting raster values using (define-public r-stringfish (package (name "r-stringfish") - (version "0.16.0") + (version "0.17.0") (source (origin (method url-fetch) (uri (cran-uri "stringfish" version)) (sha256 (base32 - "14vrg6mkwwgw1klgpvjn7936yfxav55rainz71xjjih2j21vq21n")))) + "0x6nad21q7shsl7wjzldb6si7j09dyxksrpq29cxphh79d0ga2ly")))) (properties '((upstream-name . "stringfish") (updater-extra-inputs . ("pcre2")))) (build-system r-build-system) - ;; Tests require r-qs, which depends on this package. - (arguments (list #:tests? #false)) - (inputs (list pcre2)) + (arguments + (list + ;; Tests require r-qs, which depends on this package. + #:tests? #false + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'use-system-tbb + (lambda _ + (setenv "TBB_ROOT" #$(this-package-input "tbb")))) + (add-before 'install 'relax-gcc-14-strictness + (lambda _ + ;; XXX FIXME: $HOME/.R/Makevars seems to be the only way to + ;; set custom CFLAGS for R? + (setenv "HOME" (getcwd)) + (mkdir-p ".R") + (with-directory-excursion ".R" + (with-output-to-file "Makevars" + (lambda _ + (display (string-append + "CXXFLAGS=-g -O2" + " -Wno-error=changes-meaning\n")))))))))) + (inputs (list pcre2 tbb-2020)) (propagated-inputs (list r-rcpp r-rcppparallel)) (native-inputs diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 50cb67d2ea..d6a042a378 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1310,7 +1310,7 @@ as a drop-in replacement of MySQL.") (define-public mariadb-connector-c (package (name "mariadb-connector-c") - (version "3.1.13") + (version "3.4.5") (source (origin (method url-fetch) @@ -1319,7 +1319,7 @@ as a drop-in replacement of MySQL.") version "/mariadb-connector-c-" version "-src.tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "0xb8fiissblxb319y5ifqqp86zblwis789ipb753pcb4zpnsaw82")))) + (base32 "18y1x985pnvvirmwfka81ygsvl7isc52mj9c9hvc69fb2qw1jzmi")))) (inputs (list openssl)) (build-system cmake-build-system) @@ -3694,15 +3694,66 @@ with Python's asyncio framework.") (define-public python-asyncmy (package (name "python-asyncmy") - (version "0.2.5") + (version "0.2.10") (source - (origin - (method url-fetch) - (uri (pypi-uri "asyncmy" version)) - (sha256 - (base32 "0i18zxy6xvzv6dk791xifn2sw2q4zvqwpzrzy8qx51d3mp8z6gng")))) - (build-system python-build-system) - (native-inputs (list python-cython)) + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/long2ice/asyncmy") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "10sqihiwx7vsdaavgl418hhk7d5rl6d1i60y5bjr76mdfny18q55")))) + (build-system pyproject-build-system) + (arguments + (list + ;; XXX: Most tests fail, probably because + ;; of pytest-asyncio version mismatch. + #:tests? #f + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'cleanup + (lambda* (#:key inputs outputs #:allow-other-keys) + (for-each delete-file + (find-files (site-packages inputs outputs) + "\\.(c|pyx)$")))) + + (replace 'check + (lambda* (#:key tests? #:allow-other-keys #:rest rest) + (when tests? + ;; XXX: Else pytest picks up the wrong __init__.py + (delete-file-recursively "asyncmy") + ;; The tests rely on a MySQL or MariaDB test server + ;; being available. + (let ((datadir "/tmp/mysql") + (socket "/tmp/mysql/mysqld.sock") + (username "root") + (password "123456")) ;default in conftest.py + (invoke "mysqld" "--initialize-insecure" + (string-append "--datadir=" datadir)) + (spawn "mysqld" + (list + "mysqld" + ;; Respect '--datadir'. + "--no-defaults" + (string-append "--datadir=" datadir) + (string-append "--socket=" socket))) + (sleep 1) + (invoke "mysql" + (string-append "--socket=" socket) + "-u" "root" + "-e" (string-append + "ALTER USER 'root'@'localhost' IDENTIFIED BY '" + password "';")) + (apply (assoc-ref %standard-phases 'check) + `(#:tests? ,tests? ,@rest))))))))) + (native-inputs + (list mysql + python-cython + python-poetry-core + python-pytest + python-pytest-asyncio + python-setuptools)) (home-page "https://github.com/long2ice/asyncmy") (synopsis "Fast MySQL driver for Python") (description "@code{asyncmy} is a fast @code{asyncio} MySQL driver, which diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 4d428d4686..cd1d0c0d9a 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -137,7 +137,7 @@ a system that allows you to easily communicate between processes, and separate your project into different processes.") (license license:bsd-3))) -(define-public python-django-4.2 +(define-public python-django (package (name "python-django") (version "4.2.16") @@ -229,24 +229,6 @@ to the @dfn{don't repeat yourself} (DRY) principle.") ;; This CVE seems fixed since 4.2.1. (lint-hidden-cve . ("CVE-2023-31047")))))) -;; archivebox requires django>=3.1.3,<3.2 -(define-public python-django-3.1.14 - (package - (inherit python-django-4.2) - (version "3.1.14") - (source (origin - (method url-fetch) - (uri (pypi-uri "Django" version)) - (sha256 - (base32 - "0ix3v2wlnplv78zxjrlw8z3hiap2d5mxvk0ny2fc65526shsb93j")))) - (propagated-inputs - (modify-inputs (package-propagated-inputs python-django-4.2) - ;; Django 4.0 deprecated pytz in favor of Pythons built-in zoneinfo. - (append python-pytz))))) - -(define-public python-django python-django-4.2) - (define-public python-django-cache-url (package (name "python-django-cache-url") 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/docker.scm b/gnu/packages/docker.scm index a0c90ac5aa..21e20e1842 100644 --- a/gnu/packages/docker.scm +++ b/gnu/packages/docker.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr> ;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com> ;;; Copyright © 2025 Vinicius Monego <monego@posteo.net> +;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -103,6 +104,33 @@ management tool.") (license license:asl2.0))) +;; Needed for old v1 of docker-compose; remove once Docker is updated to a +;; more recent version which has the command "docker compose" built-in. +(define-public python-docker-5 + (package + (inherit python-docker) + (name "python-docker") + (version "5.0.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/docker/docker-py") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0m5ifgxdhcf7yci0ncgnxjas879sksrf3im0fahs573g268farz9")))) + (build-system python-build-system) + ;; Integration tests need a running Docker daemon. + (arguments (list #:tests? #f)) + (native-inputs '()) + (inputs (modify-inputs (package-inputs python-docker) + (prepend python-six) + (delete "python-urllib3"))) + (propagated-inputs + (modify-inputs (package-propagated-inputs python-docker) + (prepend python-docker-pycreds python-urllib3-1.26))))) + (define-public python-dockerpty (package (name "python-dockerpty") @@ -139,16 +167,25 @@ client.") "1dq9kfak61xx7chjrzmkvbw9mvj9008k7g8q7mwi4x133p9dk32c")))) (build-system python-build-system) ;; TODO: Tests require running Docker daemon. - (arguments '(#:tests? #f)) + (arguments + (list + #:tests? #f + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-pyyaml + (lambda _ + (substitute* "setup.py" + ((", < 6") + ""))))))) (inputs (list python-cached-property python-distro - python-docker + python-docker-5 python-dockerpty python-docopt python-dotenv python-jsonschema-3 - python-pyyaml-5 + python-pyyaml python-requests python-six python-texttable diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm index a13ad2196a..05bee696b2 100644 --- a/gnu/packages/electronics.scm +++ b/gnu/packages/electronics.scm @@ -106,7 +106,7 @@ individual low-level driver modules.") (home-page "https://www.comedi.org/") (license license:lgpl2.1))) -(define-public librnd +(define librnd (package (name "librnd") (version "4.3.2") @@ -561,12 +561,12 @@ The following features are currently available: (define-public opensta ;; There are no releases, we use last commit. - (let ((commit "eb8d39a7dd81b5ca2582ad9bbce0fb6e094b3e0f") + (let ((commit "12f03395ec80d3593f4796b2a3cf5480e75735bd") (revision "0")) (package (name "opensta") ;; The version string is taken from the CMakeLists.txt. - (version (git-version "2.6.2" revision commit)) + (version (git-version "2.7.0" revision commit)) (source (origin (method git-fetch) @@ -575,20 +575,27 @@ The following features are currently available: (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "0bpc7fj4pd5713yny2vrh542jbag1kj20g0ji01c9scqb9av5qw5")))) + (base32 "1gka50p4wv2b49d8jbw5fs3qg7cppa8ynl3diqgdf8mqgskwapzf")))) (build-system cmake-build-system) (arguments (list + ;; Tests expect output sta binary inside source tree. + #:out-of-source? #f #:phases #~(modify-phases %standard-phases (replace 'check (lambda* (#:key tests? #:allow-other-keys) (when tests? - (invoke "../source/test/regression"))))) + (invoke "../test/regression")))) + (add-before 'build 'create-build-dir + (lambda _ + (mkdir-p "./build") + (chdir "./build")))) #:configure-flags #~(list (string-append "-DCUDD_DIR=" #$(this-package-input "cudd")) - (string-append "-DBUILD_SHARED_LIBS=YES")))) + (string-append "-DBUILD_SHARED_LIBS=YES") + "-B./build"))) (native-inputs (list bison flex swig)) (inputs (list cudd eigen tcl tcllib zlib)) (synopsis "Parallax Static Timing Analyzer") 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/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 222d065db3..e32f813878 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -14171,7 +14171,7 @@ interface.") (define-public emacs-orderless (package (name "emacs-orderless") - (version "1.4") + (version "1.5") (source (origin (method git-fetch) @@ -14179,11 +14179,12 @@ interface.") (url "https://github.com/oantolin/orderless") (commit version))) (sha256 - (base32 "1la91fk322n600h4wnavx7a6rdc44mz4v4gg1fb3cpwjsw746sl8")) + (base32 "0cgklam29vsfrl70n3cqv1dxbsnpzjylfxabfs9v1yz02q27nggv")) (file-name (git-file-name name version)))) (build-system emacs-build-system) (arguments (list + #:tests? #f #:phases #~(modify-phases %standard-phases (add-after 'install 'makeinfo @@ -14194,7 +14195,8 @@ interface.") (native-inputs (list texinfo)) (propagated-inputs (list emacs-compat)) (home-page "https://github.com/oantolin/orderless") - (synopsis "Emacs completion style that matches multiple regexps in any order") + (synopsis + "Emacs completion style that matches multiple regexps in any order") (description "This package provides an orderless completion style that divides the pattern into space-separated components, and matches candidates that match all of the components in any order. Each component can match in @@ -14590,7 +14592,7 @@ expansion and overwriting the marked region with a new snippet completion.") (define-public emacs-marginalia (package (name "emacs-marginalia") - (version "2.0") + (version "2.2") (source (origin (method git-fetch) @@ -14599,21 +14601,20 @@ expansion and overwriting the marked region with a new snippet completion.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "00dzckksfzvwjdy3v1g71nvkxnnpw2bmh8bmhf56qn3nzfj2yr89")))) + (base32 "1grn94v5pidb9wk2vgxx5n3fmhcgx9i14lrwm5clvsvncysy7zhg")))) (build-system emacs-build-system) (arguments (list + #:tests? #f ;no tests #:phases #~(modify-phases %standard-phases - (add-after 'install 'makeinfo + (add-before 'install 'makeinfo (lambda _ (invoke "emacs" "--batch" "--eval=(require 'ox-texinfo)" "--eval=(find-file \"README.org\")" - "--eval=(org-texinfo-export-to-info)") - (install-file "marginalia.info" - (string-append #$output "/share/info"))))))) + "--eval=(org-texinfo-export-to-info)")))))) (native-inputs (list texinfo)) (propagated-inputs (list emacs-compat)) @@ -20659,7 +20660,7 @@ using a convenient notation.") (let ((commit "c3f4583b0767e7f8c38c83ed29af40af8ba3bdfa")) ;version bump (package (name "emacs-beframe") - (version "1.3.0") + (version "1.4.0") (source (origin (method git-fetch) (uri (git-reference @@ -20672,17 +20673,16 @@ using a convenient notation.") (build-system emacs-build-system) (arguments (list + #:tests? #f ;no tests #:phases #~(modify-phases %standard-phases - (add-after 'install 'makeinfo + (add-before 'install 'makeinfo (lambda _ (invoke "emacs" "--batch" "--eval=(require 'ox-texinfo)" "--eval=(find-file \"README.org\")" - "--eval=(org-texinfo-export-to-info)") - (install-file "beframe.info" - (string-append #$output "/share/info"))))))) + "--eval=(org-texinfo-export-to-info)")))))) (native-inputs (list texinfo)) (home-page "https://protesilaos.com/emacs/beframe") @@ -32489,17 +32489,32 @@ buffer displays recursive dir sizes.") (define-public emacs-dired-preview (package (name "emacs-dired-preview") - (version "0.4.0") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/protesilaos/dired-preview") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "016g2scl3ifngy67s5dalnywxxj1xdf1mibpqda2zgynx0czvv7l")))) + (version "0.6.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/protesilaos/dired-preview") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0p6v1dx33f7ypi026pp4jjzh81n5vl4gy63cwhql0sbwsbxsz8y9")))) (build-system emacs-build-system) + (arguments + (list + #:test-command + #~(list "ert-runner" "-L" "tests" "tests/dired-preview-test.el") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'makeinfo + (lambda _ + (invoke "emacs" + "--batch" + "--eval=(require 'ox-texinfo)" + "--eval=(find-file \"README.org\")" + "--eval=(org-texinfo-export-to-info)")))))) + (native-inputs (list emacs-ert-runner texinfo)) (home-page "https://protesilaos.com/emacs/dired-preview") (synopsis "Automatically preview file at point in Dired") (description @@ -38539,7 +38554,7 @@ Lisp's (relatively new) EIEIO object oriented libraries.") (define-public emacs-fj (package (name "emacs-fj") - (version "0.17") + (version "0.21") (source (origin (method git-fetch) @@ -38548,7 +38563,7 @@ Lisp's (relatively new) EIEIO object oriented libraries.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0857h9pkzdmf2cgd3ss4q405n219gfdsfryp6w4mr0mp87dpgz84")))) + (base32 "0pvk69i6nz1gf36labj6cdskw8qsx44hx2z78s2fcvr8z4a345rl")))) (build-system emacs-build-system) (arguments (list #:tests? #f)) ; no tests (propagated-inputs (list emacs-fedi emacs-magit emacs-tp)) diff --git a/gnu/packages/enchant.scm b/gnu/packages/enchant.scm index 71f45bc57d..6298bd4904 100644 --- a/gnu/packages/enchant.scm +++ b/gnu/packages/enchant.scm @@ -32,6 +32,7 @@ #:use-module (gnu packages man) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python-build) #:use-module (gnu packages version-control) #:use-module (guix gexp) #:use-module (guix packages) @@ -39,6 +40,7 @@ #:use-module (guix download) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) + #:use-module (guix build-system pyproject) #:use-module (guix build-system python) #:use-module (guix licenses) #:use-module (srfi srfi-1)) @@ -149,7 +151,7 @@ Ispell-compatible.") (sha256 (base32 "1872ckgdip8nj9rnh167m0gsj5754qfg2hjxzsl1s06f5akwscgw")))) - (build-system python-build-system) + (build-system pyproject-build-system) (arguments `(#:tests? #f; FIXME: Dictionary for language 'en_US' could not be found #:phases @@ -163,6 +165,8 @@ Ispell-compatible.") "/lib/libenchant-2.so\"")))))))) (inputs (list enchant)) + (native-inputs + (list python-setuptools python-wheel)) (home-page "https://github.com/pyenchant/pyenchant") (synopsis "Spellchecking library for Python") (description "PyEnchant is a spellchecking library for Python, based on the diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 20c5356765..0ef4c206c9 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 @@ -698,7 +777,7 @@ blockchain.") ;; the system's dynamically linked library. (package (name "monero") - (version "0.18.4.0") + (version "0.18.4.1") (source (origin (method git-fetch) @@ -716,7 +795,7 @@ blockchain.") delete-file-recursively '("external/miniupnp" "external/rapidjson")))) (sha256 - (base32 "0dfb9yxpfijdjgl67dgmhgn4xd42rnwfn4nnp0dfakq34imv2cjh")))) + (base32 "0k4z01l8dvnazh650yarwn6ja1wrxcqq4g7302xw0dhw7h1qvy1j")))) (build-system cmake-build-system) (native-inputs (list doxygen @@ -803,7 +882,7 @@ the Monero command line client and daemon.") (define-public monero-gui (package (name "monero-gui") - (version "0.18.4.0") + (version "0.18.4.1") (source (origin (method git-fetch) @@ -819,7 +898,7 @@ the Monero command line client and daemon.") ;; See the 'extract-monero-sources' phase. (delete-file-recursively "monero"))) (sha256 - (base32 "0gzq3cq54mr85f86yibsska19lri2w2ak98pb4z237dffgjqkaj5")))) + (base32 "1r2cfzh4lc94mb7fqa8f41613msnsyy5kz6mzcr4npjpm8bxqs8k")))) (build-system qt-build-system) (native-inputs `(,@(package-native-inputs monero) @@ -2516,7 +2595,7 @@ mining.") (define-public p2pool (package (name "p2pool") - (version "4.6") + (version "4.9") (source (origin (method git-fetch) @@ -2525,7 +2604,7 @@ mining.") (commit (string-append "v" version)) (recursive? #t))) (file-name (git-file-name name version)) - (sha256 (base32 "1qal9ilpyxds6nk2fgzfypk3y1qxh06f6lly3alawz385gf68fkv")) + (sha256 (base32 "0898a823mi38z6dwdm6crb2l98rv79sznmqwa0ss96xggvk12nlw")) (modules '((guix build utils))) (snippet #~(for-each delete-file-recursively @@ -2536,6 +2615,8 @@ mining.") "external/src/rapidjson" "external/src/robin-hood-hashing"))))) (build-system cmake-build-system) + (native-inputs + (list xz)) (inputs (list cppzmq curl libuv rapidjson robin-hood-hashing zeromq)) (arguments @@ -2550,8 +2631,9 @@ mining.") (chdir "tests") (invoke "cmake" "-DWITH_LTO=OFF" "../../source/tests") (invoke "make" "-j" (number->string (parallel-job-count))) - (invoke "gzip" "-d" "sidechain_dump.dat.gz") - (invoke "gzip" "-d" "sidechain_dump_mini.dat.gz") + (invoke "xz" "-d" "sidechain_dump.dat.xz") + (invoke "xz" "-d" "sidechain_dump_mini.dat.xz") + (invoke "xz" "-d" "sidechain_dump_nano.dat.xz") (invoke "./p2pool_tests") (chdir "..")))) (replace 'install diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 4d60ff60d1..9ef6df8d80 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1490,6 +1490,10 @@ It offers the following features: (base32 "08ddhywdy2qg17m592ng3yr0p1ih96irg8wg729g75hsxxq9ipks")))) (build-system gnu-build-system) + (arguments + `(#:configure-flags + ;; Disable added pointer type checks (quesoglc no longer maintained) + '("CFLAGS=-g -O2 -Wno-error=incompatible-pointer-types"))) (native-inputs (list pkg-config)) (inputs (list fontconfig freeglut fribidi glew)) (home-page "https://quesoglc.sourceforge.net") diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index e0231f88fe..aa1454ca96 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -675,11 +675,32 @@ Go. It also includes runtime support libraries for these languages.") (define %gcc-13-x86_64-micro-architectures (append %gcc-12-x86_64-micro-architectures - '("graniterapids"))) ;Intel + '("graniterapids" ;Intel + "lujiazui"))) + +(define %gcc-14-aarch64-micro-architectures + (append %gcc-13-aarch64-micro-architectures + '("armv9.4-a"))) + +(define %gcc-14-ppc64le-micro-architectures + (append %gcc-10-ppc64le-micro-architectures + '("power11"))) (define %gcc-14-x86_64-micro-architectures (append %gcc-13-x86_64-micro-architectures - '("znver5"))) ;AMD + '("znver5" ;AMD + "yongfeng"))) + +(define %gcc-15-aarch64-micro-architectures + (append %gcc-14-aarch64-micro-architectures + '("armv9.5-a"))) + +(define %gcc-15-x86_64-micro-architectures + (append + (fold delete %gcc-14-x86_64-micro-architectures + '("knm" "knl")) + '("diamondrapids" ;Intel + "shijidadao"))) (define-public gcc-7 (package @@ -887,10 +908,10 @@ It also includes runtime support libraries for these languages.") (("\\.\\./lib64") "../lib")))))))) (properties `((compiler-cpu-architectures - ("aarch64" ,@%gcc-13-aarch64-micro-architectures) + ("aarch64" ,@%gcc-14-aarch64-micro-architectures) ("armhf" ,@%gcc-13-armhf-micro-architectures) - ("i686" ,@%gcc-13-x86_64-micro-architectures) - ("powerpc64le" ,@%gcc-10-ppc64le-micro-architectures) + ("i686" ,@%gcc-14-x86_64-micro-architectures) + ("powerpc64le" ,@%gcc-14-ppc64le-micro-architectures) ("x86_64" ,@%gcc-14-x86_64-micro-architectures)) ,@(package-properties gcc-11))))) @@ -932,11 +953,11 @@ It also includes runtime support libraries for these languages.") (string-append lib "/include")))))))))))) (properties `((compiler-cpu-architectures - ("aarch64" ,@%gcc-13-aarch64-micro-architectures) + ("aarch64" ,@%gcc-15-aarch64-micro-architectures) ("armhf" ,@%gcc-13-armhf-micro-architectures) - ("i686" ,@%gcc-13-x86_64-micro-architectures) - ("powerpc64le" ,@%gcc-10-ppc64le-micro-architectures) - ("x86_64" ,@%gcc-14-x86_64-micro-architectures)) + ("i686" ,@%gcc-15-x86_64-micro-architectures) + ("powerpc64le" ,@%gcc-14-ppc64le-micro-architectures) + ("x86_64" ,@%gcc-15-x86_64-micro-architectures)) ,@(package-properties gcc-11))))) diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index 35700b2382..ecb324d738 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -554,7 +554,7 @@ topology functions.") gtk libadwaita libgee - libgweather4 + libgweather librsvg libsecret libshumate @@ -2079,7 +2079,7 @@ based on the Osmium library.") (define-public osm2pgsql (package (name "osm2pgsql") - (version "1.11.0") + (version "2.1.1") (source (origin (method git-fetch) (uri (git-reference @@ -2088,7 +2088,7 @@ based on the Osmium library.") (file-name (git-file-name name version)) (sha256 (base32 - "135vqahlcrhwa3b9hfgbiqkzbbsjd4i79fp41cd0rp4zarcpi47p")) + "1plaayi3mfwpsz48abjqnw4ymvqrwzlwhb44dwfpaz02qqqhvcg6")) (modules '((guix build utils))) (snippet ;; Remove bundled libraries. @@ -2105,7 +2105,7 @@ based on the Osmium library.") bzip2 cli11 expat - fmt-8 + fmt-11 libosmium luajit nlohmann-json @@ -2860,14 +2860,14 @@ The API also works with MaxMind’s free GeoLite2 databases.") (define-public routino (package (name "routino") - (version "3.4.1") + (version "3.4.3") (source (origin (method url-fetch) (uri (string-append "https://www.routino.org/download/routino-" version ".tgz")) (sha256 (base32 - "0aw5idqz7nv458llgwp5wcgikf34xcblpq46mq7msxfib0m8vahb")))) + "0m0yq665sdsiikbl0win564d841wb87prsfni8wajz6969yhdfjf")))) (build-system gnu-build-system) (native-inputs (list perl)) (inputs (list bzip2 xz zlib)) @@ -2925,7 +2925,7 @@ data.") (define-public qmapshack (package (name "qmapshack") - (version "1.17.1") + (version "1.18.0") (source (origin (method git-fetch) @@ -2934,36 +2934,34 @@ data.") (commit (string-append "V_" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1ckadklk67dp1pvkacfkr8379g2pwk73q85jfzm8viclcqmfvb62")))) + (base32 "04r2m7qwzqwgnwhi15999n0w7fmddjcmdv8mxm8c0flrjw8zmkpq")))) (build-system qt-build-system) (native-inputs - (list pkg-config qttools-5)) + (list pkg-config)) (inputs - (list curl - gdal + (list gdal libjpeg-turbo proj - qtbase-5 - qtdeclarative-5 - qtlocation-5 - qtwebchannel-5 - qtwebengine-5 - quazip-5 - routino - sqlite ; See wrap phase - zlib)) + qt5compat + qtpositioning + qttools + qtwebengine + quazip + routino)) (arguments - `(#:tests? #f + (list + #:qtbase qtbase + #:tests? #f ;no tests #:phases - (modify-phases %standard-phases + #~(modify-phases %standard-phases (add-after 'unpack 'fix-cmake-modules - (lambda* (#:key inputs #:allow-other-keys) + (lambda _ (substitute* "CMakeLists.txt" - (("find_package\\(Qt5PrintSupport REQUIRED\\)" all) - (string-append all "\nfind_package(Qt5Positioning REQUIRED)"))) + (("find_package\\(Qt6PrintSupport REQUIRED\\)" all) + (string-append all "\nfind_package(Qt6Positioning REQUIRED)"))) (substitute* "cmake/Modules/FindROUTINO.cmake" (("/usr/local") - (assoc-ref inputs "routino")))))))) + #$(this-package-input "routino")))))))) (synopsis "GPS mapping application") (description "QMapShack can be used to plan your next outdoor trip or to visualize and diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 506578fb11..9e3a641f07 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1632,7 +1632,7 @@ extraction, and lookup for applications on the desktop.") json-glib mit-krb5 libadwaita - libgweather4 + libgweather libnma libpwquality libsecret @@ -6135,69 +6135,6 @@ service via the system message bus.") services for numerous locations.") (license license:gpl2+))) -;; libgweather no longer follows the GNOME version, and recommends changing -;; the package name in distributions to avoid accidental downgrades. See -;; <https://discourse.gnome.org/t/changes-in-libgweather-for-gnome-42/7770/2>. -;; TODO: how to prevent the updater from picking version 40? -(define-public libgweather4 - (package - (inherit libgweather) - (name "libgweather4") - (version "4.2.0") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/libgweather/" - (version-major+minor version) "/" - "libgweather-" version ".tar.xz")) - (sha256 - (base32 - "00v2rb9dizfvcsq3bgrz68bsi1k04ln5fqhx1q06m5yql0nq32mg")))) - (arguments - (list - #:configure-flags - #~(list (string-append "-Dzoneinfo_dir=" - (search-input-directory %build-inputs - "share/zoneinfo"))) - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'set-HOME - (lambda _ - (setenv "HOME" "/tmp"))) - (add-after 'unpack 'disable-problematic-tests - (lambda _ - (substitute* "libgweather/tests/meson.build" - ;; The timezones test fails for unknown reasons (see: - ;; https://gitlab.gnome.org/GNOME/libgweather/-/issues/188). - ((".*'name': 'timezones'.*") "") - ;; The 'metar' test is known to fail, fixed but not yet released - ;; upstream (see: - ;; https://gitlab.gnome.org/GNOME/libgweather/-/issues/168). - ((".*'name': 'metar'.*") "")))) - (delete 'check) ;move after the install phase - (add-after 'install 'check - (assoc-ref %standard-phases 'check))))) - (native-inputs - (list gettext-minimal - gi-docgen - `(,glib "bin") ;for glib-mkenums - gobject-introspection - (libc-utf8-locales-for-target) - gsettings-desktop-schemas - pkg-config - python - python-pygobject - vala)) - ;; TODO: It would be good to make the package respect TZDIR instead - ;; of using a "hard coded" version of tzdata. - (inputs (list tzdata)) - (propagated-inputs - ;; gweather4.pc refers to all of these. - (list geocode-glib - glib - json-glib - libsoup - libxml2)))) - (define-public gnome-settings-daemon (package (name "gnome-settings-daemon") @@ -6262,7 +6199,7 @@ services for numerous locations.") lcms libcanberra libgudev - libgweather4 + libgweather libnotify (librsvg-for-system) libwacom @@ -8495,7 +8432,7 @@ Microsoft Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.") gnome-online-accounts json-glib libcanberra - libgweather4 + libgweather libphonenumber mit-krb5 openldap @@ -9717,7 +9654,7 @@ printf '~a is deprecated. Use the \"gnome-extensions\" CLI or \ ibus libcanberra libcroco - libgweather4 + libgweather libnma libsoup mesa-headers @@ -10457,7 +10394,7 @@ associations for GNOME.") gsettings-desktop-schemas gtk libadwaita - libgweather4)) + libgweather)) (synopsis "Weather monitoring for GNOME desktop") (description "GNOME Weather is a small application that allows you to monitor the current weather conditions for your city, or anywhere in the @@ -10890,7 +10827,7 @@ Microsoft SkyDrive and Hotmail, using their REST protocols.") gsound gtk libadwaita - libgweather4)) + libgweather)) (home-page "https://wiki.gnome.org/Apps/Clocks") (synopsis "GNOME's clock application") (description @@ -10940,7 +10877,7 @@ desktop. It supports world clock, stop watch, alarms, and count down timer.") gsettings-desktop-schemas libadwaita libdazzle - libgweather4)) + libgweather)) (home-page "https://wiki.gnome.org/Apps/Calendar") (synopsis "GNOME's calendar application") (description @@ -12376,7 +12313,7 @@ generic enough to work for everyone.") gspell highlight libcanberra - libgweather4 + libgweather libnotify libsoup nss diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 486af36202..eae66e64b6 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2014, 2018 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014, 2015, 2016, 2020 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> -;;; Copyright © 2015-2021, 2024 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015-2021, 2024, 2025 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015, 2016, 2017, 2019, 2025 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Christine Lemmer-Webber <cwebber@dustycloud.org> ;;; Copyright © 2016, 2017 Nikita <nikita@n0.is> @@ -207,6 +207,18 @@ Daemon and possibly more in the future.") (add-before 'configure 'setenv (lambda _ (setenv "GCRYPT_NO_BENCHMARKS" "t"))))) + '()) + ,@(if (target-arm32?) + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'apply-upstream-patch + (lambda _ + (let ((patch-file + #$(local-file + (search-patch + "libgcrypt-arm32-register-pressure.patch")))) + (invoke "patch" "--force" "-p1" "-i" patch-file)))))) '()))) (outputs '("out" "debug")) (home-page "https://gnupg.org/") diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 7e5ebef0e9..13de000920 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014-2025 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> -;;; Copyright © 2016-2019, 2021, 2024 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016-2019, 2021, 2024, 2025 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2017, 2023 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017, 2018 Nikita <nikita@n0.is> @@ -931,8 +931,8 @@ variable defined below. It requires guile-json to be installed." rust `(,rust "cargo") rust-cbindgen - llvm-17 - clang-17 + llvm-20 + clang-20 perl node-lts python-wrapper diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 3f79d9862e..eb04e2eb86 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016-2024 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016-2025 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com> ;;; Copyright © 2016 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2016, 2019, 2021 Ludovic Courtès <ludo@gnu.org> @@ -1012,6 +1012,17 @@ in the style of communicating sequential processes (@dfn{CSP}).") ;; as the bootstrap toolchain. (alist-replace "go" (list go-1.21) (package-native-inputs go-1.21))))) +(define %go-1.23-arm64-micro-architectures + ;; https://go.dev/wiki/MinimumRequirements#arm64 + ;; Allowed values are v8.{0-9} and v9.{0-5}. This may be followed by an option + ;; specifying extensions implemented by target hardware. Valid options are + ;; ,lse and ,crypto. + ;; Match Guix's specifications and then rewrite in (guix transformations). + (append (map (lambda (suffix) (string-append "armv8" suffix "-a")) + '("" ".1" ".2" ".3" ".4" ".5" ".6" ".7" ".8" ".9")) + (map (lambda (suffix) (string-append "armv9" suffix "-a")) + '("" ".1" ".2" ".3" ".4" ".5")))) + (define-public go-1.23 (package (inherit go-1.22) @@ -1025,7 +1036,13 @@ in the style of communicating sequential processes (@dfn{CSP}).") (commit (string-append "go" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "06c5cjjqk95p16cb6p8fgqqsddc1a1kj3w2m0na5v91gvwxbd0pq")))))) + (base32 "06c5cjjqk95p16cb6p8fgqqsddc1a1kj3w2m0na5v91gvwxbd0pq")))) + (properties + `((compiler-cpu-architectures + ("aarch64" ,@%go-1.23-arm64-micro-architectures) + ("armhf" ,@%go-1.17-arm-micro-architectures) + ("powerpc64le" ,@%go-1.17-powerpc64le-micro-architectures) + ("x86_64" ,@%go-1.18-x86_64-micro-architectures)))))) (define-public go-1.24 (package diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 7ace87bc11..e707e44fc8 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -4884,36 +4884,6 @@ return accumulators. It is implemented by wrapping the sample implementation in a thin Guile compatibility layer.") (license license:gpl3+)))) -(define-public guile-srfi-159 - (let ((commit "1bd98abda2ae4ef8f36761a167903e55c6bda7bb") - (revision "0")) - (package - (name "guile-srfi-159") - (version (git-version "0" revision commit)) - (home-page "https://bitbucket.org/bjoli/guile-srfi-159") - (source (origin - (method hg-fetch) - (uri (hg-reference (changeset commit) - (url home-page))) - (sha256 - (base32 - "1zw6cmcy7xdbfiz3nz9arqnn7l2daidaps6ixkcrc9b6k51fdv3p")) - (file-name (git-file-name name version)))) - (build-system guile-build-system) - (arguments - ;; The *-impl.scm files are actually included from module files; they - ;; should not be compiled separately, but they must be installed. - '(#:not-compiled-file-regexp "-impl\\.scm$")) - (inputs - (list guile-2.2)) - (synopsis "Formatting combinators for Guile") - (description - "The @code{(srfi-159)} module and its sub-modules implement the -formatting combinators specified by -@uref{https://srfi.schemers.org/srfi-159/srfi-159.html, SRFI-159}. These are -more expressive and flexible than the traditional @code{format} procedure.") - (license license:bsd-3)))) - (define-public guile-srfi-180 (let ((commit "9188bf9724c6d320ef804579d222e855b007b193") (revision "0")) @@ -6339,22 +6309,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 +6946,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 @@ -7618,25 +7585,22 @@ ftypes.") (define-public guile-goblins (package (name "guile-goblins") - (version "0.15.1") + (version "0.16.0") (source (origin (method url-fetch) (uri (string-append "https://files.spritely.institute/releases" - "/guile-goblins/guile-goblins-" - version ".tar.gz")) + "/guile-goblins/guile-goblins-" version ".tar.gz")) (sha256 - (base32 - "05qqryhhs9rci01j08nbchmif1h9889bwqqv830ywygl1bld50ys")))) + (base32 "0w3lxhj95vcp6w38z5ygpjf5lw8j523j2znkmg22p1jyqx7kl7c8")))) (build-system gnu-build-system) (arguments - (list #:make-flags - #~(list "GUILE_AUTO_COMPILE=0"))) - (native-inputs - (list pkg-config texinfo)) + (list + #:make-flags + #~(list "GUILE_AUTO_COMPILE=0"))) + (native-inputs (list pkg-config texinfo)) (inputs (list guile-3.0)) - (propagated-inputs - (list guile-fibers guile-gnutls guile-websocket)) + (propagated-inputs (list guile-fibers guile-gnutls guile-websocket)) (home-page "https://spritely.institute/goblins") (synopsis "Distributed programming environment for Guile") (description diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm index e626509067..5a1f654652 100644 --- a/gnu/packages/haskell-apps.scm +++ b/gnu/packages/haskell-apps.scm @@ -888,32 +888,20 @@ is programmed in Haskell.") (define-public scroll (package (name "scroll") - (version "1.20180421") + (version "1.20250228.2") (source (origin (method url-fetch) (uri (hackage-uri "scroll" version)) (sha256 (base32 - "0apzrvf99rskj4dbmn57jjxrsf19j436s8a09m950df5aws3a0wj")))) + "1p1741zqsxg017d08ym1clzqcdlai487wb6q12m1q7dr6i8c0gfj")))) (build-system haskell-build-system) - (properties '((upstream-name . "scroll"))) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'install 'touch-static-output - (lambda* (#:key outputs #:allow-other-keys) - ;; The Haskell build system adds a "static" output by - ;; default, and there is no way to override this until - ;; <https://issues.guix.gnu.org/41569> is fixed. Without - ;; this phase, the daemon complains because we do not - ;; create the "static" output. - (with-output-to-file (assoc-ref outputs "static") - (lambda () - (display "static output not used\n"))) - #t))))) + (properties '((upstream-name . "scroll") + (updater-extra-inputs "ghc-base-compat"))) (inputs - (list ghc-case-insensitive + (list ghc-base-compat + ghc-case-insensitive ghc-data-default ghc-ifelse ghc-monad-loops diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index 6b8cce3cfc..fd7519b957 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015, 2019 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016, 2018, 2019, 2021 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017 Nikita <nikita@n0.is> -;;; Copyright © 2016, 2019, 2023 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2019, 2023, 2025 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017 David Craven <david@craven.ch> ;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org> @@ -7901,7 +7901,9 @@ between 2 and 3 times faster than the Mersenne Twister.") "lib/UI/NCurses/Enums.chs" "lib/UI/NCurses/Panel.chs") (("<ncursesw/") "<")) - #t))) + ;; KEY_EVENT doesn't appear in our ncurses.h + (substitute* "lib/UI/NCurses/Enums.chs" + ((".*KEY_EVENT.*") ""))))) #:cabal-revision ("1" "1wfdy716s5p1sqp2gsg43x8wch2dxg0vmbbndlb2h3d8c9jzxnca"))) diff --git a/gnu/packages/icu4c.scm b/gnu/packages/icu4c.scm index f473527449..0c0351dd9d 100644 --- a/gnu/packages/icu4c.scm +++ b/gnu/packages/icu4c.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2016, 2017, 2020, 2022 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017, 2020, 2022, 2025 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org> @@ -112,6 +112,16 @@ (substitute* "source/test/Makefile.in" ((" intltest ") " "))))) #~()) + #$@(if (target-arm32?) + #~((add-after 'unpack 'disable-failing-test + (lambda _ + ;; The caltest test started to fail to compile after + ;; the upgrade to gcc-14 but it's unclear which test is + ;; failing or how to disable just that one test. + ;; Error: co-processor offset out of range + (substitute* "source/test/Makefile.in" + ((" intltest ") " "))))) + #~()) (add-after 'install 'avoid-coreutils-reference ;; Don't keep a reference to the build tools. (lambda _ diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 54a9aa9ba0..a0f85d3a2d 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -3090,6 +3090,7 @@ libraries from the SIS division at ETH Zurich like jHDF5.") (apply invoke `("gcc" "-shared" "-O3" "-fPIC" "-Wl,--exclude-libs,ALL" + "-Wno-error=implicit-function-declaration" ,@(find-files "jhdf5" "\\.c$") ,@(find-files "hdf-java" "\\.c$") ,(string-append "-I" hdf5 "/include") diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 9668e078a8..79a72941ee 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -514,17 +514,17 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; The current "stable" kernels. That is, the most recently released major ;; versions that are still supported upstream. -(define-public linux-libre-6.15-version "6.15.6") +(define-public linux-libre-6.15-version "6.15.9") (define-public linux-libre-6.15-gnu-revision "gnu") (define deblob-scripts-6.15 (linux-libre-deblob-scripts linux-libre-6.15-version linux-libre-6.15-gnu-revision (base32 "05fr8s00ljj7v26z3gb1yrfna42i7zy36x6wrg74ai5hwwc7jfnd") - (base32 "05153ci3sk9gsq8vgk6phvzszldaj2psmyp10cjivm3gl6qvkbhk"))) + (base32 "1dgdrdgzjn2lqw2x7slpkka1x1mgvzy56jhvbfvypzfgs3lpiqhi"))) (define-public linux-libre-6.15-pristine-source (let ((version linux-libre-6.15-version) - (hash (base32 "1z5l0b59q56qj6s56cxzv43lhfx9z9sp4vfziw60fz97ak4qdd9b"))) + (hash (base32 "0zcma8ycdwwzd4yci9752acsv85wh27lahclh5x2yc4jakw3lkz9"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-6.15))) @@ -548,52 +548,52 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; Here are the support timelines: ;; <https://www.kernel.org/category/releases.html> -(define-public linux-libre-6.12-version "6.12.38") +(define-public linux-libre-6.12-version "6.12.41") (define-public linux-libre-6.12-gnu-revision "gnu") (define deblob-scripts-6.12 (linux-libre-deblob-scripts linux-libre-6.12-version linux-libre-6.12-gnu-revision (base32 "0y6i9ifax1a8bxih3rr9xzy3mj61ssgx9yfsy6fh94mni6wl51gp") - (base32 "1hc3fgc0wajlwbsjkvfcxvmjw4bcxfbrnbfbcasbczz7if4f0fvf"))) + (base32 "1yl447396g454116j8v17wsqg5i0gyb2rrxvaygw6xdkbwrrj28j"))) (define-public linux-libre-6.12-pristine-source (let ((version linux-libre-6.12-version) - (hash (base32 "1k0gcwavn5iws3z1as39227i2hnc62qnfddjfqy7k7ymhf6zldgh"))) + (hash (base32 "09qfpxyxi3z8cd64r2r5mxvh54a5sx8p5mk4d50y4ga2k6pa66bb"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-6.12))) -(define-public linux-libre-6.6-version "6.6.98") +(define-public linux-libre-6.6-version "6.6.101") (define-public linux-libre-6.6-gnu-revision "gnu") (define deblob-scripts-6.6 (linux-libre-deblob-scripts linux-libre-6.6-version linux-libre-6.6-gnu-revision (base32 "1fph0cf5vwkxcyz2cay4d70sqw1y02dx3shfclhp9y4nmkk169pq") - (base32 "1zzpk2hpv76lylip4j7jkn0jqcjj15h3jff22x22i73mwz2kiqgk"))) + (base32 "11i7pvm5n31rvp05msbm3ciclr84cz9c94f5r5aa6mmzhslwpbxk"))) (define-public linux-libre-6.6-pristine-source (let ((version linux-libre-6.6-version) - (hash (base32 "1raxyhvv0yay3k1izwcqdbq9322nflflfzcn9d1jrhmb032k8si9"))) + (hash (base32 "1h71zbqlsxcafrk218s0rip9rdrj0fzqvsl81ndqnlrnjy3g4kwc"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-6.6))) -(define-public linux-libre-6.1-version "6.1.145") +(define-public linux-libre-6.1-version "6.1.147") (define-public linux-libre-6.1-gnu-revision "gnu") (define deblob-scripts-6.1 (linux-libre-deblob-scripts linux-libre-6.1-version linux-libre-6.1-gnu-revision (base32 "00yh14z7sr9pkakkkpdyp8fj41d56a306xsf5yb2lzm0sgl6lvza") - (base32 "1hzjr44hy8px4n3x5my2syhd60chkfy79ajgzvlz04pc5yf6ihpi"))) + (base32 "0f3jgbfd2j7sz7h1hb30s1r9147g1cbb3ia09k9834fvbiz1ihaa"))) (define-public linux-libre-6.1-pristine-source (let ((version linux-libre-6.1-version) - (hash (base32 "0qrkcrqb0migsrq6xl1idyz8n6vjbdk74z4sc9na97b6n5vp0r9i"))) + (hash (base32 "1xv6whvxjcdmvv0cil7nnac4hs2hxjnc98agx08xiqs179k2b3r1"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-6.1))) -(define-public linux-libre-5.15-version "5.15.188") +(define-public linux-libre-5.15-version "5.15.189") (define-public linux-libre-5.15-gnu-revision "gnu") (define deblob-scripts-5.15 (linux-libre-deblob-scripts @@ -603,27 +603,27 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0rg65s6kd9gxxa3wl6180pr39rb6zbcicwjik4kygs2ns0247y56"))) (define-public linux-libre-5.15-pristine-source (let ((version linux-libre-5.15-version) - (hash (base32 "1nfcrdwa2mgih57ch9kh8gc6jl950a7vpqgr56xk1b02303km5f4"))) + (hash (base32 "1hshd26ahn6dbw6jnqi0v5afpk672w7p09mk7iri93i7hxdh5l73"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.15))) -(define-public linux-libre-5.10-version "5.10.239") +(define-public linux-libre-5.10-version "5.10.240") (define-public linux-libre-5.10-gnu-revision "gnu1") (define deblob-scripts-5.10 (linux-libre-deblob-scripts linux-libre-5.10-version linux-libre-5.10-gnu-revision - (base32 "1lg0sxfjn0hpcdfyqy2r5kchnjfyyx2xraxhmjhwwkpiwl9ph501") - (base32 "11liynz5vayms646gj0rjj8fmrqhv203mwsqs3sx9p8y84v50d4p"))) + (base32 "1wn9k4lbxcc9rzl1rqidlnb472wyayillrh57gyxnghi7j9ghqna") + (base32 "0r1whrfhhhjyvppiidhihcvyzcab6dva6g9a4div8jkxm62s2cq3"))) (define-public linux-libre-5.10-pristine-source (let ((version linux-libre-5.10-version) - (hash (base32 "1nzhl1y6avfl77fyqwjwy3qc6679gp92k0d3aarscrdydcml5yid"))) + (hash (base32 "04sdcf4aqsqchii38anzmk9f9x65wv8q1x3m9dandmi6fabw724d"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.10))) -(define-public linux-libre-5.4-version "5.4.295") +(define-public linux-libre-5.4-version "5.4.296") (define-public linux-libre-5.4-gnu-revision "gnu1") (define deblob-scripts-5.4 (linux-libre-deblob-scripts @@ -633,7 +633,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0l7pwhgw9laxfypcpqlz411x3hybcw2269abh3lpcw96bgv5m1k2"))) (define-public linux-libre-5.4-pristine-source (let ((version linux-libre-5.4-version) - (hash (base32 "1adn0pbk8y1zp1yrz83ch6h4wypm2qvbnx4xig3sls2nfgvmi0f4"))) + (hash (base32 "0fm73yqzbzclh2achcj8arpg428d412k2wgmlfmyy6xzb1762qrx"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.4))) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index 83e408b972..0d4b6f21e5 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -8110,8 +8110,10 @@ of http://code.google.com/p/mimeparse/, with a Common Lisp flavor.") (sbcl-package->clasp-package sbcl-cl-mimeparse)) (define-public sbcl-cl-mixed - (let ((commit "4aaff134d3902d93a2a8605c10de4bcfc62d7afa") - (revision "0")) + ;; There are no releases, but this commit is entitled + ;; "Bump to libmixed-2.4.0". + (let ((commit "3da661ae199be94f822e3f9ef6bf03bc6456652b") + (revision "1")) (package (name "sbcl-cl-mixed") (version (git-version "2.1.0" revision commit)) @@ -8123,7 +8125,7 @@ of http://code.google.com/p/mimeparse/, with a Common Lisp flavor.") (commit commit))) (file-name (git-file-name "cl-mixed" version)) (sha256 - (base32 "1mrj95lxb1gbxxm89x8gy1ifw2ic1p5wwpapkxcd2jr8abw7zny0")) + (base32 "0i7bb2b3a9i4kgp7dzzs5211xj56zzcpwkjlfxpslfp7iz0685y0")) (modules '((guix build utils))) (snippet ;; Delete bundled libraries. @@ -32970,7 +32972,7 @@ has a small codebase that's easy to understand and use.") (define-public sbcl-wayflan (package (name "sbcl-wayflan") - (version "0.0.4") + (version "0.1.0") (source (origin (method git-fetch) @@ -32979,7 +32981,7 @@ has a small codebase that's easy to understand and use.") (commit (string-append "v" version)))) (file-name (git-file-name "cl-wayflan" version)) (sha256 - (base32 "0y6hzskp1vgaigzj5b3i695sc6dn5mk7nlxs21nh5ybzmf4chhyy")))) + (base32 "11n8w4fh996gspgcsfhbrcmz7az4yrx9a15jh6n72kswgjzq0s5j")))) (build-system asdf-build-system/sbcl) (native-inputs (list sbcl-parachute)) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index bf2ffd0f9b..3a7771a2e4 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -1703,7 +1703,7 @@ the HTML documentation of TXR.") (define-public txr (package (name "txr") - (version "300") + (version "302") (source (origin (method git-fetch) @@ -1712,7 +1712,7 @@ the HTML documentation of TXR.") (commit (string-append "txr-" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1cxdsk31wj8874nijwbcx7c3zsspsclr722jbaivisrm2wx5hbqn")))) + (base32 "01h09lbpgyzv64m8ycpr2vavdpdxhxdgvmc3p0jqrkvnrzhkdlhj")))) (build-system gnu-build-system) (arguments (list #:configure-flags diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index 061cb934a4..79b5cc13ef 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -882,8 +882,11 @@ without dependencies, with "15xlax3z31lsn62vlg94hkm75nm40q4679amnfg13jm8m2bnhy5m")))) (build-system gnu-build-system) (arguments - `(#:configure-flags (list "--enable-blast" - "CFLAGS=-fcommon"))) + (list + #:configure-flags + #~(list "--enable-blast" + (string-append "CFLAGS=-fcommon -g -O2" + " -Wno-error=implicit-function-declaration")))) (inputs (list perl)) (home-page "https://micans.org/mcl/") @@ -2289,50 +2292,6 @@ number of threads used in the threadpool-backed of common native libraries used for scientific computing and data science (e.g. BLAS and OpenMP).") (license license:bsd-3))) -(define-public python-imbalanced-learn - (package - (name "python-imbalanced-learn") - (version "0.12.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "imbalanced-learn" version)) - (sha256 - (base32 "1hgncab4g4xry7yl6wwsj1wmfnxbsajx6qmycvr28wdhvk75c358")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags '(list "-k" - ;; Although we cannot satify the Tensorflow and Keras requirements - ;; (python-keras >= 2.4.3 and tensorflow >= 2.4.3), all tests - ;; besides these pass. - "not balanced_batch_generator and not BalancedBatchGenerator") - #:phases '(modify-phases %standard-phases - (add-after 'unpack 'unbreak-tests - (lambda _ - ;; Some tests require a home directory - (setenv "HOME" - (getcwd))))))) - (propagated-inputs (list python-joblib python-numpy python-scikit-learn - python-scipy python-threadpoolctl)) - (native-inputs (list python-black - python-flake8 - python-keras - python-mypy - python-pandas - python-pytest - python-pytest-cov - python-setuptools - python-wheel - tensorflow)) - (home-page "https://github.com/scikit-learn-contrib/imbalanced-learn") - (synopsis "Toolbox for imbalanced dataset in machine learning") - (description - "This is a Python package offering a number of re-sampling -techniques commonly used in datasets showing strong between-class imbalance. -It is compatible with @code{scikit-learn}.") - (license license:expat))) - (define-public python-hdbscan (package (name "python-hdbscan") @@ -4148,213 +4107,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 python-keras-preprocessing - (package - (name "python-keras-preprocessing") - (version "1.1.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "Keras_Preprocessing" version)) - (sha256 - (base32 - "1r98nm4k1svsqjyaqkfk23i31bl1kcfcyp7094yyj3c43phfp3as")))) - (build-system python-build-system) - (propagated-inputs - (list python-numpy python-six)) - (native-inputs - (list python-pandas - python-pillow - python-pytest - python-pytest-cov - python-pytest-xdist - tensorflow)) - (home-page "https://github.com/keras-team/keras-preprocessing/") - (synopsis "Data preprocessing and augmentation for deep learning models") - (description - "Keras Preprocessing is the data preprocessing and data augmentation -module of the Keras deep learning library. It provides utilities for working -with image data, text data, and sequence data.") - (license license:expat))) - -(define-public python-keras - (package - (name "python-keras") - (version "2.3.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "Keras" version)) - (sha256 - (base32 - "1k68xd8n2y9ldijggjc8nn4d6d1axw0p98gfb0fmm8h641vl679j")) - (modules '((guix build utils))) - (snippet - '(substitute* '("keras/callbacks/callbacks.py" - "keras/engine/training_utils.py" - "keras/engine/training.py" - "keras/engine/training_generator.py" - "keras/utils/generic_utils.py") - (("from collections import Iterable") - "from collections.abc import Iterable") - (("collections.Container") - "collections.abc.Container") - (("collections.Mapping") - "collections.abc.Mapping") - (("collections.Sequence") - "collections.abc.Sequence"))))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'tf-compatibility - (lambda _ - (substitute* "keras/backend/tensorflow_backend.py" - (("^get_graph = .*") - "get_graph = tf.get_default_graph") - (("tf.compat.v1.nn.fused_batch_norm") - "tf.nn.fused_batch_norm") - ;; categorical_crossentropy does not support axis - (("from_logits=from_logits, axis=axis") - "from_logits=from_logits") - ;; dropout accepts a level number, not a named rate argument. - (("dropout\\(x, rate=level,") - "dropout(x, level,") - (("return x.shape.rank") - "return len(x.shape)")))) - (add-after 'unpack 'hdf5-compatibility - (lambda _ - ;; The truth value of an array with more than one element is ambiguous. - (substitute* "tests/keras/utils/io_utils_test.py" - ((" *assert .* == \\[b'(asd|efg).*") "")) - (substitute* "tests/test_model_saving.py" - (("h5py.File\\('does not matter',") - "h5py.File('does not matter', 'w',")) - (substitute* "keras/utils/io_utils.py" - (("h5py.File\\('in-memory-h5py', driver='core', backing_store=False\\)") - "h5py.File('in-memory-h5py', 'w', driver='core', backing_store=False)") - (("h5file.fid.get_file_image") - "h5file.id.get_file_image")) - (substitute* "keras/engine/saving.py" - (("\\.decode\\('utf-?8'\\)") "")))) - (add-after 'unpack 'delete-unavailable-backends - (lambda _ - (delete-file "keras/backend/theano_backend.py") - (delete-file "keras/backend/cntk_backend.py"))) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - ;; These tests attempt to download data files from the internet. - (delete-file "tests/integration_tests/test_datasets.py") - (delete-file "tests/integration_tests/imagenet_utils_test.py") - (invoke "python" "-m" "pytest" "tests" - "-p" "no:pep8" - ;; FIXME: python-build-system lacks PARALLEL-TESTS? - "-n" (number->string (parallel-job-count)) - ;; This one uses the theano backend that we don't have. - "--ignore=tests/test_api.py" - "--ignore=tests/keras/backend/backend_test.py" - ;; Our Tensorflow version does not have the coder ops library. - "--ignore=tests/keras/callbacks/callbacks_test.py" - ;; ...nor do we have tensorboard - "--ignore=tests/keras/callbacks/tensorboard_test.py" - "-k" - (string-append - ;; See https://github.com/keras-team/keras/pull/7033 - "not test_TimeDistributed_learning_phase " - ;; XXX fails because no closure is provided - "and not test_func_dump_and_load_backwards_compat " - ;; XXX real bug? These are all tests that fail due to - ;; shape mismatch, e.g. "got logits shape [12,3] and - ;; labels shape [9]" - "and not test_model_with_crossentropy_losses_channels_first " - "and not test_masking_correctness_output_size_not_equal_to_first_state_size " - "and not test_convolutional_recurrent " - "and not test_axis " - - ;; XXX fails because of 3/15 values have unexpected differences. - "and not test_masking_correctness_output_not_equal_to_first_state " - ;; XXX fails because of a difference of about 0.1 - "and not test_sample_weighted " - ;; XXX fails because of a difference of about 0.3 - "and not test_scalar_weighted " - ;; XXX fails because of a difference of about 0.2 - "and not test_unweighted " - - ;; XXX I cannot reproduce this in an interactive - ;; Python session, because l2_norm works just fine. - "and not test_weighted " ;TestCosineSimilarity - "and not test_config " ;TestCosineSimilarity - - ;; The following test fails only in the build - ;; container; skip it. - "and not test_selu " - ;; The following test was found flaky and removed in - ;; recent versions. - "and not test_stateful_metrics")))))))) - (propagated-inputs - (list python-h5py - python-keras-applications - python-keras-preprocessing - python-numpy - python-pydot - python-pyyaml - python-scipy - python-six - tensorflow - graphviz)) - (native-inputs - (list python-flaky - python-markdown - python-pandas - python-pytest - python-pytest-cov - python-pytest-timeout - python-pytest-xdist - python-pyux - python-sphinx - python-requests)) - (home-page "https://keras.io/") - (synopsis "High-level deep learning framework") - (description "Keras is a high-level neural networks API, written in Python -and capable of running on top of TensorFlow. It was developed with a focus on -enabling fast experimentation. Use Keras if you need a deep learning library -that: -@itemize -@item Allows for easy and fast prototyping (through user friendliness, - modularity, and extensibility). -@item Supports both convolutional networks and recurrent networks, as well as - combinations of the two. -@item Runs seamlessly on CPU and GPU. -@end itemize\n") - (license license:expat))) - (define-public gloo (let ((version "0.0.0") ; no proper version tag (commit "81925d1c674c34f0dc34dd9a0f2151c1b6f701eb") @@ -6626,20 +6378,25 @@ and Numpy.") (package (name "python-pyro-api") (version "0.1.2") - (source (origin - (method url-fetch) - (uri (pypi-uri "pyro-api" version)) - (sha256 - (base32 - "086r2h6x9i5d9ayl1x65lx6p84rlydzsn8xingxc588ab3ch1fd1")))) - (build-system python-build-system) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pyro-ppl/pyro-api") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "17x7niagx43cajqq67dxmssr7q94db6axyg154y7vqdxzp25hf7g")))) + (build-system pyproject-build-system) (arguments '(#:tests? #false)) ;requires pyro (native-inputs (list python-flake8 python-ipython python-pytest + python-setuptools python-sphinx - python-sphinx-rtd-theme)) + python-sphinx-rtd-theme + python-wheel)) (home-page "https://github.com/pyro-ppl/pyro-api") (synopsis "Generic API for dispatch to Pyro backends") (description "This package provides a generic API for dispatch to Pyro backends.") @@ -6843,7 +6600,7 @@ linear algebra routines needed for structured matrices (or operators).") (lambda (x) (install-file x src)) (find-files "." "\\.h$")))))))) (inputs (list kaldi openfst openblas)) - (home-page "https://alphacephei.com/vosk") + (home-page "https://alphacephei.com/vosk/") (synopsis "Speech recognition toolkit based on @code{kaldi}") (description "This package provides a speech recognition toolkit based on @code{kaldi}. It supports more than 20 languages and dialects - English, @@ -6864,10 +6621,12 @@ simple speech recognition.") (package (inherit vosk-api) (name "python-vosk") - (build-system python-build-system) + (build-system pyproject-build-system) (propagated-inputs (list python-cffi python-requests python-tqdm python-srt python-websockets)) (inputs (list vosk-api)) + (native-inputs + (list python-setuptools python-wheel)) (arguments (list #:tests? #f ;; TODO There are tests but not run through Makefile. diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index dad9d4c4d5..7974a2f0b7 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -11399,7 +11399,7 @@ Mathics3.") (setenv "PYTHONPATH" (getcwd)) (setenv "DJANGO_SETTINGS_MODULE" "mathics_django.settings") (invoke "django-admin" "test")))))) - (propagated-inputs (list python-django-4.2 + (propagated-inputs (list python-django python-mathics-scanner python-mathics-core python-networkx diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index df35fc8229..0eb23b2b84 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2017 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> -;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> +;;; Copyright © 2015, 2025 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2021, 2022, 2024, 2025 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2018-2021, 2023 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Nikita <nikita@n0.is> @@ -400,20 +400,23 @@ conferencing.") (define-public qxmpp (package (name "qxmpp") - (version "1.4.0") + ;; kaidan requires a precise version + (version "1.10.3") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/qxmpp-project/qxmpp") + (url "https://invent.kde.org/libraries/qxmpp") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1knpq1jkwk0lxdwczbmzf7qrjvlxba9yr40nbq9s5nqkcx6q1c3i")))) - (build-system cmake-build-system) + (base32 "0qinrbr63b1baqv1a7cph8bma6kj1ib8s8ywq6d9497lc1yl2kgi")))) + (build-system qt-build-system) (arguments - `(#:configure-flags (list "-DBUILD_EXAMPLES=false" - "-DWITH_GSTREAMER=true") + `(#:qtbase ,qtbase + #:configure-flags (list "-DBUILD_EXAMPLES=false" + "-DWITH_GSTREAMER=true" + "-DBUILD_OMEMO=ON") ;needed by kaidan #:test-exclude (string-join ;; These tests use the network. (list "tst_qxmppiceconnection" @@ -423,8 +426,12 @@ conferencing.") (native-inputs (list pkg-config)) (inputs - (list gstreamer qtbase-5)) - (home-page "https://github.com/qxmpp-project/qxmpp") + (list + gstreamer + libomemo-c + qca-qt6 + qt5compat)) + (home-page "https://invent.kde.org/libraries/qxmpp") (synopsis "XMPP client and server library") (description "QXmpp is a XMPP client and server library written in C++ and uses the Qt @@ -1473,7 +1480,7 @@ default.") (define-public kaidan (package (name "kaidan") - (version "0.9.0") + (version "0.12.2") (source (origin (method url-fetch) (uri (string-append "mirror://kde/unstable/kaidan/" version @@ -1483,28 +1490,38 @@ default.") #~(begin (delete-file-recursively "3rdparty"))) (sha256 - (base32 "1waqv0fdkhvp3cqy2a2g6i2wc9s0zbvgzknymrwxy99mnx9ymw9g")))) + (base32 "0q8py100nmvyhm8pfnvpxmghbg445x2vgpw3c519bcrr4w7y6yl0")))) (build-system qt-build-system) (arguments - (list #:configure-flags #~(list "-DBUILD_TESTS=true"))) + (list + #:qtbase qtbase + #:configure-flags #~(list "-DBUILD_TESTS=true") + #:test-exclude "PublicGroupChatTest" + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'set-home + (lambda _ + ;; Tests need write permission in $HOME. + (setenv "HOME" "/tmp")))))) (native-inputs (list extra-cmake-modules - perl - pkg-config - python-wrapper)) - (inputs (list kirigami-5 - knotifications-5 - qtbase-5 - qtdeclarative-5 - qtgraphicaleffects - qtlocation-5 - qtquickcontrols2-5 - qtsvg-5 - qtmultimedia-5 - qtxmlpatterns-5 + pkg-config)) + (inputs (list icu4c + kcrash + kdsingleapplication + kio + kirigami + kirigami-addons + knotifications + kquickimageeditor + prison qqc2-desktop-style + qtlocation + qtmultimedia + qtpositioning + qtsvg + qttools qxmpp - sonnet - zxing-cpp-1.2a)) + sonnet)) (home-page "https://www.kaidan.im/") (synopsis "Qt-based XMPP/Jabber Client") (description "Kaidan is a chat client. It uses the open communication diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm index 66b1a761d9..5f6d661587 100644 --- a/gnu/packages/monitoring.scm +++ b/gnu/packages/monitoring.scm @@ -519,7 +519,7 @@ and persisting them to disk using the Whisper time-series library.") python-whisper)) (propagated-inputs (list python-cairocffi - python-django-4.2 + python-django python-django-tagging python-pyparsing python-pytz diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 8e7394946e..860d63b366 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -5247,6 +5247,12 @@ and more. Full API documentation and examples are included.") #:configure-flags '(list "-DWANT_QT5=ON" "-DWANT_VST=OFF") #:phases #~(modify-phases %standard-phases + (add-after 'unpack 'fix-carla-export + ;; Taken from NixOS package definition. + (lambda _ + (substitute* "plugins/carlabase/carla.h" + (("CARLA_EXPORT") + "CARLA_API_EXPORT")))) (add-after 'unpack 'unpack-rpmalloc (lambda* (#:key inputs #:allow-other-keys) (copy-recursively (assoc-ref inputs "rpmalloc") diff --git a/gnu/packages/opencl.scm b/gnu/packages/opencl.scm index 40fa5981fe..114e5315cf 100644 --- a/gnu/packages/opencl.scm +++ b/gnu/packages/opencl.scm @@ -78,26 +78,6 @@ (home-page "https://registry.khronos.org/OpenCL/") (license license:asl2.0))) -(define (make-opencl-headers major-version subversion) - ;; The upstream OpenCL-Headers repository is no longer separating headers by - ;; version; instead, you are supposed to #define CL_TARGET_OPENCL_VERSION. - (deprecated-package (string-append "opencl-headers-" - major-version "." - subversion) opencl-headers)) - -(define-public opencl-headers-2.2 - (make-opencl-headers "2" "2")) -(define-public opencl-headers-2.1 - (make-opencl-headers "2" "1")) -(define-public opencl-headers-2.0 - (make-opencl-headers "2" "0")) -(define-public opencl-headers-1.2 - (make-opencl-headers "1" "2")) -(define-public opencl-headers-1.1 - (make-opencl-headers "1" "1")) -(define-public opencl-headers-1.0 - (make-opencl-headers "1" "0")) - (define-public opencl-clhpp (package (name "opencl-clhpp") diff --git a/gnu/packages/patches/daemontools-gcc14.patch b/gnu/packages/patches/daemontools-gcc14.patch new file mode 100644 index 0000000000..00b772bc3b --- /dev/null +++ b/gnu/packages/patches/daemontools-gcc14.patch @@ -0,0 +1,561 @@ +Taken from Debian, see +https://salsa.debian.org/debian/daemontools/-/blob/6b5584ccae6bd7c8cb6f47dd71062e3b1cd0a038/debian/patches/0005-fix-ftbfs.patch + +From: =?utf-8?b?SmFuIE1vasW+w63FoQ==?= <jan.mojzis@gmail.com> +Date: Sat, 30 Mar 2024 10:15:13 +0100 +Subject: fix ftbfs + +Forwarded: no +--- + daemontools-0.76/src/chkshsgr.c | 3 ++- + daemontools-0.76/src/envdir.c | 2 +- + daemontools-0.76/src/envuidgid.c | 2 +- + daemontools-0.76/src/fghack.c | 6 ++++-- + daemontools-0.76/src/matchtest.c | 1 + + daemontools-0.76/src/multilog.c | 3 ++- + daemontools-0.76/src/pathexec.h | 4 ++-- + daemontools-0.76/src/pathexec_env.c | 6 +++--- + daemontools-0.76/src/pathexec_run.c | 3 ++- + daemontools-0.76/src/pgrphack.c | 2 +- + daemontools-0.76/src/prot.c | 4 +++- + daemontools-0.76/src/seek_set.c | 1 + + daemontools-0.76/src/setlock.c | 2 +- + daemontools-0.76/src/setuidgid.c | 2 +- + daemontools-0.76/src/sgetopt.c | 2 +- + daemontools-0.76/src/sgetopt.h | 2 +- + daemontools-0.76/src/softlimit.c | 2 +- + daemontools-0.76/src/subgetopt.c | 2 +- + daemontools-0.76/src/subgetopt.h | 2 +- + daemontools-0.76/src/supervise.c | 6 ++++-- + daemontools-0.76/src/svc.c | 2 +- + daemontools-0.76/src/svscan.c | 2 +- + daemontools-0.76/src/trycpp.c | 3 +++ + daemontools-0.76/src/tryflock.c | 2 +- + daemontools-0.76/src/trypoll.c | 1 + + daemontools-0.76/src/trysgact.c | 2 +- + daemontools-0.76/src/trysgprm.c | 2 +- + daemontools-0.76/src/tryshsgr.c | 13 ++++++++----- + daemontools-0.76/src/tryulong64.c | 5 ++++- + daemontools-0.76/src/trywaitp.c | 2 +- + daemontools-0.76/src/uint64.h1 | 2 +- + daemontools-0.76/src/uint64.h2 | 5 +++-- + daemontools-0.76/src/x86cpuid.c | 2 ++ + 33 files changed, 62 insertions(+), 38 deletions(-) + +diff --git a/daemontools-0.76/src/chkshsgr.c b/daemontools-0.76/src/chkshsgr.c +index 38c352d..470f565 100644 +--- a/daemontools-0.76/src/chkshsgr.c ++++ b/daemontools-0.76/src/chkshsgr.c +@@ -1,12 +1,13 @@ + /* Public domain. */ + + #include <unistd.h> ++#include <grp.h> + + int main() + { + short x[4]; + + x[0] = x[1] = 0; +- if (getgroups(1,x) == 0) if (setgroups(1,x) == -1) _exit(1); ++ if (getgroups(1,(gid_t *)x) == 0) if (setgroups(1,(gid_t *)x) == -1) _exit(1); + _exit(0); + } +diff --git a/daemontools-0.76/src/envdir.c b/daemontools-0.76/src/envdir.c +index beb1b1f..d02bc63 100644 +--- a/daemontools-0.76/src/envdir.c ++++ b/daemontools-0.76/src/envdir.c +@@ -21,7 +21,7 @@ void nomem(void) + + static stralloc sa; + +-int main(int argc,const char *const *argv) ++int main(int argc,char **argv) + { + int fdorigdir; + const char *fn; +diff --git a/daemontools-0.76/src/envuidgid.c b/daemontools-0.76/src/envuidgid.c +index 294960a..f097db1 100644 +--- a/daemontools-0.76/src/envuidgid.c ++++ b/daemontools-0.76/src/envuidgid.c +@@ -15,7 +15,7 @@ char strnum[FMT_ULONG]; + const char *account; + struct passwd *pw; + +-int main(int argc,const char *const *argv) ++int main(int argc,char **argv) + { + account = *++argv; + if (!account || !*++argv) +diff --git a/daemontools-0.76/src/fghack.c b/daemontools-0.76/src/fghack.c +index 34ca1db..262876a 100644 +--- a/daemontools-0.76/src/fghack.c ++++ b/daemontools-0.76/src/fghack.c +@@ -9,12 +9,13 @@ + + int pid; + +-int main(int argc,const char * const *argv,const char * const *envp) ++int main(int argc,char **argv,char **envp) + { + char ch; + int wstat; + int pi[2]; + int i; ++ int dummy; + + if (!argv[1]) + strerr_die1x(100,"fghack: usage: fghack child"); +@@ -28,7 +29,8 @@ int main(int argc,const char * const *argv,const char * const *envp) + case 0: + close(pi[0]); + for (i = 0;i < 30;++i) +- dup(pi[1]); ++ dummy = dup(pi[1]); ++ (void) dummy; + pathexec_run(argv[1],argv + 1,envp); + strerr_die4sys(111,FATAL,"unable to run ",argv[1],": "); + } +diff --git a/daemontools-0.76/src/matchtest.c b/daemontools-0.76/src/matchtest.c +index 980dd1c..1bd4bbc 100644 +--- a/daemontools-0.76/src/matchtest.c ++++ b/daemontools-0.76/src/matchtest.c +@@ -1,3 +1,4 @@ ++#include <unistd.h> + #include "match.h" + #include "buffer.h" + #include "str.h" +diff --git a/daemontools-0.76/src/multilog.c b/daemontools-0.76/src/multilog.c +index be27a6a..ea02909 100644 +--- a/daemontools-0.76/src/multilog.c ++++ b/daemontools-0.76/src/multilog.c +@@ -1,6 +1,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <sys/stat.h> ++#include <stdio.h> + #include "direntry.h" + #include "alloc.h" + #include "buffer.h" +@@ -172,7 +173,7 @@ void finish(struct cyclog *d,const char *file,const char *code) + + void startprocessor(struct cyclog *d) + { +- const char *args[4]; ++ char *args[4]; + int fd; + + sig_uncatch(sig_term); +diff --git a/daemontools-0.76/src/pathexec.h b/daemontools-0.76/src/pathexec.h +index 61da922..f984f77 100644 +--- a/daemontools-0.76/src/pathexec.h ++++ b/daemontools-0.76/src/pathexec.h +@@ -3,8 +3,8 @@ + #ifndef PATHEXEC_H + #define PATHEXEC_H + +-extern void pathexec_run(const char *,const char * const *,const char * const *); ++extern void pathexec_run(const char *,char **,char **); + extern int pathexec_env(const char *,const char *); +-extern void pathexec(const char * const *); ++extern void pathexec(char **); + + #endif +diff --git a/daemontools-0.76/src/pathexec_env.c b/daemontools-0.76/src/pathexec_env.c +index 2cb101c..a1404ad 100644 +--- a/daemontools-0.76/src/pathexec_env.c ++++ b/daemontools-0.76/src/pathexec_env.c +@@ -22,9 +22,9 @@ int pathexec_env(const char *s,const char *t) + return stralloc_cat(&plus,&tmp); + } + +-void pathexec(const char *const *argv) ++void pathexec(char **argv) + { +- const char **e; ++ char **e; + unsigned int elen; + unsigned int i; + unsigned int j; +@@ -40,7 +40,7 @@ void pathexec(const char *const *argv) + if (!plus.s[i]) + ++elen; + +- e = (const char **) alloc((elen + 1) * sizeof(char *)); ++ e = (char **) alloc((elen + 1) * sizeof(char *)); + if (!e) return; + + elen = 0; +diff --git a/daemontools-0.76/src/pathexec_run.c b/daemontools-0.76/src/pathexec_run.c +index 1770ac7..7929144 100644 +--- a/daemontools-0.76/src/pathexec_run.c ++++ b/daemontools-0.76/src/pathexec_run.c +@@ -1,5 +1,6 @@ + /* Public domain. */ + ++#include <unistd.h> + #include "error.h" + #include "stralloc.h" + #include "str.h" +@@ -8,7 +9,7 @@ + + static stralloc tmp; + +-void pathexec_run(const char *file,const char * const *argv,const char * const *envp) ++void pathexec_run(const char *file,char **argv,char **envp) + { + const char *path; + unsigned int split; +diff --git a/daemontools-0.76/src/pgrphack.c b/daemontools-0.76/src/pgrphack.c +index 9aa10dc..6b06a84 100644 +--- a/daemontools-0.76/src/pgrphack.c ++++ b/daemontools-0.76/src/pgrphack.c +@@ -4,7 +4,7 @@ + + #define FATAL "pgrphack: fatal: " + +-int main(int argc,const char * const *argv,const char * const *envp) ++int main(int argc,char **argv,char **envp) + { + if (!argv[1]) strerr_die1x(100,"pgrphack: usage: pgrphack child"); + setsid(); /* shouldn't fail; if it does, too bad */ +diff --git a/daemontools-0.76/src/prot.c b/daemontools-0.76/src/prot.c +index 79a88c5..45af0ef 100644 +--- a/daemontools-0.76/src/prot.c ++++ b/daemontools-0.76/src/prot.c +@@ -1,5 +1,7 @@ + /* Public domain. */ + ++#include <unistd.h> ++#include <grp.h> + #include "hasshsgr.h" + #include "prot.h" + +@@ -8,7 +10,7 @@ int prot_gid(int gid) + #ifdef HASSHORTSETGROUPS + short x[2]; + x[0] = gid; x[1] = 73; /* catch errors */ +- if (setgroups(1,x) == -1) return -1; ++ if (setgroups(1,(gid_t *)x) == -1) return -1; + #else + if (setgroups(1,&gid) == -1) return -1; + #endif +diff --git a/daemontools-0.76/src/seek_set.c b/daemontools-0.76/src/seek_set.c +index 19b8265..5299201 100644 +--- a/daemontools-0.76/src/seek_set.c ++++ b/daemontools-0.76/src/seek_set.c +@@ -1,5 +1,6 @@ + /* Public domain. */ + ++#include <unistd.h> + #include <sys/types.h> + #include "seek.h" + +diff --git a/daemontools-0.76/src/setlock.c b/daemontools-0.76/src/setlock.c +index eec2192..d900540 100644 +--- a/daemontools-0.76/src/setlock.c ++++ b/daemontools-0.76/src/setlock.c +@@ -14,7 +14,7 @@ void usage() { + int flagndelay = 0; + int flagx = 0; + +-int main(int argc,const char *const *argv,const char *const *envp) ++int main(int argc,char **argv,char **envp) + { + int opt; + int fd; +diff --git a/daemontools-0.76/src/setuidgid.c b/daemontools-0.76/src/setuidgid.c +index 8c683de..90485e9 100644 +--- a/daemontools-0.76/src/setuidgid.c ++++ b/daemontools-0.76/src/setuidgid.c +@@ -9,7 +9,7 @@ + const char *account; + struct passwd *pw; + +-int main(int argc,const char *const *argv,const char *const *envp) ++int main(int argc,char **argv,char **envp) + { + account = *++argv; + if (!account || !*++argv) +diff --git a/daemontools-0.76/src/sgetopt.c b/daemontools-0.76/src/sgetopt.c +index 8bb608f..1d6d9f4 100644 +--- a/daemontools-0.76/src/sgetopt.c ++++ b/daemontools-0.76/src/sgetopt.c +@@ -27,7 +27,7 @@ Documentation in sgetopt.3. + int opterr = 1; + const char *optprogname = 0; + +-int getopt(int argc,const char *const *argv,const char *opts) ++int getopt(int argc,char **argv,const char *opts) + { + int c; + const char *s; +diff --git a/daemontools-0.76/src/sgetopt.h b/daemontools-0.76/src/sgetopt.h +index bf8bce6..6a6e111 100644 +--- a/daemontools-0.76/src/sgetopt.h ++++ b/daemontools-0.76/src/sgetopt.h +@@ -16,7 +16,7 @@ + + #include "subgetopt.h" + +-extern int sgetoptmine(int,const char *const *,const char *); ++extern int sgetoptmine(int,char **,const char *); + extern int sgetopterr; + extern const char *sgetoptprogname; + +diff --git a/daemontools-0.76/src/softlimit.c b/daemontools-0.76/src/softlimit.c +index 8be40b8..4d9f81e 100644 +--- a/daemontools-0.76/src/softlimit.c ++++ b/daemontools-0.76/src/softlimit.c +@@ -36,7 +36,7 @@ void doit(int resource,const char *arg) + strerr_die2sys(111,FATAL,"setrlimit failed: "); + } + +-int main(int argc,const char *const *argv,const char *const *envp) ++int main(int argc,char **argv,char **envp) + { + int opt; + +diff --git a/daemontools-0.76/src/subgetopt.c b/daemontools-0.76/src/subgetopt.c +index 266e72a..bbbbb6c 100644 +--- a/daemontools-0.76/src/subgetopt.c ++++ b/daemontools-0.76/src/subgetopt.c +@@ -16,7 +16,7 @@ const char *optarg = 0; + int optproblem = 0; + int optdone = SUBGETOPTDONE; + +-int sgopt(int argc,const char *const *argv,const char *opts) ++int sgopt(int argc,char **argv,const char *opts) + { + int c; + const char *s; +diff --git a/daemontools-0.76/src/subgetopt.h b/daemontools-0.76/src/subgetopt.h +index 41ad26a..7e5636e 100644 +--- a/daemontools-0.76/src/subgetopt.h ++++ b/daemontools-0.76/src/subgetopt.h +@@ -15,7 +15,7 @@ + + #define SUBGETOPTDONE -1 + +-extern int subgetopt(int,const char *const *,const char *); ++extern int subgetopt(int,char **,const char *); + extern const char *subgetoptarg; + extern int subgetoptind; + extern int subgetoptpos; +diff --git a/daemontools-0.76/src/supervise.c b/daemontools-0.76/src/supervise.c +index 483e9a2..3a27f42 100644 +--- a/daemontools-0.76/src/supervise.c ++++ b/daemontools-0.76/src/supervise.c +@@ -2,6 +2,7 @@ + #include <sys/types.h> + #include <sys/stat.h> + #include <signal.h> ++#include <stdio.h> + #include "sig.h" + #include "strerr.h" + #include "error.h" +@@ -81,10 +82,11 @@ void announce(void) + + void trigger(void) + { +- write(selfpipe[1],"",1); ++ int dummy = write(selfpipe[1],"",1); ++ (void) dummy; + } + +-const char *run[2] = { "./run", 0 }; ++char *run[2] = { "./run", 0 }; + + int flagfailed = 0; + +diff --git a/daemontools-0.76/src/svc.c b/daemontools-0.76/src/svc.c +index 08e9a5c..aae2d9d 100644 +--- a/daemontools-0.76/src/svc.c ++++ b/daemontools-0.76/src/svc.c +@@ -19,7 +19,7 @@ char bspace[1]; + + int fdorigdir; + +-int main(int argc,const char *const *argv) ++int main(int argc,char **argv) + { + int opt; + int fd; +diff --git a/daemontools-0.76/src/svscan.c b/daemontools-0.76/src/svscan.c +index 15a8c89..39b8887 100644 +--- a/daemontools-0.76/src/svscan.c ++++ b/daemontools-0.76/src/svscan.c +@@ -36,7 +36,7 @@ void start(char *fn) + struct stat st; + int child; + int i; +- const char *args[3]; ++ char *args[3]; + + if (fn[0] == '.') return; + +diff --git a/daemontools-0.76/src/trycpp.c b/daemontools-0.76/src/trycpp.c +index e4503d4..70bc8d6 100644 +--- a/daemontools-0.76/src/trycpp.c ++++ b/daemontools-0.76/src/trycpp.c +@@ -1,5 +1,8 @@ + /* Public domain. */ + ++#include <stdio.h> ++#include <stdlib.h> ++ + int main() + { + #ifdef NeXT +diff --git a/daemontools-0.76/src/tryflock.c b/daemontools-0.76/src/tryflock.c +index a82ffc2..68599d3 100644 +--- a/daemontools-0.76/src/tryflock.c ++++ b/daemontools-0.76/src/tryflock.c +@@ -4,7 +4,7 @@ + #include <sys/file.h> + #include <fcntl.h> + +-main() ++int main() + { + flock(0,LOCK_EX | LOCK_UN | LOCK_NB); + } +diff --git a/daemontools-0.76/src/trypoll.c b/daemontools-0.76/src/trypoll.c +index 6506617..a7b26df 100644 +--- a/daemontools-0.76/src/trypoll.c ++++ b/daemontools-0.76/src/trypoll.c +@@ -3,6 +3,7 @@ + #include <sys/types.h> + #include <fcntl.h> + #include <poll.h> ++#include <unistd.h> + + int main() + { +diff --git a/daemontools-0.76/src/trysgact.c b/daemontools-0.76/src/trysgact.c +index e264ef2..841b88a 100644 +--- a/daemontools-0.76/src/trysgact.c ++++ b/daemontools-0.76/src/trysgact.c +@@ -2,7 +2,7 @@ + + #include <signal.h> + +-main() ++int main() + { + struct sigaction sa; + sa.sa_handler = 0; +diff --git a/daemontools-0.76/src/trysgprm.c b/daemontools-0.76/src/trysgprm.c +index a46c82c..3e78a82 100644 +--- a/daemontools-0.76/src/trysgprm.c ++++ b/daemontools-0.76/src/trysgprm.c +@@ -2,7 +2,7 @@ + + #include <signal.h> + +-main() ++int main() + { + sigset_t ss; + +diff --git a/daemontools-0.76/src/tryshsgr.c b/daemontools-0.76/src/tryshsgr.c +index c5ed6d6..ba298a7 100644 +--- a/daemontools-0.76/src/tryshsgr.c ++++ b/daemontools-0.76/src/tryshsgr.c +@@ -1,16 +1,19 @@ + /* Public domain. */ + ++#include <unistd.h> ++#include <grp.h> ++ + int main() + { + short x[4]; +- ++ + x[0] = x[1] = 1; +- if (getgroups(1,x) == 0) if (setgroups(1,x) == -1) _exit(1); +- +- if (getgroups(1,x) == -1) _exit(1); ++ if (getgroups(1,(gid_t *)x) == 0) if (setgroups(1,(gid_t *)x) == -1) _exit(1); ++ ++ if (getgroups(1,(gid_t *)x) == -1) _exit(1); + if (x[1] != 1) _exit(1); + x[1] = 2; +- if (getgroups(1,x) == -1) _exit(1); ++ if (getgroups(1,(gid_t *)x) == -1) _exit(1); + if (x[1] != 2) _exit(1); + _exit(0); + } +diff --git a/daemontools-0.76/src/tryulong64.c b/daemontools-0.76/src/tryulong64.c +index 003548a..f3b111d 100644 +--- a/daemontools-0.76/src/tryulong64.c ++++ b/daemontools-0.76/src/tryulong64.c +@@ -1,8 +1,11 @@ + /* Public domain. */ + ++#include <unistd.h> ++#include <stdint.h> ++ + int main() + { +- unsigned long u; ++ uint64_t u; + u = 1; + u += u; u += u; u += u; u += u; u += u; u += u; u += u; u += u; + u += u; u += u; u += u; u += u; u += u; u += u; u += u; u += u; +diff --git a/daemontools-0.76/src/trywaitp.c b/daemontools-0.76/src/trywaitp.c +index 319b81f..76b3329 100644 +--- a/daemontools-0.76/src/trywaitp.c ++++ b/daemontools-0.76/src/trywaitp.c +@@ -3,7 +3,7 @@ + #include <sys/types.h> + #include <sys/wait.h> + +-main() ++int main() + { + waitpid(0,0,0); + } +diff --git a/daemontools-0.76/src/uint64.h1 b/daemontools-0.76/src/uint64.h1 +index 486a380..fde25ca 100644 +--- a/daemontools-0.76/src/uint64.h1 ++++ b/daemontools-0.76/src/uint64.h1 +@@ -3,7 +3,7 @@ + #ifndef UINT64_H + #define UINT64_H + +-/* sysdep: -ulong64 */ ++/* sysdep: -uint64_t */ + + typedef unsigned long long uint64; + +diff --git a/daemontools-0.76/src/uint64.h2 b/daemontools-0.76/src/uint64.h2 +index 8869e43..fd134f2 100644 +--- a/daemontools-0.76/src/uint64.h2 ++++ b/daemontools-0.76/src/uint64.h2 +@@ -3,8 +3,9 @@ + #ifndef UINT64_H + #define UINT64_H + +-/* sysdep: +ulong64 */ ++/* sysdep: +uint64_t */ + +-typedef unsigned long uint64; ++#include <stdint.h> ++typedef uint64_t uint64; + + #endif +diff --git a/daemontools-0.76/src/x86cpuid.c b/daemontools-0.76/src/x86cpuid.c +index f81c593..122eed1 100644 +--- a/daemontools-0.76/src/x86cpuid.c ++++ b/daemontools-0.76/src/x86cpuid.c +@@ -1,6 +1,8 @@ + /* Public domain. */ + + #include <signal.h> ++#include <stdlib.h> ++#include <stdio.h> + + void nope() + { diff --git a/gnu/packages/patches/libgcrypt-arm32-register-pressure.patch b/gnu/packages/patches/libgcrypt-arm32-register-pressure.patch new file mode 100644 index 0000000000..9eff5c42e1 --- /dev/null +++ b/gnu/packages/patches/libgcrypt-arm32-register-pressure.patch @@ -0,0 +1,133 @@ +This patch is from upstream and probably can be dropped with any version +after 1.11.0. + +From 9c93b4607adcf9b3efd53aba43e2d33bf5aef9df Mon Sep 17 00:00:00 2001 +From: Jussi Kivilinna <jussi.kivilinna@iki.fi> +Date: Sun, 4 Aug 2024 18:04:49 +0300 +Subject: [PATCH] mpi/ec-inline: reduce register pressure on 32-bit ARM + +* mpi/ec-inline.h [HAVE_COMPATIBLE_GCC_ARM_PLATFORM_AS] (ADD4_LIMB32) +(ADD6_LIMB32, SUB4_LIMB32, SUB6_LIMB32): Reuse input registers +as output (use just two unique operators). +-- + +This fixes building ec-nist.c with GCC-14 on 32-bit ARM. + +GnuPG-bug-id: 7226 +Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi> +--- + mpi/ec-inline.h | 63 ++++++++++++++++++++++++------------------------- + 1 file changed, 31 insertions(+), 32 deletions(-) + +diff --git a/mpi/ec-inline.h b/mpi/ec-inline.h +index c24d5352..3a526246 100644 +--- a/mpi/ec-inline.h ++++ b/mpi/ec-inline.h +@@ -836,18 +836,18 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + #ifdef HAVE_COMPATIBLE_GCC_ARM_PLATFORM_AS + + #define ADD4_LIMB32(A3, A2, A1, A0, B3, B2, B1, B0, C3, C2, C1, C0) \ +- __asm__ ("adds %3, %7, %11\n" \ +- "adcs %2, %6, %10\n" \ +- "adcs %1, %5, %9\n" \ +- "adc %0, %4, %8\n" \ ++ __asm__ ("adds %3, %3, %11\n" \ ++ "adcs %2, %2, %10\n" \ ++ "adcs %1, %1, %9\n" \ ++ "adc %0, %0, %8\n" \ + : "=r" (A3), \ + "=&r" (A2), \ + "=&r" (A1), \ + "=&r" (A0) \ +- : "r" ((mpi_limb_t)(B3)), \ +- "r" ((mpi_limb_t)(B2)), \ +- "r" ((mpi_limb_t)(B1)), \ +- "r" ((mpi_limb_t)(B0)), \ ++ : "0" ((mpi_limb_t)(B3)), \ ++ "1" ((mpi_limb_t)(B2)), \ ++ "2" ((mpi_limb_t)(B1)), \ ++ "3" ((mpi_limb_t)(B0)), \ + "Ir" ((mpi_limb_t)(C3)), \ + "Ir" ((mpi_limb_t)(C2)), \ + "Ir" ((mpi_limb_t)(C1)), \ +@@ -857,18 +857,18 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + #define ADD6_LIMB32(A5, A4, A3, A2, A1, A0, B5, B4, B3, B2, B1, B0, \ + C5, C4, C3, C2, C1, C0) do { \ + mpi_limb_t __carry6_32; \ +- __asm__ ("adds %3, %7, %10\n" \ +- "adcs %2, %6, %9\n" \ +- "adcs %1, %5, %8\n" \ +- "adc %0, %4, %4\n" \ ++ __asm__ ("adds %3, %3, %10\n" \ ++ "adcs %2, %2, %9\n" \ ++ "adcs %1, %1, %8\n" \ ++ "adc %0, %0, %0\n" \ + : "=r" (__carry6_32), \ + "=&r" (A2), \ + "=&r" (A1), \ + "=&r" (A0) \ +- : "r" ((mpi_limb_t)(0)), \ +- "r" ((mpi_limb_t)(B2)), \ +- "r" ((mpi_limb_t)(B1)), \ +- "r" ((mpi_limb_t)(B0)), \ ++ : "0" ((mpi_limb_t)(0)), \ ++ "1" ((mpi_limb_t)(B2)), \ ++ "2" ((mpi_limb_t)(B1)), \ ++ "3" ((mpi_limb_t)(B0)), \ + "Ir" ((mpi_limb_t)(C2)), \ + "Ir" ((mpi_limb_t)(C1)), \ + "Ir" ((mpi_limb_t)(C0)) \ +@@ -878,18 +878,18 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + } while (0) + + #define SUB4_LIMB32(A3, A2, A1, A0, B3, B2, B1, B0, C3, C2, C1, C0) \ +- __asm__ ("subs %3, %7, %11\n" \ +- "sbcs %2, %6, %10\n" \ +- "sbcs %1, %5, %9\n" \ +- "sbc %0, %4, %8\n" \ ++ __asm__ ("subs %3, %3, %11\n" \ ++ "sbcs %2, %2, %10\n" \ ++ "sbcs %1, %1, %9\n" \ ++ "sbc %0, %0, %8\n" \ + : "=r" (A3), \ + "=&r" (A2), \ + "=&r" (A1), \ + "=&r" (A0) \ +- : "r" ((mpi_limb_t)(B3)), \ +- "r" ((mpi_limb_t)(B2)), \ +- "r" ((mpi_limb_t)(B1)), \ +- "r" ((mpi_limb_t)(B0)), \ ++ : "0" ((mpi_limb_t)(B3)), \ ++ "1" ((mpi_limb_t)(B2)), \ ++ "2" ((mpi_limb_t)(B1)), \ ++ "3" ((mpi_limb_t)(B0)), \ + "Ir" ((mpi_limb_t)(C3)), \ + "Ir" ((mpi_limb_t)(C2)), \ + "Ir" ((mpi_limb_t)(C1)), \ +@@ -899,18 +899,17 @@ LIMB64_HILO(mpi_limb_t hi, mpi_limb_t lo) + #define SUB6_LIMB32(A5, A4, A3, A2, A1, A0, B5, B4, B3, B2, B1, B0, \ + C5, C4, C3, C2, C1, C0) do { \ + mpi_limb_t __borrow6_32; \ +- __asm__ ("subs %3, %7, %10\n" \ +- "sbcs %2, %6, %9\n" \ +- "sbcs %1, %5, %8\n" \ +- "sbc %0, %4, %4\n" \ ++ __asm__ ("subs %3, %3, %9\n" \ ++ "sbcs %2, %2, %8\n" \ ++ "sbcs %1, %1, %7\n" \ ++ "sbc %0, %0, %0\n" \ + : "=r" (__borrow6_32), \ + "=&r" (A2), \ + "=&r" (A1), \ + "=&r" (A0) \ +- : "r" ((mpi_limb_t)(0)), \ +- "r" ((mpi_limb_t)(B2)), \ +- "r" ((mpi_limb_t)(B1)), \ +- "r" ((mpi_limb_t)(B0)), \ ++ : "1" ((mpi_limb_t)(B2)), \ ++ "2" ((mpi_limb_t)(B1)), \ ++ "3" ((mpi_limb_t)(B0)), \ + "Ir" ((mpi_limb_t)(C2)), \ + "Ir" ((mpi_limb_t)(C1)), \ + "Ir" ((mpi_limb_t)(C0)) \ +-- diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm index 1406ed90a9..36cf137383 100644 --- a/gnu/packages/pretty-print.scm +++ b/gnu/packages/pretty-print.scm @@ -300,21 +300,9 @@ a fast alternative to @code{IOStreams}.") (sha256 (base32 "0p8f82ijqa57sk72hjf0qviv1wwinmns0p87wiv2v8fvisnqnxr3")))))) -(define-public fmt-7 - (package - (inherit fmt-8) - (version "7.1.3") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/fmtlib/fmt/releases/download/" - version "/fmt-" version ".zip")) - (sha256 - (base32 "17sc10hfg087z0s774lnn05wwy3bfzmcv7j448p92pr0s02cb62x")))))) - (define-public fmt-6 (package - (inherit fmt-7) + (inherit fmt-8) (version "6.1.2") (source (origin diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm index 8bf5cb7459..d629754af3 100644 --- a/gnu/packages/prolog.scm +++ b/gnu/packages/prolog.scm @@ -185,7 +185,7 @@ it.") (define-public trealla (package (name "trealla") - (version "2.80.10") + (version "2.81.3") (source (origin (method git-fetch) @@ -194,7 +194,7 @@ it.") (url "https://github.com/trealla-prolog/trealla") (commit (string-append "v" version)))) (sha256 - (base32 "1m4qm5ymjb2579kwsz9hzclpvh7im3f2vz5fg7828r2ap1dlfwlr")) + (base32 "0y92d80r3w2cvgkc1yz7c126bgycqj8xy8jnnvirbf6qdmr78h5d")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (native-inputs diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm index 8e189c05dc..b5ad5e7519 100644 --- a/gnu/packages/python-build.scm +++ b/gnu/packages/python-build.scm @@ -828,6 +828,30 @@ has features such as: @end itemize") (license license:expat))) +(define-public python-hatch-docstring-description + (package + (name "python-hatch-docstring-description") + (version "1.1.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "hatch_docstring_description" version)) + (sha256 + (base32 "1qwa8m4yswn0bkc5xzq30xsaca578axl5ig2r6mkcdxsfg196pdi")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;avoid extra test dependencies + (native-inputs + (list python-hatch-vcs + python-hatchling)) + (propagated-inputs + (list python-hatchling)) + (home-page "https://github.com/flying-sheep/hatch-docstring-description") + (synopsis "Derive PyPI package description from Python package docstring ") + (description + "This package provides a Hatchling plugin to read the description from the +package docstring.") + (license license:gpl3+))) + (define-public python-hatch-fancy-pypi-readme (package (name "python-hatch-fancy-pypi-readme") diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index 66320312f7..b98e9dfa09 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -77,6 +77,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system pyproject) #:use-module (guix build-system python) + #:use-module (guix deprecation) #:use-module (guix download) #:use-module (guix gexp) #:use-module (guix git-download) @@ -364,6 +365,26 @@ all the files it generates a report.") written in pure Python.") (license license:expat))) +(define-deprecated/public python-case #f + (package + (name "python-case") + (version "1.5.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "case" version)) + (sha256 + (base32 "1cagg06vfph864s6l5jb0zqliwxh647bki8j6lf4a4qrv40jnhs8")))) + (build-system pyproject-build-system) + (propagated-inputs (list python-mock python-nose python-six)) + (native-inputs (list python-setuptools python-wheel)) + (home-page "https://github.com/celery/case") + (synopsis "Unittest utilities and convenience methods") + (description + "The @code{case} package provides utilities on top of unittest, including +some helpful Python 2 compatibility convenience methods.") + (license license:bsd-3))) + (define-public python-codacy-coverage (package (name "python-codacy-coverage") @@ -2495,16 +2516,17 @@ requests to be replied to with user provided responses.") (version "3.1.0") (source (origin - (method url-fetch) - (uri (pypi-uri "pytest_isort" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/stephrdev/pytest-isort") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 "0v0qa5l22y3v0nfkpvghbinzyj2rh4f54k871lrp992lbvf02y06")))) - (build-system python-build-system) - (arguments - `(#:tests? #f)) ; No tests in PyPi tarball. - (propagated-inputs - (list python-isort python-pytest)) - (home-page "https://github.com/moccu/pytest-isort/") + (base32 "07hj2z2jsshk0m60j0w10q3yzis69714k7qbw2f0cprc5li9b06n")))) + (build-system pyproject-build-system) + (propagated-inputs (list python-isort python-pytest)) + (native-inputs (list python-poetry-core)) + (home-page "https://github.com/stephrdev/pytest-isort") (synopsis "Pytest plugin to check import ordering using isort") (description "This package provides a pytest plugin to check import ordering using @@ -3867,7 +3889,9 @@ data in a standard way.") (uri (pypi-uri "test-utils" version)) (sha256 (base32 "0cs0gyihnkj8ya4yg3ld3ly73mpxrkn2gq9acamclhqvhxsv7zd6")))) - (build-system python-build-system) + (build-system pyproject-build-system) + (native-inputs + (list python-setuptools python-wheel)) (home-page "https://github.com/Kami/python-test-utils/") (synopsis "Utilities for functional and integration tests") (description diff --git a/gnu/packages/python-compression.scm b/gnu/packages/python-compression.scm index 4361c0b65e..66f6828377 100644 --- a/gnu/packages/python-compression.scm +++ b/gnu/packages/python-compression.scm @@ -524,6 +524,10 @@ several possible methods.") (base32 "0lwniinfr3rb10n0c203a09vz06vxnnj637yqn8ipdlml89gj7kr")))) (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "--ignore=tests/test_benchmark.py"))) (propagated-inputs (list python-brotli python-brotlicffi @@ -537,15 +541,12 @@ several possible methods.") python-pyzstd python-texttable)) (native-inputs - (list python-coverage - python-setuptools - python-coveralls + (list python-setuptools python-libarchive-c python-py-cpuinfo python-pyannotate python-pytest python-pytest-benchmark - python-pytest-cov python-pytest-remotedata python-pytest-timeout python-setuptools-scm @@ -932,27 +933,16 @@ provided.") '(begin ;; Remove a bundled copy of the zstd sources. (delete-file-recursively "zstd"))))) - (build-system python-build-system) + (build-system pyproject-build-system) (arguments (list + ;; XXX: This is ugly. TODO python-team: + ;; Migrate pyproject to (json) instead of (guix build json). #:configure-flags - #~(list "--dynamic-link-zstd") - #:phases - #~(modify-phases %standard-phases - (replace 'build - ;; The python-build-system's phase doesn't honour configure-flags. - (lambda* (#:key configure-flags #:allow-other-keys) - (apply invoke "python" "./setup.py" "build" - configure-flags))) - (replace 'check - ;; The python-build-system's phase doesn't honour configure-flags. - (lambda* (#:key tests? test-target configure-flags - #:allow-other-keys) - (when tests? - (apply invoke "python" "./setup.py" test-target - configure-flags))))))) + #~`(@ . (("--build-option" . "--dynamic-link-zstd"))))) (inputs (list `(,zstd "lib"))) - (home-page "https://github.com/animalize/pyzstd") + (native-inputs (list python-pytest python-setuptools python-wheel)) + (home-page "https://github.com/Rogdham/pyzstd") (synopsis "Zstandard bindings for Python") (description "This package provides Python bindings to the Zstandard (zstd) compression library. The API is similar to Python's bz2/lzma/zlib module.") diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm index b71f693538..f35795f922 100644 --- a/gnu/packages/python-science.scm +++ b/gnu/packages/python-science.scm @@ -253,28 +253,36 @@ possibility to differentiate functions that contain matrix functions as (define-public python-anndata (package (name "python-anndata") - (version "0.11.1") + (version "0.12.1") (source (origin ;; The tarball from PyPi doesn't include tests. (method git-fetch) (uri (git-reference - (url "https://github.com/theislab/anndata") - (commit version))) + (url "https://github.com/theislab/anndata") + (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 - "0skmjjvxk5gdsx6fkplszff92jsb4l45j23c6mhq1vdi3wqhqhcw")))) + (base32 "1pwqy1pxsiqf13kfshcbqah1a92x4044s6jyr94488ngpqkr275z")))) (build-system pyproject-build-system) (arguments (list #:test-flags - #~(list "-k" #$(string-append - ;; This one test seemingly freezes - "not test_read_lazy_h5_cluster" - ;; Fails with a numpy deprecation warning - ;; but not an actual failure - " and not test_read_write_X")) + #~(list "--numprocesses" (number->string (parallel-job-count)) + ;; XXX: AttributeError: module 'pyarrow.lib' has no attribute + ;; 'PyExtensionType + "--ignore=tests/test_awkward.py" + "-k" (string-join + ;; TypeError: read_text() takes from 1 to 2 positional + ;; arguments but 4 were given + (list "not test_read_csv" + ;; TypeError: _fix_co_filename() argument 2 must be + ;; str, not PosixPath + "test_hints" + ;; Failed: DID NOT WARN. No warnings of type (<class + ;; 'FutureWarning'>,) were emitted. + "test_readloom_deprecations") + " and not ")) #:phases #~(modify-phases %standard-phases ;; Doctests require scanpy from (gnu packages bioinformatics) @@ -293,15 +301,14 @@ possibility to differentiate functions that contain matrix functions as (setenv "NUMBA_CACHE_DIR" "/tmp")))))) (propagated-inputs (list python-array-api-compat - python-exceptiongroup ;only for Python <3.11 python-h5py python-importlib-metadata + python-legacy-api-wrap python-natsort - python-numcodecs python-packaging python-pandas - python-scipy python-scikit-learn + python-scipy python-setuptools ; For pkg_resources. python-zarr)) (native-inputs @@ -309,17 +316,14 @@ possibility to differentiate functions that contain matrix functions as python-boltons python-dask python-distributed - python-hatchling python-hatch-vcs + python-hatchling python-joblib python-loompy python-matplotlib python-pytest python-pytest-mock - python-pytest-doctestplus python-pytest-xdist - python-toml - python-flit python-setuptools-scm)) (home-page "https://github.com/theislab/anndata") (synopsis "Annotated data for data analysis pipelines") @@ -1540,6 +1544,32 @@ Features: @end itemize") (license license:bsd-2))) +(define-public python-legendkit + (package + (name "python-legendkit") + (version "0.3.6") + (source + (origin + (method git-fetch) ;no tests in PyPI archive + (uri (git-reference + (url "https://github.com/Marsilea-viz/legendkit") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "03xdhh95w4zydwa4ahp3gyfa6i60c9s5arfcj366knckb1bnpnn9")))) + (build-system pyproject-build-system) + (native-inputs + (list python-hatchling + python-pytest)) + (propagated-inputs + (list python-matplotlib)) + (home-page "https://github.com/Marsilea-viz/legendki") + (synopsis "Legend creation and manipulation for matplotlib") + (description + "This package implements a functionality to create and manipulate plot +legends for @code{matplotlib}.") + (license license:expat))) + (define-public python-libneuroml (package (name "python-libneuroml") @@ -1572,6 +1602,39 @@ Features: neuronal models") (license license:bsd-3))) +(define-public python-marsilea + (package + (name "python-marsilea") + (version "0.5.4") + (source + (origin + (method git-fetch) ;no tests in PyPI archive + (uri (git-reference + (url "https://github.com/Marsilea-viz/marsilea") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "09pyfx0gn46ypsp991d3n4a4xx6zlbpss078lw6yywnhl834v2i0")))) + (build-system pyproject-build-system) + (native-inputs + (list python-hatchling + python-pytest)) + (propagated-inputs + (list python-legendkit + python-matplotlib + python-numpy + python-pandas + python-platformdirs + python-scipy + python-seaborn)) + (home-page "https://github.com/Marsilea-viz/marsilea") + (synopsis "Declarative creation of composable visualizations") + (description + "Marsilea is a Python library for creating composable visualizations in a +declarative way. It is built on top of Matplotlib and provides a high-level +API for you to puzzle different visualizations together like logo.") + (license license:expat))) + (define-public python-meshzoo (package (name "python-meshzoo") diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 2cbc1bb167..5ef1782dc5 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, @@ -969,14 +976,14 @@ adds functionality on top of @code{wadlib}.") (define-public python-launchpadlib (package (name "python-launchpadlib") - (version "1.10.16") + (version "2.1.0") (source (origin (method url-fetch) (uri (pypi-uri "launchpadlib" version)) (sha256 - (base32 "106aixwchwyb100wlf4cnj1vgsi2d7x40ps8xv8az27r6qwv3x0d")))) - (build-system python-build-system) + (base32 "0br4j76l83lvyrhm8psml9cqmdsn65rx48w1q1a0s1bmpf85ihml")))) + (build-system pyproject-build-system) (arguments (list #:phases #~(modify-phases %standard-phases (add-before 'check 'set-home @@ -984,12 +991,10 @@ adds functionality on top of @code{wadlib}.") ;; Tests require a writable home. (setenv "HOME" "/tmp")))))) (propagated-inputs - (list python-httplib2 - python-keyring - python-lazr-restfulclient - python-lazr-uri)) - (native-inputs (list python-mock python-testresources python-wadllib)) - (home-page "https://help.launchpad.net/API/launchpadlib") + (list python-httplib2 python-lazr-restfulclient python-lazr-uri)) + (native-inputs (list python-pytest python-testresources python-wadllib + python-setuptools python-wheel)) + (home-page "https://documentation.ubuntu.com/launchpad") (synopsis "Python client library for Launchpad's web service") (description "@code{launchpadlib} is a Python library that allows scripting Launchpad via its the web service API.") @@ -1617,17 +1622,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 @@ -1848,28 +1866,38 @@ routes using HTTP Digest Authentication.") (license license:bsd-2))) (define-public python-css-html-js-minify - (package - (name "python-css-html-js-minify") - (version "2.5.5") - (source (origin - (method url-fetch) - (uri (pypi-uri "css-html-js-minify" version ".zip")) - (sha256 - (base32 - "0v3l2dqdk2y4r6ax259gs4ij1zzm9yxg6491s6254vs9w3vi37sa")))) - (build-system python-build-system) - ;; XXX: The git repository has no tags, and the PyPI releases do not - ;; contain tests. - (arguments '(#:tests? #f)) - (native-inputs (list unzip)) - (home-page "https://github.com/juancarlospaco/css-html-js-minify") - (synopsis "CSS/HTML/JS minifier") - (description - "This package provides a single-file minifier for CSS, HTML, and JavaScript.") - ;; XXX: The README just says "GNU GPL and GNU LGPL and MIT". From - ;; <https://github.com/juancarlospaco/css-html-js-minify/issues/9> it - ;; looks like the user can choose a license. - (license (list license:gpl3+ license:lgpl3+ license:expat)))) + (let ((commit "8f72452960e41bc5476e50d96481f633eff72750") + (revision "0")) + (package + (name "python-css-html-js-minify") + (version (git-version "2.5.5" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/juancarlospaco/css-html-js-minify") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1lkx03720zk6q16w3d9r3l5kryikd1cmzwrcjzsjxwrq4zfh6vdf")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'relax-requirements + (lambda _ + (substitute* "setup.cfg" + (("^tests_require.*") ""))))))) + (native-inputs (list python-setuptools python-wheel unzip)) + (home-page "https://github.com/juancarlospaco/css-html-js-minify") + (synopsis "CSS/HTML/JS minifier") + (description + "This package provides a single-file minifier for CSS, HTML, and JavaScript.") + ;; XXX: The README just says "GNU GPL and GNU LGPL and MIT". From + ;; <https://github.com/juancarlospaco/css-html-js-minify/issues/9> it + ;; looks like the user can choose a license. + (license (list license:gpl3+ license:lgpl3+ license:expat))))) (define-public python-aws-sam-translator (package diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index e7b3b98c96..91c098e681 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1010,6 +1010,36 @@ new type and helper functions to integrate it nicely with the Python stdlib.") (license license:expat))) +(define-public python-session-info2 + (package + (name "python-session-info2") + (version "0.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "session_info2" version)) + (sha256 + (base32 "0xs1mcdz0hf626m3421ryv4f7b5rixz2hm8x88czx2i9196x69g9")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "--deselect=tests/test_synthetic.py::test_gpu" + ;; Tests require Jupyter Client. + "--ignore=tests/test_subprocess.py"))) + (native-inputs + (list python-hatch-docstring-description + python-hatch-vcs + python-hatchling + python-pytest + python-pytest-asyncio)) + (home-page "https://session-info2.readthedocs.io/") + (synopsis "Print versions of imported packages") + (description + "This package implements a functionality to print versions of imported +Python packages.") + (license license:mpl2.0))) + (define-public python-shxparser (package (name "python-shxparser") @@ -5348,29 +5378,6 @@ for additional processing.") "Fastprogress is a progress bar for Jupyter Notebook and console.") (license license:asl2.0))) -(define-public python-case - (package - (name "python-case") - (version "1.5.3") - (source - (origin - (method url-fetch) - (uri (pypi-uri "case" version)) - (sha256 - (base32 - "1cagg06vfph864s6l5jb0zqliwxh647bki8j6lf4a4qrv40jnhs8")))) - (build-system python-build-system) - (propagated-inputs - (list python-mock python-nose python-six)) - (native-inputs - (list python-coverage)) - (home-page "https://github.com/celery/case") - (synopsis "Unittest utilities and convenience methods") - (description - "The @code{case} package provides utilities on top of unittest, including -some helpful Python 2 compatibility convenience methods.") - (license license:bsd-3))) - (define-public python-verboselogs (package (name "python-verboselogs") @@ -8592,13 +8599,13 @@ via commands such as @command{rst2man}, as well as supporting Python code.") (define-public python-docx (package (name "python-docx") - (version "1.1.2") + (version "1.2.0") (source (origin (method url-fetch) (uri (pypi-uri "python_docx" version)) (sha256 (base32 - "1z9ffsvksaaxr90ijzq4k3adzb6p5ipy2j3rrbfjl05rjlpg5w8c")))) + "1ki0cbw3hbiz51ww3fi3vi770lk5r0c62889r819r756v2vxgjbv")))) (build-system pyproject-build-system) (native-inputs (list behave @@ -11230,17 +11237,11 @@ To address this and enable easy cycling over arbitrary @code{kwargs}, the (file-name (git-file-name name version)) (sha256 (base32 "0x7nkphr6g5ql5fvgss8l56rgiyjgh6fm8zzs73i94ci9wzlm63w")))) - (build-system python-build-system) + (build-system pyproject-build-system) (propagated-inputs (list python-numpy)) (native-inputs - (list python-nose)) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "nosetests" "--all-modules" "-v" "colorspacious")))))) + (list python-nose python-setuptools python-wheel)) (home-page "https://github.com/njsmith/colorspacious") (synopsis "Python library for colorspace conversions") (description "@code{colorspacious} is a Python library that lets you @@ -11486,16 +11487,20 @@ toolkits.") #:tests? #f ;we're only generating documentation #:phases #~(modify-phases %standard-phases + (add-after 'unpack 'avoid-external-deps + (lambda _ + ;; XXX: Avoid theme-switcher to avoid sphinx error + ;; TemplateNotFound('theme-switcher.html') + ;; XXX: Avoid version-switcher because it depends on an + ;; external file, and we pack only one version anyway. + (substitute* "doc/conf.py" + (("\ +\"navbar_end\": \\[\"theme-switcher\", \"version-switcher\", ") + "\"navbar_end\": [")))) (replace 'build (lambda _ (setenv "HOME" "/tmp") (chdir "doc") - (substitute* "conf.py" - ;; The sphinx_panels extension causes a "TypeError: first - ;; argument must be callable" to be raised when generating the - ;; info target; remove it (see: - ;; https://github.com/executablebooks/sphinx-panels/issues/74). - ((".*'sphinx_panels',.*") "")) (invoke "make" "html" "info" ;; Don't abort on warnings; build in parallel. (format #f "SPHINXOPTS=-j~a" (parallel-job-count))))) @@ -11518,25 +11523,30 @@ toolkits.") inkscape/pinned python-colorspacious python-ipython + python-ipykernel python-ipywidgets python-mpl-sphinx-theme python-numpydoc python-scipy python-sphinx python-sphinx-copybutton + python-sphinx-design python-sphinx-gallery python-sphinxcontrib-svg2pdfconverter texinfo - texlive-amsfonts - texlive-amsmath - texlive-babel - texlive-etoolbox - texlive-expdlist - texlive-fontspec - texlive-times - texlive-type1cm - texlive-underscore - texlive-unicode-math)) + texlive-dvipng-bin + (texlive-local-tree + (list texlive-amsfonts + texlive-amsmath + texlive-babel + texlive-cm-super + texlive-etoolbox + texlive-expdlist + texlive-fontspec + texlive-times + texlive-type1cm + texlive-underscore + texlive-unicode-math)))) (synopsis "Documentation for the @code{python-matplotlib} package"))) (define-public python-matplotlib-inline @@ -15724,31 +15734,29 @@ SVG, EPS, PNG and terminal output.") (define-public python-seaborn (package (name "python-seaborn") - (version "0.13.1") + (version "0.13.2") (source (origin (method url-fetch) (uri (pypi-uri "seaborn" version)) (sha256 (base32 - "0ycibcs6kvd3xi4zsxna81claqifyb9dn6z6jwc5x7lqqplnbbdz")))) + "1xzzxrbxsmmk39647vcx7avzdbzxw9vz8pc8yklnakcgk100mrlk")))) (build-system pyproject-build-system) + (arguments + (list + ;; 2358 passed, 16 skipped, 6 xfailed, 17 warnings + #:test-flags + #~(list "--numprocesses" (number->string (parallel-job-count)) ))) + (native-inputs + (list python-flit-core + python-pytest + python-pytest-xdist)) (propagated-inputs (list python-matplotlib python-numpy python-pandas python-scipy python-statsmodels)) - (native-inputs - (list python-flake8 - python-flit-core - python-ipykernel - python-nbconvert - python-numpydoc - python-mypy - python-pytest - python-pytest-cov - python-pytest-xdist - python-pyyaml)) (home-page "https://seaborn.pydata.org/") (synopsis "Statistical data visualization") (description @@ -21492,7 +21500,6 @@ applications.") #~(list "--ignore" "t/unit/transport/test_azurestoragequeues.py"))) (native-inputs (list python-botocore - python-case python-pyro4 python-pytest python-pytest-sugar @@ -21530,8 +21537,7 @@ RabbitMQ messaging server is the most popular implementation.") '("billiard/popen_spawn_win32.py" "billiard/_win.py"))))))) (native-inputs - (list python-case python-psutil python-pytest python-setuptools - python-wheel)) + (list python-psutil python-pytest python-setuptools python-wheel)) (home-page "https://github.com/celery/billiard") (synopsis "Python multiprocessing fork with improvements and bugfixes") (description @@ -21569,8 +21575,7 @@ Python 2.4 and 2.5, and will draw its fixes/improvements from python-trunk.") (("tzdata.*") "tzdata\n"))))))) (native-inputs - (list python-case - python-dnspython + (list python-dnspython python-flaky python-google-cloud-storage python-iniconfig @@ -30184,14 +30189,14 @@ codecs for use in data storage and communication applications.") (define-public python-zarr (package (name "python-zarr") - (version "2.18.4") + (version "2.18.7") (source (origin (method url-fetch) (uri (pypi-uri "zarr" version)) (sha256 (base32 - "1fr41j8mxhbj7psn00416qs3nm12djhhmybgpqdax0q6vpg0wy9p")))) + "1xbjjpjskykbdskck5p1f0grh6wq36437ll0n5kazi6s2ipzdf5j")))) (build-system pyproject-build-system) (arguments (list @@ -30228,11 +30233,6 @@ codecs for use in data storage and communication applications.") (native-inputs (list python-pytest python-pytest-xdist - python-pytest-doctestplus - python-sphinx - python-sphinx-copybutton - python-sphinx-design - python-sphinx-issues python-setuptools python-wheel)) (home-page "https://github.com/zarr-developers/zarr-python") @@ -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 diff --git a/gnu/packages/ruby-xyz.scm b/gnu/packages/ruby-xyz.scm index 80bf94a365..13539b5364 100644 --- a/gnu/packages/ruby-xyz.scm +++ b/gnu/packages/ruby-xyz.scm @@ -11644,7 +11644,7 @@ part of the Prawn PDF generator.") (define-public ruby-puma (package (name "ruby-puma") - (version "6.6.0") + (version "6.6.1") (source (origin (method git-fetch) ;for tests @@ -11654,7 +11654,7 @@ part of the Prawn PDF generator.") (file-name (git-file-name name version)) (sha256 (base32 - "1pdd7s403pi4y75s1sb4jkghhmm2w9zcqifj7z7yx4z0qfs7lvzv")))) + "0wppz08pfwz1ypidjiz199i5jl2qvb9ppg0sdvf0kc7azpx5mphl")))) (build-system ruby-build-system) (arguments (list @@ -14049,37 +14049,30 @@ common interface over different adapters.") (define-public ruby-nio4r (package (name "ruby-nio4r") - (version "2.5.2") + (version "2.7.4") (source (origin - (method url-fetch) - (uri (rubygems-uri "nio4r" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/socketry/nio4r") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0gnmvbryr521r135yz5bv8354m7xn6miiapfgpg1bnwsvxz8xj6c")))) + "1planm0yrzgkjqvxbfrcp477k030f1cyplpf8g1p7dppgzk2iqqm")))) (build-system ruby-build-system) (arguments - '(#:phases + '(#:test-target "spec" + #:phases (modify-phases %standard-phases - (add-after 'unpack 'remove-unnecessary-dependencies + (add-after 'extract-gemspec 'delete-certificate (lambda _ - (substitute* "spec/spec_helper.rb" - ;; Coveralls is for uploading test coverage information to an - ;; online service, and thus unnecessary for building the Guix - ;; package - (("require \"coveralls\"") "") - (("Coveralls\\.wear!") "") - ;; Remove rspec/retry as we are not retrying the tests - (("require \"rspec/retry\"") "") - (("config\\.display_try_failure_messages = true") "") - (("config\\.verbose_retry = true") "")))) + (substitute* "nio4r.gemspec" + (("spec.cert_chain = .*") "") + (("spec.signing_key = .*") "")))) (add-before 'check 'compile (lambda _ - (invoke "rake" "compile"))) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "rspec"))))))) + (invoke "rake" "compile")))))) (native-inputs (list bundler ruby-rake-compiler ruby-rspec ruby-rubocop)) (synopsis "New I/O for Ruby") diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm index 649bb33cf4..1211a5f3e7 100644 --- a/gnu/packages/sphinx.scm +++ b/gnu/packages/sphinx.scm @@ -672,18 +672,32 @@ grid layout. It is no longer maintained and users are encouraged to use (package (name "python-sphinxcontrib-programoutput") (version "0.17") - (source (origin - (method url-fetch) - (uri (pypi-uri "sphinxcontrib-programoutput" version)) - (sha256 - (base32 - "0zrb2ny6y7nk84qmw5mds84fc4pxgqf4sjy7bk95b0zfrawfj3ih")))) - (build-system python-build-system) - (propagated-inputs (list python-sphinx)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/OpenNTI/sphinxcontrib-programoutput") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "02hpx6jnsx0cb1d1kk56gpj69x51m2d0prwwhsyhpwv257s64kz3")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'cleanup + (lambda* (#:key inputs outputs #:allow-other-keys) + (delete-file-recursively + (string-append (site-packages inputs outputs) + "/sphinxcontrib/programoutput/tests")) + (delete-file "src/sphinxcontrib/programoutput/__init__.py")))))) + (propagated-inputs (list python-sphinx)) + (native-inputs (list python-pytest python-setuptools python-wheel)) + (home-page "https://github.com/OpenNTI/sphinxcontrib-programoutput") (synopsis "Sphinx extension to include program output") (description "A Sphinx extension to literally insert the output of arbitrary commands into documents, helping you to keep your command examples up to date.") - (home-page "https://github.com/NextThought/sphinxcontrib-programoutput") (license license:bsd-2))) (define-public python-sphinxcontrib-qthelp @@ -1278,13 +1292,17 @@ Syntax Tree} at different stages: before transforms, after transforms, etc.") (name "python-nbsphinx") (version "0.8.8") (source - (origin - (method url-fetch) - (uri (pypi-uri "nbsphinx" version)) - (sha256 - (base32 - "1v1lzkfx2lslhslqb110zxmm4dmdg6hs2rahf713c2rk9f10q2dm")))) - (build-system python-build-system) + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/spatialaudio/nbsphinx") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0s98kab9jddy4jskllqcmwr222i85a25asi78f8nf0cpqbsvy1k6")))) + (build-system pyproject-build-system) + (arguments + (list #:tests? #f)) ; No tests upstream. (propagated-inputs (list python-docutils python-jinja2 @@ -1292,6 +1310,8 @@ Syntax Tree} at different stages: before transforms, after transforms, etc.") python-nbformat python-sphinx python-traitlets)) + (native-inputs + (list python-setuptools python-wheel)) (home-page "https://nbsphinx.readthedocs.io/") (synopsis "Jupyter Notebook Tools for Sphinx") (description "@code{python-nbsphinx} is a Sphinx extension that diff --git a/gnu/packages/spreadsheet.scm b/gnu/packages/spreadsheet.scm index 8c6e543a50..2de8139342 100644 --- a/gnu/packages/spreadsheet.scm +++ b/gnu/packages/spreadsheet.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2020, 2021 Ryan Prior <rprior@protonmail.com> ;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech> -;;; Copyright © 2021, 2023-2024 jgart <jgart@dismail.de> +;;; Copyright © 2021, 2023-2025 jgart <jgart@dismail.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,6 +26,7 @@ #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system python) + #:use-module (guix build-system pyproject) #:use-module (guix licenses) #:use-module (gnu packages base) #:use-module (gnu packages bash) @@ -36,6 +37,7 @@ #:use-module (gnu packages ncurses) #:use-module (gnu packages time) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python-build) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages statistics) @@ -99,15 +101,20 @@ (define-public visidata (package (name "visidata") - (version "3.1.1") + (version "3.2") (source + ;; PyPI tarball is missing the requirements.txt file. (origin - (method url-fetch) - (uri (pypi-uri "visidata" version)) + (method git-fetch) + (uri + (git-reference + (url "https://github.com/saulpw/visidata") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0cdhx0n79n9z5d22nr90kkg93ndxcnyl4margs4f8l88iwaq8i4c")))) - (build-system python-build-system) + "1rpds8x7hdwh48v2dja1qq5bamnd63rb8p416nnn8d2n58xkvs4h")))) + (build-system pyproject-build-system) (arguments (list #:phases #~(modify-phases %standard-phases @@ -124,7 +131,9 @@ python-openpyxl python-xlrd)) (native-inputs - (list python-pytest)) + (list python-pytest + python-setuptools + python-wheel)) (synopsis "Terminal spreadsheet multitool for discovering and arranging data") (description "VisiData is an interactive multitool for tabular data. It combines the diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index bcbd0f30f7..e685cdf4a5 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -468,6 +468,63 @@ publication-quality data plots. A large amount of 3rd-party packages are available, greatly increasing its breadth and scope.") (license license:gpl3+))) +(define-public python-dcor + (package + (name "python-dcor") + (version "0.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "dcor" version)) + (sha256 + (base32 "0cc4an2p3ifm62d50w5h83myyhck6vcnrgp691rpid0x21v9glzm")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "-k" (string-join + ;; TODO: Report upstream, failing with NumPy deprecation + ;; warning and errors: + ;; AttributeError: 'numpy.ndarray' object has no attribute '_array'. + ;; AttributeError: module 'numpy' has no attribute 'bool'. + (list "not test_u_v_statistics" + "test_same_distribution_different_means" + "test_same_distribution_same_parameters" + "test_independent_variables" + "test_same_variable") + " and not ") + "dcor/tests"))) + (native-inputs + (list python-pytest + python-setuptools-next)) + (propagated-inputs + (list python-joblib + python-numba + python-numpy + python-scipy)) + (home-page "https://dcor.readthedocs.io/") + (synopsis "Distance correlation and related E-statistics in Python") + (description + "@code{dcor} is distance correlation and energy statistics in Python. + +E-statistics are functions of distances between statistical observations in +metric spaces. Distance covariance and distance correlation are dependency +measures between random vectors introduced in +@url{https://github.com/vnmabus/dcor#srb07,[SRB07]} with a simple E-statistic +estimator. + +This package offers functions for calculating several E-statistics such as: + +@itemize +@item estimator of the energy distance +@url{https://github.com/vnmabus/dcor#sr13,[SR13]} +@item biased and unbiased estimators of distance covariance and distance +correlation @url{https://github.com/vnmabus/dcor#srb07,[SRB07]} +@item estimators of the partial distance covariance and partial distance +covariance @url{https://github.com/vnmabus/dcor#sr14,[SR14]} +@end itemize") + (license license:expat))) + (define-public python-dynesty (package (name "python-dynesty") @@ -1272,13 +1329,13 @@ sampler for Markov chain Monte Carlo (MCMC).") (define-public python-statsmodels (package (name "python-statsmodels") - (version "0.14.2") + (version "0.14.4") (source (origin (method url-fetch) (uri (pypi-uri "statsmodels" version)) (sha256 - (base32 "1bfnxkzdcz5fj7hh1gc021hc3b9181f1mfph4kd1ra6kg8a501c9")) + (base32 "0rwbi57ckg7hgrmdf0g1paqcvp5n6f06xfzrcz075p30j3ry0sax")) (modules '((guix build utils))) (snippet '(for-each delete-file (find-files "." "\\.c$"))))) @@ -1302,21 +1359,16 @@ sampler for Markov chain Monte Carlo (MCMC).") (string-append "import matplotlib;matplotlib.use('Agg');" line)))))))) (propagated-inputs - (list python-numpy python-packaging python-pandas python-patsy + (list python-numpy + python-packaging + python-pandas + python-patsy python-scipy)) (native-inputs - (list python-colorama - python-cython - python-flake8 - python-isort - python-joblib + (list python-cython-3 python-matplotlib - python-pytest - python-pytest-randomly - python-pytest-xdist - python-setuptools-scm - python-setuptools - python-wheel)) + python-setuptools-next + python-setuptools-scm)) (home-page (string-append "https://www.statsmodels.org/v" version "/")) (synopsis "Statistical modeling and econometrics in Python") @@ -2966,7 +3018,7 @@ functions.") (define-public python-rchitect (package (name "python-rchitect") - (version "0.4.7") + (version "0.4.8") (source (origin (method git-fetch) @@ -2975,7 +3027,7 @@ functions.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1ijbb0v77ir7j64r4r4kznv03wyc57rcqa9jnsc46476il79dcrk")))) + (base32 "0r41ad8mk7bmqsw96sizahzvz1z6cp4rpll166y0yhwdrv86nmj7")))) (build-system pyproject-build-system) (propagated-inputs (list python-cffi python-packaging python-six)) (native-inputs (list python-pytest @@ -2996,7 +3048,7 @@ main use is as the driver for radian, the R console.") (define-public python-radian (package (name "python-radian") - (version "0.6.13") + (version "0.6.15") (source (origin (method git-fetch) @@ -3005,7 +3057,7 @@ main use is as the driver for radian, the R console.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0nnwgvifhsxdac7rr9d2zspc97xx0vyzxn1v9g4bnm9061rragc3")))) + (base32 "089ys59cnw5l5k0656arhn805j8pkw21q4qf7gq9p9hifi1lpnpm")))) (build-system pyproject-build-system) (arguments (list diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 4d14c334ae..e34c33b989 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -1071,28 +1071,19 @@ usable with any list--including files, command history, processes and more.") (define-public python-pyte (package (name "python-pyte") - (version "0.8.1") + (version "0.8.2") (source (origin - (method url-fetch) - (uri (pypi-uri "pyte" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/selectel/pyte") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 - "1c4pn2qijk6q8q25klfq365gbvlkrh8c0lz5lrr7b7kmh6vx3gxr")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'remove-failing-test - ;; TODO: Reenable when the `captured` files required by this test - ;; are included in the archive. - (lambda _ - (delete-file "tests/test_input_output.py") - #t))))) - (propagated-inputs - (list python-wcwidth)) - (native-inputs - (list python-pytest-runner python-pytest)) + (base32 "1cdhnl6rp4kcbs3s766519k80pf5ma18mgv6cyidf4nbgysjavmv")))) + (build-system pyproject-build-system) + (propagated-inputs (list python-wcwidth)) + (native-inputs (list python-pytest python-setuptools python-wheel)) (home-page "https://pyte.readthedocs.io/") (synopsis "Simple VTXXX-compatible terminal emulator") (description "@code{pyte} is an in-memory VTxxx-compatible terminal @@ -1136,13 +1127,13 @@ than a terminal.") (define-public python-curtsies (package (name "python-curtsies") - (version "0.4.2") + (version "0.4.3") (source (origin (method url-fetch) (uri (pypi-uri "curtsies" version)) (sha256 - (base32 "03kn093lr84qg8fmqrn1jb0zak6a1ir9q106lm8jijfpbchk7gkf")))) + (base32 "09c8c4vssm2zkq017xj99vhcrisfva4nkz92w8dly4jjz7xhyahh")))) (build-system pyproject-build-system) (native-inputs (list python-pyte diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm index 63b8372c82..2fe41d1358 100644 --- a/gnu/packages/time.scm +++ b/gnu/packages/time.scm @@ -164,18 +164,33 @@ applications, and several support tools.") (version "1.1.8") (source (origin - (method url-fetch) - (uri (pypi-uri "pytimeparse" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/wroberts/pytimeparse") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 - "02kaambsgpjx3zi42j6l11rwms2p35b9hsk4f3kdf979gd3kcqg8")))) + (base32 "1r5ybq2brdinqlvvdmfv2lz4g1hwz2zd6k21qwzzw17jfxdv2m6g")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'cleanup + (lambda* (#:key inputs outputs #:allow-other-keys) + (delete-file-recursively + (string-append (site-packages inputs outputs) + "/pytimeparse/tests")))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "python" "-m" "unittest"))))))) (native-inputs - (list python-nose)) - (build-system python-build-system) + (list python-setuptools python-wheel)) (home-page "https://github.com/wroberts/pytimeparse") (synopsis "Time expression parser") - (description "This small Python module parses various kinds of time -expressions.") + (description + "This small Python module parses various kinds of time expressions.") (license expat))) (define-public python-pytzdata diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 8c1f887a29..8a0d2daf5a 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -9859,43 +9859,6 @@ provided by a TLS reverse proxy (e.g. tlstunnel, hitch or stunnel).") the Fediring.") (license (list license:cc0 license:bsd-2))))) -(define-public archivebox - (package - (name "archivebox") - (version "0.6.2") - (source (origin - (method url-fetch) - (uri (pypi-uri name version)) - (sha256 - (base32 - "1mnq82ynq01l7vx957bbx4bvgwdh59qsnx6pdydaqszbakp74yyc")))) - (build-system python-build-system) - (propagated-inputs - (list curl - node-lts)) - (inputs - (list python - youtube-dl - wget - git - python-w3lib - python-ipython - python-croniter - python-crontab - python-dateparser - python-django-extensions - python-django-3.1.14 - python-mypy-extensions)) - (native-inputs - (list python-wheel)) - (synopsis "Self-hosted Web archiving") - (description "ArchiveBox is a powerful, self-hosted Web archiving -solution to collect, save, and view sites you want to preserve offline. -You can feed it URLs one at a time, or schedule regular imports. It saves -snapshots of the URLs you feed it in several formats.") - (home-page "https://archivebox.io/") - (license license:expat))) - (define-public awslogs (package (name "awslogs") diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 80adb463ec..545b20d477 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -1929,43 +1929,6 @@ limited size and a few external dependencies. It is configurable via ;; LICENSE LICENSE.dwm LICENSE.tinywl (license (list license:gpl3+ license:expat license:cc0)))) -(define-public nitrogen - (package - (name "nitrogen") - (version "1.6.1") - (source (origin - (method url-fetch) - (uri (string-append "http://github.com/l3ib/nitrogen/" - "releases/download/" version "/" - name "-" version ".tar.gz")) - (sha256 - (base32 - "0zc3fl1mbhq0iyndy4ysmy8vv5c7xwf54rbgamzfhfvsgdq160pl")))) - (build-system gnu-build-system) - (inputs - (list gtk+-2 gtkmm-2 glib glibmm)) - (native-inputs - (list pkg-config)) - (home-page "http://projects.l3ib.org/nitrogen/") - (synopsis "Background browser and setter for X windows") - (description - "This package is a background browser and setter for X windows. It's -features are: - -@itemize -@item Multihead and Xinerama aware -@item Recall mode to used via startup script -@item Uses freedesktop.org standard for thumbnails -@item Can set GNOME background -@item Command lie set modes for script use -@item Inotify monitoring of browse directory -@item Lazy loading of thumbnails - conserves memory -@item \"Automatic\" set mode - determines best mode to set an image based on -its size -@item Display preview images in a tiled icon layout -@end itemize") - (license license:gpl2+))) - (define-public polybar (package (name "polybar") @@ -2590,7 +2553,7 @@ compository, supporting the following features: (define-public waybar (package (name "waybar") - (version "0.13.0") + (version "0.14.0") (source (origin (method git-fetch) @@ -2599,7 +2562,7 @@ compository, supporting the following features: (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0bdwdyxgrfv1ffabf1n4wqq1wz20qig9j9w0k76nhzw979ha7x99")))) + (base32 "1b1783382y38mzzrzw53p20lwpfs0n2npqbs91j9ddgg6xk82s4q")))) (build-system meson-build-system) (arguments (list #:configure-flags #~(list "--wrap-mode=nodownload"))) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 3d7b270bca..1af8930ce1 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -11,7 +11,7 @@ ;;; Copyright © 2015 Florian Paul Schmidt <mista.tapas@gmx.net> ;;; Copyright © 2016 Christine Lemmer-Webber <cwebber@dustycloud.org> ;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net> -;;; Copyright © 2016-2021, 2023 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016-2021, 2023, 2025 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2016 Petter <petter@mykolab.ch> @@ -906,26 +906,22 @@ typing tool (@code{wtype}, @code{xdotool}, etc.), or via standard output.") (source (origin (method url-fetch) - (uri - (string-append - "https://www.cairographics.org/releases/pixman-" - version ".tar.gz")) + (uri (string-append "https://www.cairographics.org/releases/pixman-" + version ".tar.gz")) (sha256 (base32 "0pk298iqxqr64vk3z6nhjwr6vjg1971zfrjkqy5r9zd2mppq057a")) - (patches - (search-patches - "pixman-CVE-2016-5296.patch")))) + (patches (search-patches "pixman-CVE-2016-5296.patch")))) (build-system gnu-build-system) (arguments `(#:configure-flags - (list - "--disable-static" - "--enable-timers" - "--enable-gnuplot"))) - (native-inputs - (list pkg-config)) - (inputs - (list libpng zlib)) + (list "--disable-static" + "--enable-timers" + "--enable-gnuplot" + ,@(if (target-arm32?) + `("--disable-arm-simd") + '())))) + (native-inputs (list pkg-config)) + (inputs (list libpng zlib)) (synopsis "Low-level pixel manipulation library") (description "Pixman is a low-level software library for pixel manipulation, providing features such as image compositing and trapezoid |