sharlatan pushed a commit to branch master
in repository guix.
commit 1d016797a3bd33deac24e07fad6d99247ecc5424
Author: Sharlatan Hellseher <[email protected]>
AuthorDate: Wed May 7 23:17:20 2025 +0100
gnu: packages/astronomy: Sort.
* gnu/packages/astronomy.scm (python-jwst, python-mpl-animators,
python-stsynphot, python-sunkit-image, python-sunpy-soar): Sort
variables alphabetically.
Change-Id: I3a8afb736baa4e13d3a395205bf5354a03de7d3c
---
gnu/packages/astronomy.scm | 570 ++++++++++++++++++++++-----------------------
1 file changed, 285 insertions(+), 285 deletions(-)
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 05f94c0f76..1abc33caf4 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -3601,6 +3601,101 @@ semi-analytic models, to cosmological hydrodynamic
simulations, and even
observationally-derived galaxy merger catalogs.")
(license license:expat)))
+(define-public python-jwst
+ (package
+ (name "python-jwst")
+ (version "1.18.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "jwst" version))
+ (sha256
+ (base32 "1r3gmlsirdf1l2m1z8sxzh6h668zvkjyr463zwp32f6wppcj286l"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ ;; Replace reference to external configobj.
+ (substitute* (find-files "." "\\.py$")
+ (("from astropy.extern import configobj")
+ "import configobj")
+ (("from astropy.extern.configobj import validate")
+ "import validate")
+ (("from astropy.extern.configobj.configobj import ")
+ "from configobj import ")
+ (("from astropy.extern.configobj.validate import ")
+ "from validate import "))))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ ;; XXX: Tests require access to https://jwst-crds-pub.stsci.edu server
+ ;; for getting data sets.
+ #:tests? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'build 'relax-requirements
+ (lambda _
+ (substitute* "pyproject.toml"
+ ;; scipy>=1.14.1
+ (("1.14.1") "1.12.0")
+ ;; XXX: Can't detect opencv-python version. The input opencv
+ ;; might not set the version correctly.
+ ((".*opencv-python-headless.*") "")
+ ;; Remove broken scripts, see
+ ;; <https://github.com/spacetelescope/jwst/issues/9401>.
+ (("asn_gather = .*") "")
+ (("create_data = .*") "")
+ (("csvconvert = .*") "")))))))
+ (native-inputs
+ (list python-colorama
+ python-pytest
+ python-pytest-cov
+ python-pytest-doctestplus
+ python-pytest-openfiles
+ python-requests-mock
+ python-setuptools
+ python-setuptools-scm
+ python-wheel))
+ (propagated-inputs
+ ;; opencv provides OpenCV-Python which is Listed as install requirement.
+ (list opencv
+ python-asdf
+ python-asdf-astropy
+ python-astropy
+ python-bayesicfitting
+ python-crds
+ python-drizzle
+ python-gwcs
+ python-importlib-metadata
+ python-jplephem
+ python-jsonschema
+ python-numpy
+ python-packaging
+ python-photutils
+ python-poppy
+ python-psutil
+ python-pyparsing
+ python-pysiaf
+ python-requests
+ python-scikit-image
+ python-scipy
+ python-spherical-geometry
+ python-stcal
+ python-stdatamodels
+ python-stpipe
+ python-stsci-imagestats
+ python-synphot
+ python-tweakwcs
+ python-wiimatch))
+ (home-page "https://jwst-pipeline.readthedocs.io/en/latest/")
+ (synopsis "Science observations from the James Webb Space Telescope")
+ (description
+ "This package provides an access to the JWST Science Calibration Pipeline
+processes data from all JWST instruments and observing modes by applying
+various science corrections sequentially, producing both fully-calibrated
+individual exposures and high-level data products (mosaics, extracted spectra,
+etc.).")
+ (license license:bsd-3)))
+
(define-public python-libstempo
(package
(name "python-libstempo")
@@ -3782,6 +3877,45 @@ on:
@end itemize")
(license license:bsd-2)))
+(define-public python-mpl-animators
+ (package
+ (name "python-mpl-animators")
+ (version "1.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "mpl_animators" version))
+ (sha256
+ (base32 "1jscdgx1ynqvidh0kc6jxhjlp7lxhilwnp5pb6ddi7nb10as90kz"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'set-home
+ (lambda _
+ ;; Relax matplotlib warning: ... because the default path
+ ;; (/homeless-shelter/.config/matplotlib) is not a writable
+ ;; directory ...
+ (setenv "HOME" "/tmp"))))))
+ (native-inputs
+ (list python-pytest
+ python-pytest-doctestplus
+ python-pytest-mpl
+ python-setuptools
+ python-setuptools-scm-next
+ python-wheel))
+ (propagated-inputs
+ (list python-astropy
+ python-matplotlib
+ python-numpy))
+ (home-page "https://sunpy.org")
+ (synopsis "Interactive animations with matplotlib")
+ (description
+ "The @code{mpl_animators} package provides a set of classes which allow
+the easy construction of interactive matplotlib widget based animations.")
+ (license license:bsd-3)))
+
(define-public python-naima
(package
(name "python-naima")
@@ -4388,52 +4522,6 @@ instruments.")
(license (list license:bsd-3 ; licenses/LICENSE.rst, same as
python-astropy
license:expat)))) ; licenses/KOSMOS_LICENSE
-(define-public python-sunkit-image
- (package
- (name "python-sunkit-image")
- (version "0.6.1")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "sunkit_image" version))
- (sha256
- (base32 "0x8w87vwdr78vcq0zha2y7xyfy16amc5aym4v8127xvphq1ff4v3"))))
- (build-system pyproject-build-system)
- (arguments
- (list
- #:test-flags
- #~(list "--numprocesses" (number->string (parallel-job-count))
- ;; One test fails with assertion, probably in NumPy array
- ;; precision calculation: np.allclose and
- ;; sunpy.map.mapbase.GenericMap are not matched.
- "--deselect=sunkit_image/tests/test_radial.py::test_fnrgf")
- #:phases
- #~(modify-phases %standard-phases
- (add-before 'check 'set-home
- (lambda _
- ;; For tests: Permission denied: '/homeless-shelter'
- (setenv "HOME" "/tmp"))))))
- (native-inputs
- (list python-dask
- python-pytest-astropy
- python-pytest-mpl
- python-pytest-xdist
- python-setuptools
- python-setuptools-scm-next
- python-wheel))
- (propagated-inputs
- (list python-astropy
- python-matplotlib
- python-numpy
- python-scikit-image
- python-scipy
- python-sunpy))
- (home-page "https://github.com/sunpy/sunkit-image/")
- (synopsis "Solar Physics image processing toolbox")
- (description
- "This package provides an image processing toolbox for Solar Physics.")
- (license license:bsd-2)))
-
(define-public python-astropy-healpix
(package
(name "python-astropy-healpix")
@@ -4721,101 +4809,6 @@ Astronomical Almanac to within 0.0005 arcseconds (half
a @emph{mas} or
milliarcsecond).")
(license license:expat)))
-(define-public python-jwst
- (package
- (name "python-jwst")
- (version "1.18.0")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "jwst" version))
- (sha256
- (base32 "1r3gmlsirdf1l2m1z8sxzh6h668zvkjyr463zwp32f6wppcj286l"))
- (modules '((guix build utils)))
- (snippet
- #~(begin
- ;; Replace reference to external configobj.
- (substitute* (find-files "." "\\.py$")
- (("from astropy.extern import configobj")
- "import configobj")
- (("from astropy.extern.configobj import validate")
- "import validate")
- (("from astropy.extern.configobj.configobj import ")
- "from configobj import ")
- (("from astropy.extern.configobj.validate import ")
- "from validate import "))))))
- (build-system pyproject-build-system)
- (arguments
- (list
- ;; XXX: Tests require access to https://jwst-crds-pub.stsci.edu server
- ;; for getting data sets.
- #:tests? #f
- #:phases
- #~(modify-phases %standard-phases
- (add-before 'build 'relax-requirements
- (lambda _
- (substitute* "pyproject.toml"
- ;; scipy>=1.14.1
- (("1.14.1") "1.12.0")
- ;; XXX: Can't detect opencv-python version. The input opencv
- ;; might not set the version correctly.
- ((".*opencv-python-headless.*") "")
- ;; Remove broken scripts, see
- ;; <https://github.com/spacetelescope/jwst/issues/9401>.
- (("asn_gather = .*") "")
- (("create_data = .*") "")
- (("csvconvert = .*") "")))))))
- (native-inputs
- (list python-colorama
- python-pytest
- python-pytest-cov
- python-pytest-doctestplus
- python-pytest-openfiles
- python-requests-mock
- python-setuptools
- python-setuptools-scm
- python-wheel))
- (propagated-inputs
- ;; opencv provides OpenCV-Python which is Listed as install requirement.
- (list opencv
- python-asdf
- python-asdf-astropy
- python-astropy
- python-bayesicfitting
- python-crds
- python-drizzle
- python-gwcs
- python-importlib-metadata
- python-jplephem
- python-jsonschema
- python-numpy
- python-packaging
- python-photutils
- python-poppy
- python-psutil
- python-pyparsing
- python-pysiaf
- python-requests
- python-scikit-image
- python-scipy
- python-spherical-geometry
- python-stcal
- python-stdatamodels
- python-stpipe
- python-stsci-imagestats
- python-synphot
- python-tweakwcs
- python-wiimatch))
- (home-page "https://jwst-pipeline.readthedocs.io/en/latest/")
- (synopsis "Science observations from the James Webb Space Telescope")
- (description
- "This package provides an access to the JWST Science Calibration Pipeline
-processes data from all JWST instruments and observing modes by applying
-various science corrections sequentially, producing both fully-calibrated
-individual exposures and high-level data products (mosaics, extracted spectra,
-etc.).")
- (license license:bsd-3)))
-
(define-public python-jwst-reffiles
(package
(name "python-jwst-reffiles")
@@ -4932,45 +4925,6 @@ astronomical tables
@end itemize")
(license license:bsd-3)))
-(define-public python-mpl-animators
- (package
- (name "python-mpl-animators")
- (version "1.2.1")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "mpl_animators" version))
- (sha256
- (base32 "1jscdgx1ynqvidh0kc6jxhjlp7lxhilwnp5pb6ddi7nb10as90kz"))))
- (build-system pyproject-build-system)
- (arguments
- (list
- #:phases
- #~(modify-phases %standard-phases
- (add-before 'check 'set-home
- (lambda _
- ;; Relax matplotlib warning: ... because the default path
- ;; (/homeless-shelter/.config/matplotlib) is not a writable
- ;; directory ...
- (setenv "HOME" "/tmp"))))))
- (native-inputs
- (list python-pytest
- python-pytest-doctestplus
- python-pytest-mpl
- python-setuptools
- python-setuptools-scm-next
- python-wheel))
- (propagated-inputs
- (list python-astropy
- python-matplotlib
- python-numpy))
- (home-page "https://sunpy.org")
- (synopsis "Interactive animations with matplotlib")
- (description
- "The @code{mpl_animators} package provides a set of classes which allow
-the easy construction of interactive matplotlib widget based animations.")
- (license license:bsd-3)))
-
(define-public python-ndcube
(package
(name "python-ndcube")
@@ -5425,71 +5379,6 @@ less than the 1–3 km/day by which satellites themselves
deviate from the ideal
orbits described in TLE files.")
(license license:expat)))
-(define-public python-sunpy-soar
- (package
- (name "python-sunpy-soar")
- (version "1.11.1")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "sunpy_soar" version))
- (sha256
- (base32 "04zdfxb0y7m94lna6bikdc4rwa8n11wh42jyha0fxc604xhy2b3l"))))
- (build-system pyproject-build-system)
- (arguments
- (list
- #:test-flags
- ;; Disable tests requiring network access to download test data from
- ;; <http://soar.esac.esa.int> and <http://docs.virtualsolar.org>.
- #~(list "-k" (string-join
- (list "not test_distance_out_of_bounds_warning"
- "test_distance_search_insitu"
- "test_distance_search_remote_sensing"
- "test_distance_time_search"
- "test_download_path"
- "test_insitu_search"
- "test_invalid_detector"
- "test_no_instrument"
- "test_no_results"
- "test_search"
- "test_search_detector_instrument_dimension_2"
- "test_search_detector_instrument_dimension_4"
- "test_search_low_latency"
- "test_search_soop"
- "test_search_wavelength_detector_column"
- "test_wavelength_column_wavelength_exists"
- "test_wavelength_range"
- "test_wavelength_single"
- "test_when_sdac_provider_passed"
- "test_when_soar_provider_passed"
- "test_when_wrong_provider_passed")
- " and not "))
- #:phases
- #~(modify-phases %standard-phases
- (add-before 'check 'set-home-env
- (lambda _
- ;; Tests require HOME to be set.
- ;; Permission denied: '/homeless-shelter'
- (setenv "HOME" "/tmp"))))))
- (native-inputs
- (list python-pytest
- python-pytest-doctestplus
- python-responses
- python-setuptools
- python-setuptools-scm-next
- python-wheel))
- (propagated-inputs
- (list python-astropy
- python-matplotlib
- python-requests
- python-sunpy))
- (home-page "https://docs.sunpy.org/projects/soar")
- (synopsis "Solar Orbiter Archive plugin for SunPy")
- (description
- "This package provides a @code{sunpy} FIDO plugin for accessing data in
the
-@acronym{Solar Orbiter Archive, SOAR}.")
- (license license:bsd-2)))
-
(define-public python-spectral-cube
(package
(name "python-spectral-cube")
@@ -5997,46 +5886,6 @@ implementing calibration pipeline software.")
;; LICENSE Association of Universities for Research in Astronomy (AURA)
(license license:bsd-3)))
-(define-public python-stsynphot
- (package
- (name "python-stsynphot")
- (version "1.4.0")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "stsynphot" version))
- (sha256
- (base32 "02xaglg1kv3mk6gqjcs1283mmy9b42fgsga8g2z8768lkgwmmg9j"))))
- (build-system pyproject-build-system)
- (arguments
- (list
- ;; XXX: Tests fails on missing file, it might need to be downloaded,
- ;; disable them for now. astropy.utils.exceptions.AstropyUserWarning:
- ;; Failed to load Vega spectrum from
- ;; /grp/redcat/trds/calspec/alpha_lyr_stis_010.fits;
- #:tests? #f))
- (native-inputs
- (list python-pytest
- python-pytest-astropy
- python-pytest-astropy-header
- python-setuptools
- python-setuptools-scm
- python-wheel))
- (propagated-inputs
- (list python-astropy
- python-beautifulsoup4
- python-matplotlib
- python-numpy
- python-scipy
- python-synphot))
- (home-page "https://github.com/spacetelescope/stsynphot_refactor")
- (synopsis "Synthetic photometry using Astropy for HST and JWST")
- (description
- "This package provides a replacement for IRAF STSDAS SYNPHOT and ASTROLIB
-PYSYNPHOT, utilizing Astropy covering instrument specific portions of the old
-packages for HST.")
- (license license:bsd-3)))
-
(define-public python-pyerfa
(package
(name "python-pyerfa")
@@ -7270,6 +7119,46 @@ processing functions: @code{xyxymatch}, @code{geomap}.")
Institute, STScI} utility functions.")
(license license:bsd-3)))
+(define-public python-stsynphot
+ (package
+ (name "python-stsynphot")
+ (version "1.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "stsynphot" version))
+ (sha256
+ (base32 "02xaglg1kv3mk6gqjcs1283mmy9b42fgsga8g2z8768lkgwmmg9j"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ ;; XXX: Tests fails on missing file, it might need to be downloaded,
+ ;; disable them for now. astropy.utils.exceptions.AstropyUserWarning:
+ ;; Failed to load Vega spectrum from
+ ;; /grp/redcat/trds/calspec/alpha_lyr_stis_010.fits;
+ #:tests? #f))
+ (native-inputs
+ (list python-pytest
+ python-pytest-astropy
+ python-pytest-astropy-header
+ python-setuptools
+ python-setuptools-scm
+ python-wheel))
+ (propagated-inputs
+ (list python-astropy
+ python-beautifulsoup4
+ python-matplotlib
+ python-numpy
+ python-scipy
+ python-synphot))
+ (home-page "https://github.com/spacetelescope/stsynphot_refactor")
+ (synopsis "Synthetic photometry using Astropy for HST and JWST")
+ (description
+ "This package provides a replacement for IRAF STSDAS SYNPHOT and ASTROLIB
+PYSYNPHOT, utilizing Astropy covering instrument specific portions of the old
+packages for HST.")
+ (license license:bsd-3)))
+
(define-public python-stwcs
(package
(name "python-stwcs")
@@ -7341,6 +7230,52 @@ transformation for the imaging instruments on the
@acronym{Hubble Space
Telescope, HST}).")
(license license:bsd-3)))
+(define-public python-sunkit-image
+ (package
+ (name "python-sunkit-image")
+ (version "0.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "sunkit_image" version))
+ (sha256
+ (base32 "0x8w87vwdr78vcq0zha2y7xyfy16amc5aym4v8127xvphq1ff4v3"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ #~(list "--numprocesses" (number->string (parallel-job-count))
+ ;; One test fails with assertion, probably in NumPy array
+ ;; precision calculation: np.allclose and
+ ;; sunpy.map.mapbase.GenericMap are not matched.
+ "--deselect=sunkit_image/tests/test_radial.py::test_fnrgf")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'set-home
+ (lambda _
+ ;; For tests: Permission denied: '/homeless-shelter'
+ (setenv "HOME" "/tmp"))))))
+ (native-inputs
+ (list python-dask
+ python-pytest-astropy
+ python-pytest-mpl
+ python-pytest-xdist
+ python-setuptools
+ python-setuptools-scm-next
+ python-wheel))
+ (propagated-inputs
+ (list python-astropy
+ python-matplotlib
+ python-numpy
+ python-scikit-image
+ python-scipy
+ python-sunpy))
+ (home-page "https://github.com/sunpy/sunkit-image/")
+ (synopsis "Solar Physics image processing toolbox")
+ (description
+ "This package provides an image processing toolbox for Solar Physics.")
+ (license license:bsd-2)))
+
(define-public python-sunkit-magex
(package
(name "python-sunkit-magex")
@@ -7505,6 +7440,71 @@ to the SolarSoft data analysis environment.")
python-mpl-animators
python-pyerfa)))))
+(define-public python-sunpy-soar
+ (package
+ (name "python-sunpy-soar")
+ (version "1.11.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "sunpy_soar" version))
+ (sha256
+ (base32 "04zdfxb0y7m94lna6bikdc4rwa8n11wh42jyha0fxc604xhy2b3l"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ ;; Disable tests requiring network access to download test data from
+ ;; <http://soar.esac.esa.int> and <http://docs.virtualsolar.org>.
+ #~(list "-k" (string-join
+ (list "not test_distance_out_of_bounds_warning"
+ "test_distance_search_insitu"
+ "test_distance_search_remote_sensing"
+ "test_distance_time_search"
+ "test_download_path"
+ "test_insitu_search"
+ "test_invalid_detector"
+ "test_no_instrument"
+ "test_no_results"
+ "test_search"
+ "test_search_detector_instrument_dimension_2"
+ "test_search_detector_instrument_dimension_4"
+ "test_search_low_latency"
+ "test_search_soop"
+ "test_search_wavelength_detector_column"
+ "test_wavelength_column_wavelength_exists"
+ "test_wavelength_range"
+ "test_wavelength_single"
+ "test_when_sdac_provider_passed"
+ "test_when_soar_provider_passed"
+ "test_when_wrong_provider_passed")
+ " and not "))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'set-home-env
+ (lambda _
+ ;; Tests require HOME to be set.
+ ;; Permission denied: '/homeless-shelter'
+ (setenv "HOME" "/tmp"))))))
+ (native-inputs
+ (list python-pytest
+ python-pytest-doctestplus
+ python-responses
+ python-setuptools
+ python-setuptools-scm-next
+ python-wheel))
+ (propagated-inputs
+ (list python-astropy
+ python-matplotlib
+ python-requests
+ python-sunpy))
+ (home-page "https://docs.sunpy.org/projects/soar")
+ (synopsis "Solar Orbiter Archive plugin for SunPy")
+ (description
+ "This package provides a @code{sunpy} FIDO plugin for accessing data in
the
+@acronym{Solar Orbiter Archive, SOAR}.")
+ (license license:bsd-2)))
+
(define-public python-sunraster
(package
(name "python-sunraster")