From 78ee6dcfe13c1561ff1d5cdfc2c2d4fa8afe0883 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Thu, 24 Nov 2022 11:24:41 +0000 Subject: [PATCH] gnu: Add python-sunpy. * gnu/packages/astronomy.scm (python-sunpy): New variable. Signed-off-by: Christopher Baines --- gnu/packages/astronomy.scm | 85 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index b5f37232a3..767b4c4d96 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -36,6 +36,7 @@ (define-module (gnu packages astronomy) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) #:use-module (gnu packages curl) + #:use-module (gnu packages databases) #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) @@ -1411,6 +1412,90 @@ (define-public python-reproject changing the pixel resolution, orientation, coordinate system.") (license license:bsd-3))) +(define-public python-sunpy + (package + (name "python-sunpy") + (version "4.0.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sunpy" version)) + (sha256 + (base32 "0aiirb6l8zshdrpsvh6d5ki759ah9zfm9gbl0in985hprwwxyrq1")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'install 'writable-compiler + (lambda _ + (make-file-writable "sunpy/_compiler.c"))) + (add-before 'check 'prepare-test-environment + (lambda _ + (setenv "HOME" "/tmp") + (make-file-writable "sunpy/_compiler.c") + ;; TODO: (Sharlatan-20221106T115800+0000): Review failing tests + (substitute* "sunpy/image/tests/test_transform.py" + (("def test_clipping") "def __off_test_clipping") + (("def test_nans") "def __off_test_nans") + (("def test_endian") "def __off_test_endian")) + (substitute* "sunpy/map/tests/test_mapbase.py" + (("def test_derotating_nonpurerotation_pcij") + "def __off_test_derotating_nonpurerotation_pcij")) + (substitute* "sunpy/map/sources/tests/test_mdi_source.py" + (("def test_synoptic_source") + "def __off_test_synoptic_source")) + (substitute* "sunpy/tests/tests/test_self_test.py" + (("def test_main_nonexisting_module") + "def __off_test_main_nonexisting_module") + (("def test_main_stdlib_module") + "def __off_test_main_stdlib_module"))))))) + (native-inputs + (list python-aiohttp + python-extension-helpers + python-hvpy + python-packaging + python-pytest + python-pytest-astropy + python-pytest-doctestplus + python-pytest-mock + python-pytest-mpl + python-pytest-xdist + python-setuptools-scm)) + (propagated-inputs + (list parfive + python-asdf + python-asdf-astropy + python-astropy + python-beautifulsoup4 + python-cdflib + python-dask + python-dateutil + python-drms + python-glymur + python-h5netcdf + python-h5py + python-hypothesis + python-jplephem + python-matplotlib + python-mpl-animators + python-numpy + ;; python-opencv-python ; not packed yet + python-pandas + python-reproject + python-scikit-image + python-scipy + python-semantic-version + python-sqlalchemy + python-tqdm + python-zeep)) + (home-page "https://sunpy.org") + (synopsis "Python library for Solar Physics") + (description + "SunPy is package for solar physics and is meant to be a free alternative to the +SolarSoft data analysis environment.") + (license license:bsd-2))) + (define-public python-astral (package (name "python-astral")