Compare commits

...

20 commits

Author SHA1 Message Date
Sergio Pastor Pérez
d10e50b858
gnu: compdb: Fix tests.
* gnu/packages/build-tools.scm (compdb)[arguments] <test-backend>: Use
'unittest.
[native-inputs]: Remove python-wheel.

Change-Id: I0d152fe38b648287b1a2470f1c88ee3a29034b41
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-10-01 23:58:25 +01:00
Sergey Trofimov
dadedd0ada
gnu: secretsd: Update to d12eefee.
* gnu/packages/password-utils.scm (secretsd): Update to d12eefee.
[arguments]<#:tests?>: Disable as there are no tests to run.
[inputs]: Remove unused python-xdg.

Change-Id: Ic42d9f06e5f8af6684d61a58b7944e05ae3382ce
Reviewed-by: Andreas Enge <andreas@enge.fr>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-10-01 23:36:07 +01:00
Sharlatan Hellseher
6a91766423
gnu: packages/astronomy: Sort.
This is the last bit of sorting for this module.

* gnu/packages/astronomy.scm (python-asdf-fits-schemas, python-pyavm)
(python-pysynphot, python-reproject, python-roman-datamodels): Sort
variables alphabetically.

Change-Id: Id63775688483e734300b003e55472e0bcec5a024
2025-10-01 23:21:21 +01:00
Sharlatan Hellseher
ea31e482d3
gnu: pythoncapi-compat: Update to 0.0.0-1.ab72af8.
* gnu/packages/python.scm (pythoncapi-compat): Update to
ab72af8b1a9adfccb3578eea8e9b6d5c6449f409 commit.
[source] <version> Use GIT-VERSION.

Change-Id: I3936b9e138e45b5675368e1c1eba51b9176f1374
2025-10-01 23:13:21 +01:00
Sharlatan Hellseher
2a2c873e6e
gnu: pythoncapi-compat: Move to python.
* gnu/packages/python-xyz.scm (pythoncapi-compat): Move from here ...
* gnu/packages/python.scm: ... to here.

Change-Id: If3ac42200be381f9aafedbf0468e7381daaf2471
2025-10-01 23:09:05 +01:00
Sharlatan Hellseher
851b7f175a
gnu: packages/python-xyz: Sort.
* gnu/packages/python-xyz.scm: (python-zarr, python-zeroc-ice,
python-zeroc-ice-3.6, python-zeroconf, python-zict, python-zipfly,
python-zipstream-new): Sort variables alphabetically.

Change-Id: If110fef5d55964da9d30be71699d92ae93c387d3
2025-10-01 23:04:19 +01:00
Sharlatan Hellseher
0974259232
gnu: packages/python-xyz: Remove (gnu packages aidc) module.
* gnu/packages/python-xyz.scm: Remove (gnu packages aidc) module.

Change-Id: I4753ec9444390093f94e51eaea1f29e4c46d0444
2025-10-01 22:56:20 +01:00
Sharlatan Hellseher
981bf236a9
gnu: python-pyzbar: Move to aidc.
* gnu/packages/python-xyz.scm (python-pyzbar): Move from here ...
* gnu/packages/aidc.scm: ... to here.
* gnu/packages/engineering.scm: Add aidc module.

Change-Id: I0dc9a15c97b2a96bca51edbe5b8563bb89ff1e6e
2025-10-01 22:55:26 +01:00
Sharlatan Hellseher
9a29453aa6
gnu: python-pyzbar: Update to 0.1.9.
* gnu/packages/python-xyz.scm (python-pyzbar): Update to 0.1.9.
[build-system]: Switch to pyproject-build-system.
[arguments] <test-backend>: Use 'unittest.
[native-inputs]: Add python-setuptools.

Change-Id: Ifa9a37eff2308c9d3a87902c610e010d49dd75d7
2025-10-01 22:55:25 +01:00
Sharlatan Hellseher
9635b811c0
gnu: python-pyzbar: Refresh package style.
* gnu/packages/python-xyz.scm (python-pyzbar): Use G-expressions, remove
trailing #t from lambdas, fix indentation,

Change-Id: Ie73b72a61cc22190a9ef834d449bf76c90a392b6
2025-10-01 22:55:25 +01:00
Sharlatan Hellseher
ad1e6ce38a
gnu: python-zbarlight: Move to aidc.
* gnu/packages/python-xyz.scm (python-zbarlight): Move from here ...
* gnu/packages/aidc.scm: ... to here.

Change-Id: Id42c44607319c32b76431491fa6c1120c638179a
2025-10-01 22:55:25 +01:00
Sharlatan Hellseher
968069145b
gnu: python-zbarlight: Fix tests.
* gnu/packages/python-xyz.scm (python-zbarlight)[source]: Switch to
git-fetch providing tests.
[propagated-inputs]: Remove python-setuptools.
[native-inputs]: Remove python-wheel; add python-pytest and
python-setuptools.

Change-Id: I9952f114c1cabf6270d2a990f39cf8e4b00738ae
2025-10-01 22:27:47 +01:00
Sharlatan Hellseher
f6034efe9c
gnu: python-zipfly: Fix license.
* gnu/packages/python-xyz.scm (python-zipfly):[license]: License is
Expat (MIT) on PyPI <https://pypi.org/project/zipfly/> and
GitHub <https://raw.githubusercontent.com/sandes/zipfly/refs/tags/v6.0.5/LICENSE>.

Change-Id: I4d713e0e97988d2530a273ed5f58babea649b9e4
2025-10-01 22:18:41 +01:00
Sharlatan Hellseher
24ba37f00f
gnu: python-zipfly: Enable tests.
* gnu/packages/python-xyz.scm (python-zipfly)[arguments] <tests?>: Enable.
<test-backend>: Use 'unittest.
[native-inputs]: Remove python-wheel.

Change-Id: I5415fd7b23616ac0f12f490cfffa81f408ba47be
2025-10-01 22:16:54 +01:00
Sharlatan Hellseher
abd9473bf1
gnu: python-zipstream-new: Switch to pyproject.
* gnu/packages/python-xyz.scm (python-zipstream-new)[build-system]:
Switch to pyproject-build-system.
[arguments] <test-backend>: Use 'unittest.
[native-inputs]: Remove python-nose; add python-setuptools.

Change-Id: If57ae0a3fc203e76335c2da2d7718c6f9f81e3f9
2025-10-01 22:14:14 +01:00
Ghislain Vaillant
93823d89aa
gnu: Add python-pybtex-apa-style.
* gnu/packages/python-xyz.scm (python-pybtex-apa-style): New variable.

Change-Id: Ic73c4e01bd1e0d2a044ff0c2d9baaa8a7dc18fac
Reviewed-by: Nicolas Graves <ngraves@ngraves.fr>
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-10-01 22:09:49 +01:00
Ghislain Vaillant
dc74850945
gnu: Add python-num2words.
* gnu/packages/python-xyz.scm (python-num2words): New variable.

Change-Id: Ia42bd80ef5702bfa75c37c387b57922713216105
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-10-01 20:40:17 +01:00
Ghislain Vaillant
1f33dd1afa
gnu: Add python-darkdetect.
* gnu/packages/python-xyz.scm (python-darkdetect): New variable.

Change-Id: I3c991b8fa03700f7114a44b3d3df576df0d15b6f
Reviewed-by: Nicolas Graves <ngraves@ngraves.fr>
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-10-01 20:33:55 +01:00
Sharlatan Hellseher
44db09e0d1
gnu: frescobaldi: Update to 4.0.4, build with Qt6.
* gnu/packages/music.scm (frescobaldi): Update to 4.0.4.
[source]: Switch to git-fetch.
[buld-system]: Switch to pyproject-build-system.
[arguments] <phases>: Drop all as no longer required.
[inputs]: Remove python-poppler-qt5, python-pyportmidi, python-pyqt,
python-sip, and qtsvg-5; add python-pyqt-6, python-pyqt6-sip, and
python-pyqtwebengine-6.
[native-inputs]: Add python-hatchling.

Change-Id: Ia5a4243b2561a0c523e420742216a4a006fbd78d
Reviewed-by: Gabriel Wicki <gabriel@erlikon.ch>
2025-10-01 20:13:00 +01:00
Jake Forster
ccf72a920a
gnu: insight-toolkit: Fix build.
* gnu/packages/image-processing.scm (insight-toolkit)
[inputs]: Remove mesa-opencl; add opencl-headers and opencl-icd-loader.

Change-Id: I922dda07d3695ecec79a7207dce7ab71fd061c71
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-10-01 20:12:02 +01:00
9 changed files with 688 additions and 610 deletions

View file

@ -4,7 +4,9 @@
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2018, 2019, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
@ -44,14 +46,88 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages python-build)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages qt)
#:use-module (gnu packages video)
#:use-module (guix build-system cmake)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix build-system gnu)
#:use-module (guix build-system glib-or-gtk))
(define-public python-pyzbar
(package
(name "python-pyzbar")
(version "0.1.9")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/NaturalHistoryMuseum/pyzbar")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1df1dvr8i2wyr2vw5pq8rlz2wm4xqda0wbgja19bvql1m9im11ph"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-backend #~'unittest
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'remove-failing-test
(lambda _
;; This tests if find_library was called once, but we remove
;; the call in the stage below to make the library find libzbar.
(delete-file "pyzbar/tests/test_zbar_library.py")))
(add-before 'build 'set-library-file-name
(lambda _
(let ((libzbar #$(this-package-input "zbar")))
(substitute* "pyzbar/zbar_library.py"
(("find_library\\('zbar'\\)")
(string-append "'" libzbar "/lib/libzbar.so.0'")))))))))
(native-inputs
(list pkg-config python-numpy python-pillow python-setuptools))
(inputs
(list zbar))
(home-page "https://github.com/NaturalHistoryMuseum/pyzbar/")
(synopsis "Read one-dimensional barcodes and QR codes")
(description
"Read one-dimensional barcodes and QR codes using the zbar library.
Features:
@itemize
@item Pure python
@item Works with PIL / Pillow images, OpenCV / numpy ndarrays, and raw bytes
@item Decodes locations of barcodes
@item No dependencies, other than the zbar library itself
@end itemize")
(license license:expat)))
(define-public python-zbarlight
(package
(name "python-zbarlight")
(version "3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Polyconseil/zbarlight")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1radfpfhfhkx3xnz01bqr5l9pl2zv70zis6l2kw1gwqbfw65r6w6"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-pillow))
(inputs (list zbar))
(native-inputs (list python-pytest python-setuptools))
(home-page "https://github.com/Polyconseil/zbarlight")
(synopsis "Simple Python wrapper for the zbar barcode library")
(description "Zbarlight is a simple wrapper for the zbar library. It can
read all zbar supported codes.")
(license license:bsd-3)))
(define-public zint
(package
(name "zint")

View file

@ -2286,6 +2286,47 @@ Users should not need to install this directly; instead, install an
implementation package such as asdf-astropy.")
(license license:bsd-3))))
(define-public python-asdf-fits-schemas
(hidden-package
;; This package was never released and has been archived. The schemas in
;; this package were never removed from and will continue to be maintained
;; in <https://github.com/asdf-format/asdf-standard>.
(let ((commit "6321c0ae4e44c9a59ccf81a446f9d9e22fd42b55")
(revision "2"))
(package
(name "python-asdf-fits-schemas")
(version (git-version "0.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/asdf-format/asdf-fits-schemas")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0p0m1sgnv9yqk0l0w15skvfshl47x0gc7lg6p2x83158hjyix5q6"))))
(build-system pyproject-build-system)
(arguments
(list
#:tests? #f ; cycle with python-asdf
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-version
(lambda _
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" "0.0.1"))))))
(native-inputs
(list python-setuptools
python-setuptools-scm
python-wheel))
(propagated-inputs
(list python-asdf-standard
python-importlib-resources))
(home-page "https://github.com/asdf-format/asdf-fits-schemas")
(synopsis "ASDF schemas to support the FITS format")
(description
"This package provides ASDF schemas for validating FITS tags.")
(license license:bsd-3)))))
(define-public python-asdf-standard
(package
(name "python-asdf-standard")
@ -6323,6 +6364,34 @@ position-frequency slice.")
(list python-setuptools
python-wheel)))))
(define-public python-pyavm
(package
(name "python-pyavm")
(version "0.9.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PyAVM" version))
(sha256
(base32 "0vgjqvddq4a5lnmg8msm7fwqs3r6fc748xzvnhyvc387h0z8pdxk"))))
(build-system pyproject-build-system)
(native-inputs
(list python-pillow
python-pytest
python-setuptools
python-setuptools-scm
python-wheel))
(propagated-inputs
(list python-astropy
python-numpy))
(home-page "https://astrofrog.github.io/pyavm/")
(synopsis "Simple pure-python AVM meta-data handling")
(description
"PyAVM is a module to represent, read, and write metadata following the
@acronym{AVM, Astronomy Visualization Metadata} standard provided by
@url{https://www.virtualastronomy.org/avm_metadata.php, vamp} project.")
(license license:expat)))
(define-public python-pycpl
(package
(name "python-pycpl")
@ -6886,6 +6955,58 @@ experiments. It is a large refactor of
memory usage, improving performance and run in parallel with MPI.")
(license license:bsd-3)))
(define-public python-pysynphot
;; XXX: 2.0.0 was released in 2021 there are a lot of changes since that
;; time and it failed to build with python-astropy 6.0.0, use the latest
;; upstream commit for now.
(let ((commit "54e9e2a624910c4d177ca70f8e9fb8110c8fae5b")
(revision "0"))
(package
(name "python-pysynphot")
(version (git-version "2.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/spacetelescope/pysynphot")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "09sivpfqilk86zp8k5wmrs4g48m4kypn34jcy95y5h4ygbn5zbzy"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-version
(lambda _
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" "2.0.0")))
(add-before 'check 'set-env-data-path
(lambda _
(setenv "PYSYN_CDBS" (string-append #$output "/crds")))))))
(native-inputs
(list python-pytest
python-pytest-remotedata
python-setuptools
python-setuptools-scm
python-wheel))
(propagated-inputs
(list python-astropy
python-beautifulsoup4
python-numpy
python-pytest-astropy-header
python-six))
(home-page "https://github.com/spacetelescope/pysynphot")
(synopsis "Python Synthetic Photometry Utilities")
(description
"Astrolib PySynphot (hereafter referred to only as pysynphot) is an
object-oriented replacement for STSDAS SYNPHOT synthetic photometry package in
IRAF. @code{pysynphot} simulates photometric data and spectra as they are
observed with the Hubble Space Telescope (HST). Passbands for standard
photometric systems are available, and users can incorporate their own filters,
spectra, and data.")
(license license:bsd-3))))
(define-public python-pyvo
(package
(name "python-pyvo")
@ -7227,6 +7348,134 @@ solar physics.")
PSF} describing how the optical system spreads light from sources.")
(license license:expat)))
(define-public python-reproject
(package
(name "python-reproject")
(version "0.14.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "reproject" version))
(sha256
(base32 "0yg5dga054xdwsx75q204h04gmrw0mgayc74l4rpymcbkckymj2k"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "--arraydiff"
"--arraydiff-default-format=fits"
"--numprocesses" (number->string (parallel-job-count))
"--pyargs" "reproject")
#:phases
#~(modify-phases %standard-phases
;; setup.py was removed in a659a260bdd7635cddc8f33c4ea04a3b6d8c1f84
;; for some unknown reason, which caused the package to fail to
;; build. It is being recreated based on that commit.
;; TODO: Check how to implement it in python-build-system.
(add-after 'unpack 'create-setup.py
(lambda _
(call-with-output-file "setup.py"
(lambda (port)
(format port "from setuptools import setup
from extension_helpers import get_extensions
setup(ext_modules=get_extensions())")))))
(add-before 'install 'writable-compiler
(lambda _
(make-file-writable "reproject/_compiler.c")))
(add-before 'check 'writable-compiler
(lambda _
(make-file-writable "reproject/_compiler.c")))
(add-before 'check 'prepare-test-environment
(lambda _
(setenv "HOME" "/tmp")
;; Cython extensions have to be built before running the tests.
(invoke "python" "setup.py" "build_ext" "--inplace"))))))
(propagated-inputs
(list python-asdf
python-astropy
python-astropy-healpix
python-cloudpickle
python-dask
python-fsspec
python-gwcs
python-numpy
python-pyvo
python-scipy
python-shapely
python-zarr))
(native-inputs
(list python-cython-3
python-extension-helpers
python-asdf
python-gwcs
python-pytest-astropy
python-pytest-xdist
python-pyvo
;; python-sunpy ; circular dependencies, test optional
python-setuptools-scm
python-wheel))
(home-page "https://reproject.readthedocs.io")
(synopsis "Astronomical image reprojection in Python")
(description
"This package provides a functionality to reproject astronomical images using
various techniques via a uniform interface, where reprojection is the
re-gridding of images from one world coordinate system to another e.g.
changing the pixel resolution, orientation, coordinate system.")
(license license:bsd-3)))
(define-public python-roman-datamodels
(package
(name "python-roman-datamodels")
(version "0.27.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "roman_datamodels" version))
(sha256
(base32 "1631jpv7mcrcka6bfxp04ih43wlm9pmqsqxckqyv6y9jgsipjxy3"))))
(build-system pyproject-build-system)
(arguments
(list
;; tests: 4185 passed, 1 skipped, 1 xfailed
#:test-flags
#~(list "--numprocesses" (number->string (parallel-job-count)))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-env
(lambda _
(setenv "HOME" "/tmp"))))))
(native-inputs
(list python-pandas
python-pytest
python-pytest-doctestplus
python-pytest-env
python-pytest-xdist
python-setuptools
python-setuptools-scm
python-wheel))
(propagated-inputs
(list python-asdf
python-asdf-astropy
python-asdf-standard
python-astropy
python-gwcs
python-lz4
python-numpy
python-pyarrow
python-rad))
(home-page "https://github.com/spacetelescope/roman_datamodels")
(synopsis "Roman Datamodels Support")
(description
"This package provides a Python package of Roman Datamodels for the
calibration pipelines started with the @acronym{JWST, James Webb Space
Telescope} calibration pipelines. The goal for the JWST pipelines was motivated
primarily by the need to support FITS data files, specifically with isolating
the details of where metadata and data were located in the FITS file from the
representation of the same items within the Python code. That is not a concern
for Roman since FITS format data files will not be used by the Roman calibration
pipelines.")
(license license:bsd-3)))
(define-public python-romancal
(package
(name "python-romancal")
@ -7917,109 +8166,6 @@ instruments.")
(license (list license:bsd-3 ; licenses/LICENSE.rst, same as python-astropy
license:expat)))) ; licenses/KOSMOS_LICENSE
(define-public python-pyavm
(package
(name "python-pyavm")
(version "0.9.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PyAVM" version))
(sha256
(base32 "0vgjqvddq4a5lnmg8msm7fwqs3r6fc748xzvnhyvc387h0z8pdxk"))))
(build-system pyproject-build-system)
(native-inputs
(list python-pillow
python-pytest
python-setuptools
python-setuptools-scm
python-wheel))
(propagated-inputs
(list python-astropy
python-numpy))
(home-page "https://astrofrog.github.io/pyavm/")
(synopsis "Simple pure-python AVM meta-data handling")
(description
"PyAVM is a module to represent, read, and write metadata following the
@acronym{AVM, Astronomy Visualization Metadata} standard provided by
@url{https://www.virtualastronomy.org/avm_metadata.php, vamp} project.")
(license license:expat)))
(define-public python-reproject
(package
(name "python-reproject")
(version "0.14.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "reproject" version))
(sha256
(base32 "0yg5dga054xdwsx75q204h04gmrw0mgayc74l4rpymcbkckymj2k"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "--arraydiff"
"--arraydiff-default-format=fits"
"--numprocesses" (number->string (parallel-job-count))
"--pyargs" "reproject")
#:phases
#~(modify-phases %standard-phases
;; setup.py was removed in a659a260bdd7635cddc8f33c4ea04a3b6d8c1f84
;; for some unknown reason, which caused the package to fail to
;; build. It is being recreated based on that commit.
;; TODO: Check how to implement it in python-build-system.
(add-after 'unpack 'create-setup.py
(lambda _
(call-with-output-file "setup.py"
(lambda (port)
(format port "from setuptools import setup
from extension_helpers import get_extensions
setup(ext_modules=get_extensions())")))))
(add-before 'install 'writable-compiler
(lambda _
(make-file-writable "reproject/_compiler.c")))
(add-before 'check 'writable-compiler
(lambda _
(make-file-writable "reproject/_compiler.c")))
(add-before 'check 'prepare-test-environment
(lambda _
(setenv "HOME" "/tmp")
;; Cython extensions have to be built before running the tests.
(invoke "python" "setup.py" "build_ext" "--inplace"))))))
(propagated-inputs
(list python-asdf
python-astropy
python-astropy-healpix
python-cloudpickle
python-dask
python-fsspec
python-gwcs
python-numpy
python-pyvo
python-scipy
python-shapely
python-zarr))
(native-inputs
(list python-cython-3
python-extension-helpers
python-asdf
python-gwcs
python-pytest-astropy
python-pytest-xdist
python-pyvo
;; python-sunpy ; circular dependencies, test optional
python-setuptools-scm
python-wheel))
(home-page "https://reproject.readthedocs.io")
(synopsis "Astronomical image reprojection in Python")
(description
"This package provides a functionality to reproject astronomical images using
various techniques via a uniform interface, where reprojection is the
re-gridding of images from one world coordinate system to another e.g.
changing the pixel resolution, orientation, coordinate system.")
(license license:bsd-3)))
(define-public python-spectral-cube
(package
(name "python-spectral-cube")
@ -8538,152 +8684,6 @@ science instruments plus the fine guidance sensor, including both direct
imaging, coronagraphic, and spectroscopic modes.")
(license license:bsd-3)))
(define-public python-pysynphot
;; XXX: 2.0.0 was released in 2021 there are a lot of changes since that
;; time and it failed to build with python-astropy 6.0.0, use the latest
;; upstream commit for now.
(let ((commit "54e9e2a624910c4d177ca70f8e9fb8110c8fae5b")
(revision "0"))
(package
(name "python-pysynphot")
(version (git-version "2.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/spacetelescope/pysynphot")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "09sivpfqilk86zp8k5wmrs4g48m4kypn34jcy95y5h4ygbn5zbzy"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-version
(lambda _
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" "2.0.0")))
(add-before 'check 'set-env-data-path
(lambda _
(setenv "PYSYN_CDBS" (string-append #$output "/crds")))))))
(native-inputs
(list python-pytest
python-pytest-remotedata
python-setuptools
python-setuptools-scm
python-wheel))
(propagated-inputs
(list python-astropy
python-beautifulsoup4
python-numpy
python-pytest-astropy-header
python-six))
(home-page "https://github.com/spacetelescope/pysynphot")
(synopsis "Python Synthetic Photometry Utilities")
(description
"Astrolib PySynphot (hereafter referred to only as pysynphot) is an
object-oriented replacement for STSDAS SYNPHOT synthetic photometry package in
IRAF. @code{pysynphot} simulates photometric data and spectra as they are
observed with the Hubble Space Telescope (HST). Passbands for standard
photometric systems are available, and users can incorporate their own filters,
spectra, and data.")
(license license:bsd-3))))
(define-public python-asdf-fits-schemas
(hidden-package
;; This package was never released and has been archived. The schemas in
;; this package were never removed from and will continue to be maintained
;; in <https://github.com/asdf-format/asdf-standard>.
(let ((commit "6321c0ae4e44c9a59ccf81a446f9d9e22fd42b55")
(revision "2"))
(package
(name "python-asdf-fits-schemas")
(version (git-version "0.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/asdf-format/asdf-fits-schemas")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0p0m1sgnv9yqk0l0w15skvfshl47x0gc7lg6p2x83158hjyix5q6"))))
(build-system pyproject-build-system)
(arguments
(list
#:tests? #f ; cycle with python-asdf
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-version
(lambda _
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" "0.0.1"))))))
(native-inputs
(list python-setuptools
python-setuptools-scm
python-wheel))
(propagated-inputs
(list python-asdf-standard
python-importlib-resources))
(home-page "https://github.com/asdf-format/asdf-fits-schemas")
(synopsis "ASDF schemas to support the FITS format")
(description
"This package provides ASDF schemas for validating FITS tags.")
(license license:bsd-3)))))
(define-public python-roman-datamodels
(package
(name "python-roman-datamodels")
(version "0.27.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "roman_datamodels" version))
(sha256
(base32 "1631jpv7mcrcka6bfxp04ih43wlm9pmqsqxckqyv6y9jgsipjxy3"))))
(build-system pyproject-build-system)
(arguments
(list
;; tests: 4185 passed, 1 skipped, 1 xfailed
#:test-flags
#~(list "--numprocesses" (number->string (parallel-job-count)))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-env
(lambda _
(setenv "HOME" "/tmp"))))))
(native-inputs
(list python-pandas
python-pytest
python-pytest-doctestplus
python-pytest-env
python-pytest-xdist
python-setuptools
python-setuptools-scm
python-wheel))
(propagated-inputs
(list python-asdf
python-asdf-astropy
python-asdf-standard
python-astropy
python-gwcs
python-lz4
python-numpy
python-pyarrow
python-rad))
(home-page "https://github.com/spacetelescope/roman_datamodels")
(synopsis "Roman Datamodels Support")
(description
"This package provides a Python package of Roman Datamodels for the
calibration pipelines started with the @acronym{JWST, James Webb Space
Telescope} calibration pipelines. The goal for the JWST pipelines was motivated
primarily by the need to support FITS data files, specifically with isolating
the details of where metadata and data were located in the FITS file from the
representation of the same items within the Python code. That is not a concern
for Roman since FITS format data files will not be used by the Roman calibration
pipelines.")
(license license:bsd-3)))
(define-public python-stsci-image
(package
(name "python-stsci-image")

View file

@ -768,7 +768,10 @@ be reached via direct API calls.")
(sha256
(base32 "0f4x0gm5n1mr87dx3gzn5da16a1qhd2y3kz22dl5xsd9pd720l4w"))))
(build-system pyproject-build-system)
(native-inputs (list python-setuptools python-wheel))
(arguments
(list
#:test-backend ''unittest))
(native-inputs (list python-setuptools))
(propagated-inputs (list python-configparser))
(home-page "https://github.com/Sarcasm/compdb")
(synopsis "Compilation database Swiss army knife")

View file

@ -81,6 +81,7 @@
#:use-module (guix svn-download)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages aidc)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
#:use-module (gnu packages backup)

View file

@ -1435,7 +1435,8 @@ libraries designed for computer vision research and implementation.")
libjpeg-turbo
libpng
libtiff
mesa-opencl
opencl-headers
opencl-icd-loader
perl
python
tbb

View file

@ -3250,44 +3250,31 @@ MIDI files, based on libsmf.")
(define-public frescobaldi
(package
(name "frescobaldi")
(version "3.3.0")
(version "4.0.4")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/frescobaldi/frescobaldi/releases/download/v"
version "/frescobaldi-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/frescobaldi/frescobaldi")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1n60gfnf6x0l1bac088g9adzx0lskbl9knd4y1ynr3y0zcs0kfcz"))))
(build-system python-build-system)
(base32 "03ygnq7x37hnw68nkw0175m0b4ngkhgigf85pjw0sx0dbkwh4i17"))))
(build-system pyproject-build-system)
(arguments
(list
#:tests? #f ;no tests included
#:phases #~(modify-phases %standard-phases
(add-before 'build 'generate-translations
(lambda _
(invoke "make" "-C" "i18n")))
(add-before 'build 'generate-metadata
(lambda _
(invoke "make" "-C" "linux")))
(add-after 'install 'wrap-executable
(lambda _
;; Ensure that icons are found at runtime.
(wrap-program (string-append #$output
"/bin/frescobaldi")
`("QT_PLUGIN_PATH" prefix
,(list (getenv "QT_PLUGIN_PATH")))))))))
#:tests? #f)) ;no tests included
(native-inputs
(list python-hatchling))
(inputs (list bash-minimal
lilypond
poppler
portmidi-2
python-ly
python-poppler-qt5
python-pyportmidi
python-pyqt
python-sip
qpageview
qtsvg-5))
python-pyqt-6
python-pyqt6-sip
python-pyqtwebengine-6
qpageview))
(home-page "https://www.frescobaldi.org/")
(synopsis "LilyPond sheet music text editor")
(description

View file

@ -1404,8 +1404,8 @@ winner of the 2015 Password Hashing Competition.")
(define-public secretsd
;; there are neither tags nor releases in the repository
(let ((commit "4ea56226b8f7c8739eea7fc8d1ffca8e18cf58c9")
(revision "0"))
(let ((commit "d12eefee00dbd4b0f756dcf7c52d31539dbcfc67")
(revision "1"))
(package
(name "secretsd")
(version (git-version "1.0" revision commit))
@ -1417,7 +1417,7 @@ winner of the 2015 Password Hashing Competition.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0ka21vmvm25kal3sa8zmrifh4zac878hk24y7y3jj3ig8dkv0vfy"))
(base32 "1cr6vpb1mc48b60mjbnzalp58vx07sh7hg9r65j0cppk0n4gc0aj"))
(modules '((guix build utils)))
(snippet
;; don't install platform dependencies
@ -1425,6 +1425,7 @@ winner of the 2015 Password Hashing Competition.")
(build-system pyproject-build-system)
(arguments
(list
#:tests? #f ; no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'create-entrypoints 'wrap-program
@ -1433,7 +1434,7 @@ winner of the 2015 Password Hashing Competition.")
`("GI_TYPELIB_PATH" ":" prefix
(,(getenv "GI_TYPELIB_PATH")))))))))
(inputs (list python-dbus python-platformdirs python-cryptography
python-xdg python-pygobject))
python-pygobject))
(native-inputs (list bash-minimal python-setuptools python-wheel))
(home-page "https://github.com/grawity/secretsd")
(synopsis "Basic FreeDesktop.org Secret Service backend")

View file

@ -171,6 +171,7 @@
;;; Copyright © 2025 Luis Felipe López Acevedo <sirgazil@zoho.com>
;;; Copyright © 2025 Josep Bigorra <jjbigorra@gmail.com>
;;; Copyright © 2025 Matthias Riße <matrss@0px.xyz>
;;; Copyright © 2025 Ghislain Vaillant <ghislain.vaillant@inria.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -191,7 +192,6 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages adns)
#:use-module (gnu packages aidc)
#:use-module (gnu packages algebra)
#:use-module (gnu packages attr)
#:use-module (gnu packages autotools)
@ -731,6 +731,27 @@ features string-like objects which carry formatting information, per-line
fullscreen terminal rendering, and keyboard input event reporting.")
(license license:expat)))
(define-public python-darkdetect
(package
(name "python-darkdetect")
(version "0.8.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "darkdetect" version))
(sha256
(base32 "1cgqgpz36dfn7hsqc29ha9pmxmzdjlwdq9aclkgbagi6f08qwhmm"))))
(build-system pyproject-build-system)
(arguments
(list
#:tests? #f)) ;no tests in PyPI or Git.
(native-inputs (list python-setuptools))
(home-page "https://github.com/albertosottile/darkdetect")
(synopsis "Detect OS dark mode from Python")
(description
"This package allows to detect if the user is using Dark Mode.")
(license license:bsd-3)))
(define-public python-distance
(let ((commit "ad7f9dc7e9b0e88a08d0cefd1442f4ab1dd1779b")
(revision "0"))
@ -1244,6 +1265,34 @@ for Python.")
processes, in parallel, in the console, with an interactive TUI.")
(license license:expat)))
(define-public python-num2words
(package
(name "python-num2words")
(version "0.5.14")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/savoirfairelinux/num2words")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1h52kgh1h4q9nkkplpwix2xs6f6wwvlxq09clznr2589xv39iqlz"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "--ignore" "tests/test_cli.py"))) ;Requires delegator.py.
(inputs (list python-docopt))
(native-inputs (list python-pytest python-setuptools))
(home-page "https://github.com/savoirfairelinux/num2words")
(synopsis "Convert numbers to words in multiple languages")
(description
"@code{num2words} is a library that converts numbers like 42 to words like
forty-two. It supports multiple languages, and can even generate ordinal
numbers like forty-second.")
(license license:lgpl2.1)))
(define-public python-orderly-set
(package
(name "python-orderly-set")
@ -16667,55 +16716,6 @@ addition to a bunch of aliases.")
command pipeline functionality.")
(license license:bsd-3)))
(define-public python-zipfly
(package
(name "python-zipfly")
(version "6.0.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "zipfly" version))
(sha256
(base32
"1h7g922a8lsqd69j8blgcgg0lcd8kz51b2p4glfqmgx4vi1nkick"))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #f)) ; no tests
(native-inputs (list python-setuptools python-wheel))
(home-page "https://github.com/sandes/zipfly")
(synopsis "Zip archive generator")
(description "ZipFly is a zip archive generator. It was created to
generate very large zip archives for immediate sending out to clients, or
for writing large zip archives without memory inflation.")
(license license:bsd-2)))
(define-public python-zipstream-new
(package
(name "python-zipstream-new")
(version "1.1.8")
(source
(origin
(method git-fetch) ; no tests in PyPI release
(uri (git-reference
(url "https://github.com/arjan-s/python-zipstream")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "14vhgg8mcjqi8cpzrw8qzbij2fr2a63l2a8fhil21k2r8vzv92cv"))))
(build-system python-build-system)
(native-inputs
(list python-nose))
(home-page "https://github.com/arjan-s/python-zipstream")
(synopsis "Zipfile generator that takes input files as well as streams")
(description "@code{zipstream.py} is a zip archive generator based on
@code{zipfile.py}. It was created to generate a zip file generator for
streaming. This is beneficial for when you want to provide a downloadable
archive of a large collection of regular files, which would be infeasible
to generate the archive prior to downloading or of a very large file that
you do not want to store entirely on disk or on memory.")
;; No copyright headers in the source. The LICENSE file indicates GPL3.
(license license:gpl3)))
(define-public python-sentry-sdk
(package
(name "python-sentry-sdk")
@ -28535,40 +28535,6 @@ like a regular Python @code{dict}. Its designed to be used as a priority
queue.")
(license license:bsd-3)))
(define-public python-zict
(package
(name "python-zict")
(version "3.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "zict" version))
(sha256
(base32
"19gvr41xi5fazkzkg33kwrk70sv50hygng0cg70ayym9nriy48g3"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; This uses "importorskip", but it won't skip.
'(list "--ignore=tests/test_lmdb.py")))
(propagated-inputs
(list python-heapdict))
(native-inputs
(list python-pytest
python-pytest-asyncio
python-pytest-repeat
python-pytest-timeout
python-setuptools
python-wheel))
(home-page "https://zict.readthedocs.io/en/latest/")
(synopsis "Composable mutable mapping tools")
(description "This package provides abstract @code{MutableMapping} classes
that consume and build on other @code{MutableMappings}. Several of these can
be composed with one another to form intuitive interfaces over complex storage
systems policies.")
(license license:bsd-3)))
(define-public python-send2trash
(package
(name "python-send2trash")
@ -28848,56 +28814,6 @@ a notation for identifying weeks; yyyyWww (where the W is a literal).
Week instances stringify to this form.")
(license license:bsd-3)))
(define-public python-pyzbar
(package
(name "python-pyzbar")
(version "0.1.8")
(source
(origin
;; There's no source tarball on PyPI.
(method git-fetch)
(uri (git-reference
(url "https://github.com/NaturalHistoryMuseum/pyzbar")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1fqlfg5p2v9lzzzi0si2sz54lblprk6jjjhjw54b64lp58c1yhsl"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-failing-test
(lambda _
;; This tests if find_library was called once, but we remove
;; the call in the stage below to make the library find libzbar.
(delete-file "pyzbar/tests/test_zbar_library.py")
#t))
(add-before 'build 'set-library-file-name
(lambda* (#:key inputs #:allow-other-keys)
(let ((libzbar (assoc-ref inputs "zbar")))
(substitute* "pyzbar/zbar_library.py"
(("find_library\\('zbar'\\)")
(string-append "'" libzbar "/lib/libzbar.so.0'")))
#t))))))
(native-inputs
(list pkg-config python-numpy python-pillow))
(inputs
(list zbar))
(home-page "https://github.com/NaturalHistoryMuseum/pyzbar/")
(synopsis "Read one-dimensional barcodes and QR codes")
(description
"Read one-dimensional barcodes and QR codes using the zbar library.
Features:
@itemize
@item Pure python
@item Works with PIL / Pillow images, OpenCV / numpy ndarrays, and raw bytes
@item Decodes locations of barcodes
@item No dependencies, other than the zbar library itself
@end itemize")
(license license:expat)))
(define-public python-tokenize-rt
(package
(name "python-tokenize-rt")
@ -29246,6 +29162,32 @@ close matches in Python.")
in Python. You can simply type pybtex instead of bibtex.")
(license license:expat)))
(define-public python-pybtex-apa-style
(package
(name "python-pybtex-apa-style")
(version "1.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pybtex-apa-style" version))
(sha256
(base32 "1cmgcpcvs9jcw4yxhiy217hdngp9p9nlp5x6s2qmkwj0iwgd39iq"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-backend #~'custom
#:test-flags
#~(list "-c" (string-append "import sys, pybtex.plugin;"
" sys.exit('apa' not"
" in pybtex.plugin.enumerate_plugin_names"
"('pybtex.style.labels'))"))))
(native-inputs (list python-pybtex python-setuptools))
(home-page "https://github.com/naeka/pybtex-apa-style")
(synopsis "APA style for pybtex")
(description
"This package provides support for the APA style within pybtex.")
(license license:expat)))
(define-public python-onetimepass
(package
(name "python-onetimepass")
@ -30478,62 +30420,6 @@ codecs for use in data storage and communication applications.")
(description "This package draws tree structures using characters.")
(license license:expat)))
(define-public python-zarr
(package
(name "python-zarr")
(version "2.18.7")
(source
(origin
(method url-fetch)
(uri (pypi-uri "zarr" version))
(sha256
(base32
"1xbjjpjskykbdskck5p1f0grh6wq36437ll0n5kazi6s2ipzdf5j"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "--numprocesses" (number->string (parallel-job-count))
;; This tests are flaky. The pass several times on my laptop
;; but occasionally fail. They fail pretty reliably on the
;; build farm.
"-k" (string-append "not test_lazy_loader and not open_array"
;; File not found.
" and not test_filesystem_path"))
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-version
(lambda _
(substitute* "pyproject.toml"
(("^version_file.*") "")
(("dynamic = \\[\"version\"\\]")
(string-append "version = \"" #$version "\"")))))
(add-after 'unpack 'disable-service-tests
(lambda _
(setenv "ZARR_TEST_ABS" "0")
(setenv "ZARR_TEST_MONGO" "0")
(setenv "ZARR_TEST_REDIS" "0"))))))
(propagated-inputs
(list python-asciitree
python-fasteners
python-ipywidgets
python-notebook
python-numcodecs
python-numpy
python-numpydoc
python-pydata-sphinx-theme))
(native-inputs
(list python-pytest
python-pytest-xdist
python-setuptools
python-wheel))
(home-page "https://github.com/zarr-developers/zarr-python")
(synopsis "Chunked, compressed, N-dimensional arrays for Python")
(description
"This package provides an implementation of chunked, compressed,
N-dimensional arrays for Python.")
(license license:expat)))
(define-public python-dill
(package
(name "python-dill")
@ -31614,45 +31500,6 @@ should have run while it was offline.")
library in Python.")
(license license:expat)))
(define-public python-zeroconf
(package
(name "python-zeroconf")
(version "0.38.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jstasiak/python-zeroconf")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1p1a0ywlg5sq0ilcphmz9h4kayscz0q1lyfk57j7mwxyx4gl9cpi"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list
"-k" (string-append
;; XXX: Despite asyncio, this test fails.
"not test_run_coro_with_timeout and not "
;; XXX: Networking isn't available.
(string-join
(list "test_integration_with_listener_ipv6"
"test_launch_and_close_v4_v6"
"test_launch_and_close_context_manager"
"test_launch_and_close"
"test_close_multiple_times")
" and not ")))))
(native-inputs
(list python-pytest python-pytest-asyncio python-setuptools))
(propagated-inputs
(list python-ifaddr))
(home-page "https://github.com/jstasiak/python-zeroconf")
(synopsis "Pure Python mDNS service discovery")
(description "Pure Python multicast DNS (mDNS) service discovery library
(Bonjour/Avahi compatible).")
(license license:lgpl2.1+)))
(define-public python-bsddb3
(package
(name "python-bsddb3")
@ -40316,78 +40163,6 @@ markdown-compliant strings.")
way.")
(license license:lgpl2.1)))
(define-public python-zbarlight
(package
(name "python-zbarlight")
(version "3.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "zbarlight" version))
(sha256
(base32
"1v5c9bim8af6g8kgxp2dhm96n5vkr8sqi56w0bdh1xy49v03lw3g"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-pillow python-setuptools))
(inputs (list zbar))
(native-inputs (list python-wheel))
(home-page "https://github.com/Polyconseil/zbarlight")
(synopsis "Simple Python wrapper for the zbar barcode library")
(description "Zbarlight is a simple wrapper for the zbar library. It can
read all zbar supported codes.")
(license license:bsd-3)))
(define-public python-zeroc-ice
(package
(name "python-zeroc-ice")
(version "3.7.10.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "zeroc-ice" version))
(sha256
(base32
"0r46q4hd7xbpvnidbra1prkg4xhmajxjjmclfqgp3pv0lgyslqxh"))))
(build-system pyproject-build-system)
(arguments
;; XXX: No tests in PyPI, tere are tests in Git, but there is no 3.7.10.1
;; tag.
;;
;; See:
;; - URL: <https://raw.githubusercontent.com/zeroc-ice>
;; - File: <ice/refs/heads/main/python/allTests.py>
(list #:tests? #f))
(inputs (list openssl))
(native-inputs (list python-setuptools))
(home-page "https://zeroc.com")
(synopsis "RPC framework")
(description
"Ice is a comprehensive RPC framework. Ice helps you network your
software by taking care of all interactions with low-level network programming
interfaces.")
(license license:gpl2)))
;; Package variant to build python-omero-py@5.20.0
(define-public python-zeroc-ice-3.6
(package
(inherit python-zeroc-ice)
(version "3.6.5")
(source (origin
(method url-fetch)
(uri (pypi-uri "zeroc-ice" version))
(sha256
(base32
"0mikjfvq26kh8asnn9v55z41pap4c5ypymqnwwi4xkavc3mzyda2"))
(patches
(search-patches
"python-zeroc-ice-3.6.5-python-3.11-support.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments python-zeroc-ice)
((#:phases phases #~%standard-phases)
#~(modify-phases #$phases
(add-before 'build 'relax-gcc-14-strictness
(lambda _
(setenv "CFLAGS"
"-g -O2 -Wno-error=implicit-function-declaration")))))))))
(define-public python-islenska
(package
(name "python-islenska")
@ -40559,31 +40334,236 @@ based on Adobe XMP Toolkit, ensuring that future updates to the XMP standard
are easily incorporated into the library with a minimum amount of work.")
(license license:bsd-3)))
(define-public pythoncapi-compat
;; No release nor tags: use the latest commit.
(let ((commit "b541b98df1e3e5aabb5def27422a75c876f5a88a")
(revision "0"))
(package
(name "pythoncapi-compat")
(version "0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/python/pythoncapi-compat")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"09935gybfj2wqbf6jmn61m21qnx3za8xjv375n3daq8l3cs6dmmx"))))
(build-system copy-build-system)
(arguments (list #:install-plan
#~'(("pythoncapi_compat.h" "include/"))))
(home-page "https://github.com/python/pythoncapi-compat")
(synopsis "Python C API compatibility")
(description "The pythoncapi-compat project can be used to write a C or
C++ extension supporting a wide range of Python versions with a single code
base, via the @file{pythoncapi_compat.h} header file.")
(license license:bsd-0))))
(define-public python-zarr
(package
(name "python-zarr")
(version "2.18.7")
(source
(origin
(method url-fetch)
(uri (pypi-uri "zarr" version))
(sha256
(base32
"1xbjjpjskykbdskck5p1f0grh6wq36437ll0n5kazi6s2ipzdf5j"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "--numprocesses" (number->string (parallel-job-count))
;; This tests are flaky. The pass several times on my laptop
;; but occasionally fail. They fail pretty reliably on the
;; build farm.
"-k" (string-append "not test_lazy_loader and not open_array"
;; File not found.
" and not test_filesystem_path"))
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-version
(lambda _
(substitute* "pyproject.toml"
(("^version_file.*") "")
(("dynamic = \\[\"version\"\\]")
(string-append "version = \"" #$version "\"")))))
(add-after 'unpack 'disable-service-tests
(lambda _
(setenv "ZARR_TEST_ABS" "0")
(setenv "ZARR_TEST_MONGO" "0")
(setenv "ZARR_TEST_REDIS" "0"))))))
(propagated-inputs
(list python-asciitree
python-fasteners
python-ipywidgets
python-notebook
python-numcodecs
python-numpy
python-numpydoc
python-pydata-sphinx-theme))
(native-inputs
(list python-pytest
python-pytest-xdist
python-setuptools
python-wheel))
(home-page "https://github.com/zarr-developers/zarr-python")
(synopsis "Chunked, compressed, N-dimensional arrays for Python")
(description
"This package provides an implementation of chunked, compressed,
N-dimensional arrays for Python.")
(license license:expat)))
(define-public python-zeroc-ice
(package
(name "python-zeroc-ice")
(version "3.7.10.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "zeroc-ice" version))
(sha256
(base32
"0r46q4hd7xbpvnidbra1prkg4xhmajxjjmclfqgp3pv0lgyslqxh"))))
(build-system pyproject-build-system)
(arguments
;; XXX: No tests in PyPI, tere are tests in Git, but there is no 3.7.10.1
;; tag.
;;
;; See:
;; - URL: <https://raw.githubusercontent.com/zeroc-ice>
;; - File: <ice/refs/heads/main/python/allTests.py>
(list #:tests? #f))
(inputs (list openssl))
(native-inputs (list python-setuptools))
(home-page "https://zeroc.com")
(synopsis "RPC framework")
(description
"Ice is a comprehensive RPC framework. Ice helps you network your
software by taking care of all interactions with low-level network programming
interfaces.")
(license license:gpl2)))
;; Package variant to build python-omero-py@5.20.0
(define-public python-zeroc-ice-3.6
(package
(inherit python-zeroc-ice)
(version "3.6.5")
(source (origin
(method url-fetch)
(uri (pypi-uri "zeroc-ice" version))
(sha256
(base32
"0mikjfvq26kh8asnn9v55z41pap4c5ypymqnwwi4xkavc3mzyda2"))
(patches
(search-patches
"python-zeroc-ice-3.6.5-python-3.11-support.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments python-zeroc-ice)
((#:phases phases #~%standard-phases)
#~(modify-phases #$phases
(add-before 'build 'relax-gcc-14-strictness
(lambda _
(setenv "CFLAGS"
"-g -O2 -Wno-error=implicit-function-declaration")))))))))
(define-public python-zeroconf
(package
(name "python-zeroconf")
(version "0.38.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jstasiak/python-zeroconf")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1p1a0ywlg5sq0ilcphmz9h4kayscz0q1lyfk57j7mwxyx4gl9cpi"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list
"-k" (string-append
;; XXX: Despite asyncio, this test fails.
"not test_run_coro_with_timeout and not "
;; XXX: Networking isn't available.
(string-join
(list "test_integration_with_listener_ipv6"
"test_launch_and_close_v4_v6"
"test_launch_and_close_context_manager"
"test_launch_and_close"
"test_close_multiple_times")
" and not ")))))
(native-inputs
(list python-pytest python-pytest-asyncio python-setuptools))
(propagated-inputs
(list python-ifaddr))
(home-page "https://github.com/jstasiak/python-zeroconf")
(synopsis "Pure Python mDNS service discovery")
(description "Pure Python multicast DNS (mDNS) service discovery library
(Bonjour/Avahi compatible).")
(license license:lgpl2.1+)))
(define-public python-zict
(package
(name "python-zict")
(version "3.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "zict" version))
(sha256
(base32
"19gvr41xi5fazkzkg33kwrk70sv50hygng0cg70ayym9nriy48g3"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; This uses "importorskip", but it won't skip.
'(list "--ignore=tests/test_lmdb.py")))
(propagated-inputs
(list python-heapdict))
(native-inputs
(list python-pytest
python-pytest-asyncio
python-pytest-repeat
python-pytest-timeout
python-setuptools
python-wheel))
(home-page "https://zict.readthedocs.io/en/latest/")
(synopsis "Composable mutable mapping tools")
(description "This package provides abstract @code{MutableMapping} classes
that consume and build on other @code{MutableMappings}. Several of these can
be composed with one another to form intuitive interfaces over complex storage
systems policies.")
(license license:bsd-3)))
(define-public python-zipfly
(package
(name "python-zipfly")
(version "6.0.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "zipfly" version))
(sha256
(base32
"1h7g922a8lsqd69j8blgcgg0lcd8kz51b2p4glfqmgx4vi1nkick"))))
(build-system pyproject-build-system)
(arguments
(list #:test-backend #~'unittest))
(native-inputs (list python-setuptools))
(home-page "https://github.com/sandes/zipfly")
(synopsis "Zip archive generator")
(description "ZipFly is a zip archive generator. It was created to
generate very large zip archives for immediate sending out to clients, or
for writing large zip archives without memory inflation.")
(license license:expat)))
(define-public python-zipstream-new
(package
(name "python-zipstream-new")
(version "1.1.8")
(source
(origin
(method git-fetch) ; no tests in PyPI release
(uri (git-reference
(url "https://github.com/arjan-s/python-zipstream")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "14vhgg8mcjqi8cpzrw8qzbij2fr2a63l2a8fhil21k2r8vzv92cv"))))
(build-system pyproject-build-system)
(arguments
(list #:test-backend #~'unittest))
(native-inputs (list python-setuptools))
(home-page "https://github.com/arjan-s/python-zipstream")
(synopsis "Zipfile generator that takes input files as well as streams")
(description "@code{zipstream.py} is a zip archive generator based on
@code{zipfile.py}. It was created to generate a zip file generator for
streaming. This is beneficial for when you want to provide a downloadable
archive of a large collection of regular files, which would be infeasible
to generate the archive prior to downloading or of a very large file that
you do not want to store entirely on disk or on memory.")
;; No copyright headers in the source. The LICENSE file indicates GPL3.
(license license:gpl3)))
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances

View file

@ -52,7 +52,7 @@
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2018, 2019, 2020, 2021 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2018, 2019, 2020, 2021, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2018 Luther Thompson <lutheroto@gmail.com>
;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org>
;;; Copyright © 2019, 2024 Tanguy Le Carrour <tanguy@bioneland.org>
@ -62,6 +62,7 @@
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;; Copyright © 2021 Lars-Dominik Braun <lars@6xq.net>
;;; Copyright © 2025 Hugo Buddelmeijer <hugo@buddelmeijer.nl>
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -96,10 +97,12 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages xml)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix search-paths)
#:use-module (guix utils)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (srfi srfi-1)
@ -1596,6 +1599,32 @@ and the unversioned commands available.")))
Use this package if you need a minimal Python toolchain instead of just
the interpreter."))))
(define-public pythoncapi-compat
;; No release nor tags: use the latest commit.
(let ((commit "ab72af8b1a9adfccb3578eea8e9b6d5c6449f409")
(revision "1"))
(package
(name "pythoncapi-compat")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/python/pythoncapi-compat")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0dfzfs399ik10125kvs5s8rid93lm50wray8s7b8bv90a61zjxiv"))))
(build-system copy-build-system)
(arguments (list #:install-plan
#~'(("pythoncapi_compat.h" "include/"))))
(home-page "https://github.com/python/pythoncapi-compat")
(synopsis "Python C API compatibility")
(description "The pythoncapi-compat project can be used to write a C or
C++ extension supporting a wide range of Python versions with a single code
base, via the @file{pythoncapi_compat.h} header file.")
(license license:bsd-0))))
(define-public micropython
(package
(name "micropython")