diff options
28 files changed, 1732 insertions, 1398 deletions
diff --git a/gnu/packages/android.scm b/gnu/packages/android.scm index f804f98a0f..f9bc43f952 100644 --- a/gnu/packages/android.scm +++ b/gnu/packages/android.scm @@ -772,7 +772,7 @@ line. The project also attempts to maintain the same terminal output.") (define-public android-udev-rules (package (name "android-udev-rules") - (version "20210501") + (version "20250525") (source (origin (method git-fetch) @@ -781,7 +781,7 @@ line. The project also attempts to maintain the same terminal output.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0pl1wfd7k9vz8mvy2jb2icc5f11c5p07aixpyhjs6gi5cyaywm5f")))) + (base32 "1m5ngii9alsia81nk0cr8d13kpkrizbk7gpf9ai5yq8m9bsd9q70")))) (build-system trivial-build-system) (native-inputs `(("source" ,source))) (arguments diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 5f5c8b8885..0960b567a5 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -2011,6 +2011,40 @@ implementation package such as asdf-astropy.") python-wheel)) (propagated-inputs '())))) +(define-public python-asdf-wcs-schemas + (hidden-package + (package + (name "python-asdf-wcs-schemas") + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "asdf_wcs_schemas" version)) + (sha256 + (base32 "1dar2pzf2plwyl1rbmnv8fqvx1ljgpf3z39d4ybmn690djjdsyxg")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags #~(list "tests"))) + (native-inputs + (list python-asdf + python-pytest + python-pytest-openfiles + python-setuptools-next + python-setuptools-scm + python-wheel)) + (propagated-inputs + (list python-asdf-coordinates-schemas + python-asdf-standard + python-asdf-transform-schemas)) + (home-page "https://github.com/asdf-format/asdf-wcs-schemas") + (synopsis "ASDF WCS Schemas") + (description + "This package provides ASDF schemas for validating World Coordinate +System (WCS) tags. Users should not need to install this directly; instead, +install an implementation package such as gwcs.") + (license license:bsd-3)))) + (define-public python-asdf-zarr (package (name "python-asdf-zarr") @@ -4573,6 +4607,40 @@ observationally-derived galaxy merger catalogs.") satellite.") (license license:bsd-3))) +(define-public python-jplephem + (package + (name "python-jplephem") + (version "2.22") + (source + (origin + (method url-fetch) + (uri (pypi-uri "jplephem" version)) + (sha256 + (base32 "0b2rgb7pvwnl72pqjryf9c812mmdxr69fwiym7mnz05l2xrcr6hd")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "python" "-m" "unittest" "discover" "-s" "test"))))))) + (native-inputs + (list python-setuptools + python-wheel)) + (propagated-inputs + (list python-numpy)) + (home-page "https://github.com/brandon-rhodes/python-jplephem") + (synopsis "Python version of NASA DE4xx ephemerides") + (description + "@code{skyfield} computes positions for the stars, planets, and +satellites in orbit around the Earth. Its results should agree with the +positions generated by the United States Naval Observatory and their +Astronomical Almanac to within 0.0005 arcseconds (half a @emph{mas} or +milliarcsecond).") + (license license:expat))) + (define-public python-jwst (package (name "python-jwst") @@ -5325,6 +5393,179 @@ profiles. In particular, PetroFit includes tools for performing accurate photometry, segmentations, Petrosian profiling, and Sérsic fitting.") (license license:bsd-3))) +(define-public python-photutils + (package + (name "python-photutils") + (version "2.2.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "photutils" version)) + (sha256 + (base32 "1h1bf8694pf9qdv9gf0934v6dk08d3ybrj858salqnfz6prnfnzb")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "--pyargs" "photutils" + "--numprocesses" (number->string (min 8 (parallel-job-count)))) + #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? test-flags #:allow-other-keys) + (when tests? + (with-directory-excursion "/tmp" + (apply invoke "pytest" "-vv" test-flags)))))))) + (propagated-inputs + (list python-astropy + python-bottleneck + python-gwcs + python-matplotlib + python-numpy + python-rasterio + python-regions + python-scikit-image + python-scipy + python-shapely + python-tqdm)) + (native-inputs + (list python-cython-3 + python-extension-helpers + python-pytest-astropy + python-pytest-xdist + python-setuptools + python-setuptools-scm)) + (home-page "https://github.com/astropy/photutils") + (synopsis "Source detection and photometry") + (description "Photutils is an Astropy package for detection and photometry +of astronomical sources.") + (license license:bsd-3))) + +(define-public python-pint-pulsar + (package + (name "python-pint-pulsar") + (version "1.1.3") + (source + (origin + (method git-fetch) ; no tests data in the PyPI tarball + (uri (git-reference + (url "https://github.com/nanograv/PINT") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0n66z7v30q1981hx4q5vy3mibrh453gak8dd938038r5mwddya3f")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "-k" (string-join + ;; Tests failing with assertion on not correct precision + ;; or missing data files. + (list "not test_astropy_observatory" + "test_copy_wideband_fitter_object" + "test_IERS_B_builtin_agree_with_IERS_Auto_dX" + "test_astropy_observatory" + "test_time_construction_jds_exact[tdb]" + "test_copy_toa_object" + "test_copy_residuals" + "test_copy_fitter_object") + " and not ") + ;; XXX: The most of the tests require additional data, select + ;; files where they may run without it and check how to enable + ;; more. + "tests/test_Galactic.py" + "tests/test_all_component_and_model_builder.py" + "tests/test_astrometry.py" + "tests/test_astropy_observatory.py" + "tests/test_astropy_times.py" + "tests/test_astropy_version.py" + "tests/test_binary_generic.py" + "tests/test_binconvert.py" + "tests/test_compare.py" + "tests/test_compare_model.py" + "tests/test_compare_model_ecl_vs_icrs.py" + "tests/test_convert_parfile.py" + "tests/test_copy.py" + "tests/test_covariance_matrix.py" + "tests/test_datafiles.py" + "tests/test_derived_quantities.py" + "tests/test_derivedparams.py" + "tests/test_dmxrange_add_sub.py" + "tests/test_erfautils.py" + "tests/test_eventstats.py" + "tests/test_funcpar.py" + "tests/test_kepler.py" + "tests/test_leapsec.py" + "tests/test_model_manual.py" + "tests/test_numpy.py" + "tests/test_observatory_envar.py" + "tests/test_observatory_metadata.py" + "tests/test_parfile.py" + "tests/test_parunits.py" + "tests/test_pb.py" + "tests/test_phase.py" + "tests/test_pickle.py" + "tests/test_plk_widget.py" + "tests/test_plot_utils.py" + "tests/test_plrednoise.py" + "tests/test_pmtransform_units.py" + "tests/test_precision.py" + "tests/test_prefix_param_inheritance.py" + "tests/test_priors.py" + "tests/test_process_parfile.py" + "tests/test_pulsar_mjd.py" + "tests/test_pulsar_position.py" + "tests/test_reduced_precision.py" + "tests/test_satobs.py" + "tests/test_t2binary2pint.py" + "tests/test_tcb2tdb.py" + "tests/test_templates.py" + "tests/test_variety_parfiles.py" + "tests/test_version.py") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'remove-deprecated-scripts + ;; ImportError: cannot import name 'CompositeMCMCFitter' from + ;; 'pint.mcmc_fitter'. + ;; + ;; Removed in 1.1.3: Broken fitter class `CompositeMCMCFitter` + ;; (this fitter was added seemingly to deal with combined radio and + ;; high-energy datasets, but has since been broken for a while.) + (lambda _ + (substitute* "pyproject.toml" + (("event_optimize_multiple.*") ""))))))) + (native-inputs + (list python-pytest + python-setuptools + python-versioneer + python-wheel)) + (propagated-inputs + (list python-astropy + python-corner + python-emcee + python-jplephem + python-loguru + python-matplotlib + python-nestle + python-numdifftools + python-numpy + python-pyerfa + python-scipy + python-uncertainties)) + (home-page "https://github.com/nanograv/PINT") + (synopsis "Software for high-precision pulsar timing") + (description + "PINT is not TEMPO3 - package providing a Pulsar Timing, written in +Python from scratch. +Features: +@itemize +@item a robust system to produce high-precision timing results that is +completely independent of TEMPO and Tempo2 +@item a system that is easy to extend and modify due to a good design +and the use of a modern programming language, techniques, and libraries +@end itemize") + (license license:bsd-3))) + (define-public python-pixell (package (name "python-pixell") @@ -5588,6 +5829,63 @@ Features: @end itemize") (license license:expat))) +(define-public python-pysat + (package + (name "python-pysat") + (version "3.2.2") + (source + (origin + (method git-fetch) ; no tests data in the PyPI tarball + (uri (git-reference + (url "https://github.com/pysat/pysat") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0gm71zafigwc94s37wqyl86yjabpq6wx9izwxag74wg1ynhqyvf0")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "--durations=10" ; report 10 slowest tests + ;; Tests require pysatSpaceWeather which is not packed yet. + "--ignore=pysat/tests/test_utils_files.py" + "-k" "not test_from_os") + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + ;; Do not run test coverage. + (substitute* "pyproject.toml" + ((".*addopts.*cov.*") "")) + ;; No such file or directory: '/homeless-shelter/.pysat' + (setenv "HOME" "/tmp") + (mkdir "pysatData") + (invoke "python" "-c" + "import pysat; pysat.params['data_dirs'] = 'pysatData'")))))) + (native-inputs + (list python-pytest + python-pytest-xdist + python-setuptools + python-wheel)) + (propagated-inputs + (list python-dask + python-netcdf4 + python-numpy + python-pandas + python-portalocker + python-scipy + python-toolz + python-xarray)) + (home-page "https://github.com/pysat/pysat") + (synopsis "Supports science analysis across disparate data platforms") + (description + "The Python Satellite Data Analysis Toolkit (pysat) provides a simple and +flexible interface for robust data analysis from beginning to end - including +downloading, loading, cleaning, managing, processing, and analyzing +data. Pysat's plug-in design allows analysis support for any data, including +user provided data sets.") + (license license:bsd-3))) + (define-public python-pysiril (package (name "python-pysiril") @@ -5926,6 +6224,69 @@ PSF} describing how the optical system spreads light from sources.") observations from the Nancy Grace Roman Space Telescope.") (license license:bsd-3)))) +(define-public python-sbpy + (package + (name "python-sbpy") + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sbpy" version)) + (sha256 + (base32 "1xqi29rrh7v05zmvyl8gffrkrw5rlcxig1w6xw1v8f7ikydb5plv")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "--numprocesses" (number->string (parallel-job-count))) + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'set-home-env + (lambda _ + ;; Tests require HOME to be set. + ;; No such file or directory: '/homeless-shelter/.astropy' + (setenv "HOME" "/tmp")))))) + (propagated-inputs + (list python-ads + python-astropy + python-astroquery + python-ginga + python-numpy + python-photutils + ;python-pyoorb ;not packed yet in Guix + python-pyyaml + python-scipy + python-synphot)) + (native-inputs + (list python-pytest + python-pytest-astropy + python-pytest-doctestplus + python-pytest-remotedata + python-pytest-xdist + python-setuptools-scm)) + (home-page "https://sbpy.org") + (synopsis "Python module for small-body planetary astronomy") + (description + "@code{sbpy} is a package for small-body planetary astronomy. It is +meant to supplement functionality provided by @code{astropy} with functions +and methods that are frequently used in the context of planetary astronomy +with a clear focus on asteroids and comets. +Features: +@itemize +@item observation planning tools tailored to moving objects +@item photometry models for resolved and unresolved observations +@item wrappers and tools for astrometry and orbit fitting +@item spectroscopy analysis tools and models for reflected solar light and +emission from gas +@item cometary gas and dust coma simulation and analysis tools +@item asteroid thermal models for flux estimation and size/albedo estimation +@item image enhancement tools for comet comae and PSF subtraction tools +@item lightcurve and shape analysis tools +@item access tools for various databases for orbital and physical data, as +well as ephemerides services +@end itemize") + (license license:bsd-3))) + (define-public python-sep (package/inherit libsep (name "python-sep") @@ -5954,6 +6315,68 @@ observations from the Nancy Grace Roman Space Telescope.") (list python-numpy)) (synopsis "Python library for Source Extraction and Photometry"))) +(define-public python-sep-pjw + (package + (name "python-sep-pjw") + (version "1.3.8") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sep_pjw" version)) + (sha256 + (base32 "0lhxfq1acc6qc8nszfdrpwq6dizaypz3b6frknfv5qm59mb488r0")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags #~(list "test.py"))) + (native-inputs + (list python-cython + python-pytest + python-setuptools + python-setuptools-scm-next + python-wheel)) + (propagated-inputs + (list python-numpy + python-sep)) + (home-page "https://github.com/PJ-Watson/sep-pjw") + (synopsis "Alternative fork of SEP library") + (description + "This package provides an alternative maintained fork of SEP python +library with bug fixtures.") + (license (list license:expat license:lgpl3+ license:bsd-3)))) + +(define-public python-sgp4 + (package + (name "python-sgp4") + (version "2.24") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sgp4" version)) + (sha256 + (base32 "0ll3gxjf697llh6nvisxnj2h4hl23nq1m24ymsykz8kf4ygj8man")))) + (build-system pyproject-build-system) + (native-inputs + (list python-setuptools + python-wheel)) + (propagated-inputs + (list python-numpy)) + (home-page "https://github.com/brandon-rhodes/python-sgp4") + (synopsis "Track earth satellite TLE orbits using SGP4") + (description + "This package provides a Python implementation for computations of the +position and velocity of an earth-orbiting satellite, given the satellite’s +@acronym{TLE, Two-line element set} orbital elements from a source like +@url{CelesTrak, https://celestrak.org/}. + +It implements the most recent version of @acronym{SGP4, Simplified General +Perturbation models}, and is regularly run against the SGP4 test suite to make +sure that its satellite position predictions agree to within 0.1 mm with the +predictions of the standard distribution of the algorithm. This error is far +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-sirilic (package (name "python-sirilic") @@ -6391,88 +6814,6 @@ instruments.") (license (list license:bsd-3 ; licenses/LICENSE.rst, same as python-astropy license:expat)))) ; licenses/KOSMOS_LICENSE -(define-public python-jplephem - (package - (name "python-jplephem") - (version "2.22") - (source - (origin - (method url-fetch) - (uri (pypi-uri "jplephem" version)) - (sha256 - (base32 "0b2rgb7pvwnl72pqjryf9c812mmdxr69fwiym7mnz05l2xrcr6hd")))) - (build-system pyproject-build-system) - (arguments - (list - #:phases - #~(modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "python" "-m" "unittest" "discover" "-s" "test"))))))) - (native-inputs - (list python-setuptools - python-wheel)) - (propagated-inputs - (list python-numpy)) - (home-page "https://github.com/brandon-rhodes/python-jplephem") - (synopsis "Python version of NASA DE4xx ephemerides") - (description - "@code{skyfield} computes positions for the stars, planets, and -satellites in orbit around the Earth. Its results should agree with the -positions generated by the United States Naval Observatory and their -Astronomical Almanac to within 0.0005 arcseconds (half a @emph{mas} or -milliarcsecond).") - (license license:expat))) - -(define-public python-photutils - (package - (name "python-photutils") - (version "2.2.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "photutils" version)) - (sha256 - (base32 "1h1bf8694pf9qdv9gf0934v6dk08d3ybrj858salqnfz6prnfnzb")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - #~(list "--pyargs" "photutils" - "--numprocesses" (number->string (min 8 (parallel-job-count)))) - #:phases - #~(modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? test-flags #:allow-other-keys) - (when tests? - (with-directory-excursion "/tmp" - (apply invoke "pytest" "-vv" test-flags)))))))) - (propagated-inputs - (list python-astropy - python-bottleneck - python-gwcs - python-matplotlib - python-numpy - python-rasterio - python-regions - python-scikit-image - python-scipy - python-shapely - python-tqdm)) - (native-inputs - (list python-cython-3 - python-extension-helpers - python-pytest-astropy - python-pytest-xdist - python-setuptools - python-setuptools-scm)) - (home-page "https://github.com/astropy/photutils") - (synopsis "Source detection and photometry") - (description "Photutils is an Astropy package for detection and photometry -of astronomical sources.") - (license license:bsd-3))) - ;; XXX: The project is archived, maintained fork is available see ;; <https://github.com/poliastro/poliastro/issues/1640>. ;; Maintained fork <https://github.com/pleiszenburg/hapsira>. @@ -6756,38 +7097,6 @@ 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-sgp4 - (package - (name "python-sgp4") - (version "2.24") - (source - (origin - (method url-fetch) - (uri (pypi-uri "sgp4" version)) - (sha256 - (base32 "0ll3gxjf697llh6nvisxnj2h4hl23nq1m24ymsykz8kf4ygj8man")))) - (build-system pyproject-build-system) - (native-inputs - (list python-setuptools - python-wheel)) - (propagated-inputs - (list python-numpy)) - (home-page "https://github.com/brandon-rhodes/python-sgp4") - (synopsis "Track earth satellite TLE orbits using SGP4") - (description - "This package provides a Python implementation for computations of the -position and velocity of an earth-orbiting satellite, given the satellite’s -@acronym{TLE, Two-line element set} orbital elements from a source like -@url{CelesTrak, https://celestrak.org/}. - -It implements the most recent version of @acronym{SGP4, Simplified General -Perturbation models}, and is regularly run against the SGP4 test suite to make -sure that its satellite position predictions agree to within 0.1 mm with the -predictions of the standard distribution of the algorithm. This error is far -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-spectral-cube (package (name "python-spectral-cube") @@ -7393,63 +7702,6 @@ astrophysical simulations supporting PKDGRAV/Gasoline, Gadget, Gadget4/Arepo, N-Chilada and RAMSES AMR outputs.") (license license:gpl3+))) -(define-public python-pysat - (package - (name "python-pysat") - (version "3.2.2") - (source - (origin - (method git-fetch) ; no tests data in the PyPI tarball - (uri (git-reference - (url "https://github.com/pysat/pysat") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0gm71zafigwc94s37wqyl86yjabpq6wx9izwxag74wg1ynhqyvf0")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - #~(list "--durations=10" ; report 10 slowest tests - ;; Tests require pysatSpaceWeather which is not packed yet. - "--ignore=pysat/tests/test_utils_files.py" - "-k" "not test_from_os") - #:phases - #~(modify-phases %standard-phases - (add-before 'check 'pre-check - (lambda _ - ;; Do not run test coverage. - (substitute* "pyproject.toml" - ((".*addopts.*cov.*") "")) - ;; No such file or directory: '/homeless-shelter/.pysat' - (setenv "HOME" "/tmp") - (mkdir "pysatData") - (invoke "python" "-c" - "import pysat; pysat.params['data_dirs'] = 'pysatData'")))))) - (native-inputs - (list python-pytest - python-pytest-xdist - python-setuptools - python-wheel)) - (propagated-inputs - (list python-dask - python-netcdf4 - python-numpy - python-pandas - python-portalocker - python-scipy - python-toolz - python-xarray)) - (home-page "https://github.com/pysat/pysat") - (synopsis "Supports science analysis across disparate data platforms") - (description - "The Python Satellite Data Analysis Toolkit (pysat) provides a simple and -flexible interface for robust data analysis from beginning to end - including -downloading, loading, cleaning, managing, processing, and analyzing -data. Pysat's plug-in design allows analysis support for any data, including -user provided data sets.") - (license license:bsd-3))) - (define-public python-pysiaf (package (name "python-pysiaf") @@ -7544,99 +7796,6 @@ photometric systems are available, and users can incorporate their own filters, spectra, and data.") (license license:bsd-3)))) -(define-public python-sbpy - (package - (name "python-sbpy") - (version "0.5.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "sbpy" version)) - (sha256 - (base32 "1xqi29rrh7v05zmvyl8gffrkrw5rlcxig1w6xw1v8f7ikydb5plv")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - #~(list "--numprocesses" (number->string (parallel-job-count))) - #:phases - #~(modify-phases %standard-phases - (add-before 'check 'set-home-env - (lambda _ - ;; Tests require HOME to be set. - ;; No such file or directory: '/homeless-shelter/.astropy' - (setenv "HOME" "/tmp")))))) - (propagated-inputs - (list python-ads - python-astropy - python-astroquery - python-ginga - python-numpy - python-photutils - ;python-pyoorb ;not packed yet in Guix - python-pyyaml - python-scipy - python-synphot)) - (native-inputs - (list python-pytest - python-pytest-astropy - python-pytest-doctestplus - python-pytest-remotedata - python-pytest-xdist - python-setuptools-scm)) - (home-page "https://sbpy.org") - (synopsis "Python module for small-body planetary astronomy") - (description - "@code{sbpy} is a package for small-body planetary astronomy. It is -meant to supplement functionality provided by @code{astropy} with functions -and methods that are frequently used in the context of planetary astronomy -with a clear focus on asteroids and comets. -Features: -@itemize -@item observation planning tools tailored to moving objects -@item photometry models for resolved and unresolved observations -@item wrappers and tools for astrometry and orbit fitting -@item spectroscopy analysis tools and models for reflected solar light and -emission from gas -@item cometary gas and dust coma simulation and analysis tools -@item asteroid thermal models for flux estimation and size/albedo estimation -@item image enhancement tools for comet comae and PSF subtraction tools -@item lightcurve and shape analysis tools -@item access tools for various databases for orbital and physical data, as -well as ephemerides services -@end itemize") - (license license:bsd-3))) - -(define-public python-sep-pjw - (package - (name "python-sep-pjw") - (version "1.3.8") - (source - (origin - (method url-fetch) - (uri (pypi-uri "sep_pjw" version)) - (sha256 - (base32 "0lhxfq1acc6qc8nszfdrpwq6dizaypz3b6frknfv5qm59mb488r0")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags #~(list "test.py"))) - (native-inputs - (list python-cython - python-pytest - python-setuptools - python-setuptools-scm-next - python-wheel)) - (propagated-inputs - (list python-numpy - python-sep)) - (home-page "https://github.com/PJ-Watson/sep-pjw") - (synopsis "Alternative fork of SEP library") - (description - "This package provides an alternative maintained fork of SEP python -library with bug fixtures.") - (license (list license:expat license:lgpl3+ license:bsd-3)))) - (define-public python-asdf-standard (package (name "python-asdf-standard") @@ -7745,165 +7904,6 @@ implementation package such as asdf-astropy.") "This package provides ASDF schemas for validating FITS tags.") (license license:bsd-3))))) -(define-public python-asdf-wcs-schemas - (hidden-package - (package - (name "python-asdf-wcs-schemas") - (version "0.5.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "asdf_wcs_schemas" version)) - (sha256 - (base32 "1dar2pzf2plwyl1rbmnv8fqvx1ljgpf3z39d4ybmn690djjdsyxg")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags #~(list "tests"))) - (native-inputs - (list python-asdf - python-pytest - python-pytest-openfiles - python-setuptools-next - python-setuptools-scm - python-wheel)) - (propagated-inputs - (list python-asdf-coordinates-schemas - python-asdf-standard - python-asdf-transform-schemas)) - (home-page "https://github.com/asdf-format/asdf-wcs-schemas") - (synopsis "ASDF WCS Schemas") - (description - "This package provides ASDF schemas for validating World Coordinate -System (WCS) tags. Users should not need to install this directly; instead, -install an implementation package such as gwcs.") - (license license:bsd-3)))) - -(define-public python-pint-pulsar - (package - (name "python-pint-pulsar") - (version "1.1.3") - (source - (origin - (method git-fetch) ; no tests data in the PyPI tarball - (uri (git-reference - (url "https://github.com/nanograv/PINT") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0n66z7v30q1981hx4q5vy3mibrh453gak8dd938038r5mwddya3f")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - #~(list "-k" (string-join - ;; Tests failing with assertion on not correct precision - ;; or missing data files. - (list "not test_astropy_observatory" - "test_copy_wideband_fitter_object" - "test_IERS_B_builtin_agree_with_IERS_Auto_dX" - "test_astropy_observatory" - "test_time_construction_jds_exact[tdb]" - "test_copy_toa_object" - "test_copy_residuals" - "test_copy_fitter_object") - " and not ") - ;; XXX: The most of the tests require additional data, select - ;; files where they may run without it and check how to enable - ;; more. - "tests/test_Galactic.py" - "tests/test_all_component_and_model_builder.py" - "tests/test_astrometry.py" - "tests/test_astropy_observatory.py" - "tests/test_astropy_times.py" - "tests/test_astropy_version.py" - "tests/test_binary_generic.py" - "tests/test_binconvert.py" - "tests/test_compare.py" - "tests/test_compare_model.py" - "tests/test_compare_model_ecl_vs_icrs.py" - "tests/test_convert_parfile.py" - "tests/test_copy.py" - "tests/test_covariance_matrix.py" - "tests/test_datafiles.py" - "tests/test_derived_quantities.py" - "tests/test_derivedparams.py" - "tests/test_dmxrange_add_sub.py" - "tests/test_erfautils.py" - "tests/test_eventstats.py" - "tests/test_funcpar.py" - "tests/test_kepler.py" - "tests/test_leapsec.py" - "tests/test_model_manual.py" - "tests/test_numpy.py" - "tests/test_observatory_envar.py" - "tests/test_observatory_metadata.py" - "tests/test_parfile.py" - "tests/test_parunits.py" - "tests/test_pb.py" - "tests/test_phase.py" - "tests/test_pickle.py" - "tests/test_plk_widget.py" - "tests/test_plot_utils.py" - "tests/test_plrednoise.py" - "tests/test_pmtransform_units.py" - "tests/test_precision.py" - "tests/test_prefix_param_inheritance.py" - "tests/test_priors.py" - "tests/test_process_parfile.py" - "tests/test_pulsar_mjd.py" - "tests/test_pulsar_position.py" - "tests/test_reduced_precision.py" - "tests/test_satobs.py" - "tests/test_t2binary2pint.py" - "tests/test_tcb2tdb.py" - "tests/test_templates.py" - "tests/test_variety_parfiles.py" - "tests/test_version.py") - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'remove-deprecated-scripts - ;; ImportError: cannot import name 'CompositeMCMCFitter' from - ;; 'pint.mcmc_fitter'. - ;; - ;; Removed in 1.1.3: Broken fitter class `CompositeMCMCFitter` - ;; (this fitter was added seemingly to deal with combined radio and - ;; high-energy datasets, but has since been broken for a while.) - (lambda _ - (substitute* "pyproject.toml" - (("event_optimize_multiple.*") ""))))))) - (native-inputs - (list python-pytest - python-setuptools - python-versioneer - python-wheel)) - (propagated-inputs - (list python-astropy - python-corner - python-emcee - python-jplephem - python-loguru - python-matplotlib - python-nestle - python-numdifftools - python-numpy - python-pyerfa - python-scipy - python-uncertainties)) - (home-page "https://github.com/nanograv/PINT") - (synopsis "Software for high-precision pulsar timing") - (description - "PINT is not TEMPO3 - package providing a Pulsar Timing, written in -Python from scratch. -Features: -@itemize -@item a robust system to produce high-precision timing results that is -completely independent of TEMPO and Tempo2 -@item a system that is easy to extend and modify due to a good design -and the use of a modern programming language, techniques, and libraries -@end itemize") - (license license:bsd-3))) - (define-public python-rad (package (name "python-rad") diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm index 05bee696b2..df9f8be91a 100644 --- a/gnu/packages/electronics.scm +++ b/gnu/packages/electronics.scm @@ -85,6 +85,40 @@ #:use-module (gnu packages xorg) #:use-module (gnu packages xml)) +(define-public camv-rnd + (package + (name "camv-rnd") + (version "1.1.6") + (source + (origin + (method url-fetch) + (uri (string-append "http://repo.hu/projects/camv-rnd/" + "releases/camv-rnd-" version ".tar.gz")) + (sha256 + (base32 + "1dp1vj5rpxlddx40paa9i727c92is3bz6z6pa0y6dy2nsjcm86fs")))) + (build-system glib-or-gtk-build-system) + (arguments + (list + #:tests? #f + #:phases + #~(modify-phases %standard-phases + (replace 'configure + ;; The configure script doesn't tolerate most of our configure + ;; flags. + (lambda _ + (setenv "CC" #$(cc-for-target)) + (setenv "LIBRND_PREFIX" #$(this-package-input "librnd")) + (invoke "./configure" (string-append "--prefix=" #$output))))))) + (inputs (list librnd)) + (home-page "http://repo.hu/projects/route-rnd/") + (synopsis "Viewer for electronic boards in CAM file formats") + (description + "@code{Camv-rnd} is a viewer for @acronym{PCB, Printed Circuit Board} +supporting gerber, excellon and g-code. It is part of the RiNgDove EDA +suite.") + (license license:gpl2+))) + (define-public comedilib (package (name "comedilib") @@ -919,6 +953,75 @@ netlists from the drawn schematic, allowing the simulation of the circuit.") (home-page "https://xschem.sourceforge.io/stefan/index.html") (license license:gpl2+))) +(define-public route-rnd + (package + (name "route-rnd") + (version "0.9.3") + (source + (origin + (method url-fetch) + (uri (string-append "http://repo.hu/projects/route-rnd/" + "releases/route-rnd-" version ".tar.gz")) + (sha256 + (base32 + "0fy3b48s72lpicyap3y6jr9fyvb2ri42jb0gqxk6s927a278bfhc")))) + (build-system gnu-build-system) + (arguments + (list + #:tests? #f + #:make-flags #~(list (string-append "PREFIX=" #$output)) + #:phases + #~(modify-phases %standard-phases + (replace 'configure + ;; The configure script doesn't tolerate most of our configure + ;; flags. + (lambda _ + (setenv "CC" #$(cc-for-target)) + (setenv "LIBRND_PREFIX" #$(this-package-input "librnd")) + (invoke "./configure" (string-append "--prefix=" #$output))))))) + (inputs (list librnd)) + (home-page "http://repo.hu/projects/route-rnd/") + (synopsis "Automatic routing for electronics boards") + (description + "@code{Route-rnd} is a generic external autorouter for @acronym{PCB, +Printed Circuit Board} using tEDAx file format, part of the RiNgDove EDA +suite.") + (license license:gpl2+))) + +(define-public sch-rnd + (package + (name "sch-rnd") + (version "1.0.9") + (source + (origin + (method url-fetch) + (uri (string-append "http://repo.hu/projects/sch-rnd/" + "releases/sch-rnd-" version ".tar.gz")) + (sha256 + (base32 + "07a1ik0rpsa5cscg9l7i5rnipx76543s7cdnkg802747rral7yj5")))) + (build-system glib-or-gtk-build-system) + (arguments + (list + #:test-target "test" + #:phases + #~(modify-phases %standard-phases + (replace 'configure + ;; The configure script doesn't tolerate most of our configure + ;; flags. + (lambda _ + (setenv "CC" #$(cc-for-target)) + (setenv "LIBRND_PREFIX" #$(this-package-input "librnd")) + (invoke "./configure" (string-append "--prefix=" #$output))))))) + (inputs (list librnd)) + (home-page "http://repo.hu/projects/sch-rnd/") + (synopsis "Scriptable editor of schematics for electronics boards") + (description + "@code{Sch-rnd} is a standalone and workflow agnostic schematics capture +tool for @acronym{PCB, Printed Circuit Board}, part of the RiNgDove EDA +suite.") + (license license:gpl2+))) + (define-public sigrok-cli (package (name "sigrok-cli") diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 86ab5354f6..9ccacb7e56 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -8490,29 +8490,23 @@ column by drawing a thin line down the length of the editing window.") (license license:gpl3+))) (define-public emacs-greader - (let ((commit "d58c1ee051afe384e23455b7c8b72ee1eae4850f")) ;version bump + (let ((commit "07266f027f9e3d4b690142f525b5bbde2cb4b19e")) ;version bump (package (name "emacs-greader") - (version "0.12.5") + (version "0.12.7") (source (origin (uri (git-reference - (url "https://gitlab.com/michelangelo-rodriguez/greader") - (commit commit))) + (url "https://gitlab.com/michelangelo-rodriguez/greader") + (commit commit))) (method git-fetch) (file-name (git-file-name name version)) (sha256 - (base32 "1wh9xbz4az4b90m2r2ffmrvwlv2ig75bxycmkqghaz4hhx2gkvaz")))) + (base32 "1qg9a3msnh95rj4jmih2j48r8dsisiqd8nlrj1qf3mfl4xr1kb7c")))) (build-system emacs-build-system) (arguments - (list - #:phases #~(modify-phases %standard-phases - (add-after 'unpack 'add-requires - (lambda _ - (substitute* "greader-dict.el" - ((";;; Code:") - ";;; Code:\n(require 'greader)\n"))))))) - (inputs (list espeak-ng)) + (list #:tests? #f)) ;no tests + (inputs (list emacs-compat espeak-ng)) (home-page "https://gitlab.com/michelangelo-rodriguez/greader") (synopsis "Gnamù Reader, or Greader, sends buffer contents to a speech engine") @@ -8521,7 +8515,7 @@ column by drawing a thin line down the length of the editing window.") Text To Speech} engine, such as Espeak-NG or Speech Dispatcher. The mode supports timer reading, automatic scrolling of buffers in modes like -Info mode, and repeating reading of regions or the whole buffer. It also +Info mode, and repeating reading of regions or the whole buffer. It also includes a feature to facilitate the compilation of Espeak-NG pronunciations.") (license license:gpl3+)))) @@ -32788,32 +32782,30 @@ statistics with the help of @code{tokei}.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 - "0zkl9jkjbx0lmp9ylv4rqg1zwqibk053s4rp7s1h0i18nzk7vn8j")))) + (base32 "0zkl9jkjbx0lmp9ylv4rqg1zwqibk053s4rp7s1h0i18nzk7vn8j")))) (build-system emacs-build-system) - (inputs - (list youtube-dl)) (arguments - `(#:tests? #f ; Error : standard input is not a tty - #:test-command (list "make" "simulate") - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'configure - (lambda* (#:key inputs #:allow-other-keys) - (let ((youtube-dl (assoc-ref inputs "youtube-dl"))) - ;; .el is read-only in git. - (chmod "youtube-dl.el" #o644) - ;; Specify the absolute file names of the various - ;; programs so that everything works out-of-the-box. - (emacs-substitute-variables - "youtube-dl.el" - ("youtube-dl-program" - (string-append youtube-dl "/bin/youtube-dl"))))))))) + (list + #:tests? #f ; Error : standard input is not a tty + #:test-command #~(list "make" "simulate") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs #:allow-other-keys) + ;; .el is read-only in git. + (chmod "youtube-dl.el" #o644) + ;; Specify the absolute file names of the various + ;; programs so that everything works out-of-the-box. + (emacs-substitute-variables + "youtube-dl.el" + ("youtube-dl-program" + (search-input-file inputs "bin/yt-dlp")))))))) + (inputs (list yt-dlp)) (home-page "https://github.com/skeeto/youtube-dl-emacs/") (synopsis "Emacs youtube-dl download manager") (description "This package manages a video download queue for -@command{youtube-dl}, which serves as the back end. It manages a single -@command{youtube-dl} subprocess, downloading one video at a time. New videos +@command{yt-dlp}, which serves as the back end. It manages a single +@command{yt-dlp} subprocess, downloading one video at a time. New videos can be queued at any time.") (license license:unlicense)))) @@ -32834,27 +32826,28 @@ can be queued at any time.") (base32 "0y62lkgsg19j05dpd6sp6zify8vq8xvpc8caqiy4rwi7p4ahacsf")))) (build-system emacs-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'configure - (lambda* (#:key inputs #:allow-other-keys) - ;; .el is read-only in git. - (make-file-writable "ytdl.el") - ;; Specify the absolute file names of the various programs so - ;; that everything works out-of-the-box. - (emacs-substitute-variables "ytdl.el" - ("ytdl-command" - (search-input-file inputs "/bin/youtube-dl")))))))) + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs #:allow-other-keys) + ;; .el is read-only in git. + (make-file-writable "ytdl.el") + ;; Specify the absolute file names of the various programs so + ;; that everything works out-of-the-box. + (emacs-substitute-variables "ytdl.el" + ("ytdl-command" + (search-input-file inputs "/bin/yt-dlp")))))))) (inputs - (list youtube-dl)) + (list yt-dlp)) (propagated-inputs (list emacs-async emacs-dash)) (home-page "https://gitlab.com/tuedachu/ytdl") (synopsis "Emacs interface for youtube-dl") (description - "This package manages a video download queue for @command{youtube-dl}, + "This package manages a video download queue for @command{yt-dlp}, which serves as the back end. New videos can be queued at any time. All -youtube-dl backends are supported. It is possible to create download profiles +yt-dlp backends are supported. It is possible to create download profiles depending on the downloaded URL.") (license license:gpl3+)))) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index cba13fff86..944204debd 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -3228,7 +3228,7 @@ Newton-Raphson power flow solvers in the C++ library lightsim2grid, and the (define-public python-scikit-rf (package (name "python-scikit-rf") - (version "1.7.0") + (version "1.8.0") (source (origin (method git-fetch) ;PyPI misses some files required for tests (uri (git-reference @@ -3236,7 +3236,7 @@ Newton-Raphson power flow solvers in the C++ library lightsim2grid, and the (commit (string-append "v" version)))) (sha256 (base32 - "148bfdbh0y69f5xhxb49jqvc6gabk0n4i0fl1j5f3fnm9vaypyis")) + "0hzgqsj2jnbimb8klijak44bhm7f3lnxvppaddgq1zxr063sj0y1")) (file-name (git-file-name name version)))) (build-system pyproject-build-system) (propagated-inputs (list python-numpy diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index ac6c80a952..5648fa8f4a 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -92,7 +92,7 @@ client.") (define-public fcitx5 (package (name "fcitx5") - (version "5.1.12") + (version "5.1.14") (source (origin (method url-fetch) @@ -100,36 +100,36 @@ client.") "https://download.fcitx-im.org/fcitx5/fcitx5/fcitx5-" version "_dict.tar.zst")) (sha256 - (base32 "1zsmqicp4x2kpbrrh1r87ji3gsfxvl9ipgdni81b3mv6dv999nhr")))) + (base32 "1893994lrffzclblvw1jpcccqrqbpch8p5nd9jhc06ahajbz2nkk")))) (arguments (list #:configure-flags #~(list "-DUSE_SYSTEMD=OFF"))) (build-system cmake-build-system) (inputs - `(("cairo" ,cairo) - ("cairo-xcb" ,cairo-xcb) - ("dbus" ,dbus) - ("enchant" ,enchant) - ("expat" ,expat) - ("fmt" ,fmt) - ("gdk-pixbuf" ,gdk-pixbuf) - ("gettext" ,gettext-minimal) - ("glib" ,glib) - ("iso-codes" ,iso-codes/pinned) - ("json-c" ,json-c) - ("libevent" ,libevent) - ("libuuid" ,util-linux "lib") - ("libuv" ,libuv) - ("libxcb" ,libxcb) - ("libxkbcommon" ,libxkbcommon) - ("libxkbfile" ,libxkbfile) - ("pango" ,pango) - ("wayland" ,wayland) - ("wayland-protocols" ,wayland-protocols) - ("xcb-imdkit" ,xcb-imdkit) - ("xcb-util" ,xcb-util) - ("xcb-util-keysyms" ,xcb-util-keysyms) - ("xcb-util-wm" ,xcb-util-wm) - ("xkeyboard-config" ,xkeyboard-config))) + (list cairo + cairo-xcb + dbus + enchant + expat + fmt + gdk-pixbuf + gettext-minimal + glib + iso-codes/pinned + json-c + libevent + libuv + libxcb + libxkbcommon + libxkbfile + pango + `(,util-linux "lib") ;For libuuid. + wayland + wayland-protocols + xcb-imdkit + xcb-util + xcb-util-keysyms + xcb-util-wm + xkeyboard-config)) (native-inputs (list extra-cmake-modules zstd @@ -151,7 +151,7 @@ client.") (define-public fcitx5-lua (package (name "fcitx5-lua") - (version "5.0.14") + (version "5.0.15") (source (origin (method url-fetch) @@ -159,7 +159,7 @@ client.") "https://download.fcitx-im.org/fcitx5/fcitx5-lua/fcitx5-lua-" version ".tar.zst")) (sha256 - (base32 "0lmw62pd8x5ys8ci0dz43pw8q8401zjcfs24gjslbljhc4aqnp9r")))) + (base32 "1yp5z97m8n7fwvxps1gn8pflg69j3yawgabz36bpd4wl43zkgchg")))) (build-system cmake-build-system) (arguments (list @@ -177,14 +177,14 @@ client.") (define-public libime (package (name "libime") - (version "1.1.10") + (version "1.1.11") (source (origin (method url-fetch) (uri (string-append "https://download.fcitx-im.org/fcitx5/libime/libime-" version "_dict.tar.zst")) (sha256 - (base32 "17mdxbj8bb6vmjwfghy0hm0vvzcank835ayz9h8nhsaiap46nx54")))) + (base32 "1ms8vmv9fdr2czf7511jxiw7wyclvbkd82xkk16hahcvrszbrjqb")))) (build-system cmake-build-system) (inputs (list fcitx5 boost (list zstd "lib"))) @@ -199,7 +199,7 @@ editors.") (define-public fcitx5-gtk (package (name "fcitx5-gtk") - (version "5.1.3") + (version "5.1.4") (source (origin (method url-fetch) @@ -207,7 +207,7 @@ editors.") "/fcitx5-gtk/fcitx5-gtk-" version ".tar.zst")) (sha256 - (base32 "1j2cmqmcdzfv8cxnjd75mfkfpd7r1a1iqdqc8zdx8dc88vz4dmis")))) + (base32 "0lwl17mbfm3pxpd3y7h4sxf77npr16hyzygrc7a6v26bx6ycbkqx")))) (build-system cmake-build-system) (arguments (list @@ -317,7 +317,7 @@ IM module for GTK+3 applications. (define-public fcitx5-qt (package (name "fcitx5-qt") - (version "5.1.9") + (version "5.1.10") (source (origin (method url-fetch) @@ -325,7 +325,7 @@ IM module for GTK+3 applications. "/fcitx5-qt/fcitx5-qt-" version ".tar.zst")) (sha256 - (base32 "1s45iyyyl0js5p15zb3hxwsjspj0p3p4m81c7x9bz00a60b58m1i")))) + (base32 "0v07g2nsdjcijl81i7zrv3krr9w4nh88lkri0xq9l9cbri91h0mf")))) (build-system cmake-build-system) (arguments (list #:configure-flags @@ -356,7 +356,7 @@ for Qt based application.") (define-public fcitx5-anthy (package (name "fcitx5-anthy") - (version "5.1.6") + (version "5.1.7") (source (origin (method url-fetch) @@ -364,7 +364,7 @@ for Qt based application.") "/fcitx5-anthy/fcitx5-anthy-" version ".tar.zst")) (sha256 - (base32 "08lw5d9kpjmgdss76rqf0qzs39jw371fnbb56k3z64wjg1h3722w")))) + (base32 "1vfv0i62z9dclm5zcxk2v57x46z85m36w2yvskpfwyc8nwald3lm")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ;; no tests @@ -380,7 +380,7 @@ the Anthy input method.") (define-public fcitx5-skk (package (name "fcitx5-skk") - (version "5.1.6") + (version "5.1.7") (source (origin (method git-fetch) @@ -389,7 +389,7 @@ the Anthy input method.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "109fx80iaa896652lwhfdr8x9h4vmw6pc9fwns3cwp610p9x21yn")))) + (base32 "0xvsbsc9ybq6j0xnvq3wiidw9f6kh5n8jr3z69b7hshw59jirjaq")))) (build-system cmake-build-system) (arguments (list #:tests? #f ; no tests @@ -416,14 +416,14 @@ backend.") (define-public fcitx5-chewing (package (name "fcitx5-chewing") - (version "5.1.7") + (version "5.1.8") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/fcitx/fcitx5-chewing") (commit version))) (sha256 - (base32 "1hr5ylyzm5r02la5lh6alrp6g19y0dm9ccydd9ygy30srd26pga0")) + (base32 "1l9hps0w1da3rjmkipzgb13fyh1nhalapgynywvjd1zvj9njazrs")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments @@ -445,7 +445,7 @@ backend.") (define-public fcitx5-chinese-addons (package (name "fcitx5-chinese-addons") - (version "5.1.8") + (version "5.1.9") (source (origin (method url-fetch) @@ -453,32 +453,32 @@ backend.") "/fcitx5-chinese-addons/fcitx5-chinese-addons-" version "_dict.tar.zst")) (sha256 - (base32 "06ls6ww60y7l39bjk1h1xvjq9c3va5cib6hs4y0xk9p69f2s41l3")))) + (base32 "0j0xx4kil93ixa81j08y4mm5qfpl32qf3fdlcw2sbjn92v238hbv")))) (build-system cmake-build-system) (arguments - `(#:configure-flags - '("-DUSE_WEBKIT=off") - #:phases - (modify-phases %standard-phases - (add-before 'configure 'split-outputs - ;; Build with GUI supports requires Qt and increase package closure - ;; by 800M on x86_64, so place it under another output. - (lambda* (#:key outputs #:allow-other-keys) - (substitute* "gui/pinyindictmanager/CMakeLists.txt" - (("\\$\\{CMAKE_INSTALL_LIBDIR\\}" _) - (string-append (assoc-ref outputs "gui") "/lib")))))))) + (list #:configure-flags + #~(list "-DUSE_WEBKIT=off") + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'split-outputs + ;; Build with GUI supports requires Qt and increase package + ;; closure by 800M on x86_64, so place it under another output. + (lambda _ + (substitute* "gui/pinyindictmanager/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}" _) + (string-append #$output:gui "/lib")))))))) (inputs - `(("fcitx5" ,fcitx5) - ("fcitx5-lua" ,fcitx5-lua) - ("boost" ,boost) - ("libime",libime) - ("curl" ,curl) - ("gettext" ,gettext-minimal) - ("fmt" ,fmt) - ("opencc" ,opencc) - ("qtbase" ,qtbase) - ("fcitx5-qt" ,fcitx5-qt) - ("qtwebengine" ,qtwebengine))) + (list boost + curl + fcitx5 + fcitx5-lua + fcitx5-qt + fmt + gettext-minimal + libime + opencc + qtbase + qtwebengine)) (native-inputs (list extra-cmake-modules pkg-config)) (outputs '("out" "gui")) @@ -506,7 +506,7 @@ including input methods previous bundled inside Fcitx 4: (define-public fcitx5-configtool (package (name "fcitx5-configtool") - (version "5.1.8") + (version "5.1.10") (source (origin (method url-fetch) @@ -514,7 +514,7 @@ including input methods previous bundled inside Fcitx 4: "https://download.fcitx-im.org/fcitx5" "/fcitx5-configtool/fcitx5-configtool-" version ".tar.zst")) (sha256 - (base32 "1kg0hddds7raqf5y4qw2x02hb4i5impv4hjfm2qvcn3g775rzrq6")))) + (base32 "1fb21mbc0k33cadslq0rjwi5y7fxm5jzgdk9yna3h2r62sdmdb60")))) (build-system cmake-build-system) (arguments (list #:tests? #f @@ -626,7 +626,7 @@ for Fcitx 5 with following color variants: (define-public fcitx5-rime (package (name "fcitx5-rime") - (version "5.1.10") + (version "5.1.11") (source (origin (method url-fetch) (uri (string-append "https://download.fcitx-im.org/fcitx5" @@ -634,7 +634,7 @@ for Fcitx 5 with following color variants: ".tar.zst")) (sha256 (base32 - "12c5cjpqkz37b6s106p7r4k56mssz1m8q2f6py82zbg0ybsvn980")))) + "1xk5a0nfnxy1xaml6pdibpqf92wl2237ayyrpnkmamaxvgvw3kvi")))) (build-system cmake-build-system) (arguments '(#:tests? #f ;no tests diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 12d4efff4a..c41ec45a6f 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -5345,7 +5345,7 @@ falling, themeable graphics and sounds, and replays.") (define-public wesnoth (package (name "wesnoth") - (version "1.18.3") + (version "1.18.5") (source (origin (method git-fetch) (uri (git-reference @@ -5354,7 +5354,7 @@ falling, themeable graphics and sounds, and replays.") (file-name (git-file-name name version)) (sha256 (base32 - "0habv0whb0y0r52sjln7yin1nfm3vjjxqlavm7jarcrg2s3v743k")))) + "16mrdpz1yq12ppnrmm4yv768zmh08qjdxh892pzc5i17n7xkmpy4")))) (build-system cmake-build-system) (arguments (list #:tests? #f ;no test target diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index ecb324d738..a1095a7fba 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -96,6 +96,7 @@ #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages fribidi) #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) @@ -1293,6 +1294,61 @@ amenities/points of interest, building footprints, elevation data, street bearings/orientations, and speed/travel time.") (license license:expat))) +(define-public python-owslib + (package + (name "python-owslib") + (version "0.34.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/geopython/OWSLib") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "14pb96h0nl4c6hs58i2z7mx0fpd4g886ajflbrs69hwiqj2x8a3f")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list + ;; XXX: Those tests require network access. + "-k" (string-join + (list "not test_ows_interfaces_wcs" + "test_system_readonly" + "test_sampling_features_readonly" + "test_datastreams_readonly" + "test_observations_readonly" + "test_system_history") + " and not ") + ;; XXX: Not collected properly. + "--ignore-glob=tests/doctests/*") + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'cleanup-build-directory + (lambda _ + (delete-file-recursively "build")))))) + (native-inputs + (list python-dateutil + python-pyproj + python-pyyaml + python-pytest + python-pytest-cov + python-pytest-httpserver + python-pytz + python-requests + python-setuptools + python-wheel)) + (propagated-inputs + (list python-lxml)) + (synopsis "Interface for Open Geospatial Consortium web service") + (description + "OWSLib is a Python package for client programming with Open Geospatial +Consortium (OGC) web service (hence OWS) interface standards, and their related +content models.") + (home-page "https://geopython.github.io/OWSLib/") + (license license:bsd-3))) + (define-public mapnik ;; There hasn't been a release since early 2021, and it fails to build with ;; Boost 1.77+. @@ -3907,107 +3963,114 @@ time. Interactively visualize vector, raster and volume data.") (license license:gpl2+))) (define-public navit - (package - (name "navit") - (version "0.5.6") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/navit-gps/navit") - (commit (string-append "v" version)))) - (sha256 - (base32 - "1jhlif0sc5m8wqb5j985g1xba2ki7b7mm14pkvzdghjd0q0gf15s")) - (file-name (git-file-name name version)))) - (build-system cmake-build-system) - (arguments - (list - ;; There are no tests - #:tests? #f - ;; With -DSAMPLE_MAP=TRUE (the default), it tries to download a - ;; map during the build process. - #:configure-flags #~(list "-DSAMPLE_MAP=FALSE") - #:phases - #~(modify-phases %standard-phases - (add-after - 'unpack 'patch-navit-config - (lambda _ - ;; For now this package only supports SDL, so if we keep - ;; the configuration as-is, Navit doesn't start. - (substitute* - "navit/navit_shipped.xml" - (("<graphics type=\"gtk_drawing_area\"/>") - "<graphics type=\"sdl\"/>")) - ;; Users are expected to be able to add XML files inside - ;; $NAVIT_SHAREDIR, however that directory is in the store. - (substitute* - "navit/navit_shipped.xml" - (("<xi:include href=\"\\$NAVIT_SHAREDIR/maps/\\*\\.xml\"/>") - "<xi:include href=\"$NAVIT_USER_DATADIR/maps/*.xml\"/>")) - ;; Navit also works without GPS but in that case there is - ;; no automatic zooming, so we need zoom buttons to be able - ;; to manually zoom in or out. - (substitute* - "navit/navit_shipped.xml" - (((string-append - "<osd enabled=\"no\" type=\"button\" x=\"-96\" y=\"-96\" " - "command=\"zoom_in()")) - (string-append - "<osd enabled=\"yes\" type=\"button\" x=\"-96\" y=\"-96\" " - "command=\"zoom_in()")) - (((string-append - "<osd enabled=\"no\" type=\"button\" x=\"0\" y=\"-96\" " - "command=\"zoom_out()")) - (string-append - "<osd enabled=\"yes\" type=\"button\" x=\"0\" y=\"-96\" " - "command=\"zoom_out()\" src=\"zoom_out.png\"/>"))))) - (add-before - 'build 'set-cache - ;; During the build, svg icons are converted in different - ;; formats, and this needs XDG_CACHE_HOME to work. - (lambda _ - (setenv "XDG_CACHE_HOME" "/tmp/xdg-cache")))))) - (inputs (list dbus-glib - espeak - freeglut - freeimage - freetype - glib - gettext-minimal - gpsd - gdk-pixbuf - imlib2 - python - sdl - sdl-image)) - (native-inputs (list fontconfig - (librsvg-for-system) - pkg-config)) - (home-page "https://www.navit-project.org") - (synopsis "Car navigation system with routing engine that uses vector maps data") - (description "Navit is a car navigation system with a routing engine. + ;; XXX: The latest commit provides compatibility with GCC 14, switch to tag + ;; when a fresh release is available. + (let ((commit "2418e3f42af0641c734f93f3d6d20d3025ad2182") + (revision "0")) + (package + (name "navit") + (version (git-version "0.5.6" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/navit-gps/navit") + (commit commit))) + (sha256 + (base32 + "0s7rhg1xyj56g19fh84znj6fzdiglgf010appjydivn5gkyzb9kq")) + (file-name (git-file-name name version)))) + (build-system cmake-build-system) + (arguments + (list + ;; There are no tests + #:tests? #f + ;; With -DSAMPLE_MAP=TRUE (the default), it tries to download a + ;; map during the build process. + #:configure-flags #~(list "-DSAMPLE_MAP=FALSE") + #:phases + #~(modify-phases %standard-phases + (add-after + 'unpack 'patch-navit-config + (lambda _ + ;; For now this package only supports SDL, so if we keep + ;; the configuration as-is, Navit doesn't start. + (substitute* + "navit/navit_shipped.xml" + (("<graphics type=\"gtk_drawing_area\"/>") + "<graphics type=\"sdl\"/>")) + ;; Users are expected to be able to add XML files inside + ;; $NAVIT_SHAREDIR, however that directory is in the store. + (substitute* + "navit/navit_shipped.xml" + (("<xi:include href=\"\\$NAVIT_SHAREDIR/maps/\\*\\.xml\"/>") + "<xi:include href=\"$NAVIT_USER_DATADIR/maps/*.xml\"/>")) + ;; Navit also works without GPS but in that case there is + ;; no automatic zooming, so we need zoom buttons to be able + ;; to manually zoom in or out. + (substitute* + "navit/navit_shipped.xml" + (((string-append + "<osd enabled=\"no\" type=\"button\" x=\"-96\" y=\"-96\" " + "command=\"zoom_in()")) + (string-append + "<osd enabled=\"yes\" type=\"button\" x=\"-96\" y=\"-96\" " + "command=\"zoom_in()")) + (((string-append + "<osd enabled=\"no\" type=\"button\" x=\"0\" y=\"-96\" " + "command=\"zoom_out()")) + (string-append + "<osd enabled=\"yes\" type=\"button\" x=\"0\" y=\"-96\" " + "command=\"zoom_out()\" src=\"zoom_out.png\"/>"))))) + (add-before + 'build 'set-cache + ;; During the build, svg icons are converted in different + ;; formats, and this needs XDG_CACHE_HOME to work. + (lambda _ + (setenv "XDG_CACHE_HOME" "/tmp/xdg-cache")))))) + (inputs (list dbus-glib + espeak + freeglut + freeimage + freetype + fribidi + glib + gettext-minimal + gpsd + gdk-pixbuf + imlib2 + python + sdl + sdl-image)) + (native-inputs (list fontconfig + (librsvg-for-system) + libxslt + pkg-config + protobuf-c)) + (home-page "https://www.navit-project.org") + (synopsis "Car navigation system with routing engine that uses vector maps data") + (description + "Navit is a car navigation system with a routing engine. -It is meant to work with touchscreen devices, but it also works -without a touchscreen. It also supports text to speech. +It is meant to work with touchscreen devices, but it also works without a +touchscreen. It also supports text to speech. -It can be configured extensively through its own configuration file -format. For instance we can configure the graphical interface, and -which map data is to be displayed at which zoom level. +It can be configured extensively through its own configuration file format. +For instance we can configure the graphical interface, and which map data is +to be displayed at which zoom level. It supports different routing profiles: bike, car, car_avoid_toll, car_pedantic, car_shortest, horse, pedestrian, truck. -It can use gpsd or NMEA GPS directly to get position data. It also -works without GPS: in this case users can also enter position data -directly. +It can use gpsd or NMEA GPS directly to get position data. It also works +without GPS: in this case users can also enter position data directly. -It can also be used to log GPS data to files using the GPX or NMEA -formats, or to replay NMEA data. +It can also be used to log GPS data to files using the GPX or NMEA formats, or +to replay NMEA data. -For maps, it can uses its own \"binfile\" map format, or Garmin map -file format, and data from OpenStreetMap, Garmin maps, Marco Polo -Grosser Reiseplaner, Routeplaner Europa 2007, Map + Route.") - (license license:gpl2))) +For maps, it can uses its own \"binfile\" map format, or Garmin map file +format, and data from OpenStreetMap, Garmin maps, Marco Polo Grosser +Reiseplaner, Routeplaner Europa 2007, Map + Route.") + (license license:gpl2)))) (define-public laszip (package diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm index 0f5cf2a302..a4a73b9435 100644 --- a/gnu/packages/image-processing.scm +++ b/gnu/packages/image-processing.scm @@ -88,6 +88,7 @@ #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) #:use-module (gnu packages linux) + #:use-module (gnu packages lua) #:use-module (gnu packages maths) #:use-module (gnu packages mpi) #:use-module (gnu packages opencl) @@ -108,6 +109,7 @@ #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages ssh) + #:use-module (gnu packages statistics) #:use-module (gnu packages swig) #:use-module (gnu packages tbb) #:use-module (gnu packages textutils) @@ -1286,9 +1288,16 @@ libraries designed for computer vision research and implementation.") ;; For a remote MODULE, use the commit in ;; 'Modules/Remote/MODULE.remote.cmake'. ;; MorphologicalContourInterpolation is required by itk-snap. - (let* ((module-commit "821bf9b3ef8eaaab10391ed060dc9ca5e4d37b39") - (module-file (git-file-name "ITKMorphologicalContourInterpolation" - module-commit))) + ;; SimpleITKFilters and GenericLabelInterpolator are required by simpleitk. + (let* ((module-mci-commit "821bf9b3ef8eaaab10391ed060dc9ca5e4d37b39") + (module-mci-file (git-file-name "ITKMorphologicalContourInterpolation" + module-mci-commit)) + (module-sitkf-commit "bb896868fc6480835495d0da4356d5db009592a6") + (module-sitkf-file (git-file-name "ITKSimpleITKFilters" + module-sitkf-commit)) + (module-gli-commit "ebf2436469ccf82c08fab54b7446f699ad0eae01") + (module-gli-file (git-file-name "ITKGenericLabelInterpolator" + module-gli-commit))) (package (name "insight-toolkit") (version "5.4.4") @@ -1343,6 +1352,8 @@ libraries designed for computer vision research and implementation.") ;; Python is not built with Py_LIMITED_API. "-DITK_USE_PYTHON_LIMITED_API=OFF" "-DModule_MorphologicalContourInterpolation=ON" + "-DModule_SimpleITKFilters=ON" + "-DModule_GenericLabelInterpolator=ON" "-DCMAKE_CXX_STANDARD=17" "-DBUILD_TESTING=OFF") @@ -1376,12 +1387,21 @@ libraries designed for computer vision research and implementation.") (lambda _ ;; ITK module MorphologicalContourInterpolation ;; is for ITK-SNAP. - (symlink #$(this-package-native-input module-file) + (symlink #$(this-package-native-input module-mci-file) "Modules/Remote/MorphologicalContourInterpolation") (delete-file (string-append "Modules/Remote/" - "MorphologicalContourInterpolation.remote.cmake")))) + "MorphologicalContourInterpolation.remote.cmake")) + ;; ITK modules SimpleITKFilters and GenericLabelInterpolator + ;; are for SimpleITK. + (symlink #$(this-package-native-input module-sitkf-file) + "Modules/Remote/SimpleITKFilters") + (delete-file "Modules/Remote/SimpleITKFilters.remote.cmake") + (symlink #$(this-package-native-input module-gli-file) + "Modules/Remote/GenericLabelInterpolator") + (delete-file + "Modules/Remote/GenericLabelInterpolator.remote.cmake"))) (add-after 'unpack 'fix-numpy-bool (lambda _ ;; <https://github.com/InsightSoftwareConsortium/ITK/pull/5402> @@ -1423,11 +1443,33 @@ libraries designed for computer vision research and implementation.") (url (string-append "https://github.com/KitwareMedical/" "ITKMorphologicalContourInterpolation")) - (commit module-commit))) - (file-name module-file) + (commit module-mci-commit))) + (file-name module-mci-file) (sha256 (base32 - "00myhgvlk3n062i8bnknz1d10zkv3jlvs7f4jnk24727gd4v2n4i"))))) + "00myhgvlk3n062i8bnknz1d10zkv3jlvs7f4jnk24727gd4v2n4i"))) + (origin + (method git-fetch) + (uri (git-reference + (url (string-append + "https://github.com/InsightSoftwareConsortium/" + "ITKSimpleITKFilters")) + (commit module-sitkf-commit))) + (file-name module-sitkf-file) + (sha256 + (base32 + "13nys94wl4k77f89i8y1dm3y4pmgmw3rrc0la1rzl0vi9h1qixii"))) + (origin + (method git-fetch) + (uri (git-reference + (url (string-append + "https://github.com/InsightSoftwareConsortium/" + "ITKGenericLabelInterpolator")) + (commit module-gli-commit))) + (file-name module-gli-file) + (sha256 + (base32 + "1khakqh6pzdg6csli8jypzrhcdr9xmhnzgwz265krv8r5mbnndrg"))))) ;; The 'CMake/ITKSetStandardCompilerFlags.cmake' file normally sets ;; '-mtune=native -march=corei7', suggesting there's something to be @@ -1708,6 +1750,122 @@ Scan Tailer Advanced is a fork of Scan Tailer that merges Scan Tailor Featured and Scan Tailor Enhanced versions as well as including many more bug fixes.") (license license:gpl3+)))) +(define-public simpleitk + (package + (name "simpleitk") + (version "2.5.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/SimpleITK/SimpleITK") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1ykrfrfh2012cg1122689w23pan2y731sszfpb701zhsb6fwv7j7")))) + (build-system cmake-build-system) + (outputs '("out" "python" "r")) + (arguments + (list + #:configure-flags + #~(list "-DBUILD_SHARED_LIBS=ON" + "-DWRAP_LUA=OFF" + "-DWRAP_PYTHON=ON" + "-DWRAP_R=ON" + "-DSimpleITK_PYTHON_USE_VIRTUALENV=OFF") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'early-GTest-discovery + (lambda _ + ;; Find GTest before targets link to 'GTest::GTest'. + (substitute* "Testing/Unit/CMakeLists.txt" + (("add_subdirectory\\(TestBase\\)" anchor) + (string-append "find_package(GTest REQUIRED)\n" anchor))))) + (add-after 'unpack 'extract-test-data + (lambda _ + (invoke "tar" "xvf" + #$(this-package-native-input + (string-append "SimpleITKData-" version ".tar.gz")) + "--strip-components=1"))) + (add-after 'unpack 'fix-runpath + (lambda _ + ;; The SWIG-generated shared libraries do not have SimpleITK's + ;; libraries in their RUNPATH. + (define (cmake-snippet start) + (string-append + start + "set_target_properties(${SWIG_MODULE_SimpleITK_TARGET_NAME} " + "PROPERTIES BUILD_WITH_INSTALL_RPATH TRUE " + "INSTALL_RPATH \"" #$output "/lib\")\n")) + (substitute* "Wrapping/Python/CMakeLists.txt" + (("^set\\(SWIG_MODULE_SimpleITKPython.*" anchor) + (cmake-snippet anchor))) + (substitute* "Wrapping/R/CMakeLists.txt" + (("^set\\(SWIG_MODULE_SimpleITKR.*" anchor) + (cmake-snippet anchor))))) + (add-after 'unpack 'patch-cmake-config-itk-path + (lambda _ + ;; Allow building SimpleITK C++ projects without ITK installed + ;; in the profile. + #$(let* + ((itk (this-package-input "insight-toolkit")) + (itk-version (package-version itk)) + (itk-version-major+minor + (version-major+minor itk-version))) + #~(substitute* "SimpleITKConfig.cmake.in" + (((string-append + "find_package\\(ITK \"@ITK_VERSION@\" " + "EXACT REQUIRED\\)")) + (string-append + "find_package(ITK \"" #$itk-version + "\" EXACT REQUIRED PATHS " #$itk + "/lib/cmake/ITK-" + #$itk-version-major+minor ")")))))) + (add-after 'install 'install-language-extension-modules + (lambda _ + (with-directory-excursion "Wrapping/Python" + (invoke "python3" "setup.py" "bdist_wheel") + (apply invoke "pip" "--no-cache-dir" "--no-input" "install" + "--no-deps" "--prefix" #$output:python + (find-files "dist" "\\.whl$"))) + (let ((r-package-path + (string-append #$output:r "/site-library/SimpleITK"))) + (mkdir-p r-package-path) + (copy-recursively "Wrapping/R/R_libs/SimpleITK" + r-package-path)))) + (delete 'check) + (add-after 'install 'check-after-install + ;; Run the tests when the SimpleITK libraries are where the + ;; language extension modules expect them to be. + (assoc-ref %standard-phases 'check))))) + (home-page "https://simpleitk.org") + (inputs (list insight-toolkit python r-minimal)) + (native-inputs + (list googletest + lua + python-numpy ;for tests + python-pip + python-setuptools + python-wheel + swig-next + (origin + (method url-fetch) + (uri (string-append + "https://github.com/SimpleITK/SimpleITK/releases/download/v" + version "/SimpleITKData-" version ".tar.gz")) + (sha256 + (base32 + "13y44qqsgsvbrm84073i8clhggdgk8f36i6102sjg4j3fq790gal"))))) + (synopsis "Simplified interface to @acronym{ITK, Insight Toolkit}") + (description + "SimpleITK is an image analysis toolkit built on top of @acronym{ITK, +Insight Toolkit}. It provides a simplified interface to most of the +image filters and the input/output and registration frameworks in +@acronym{ITK, Insight Toolkit}. It is written in C++ and provides +bindings for interpreted languages. This package includes the C++, +Python and R interfaces.") + (license license:asl2.0))) + (define-public stiff (package (name "stiff") diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 3e1c30b8d7..af80f441c7 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -1156,7 +1156,7 @@ synchronization of multiple instances.") (define-public hydrus-network (package (name "hydrus-network") - (version "495") ;upstream has a weekly release cycle + (version "630") ;upstream has a weekly release cycle (source (origin (method git-fetch) @@ -1166,7 +1166,7 @@ synchronization of multiple instances.") (file-name (git-file-name name version)) (sha256 (base32 - "03zhrcmjzbk37sl9nwjahfmr8aflss84c4xhg5ci5b8jvbbqmr1j")) + "0x133m93nx2rphs0zymmhfknp1274r2fh2jc91rrv9vmdqfh9yyc")) (modules '((guix build utils))) (snippet ;; Remove pre-built binaries from bin/. @@ -1177,7 +1177,7 @@ synchronization of multiple instances.") #:phases #~(let ((static-dir "/share/hydrus/static")) (modify-phases %standard-phases - ;; Hydrus is a python program but does not uses setup.py or any + ;; Hydrus is a python program but does not use setup.py or any ;; other build system to build itself - it's delivered ready to ;; run from the source. (replace 'check @@ -1185,7 +1185,7 @@ synchronization of multiple instances.") (setenv "DISPLAY" ":0") (setenv "XDG_CACHE_HOME" (getcwd)) (setenv "HOME" (getcwd)) - (invoke "xvfb-run" "python" "test.py"))) + (invoke "xvfb-run" "python" "hydrus_test.py"))) ;; XXX: program help files are not built. Updating ;; python-pymdown-extensions to its latest version might be the ;; solution, but this would require also packaging its new build @@ -1207,15 +1207,17 @@ synchronization of multiple instances.") (substitute* "HydrusConstants.py" (("STATIC_DIR = .*") (string-append "STATIC_DIR = \"" out static-dir "\"\n"))) - (substitute* "HydrusFlashHandling.py" - (("SWFRENDER_PATH = .*\n") - (string-append "SWFRENDER_PATH = \"" swfrender "\"\n"))) - (substitute* "HydrusVideoHandling.py" - (("FFMPEG_PATH = .*\n") - (string-append "FFMPEG_PATH = \"" ffmpeg "\"\n"))) - (substitute* "networking/HydrusNATPunch.py" - (("UPNPC_PATH = .*\n") - (string-append "UPNPC_PATH = \"" upnpc "\"\n")))))))) + (with-directory-excursion "files" + (substitute* "HydrusFlashHandling.py" + (("SWFRENDER_PATH = .*\n") + (string-append "SWFRENDER_PATH = \"" swfrender "\"\n"))) + (substitute* "HydrusVideoHandling.py" + (("FFMPEG_PATH = .*\n") + (string-append "FFMPEG_PATH = \"" ffmpeg "\"\n")))) + (with-directory-excursion "networking" + (substitute* "HydrusNATPunch.py" + (("UPNPC_PATH = .*\n") + (string-append "UPNPC_PATH = \"" upnpc "\"\n"))))))))) ;; Since everything lives in hydrus's root directory, it needs to ;; be spread out to comply with guix's expectations. (replace 'install @@ -1232,9 +1234,9 @@ synchronization of multiple instances.") #$(this-package-input "python")) "/site-packages/hydrus")) (mkdir (string-append out "/bin")) - (copy-file "client.py" client) + (copy-file "hydrus_client.py" client) (chmod client #o0555) - (copy-file "server.py" server) + (copy-file "hydrus_server.py" server) (chmod server #o0555)))))))) ;; All native-inputs are only needed for the the check phase (native-inputs @@ -1248,6 +1250,7 @@ synchronization of multiple instances.") python-cbor2 python-chardet python-cloudscraper + python-dateparser python-html5lib python-lxml python-lz4 @@ -1255,11 +1258,8 @@ synchronization of multiple instances.") opencv ; its python bindings are a drop-in replacement for opencv-python-headless python-pillow python-psutil - python-pylzma python-pyopenssl - ;; Since hydrus' version 494 it supports python-pyside-6 but it's not yet - ;; in guix. pyside-2 is still supported as a fallback. - python-pyside-2 + python-pyside-6 python-pysocks python-mpv python-pyyaml diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index f8e80851f2..472fdb5372 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -2752,40 +2752,6 @@ but may be a runtime requirement for Qt-based software to support certain image formats.") (license license:lgpl2.1+))) -(define-public kimageformats-5 - (package - (inherit kimageformats) - (name "kimageformats") - (version "5.116.0") - (source (origin - (method url-fetch) - (uri (string-append - "mirror://kde/stable/frameworks/" - (version-major+minor version) "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "174g32s3m7irzv2h3lk7bmp3yfc7zrmp7lmp02n3m5ppbv6rn4bw")))) - (native-inputs - (list extra-cmake-modules pkg-config)) - (inputs - (list karchive-5 ; for Krita and OpenRaster images - openexr-2 ; for OpenEXR high dynamic-range images - qtbase-5 - qtimageformats-5)) - (arguments - (list - #:phases - #~(modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen")))) - #:configure-flags #~(list (string-append "-DCMAKE_CXX_FLAGS=-I" - (assoc-ref %build-inputs - "ilmbase") - "/include/OpenEXR")))))) - (define-public kjobwidgets (package (name "kjobwidgets") diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm index 097207a089..8c6e858ccf 100644 --- a/gnu/packages/kde-plasma.scm +++ b/gnu/packages/kde-plasma.scm @@ -440,6 +440,53 @@ concept.") (home-page "https://invent.kde.org/plasma/kactivitymanagerd") (license (list license:gpl2 license:gpl3)))) +(define-public klassy + (package + (name "klassy") + (version "6.4.breeze6.4.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/paulmcauley/klassy") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0hrr8kg988qzpk8mccc8kk9lah9b89wx0h47s1981wvb9bci5dpr")))) + (build-system qt-build-system) + (native-inputs (list extra-cmake-modules)) + (inputs (list qtsvg + kirigami + qtdeclarative + kconfig + kconfigwidgets + kcoreaddons + kcolorscheme + kdecoration + kcmutils + kguiaddons + kiconthemes + kwindowsystem + ki18n)) + (arguments + (list + #:qtbase qtbase + #:tests? #f ; No tests. + #:configure-flags + #~(list "-DBUILD_QT5=OFF"))) + (home-page "https://github.com/paulmcauley/klassy") + (synopsis "Customizable window decoration for the KDE Plasma desktop") + (description + "Klassy is a highly customizable binary Window Decoration, +Application Style and Global Theme plugin for recent versions of the KDE Plasma +desktop.") + (license (list license:bsd-3 + license:cc0 + license:expat + license:gpl2 + license:gpl2+ + license:gpl3)))) + (define-public krdp (package (name "krdp") diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm index 356aaacbc8..dc10309668 100644 --- a/gnu/packages/language.scm +++ b/gnu/packages/language.scm @@ -941,6 +941,8 @@ and manipulation.") (build-system gnu-build-system) (arguments (list #:parallel-tests? #f ;Concurrency issues in tests. + ;; relax gcc 14 strictness + #:configure-flags #~(list "CFLAGS=-g2 -O2 -Wno-error=int-conversion") #:phases #~(modify-phases %standard-phases (add-after 'install 'symlink-skk-jisyo diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 9dcc4660d0..e6bc71710b 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -4726,23 +4726,23 @@ and Conformance} (uri (pypi-uri "dkimpy" version)) (sha256 (base32 "088iz5cqjqh4c7141d94pvn13bh25aizqlrifwv6fs5g16zj094s")))) - (build-system python-build-system) + (build-system pyproject-build-system) (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'patch-source-shebangs 'patch-more-source - (lambda* (#:key inputs #:allow-other-keys) - (let ((openssl (assoc-ref inputs "openssl"))) - (substitute* "dkim/dknewkey.py" - (("/usr/bin/openssl") (string-append openssl "/bin/openssl")))) - #t)) - (replace 'check - (lambda _ - (invoke "python" "test.py")))))) + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'patch-source-shebangs 'patch-more-source + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "dkim/dknewkey.py" + (("/usr/bin/openssl") + (search-input-file inputs "bin/openssl"))))) + (replace 'check + (lambda _ + (invoke "python" "test.py")))))) (propagated-inputs (list python-dnspython)) (native-inputs - (list python-authres python-pynacl)) + (list python-authres python-pynacl python-setuptools python-wheel)) (inputs (list openssl)) (home-page "https://launchpad.net/dkimpy") diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index a4f8538bd2..d3df3507f0 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -39,6 +39,7 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) + #:use-module (guix build-system pyproject) #:use-module (guix build-system python) #:use-module (gnu packages algebra) #:use-module (gnu packages audio) @@ -74,6 +75,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages pretty-print) #:use-module (gnu packages python) + #:use-module (gnu packages python-build) #:use-module (gnu packages python-xyz) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages qt) @@ -358,20 +360,28 @@ information about tracks being played to a scrobbler, such as Libre.FM.") (package (name "python-mpd2") (version "3.0.4") - (source (origin - (method url-fetch) - (uri (pypi-uri "python-mpd2" version)) - (sha256 - (base32 - "1r8saq1460yfa0sxfrvxqs2r453wz2xchlc9gzbpqznr49786rvs")))) - (build-system python-build-system) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Mic92/python-mpd2") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "06j1n43sg3blp89xwgm64yssz6478y5r09xwdg9mnsgihpjpm89a")))) + (build-system pyproject-build-system) (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ (invoke "python" "-m" "pytest" "mpd/tests.py")))))) + (list + #:test-flags #~(list "-m" "unittest" "mpd.tests") + #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? test-flags #:allow-other-keys) + (if tests? + (apply invoke "python" test-flags) + (format #t "test suite not run~%"))))))) (native-inputs - (list python-mock python-pytest)) + (list python-mock python-setuptools python-wheel)) (home-page "https://github.com/Mic92/python-mpd2") (synopsis "Python MPD client library") (description "Python-mpd2 is a Python library which provides a client diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 860d63b366..7b4d0af1f7 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -4279,24 +4279,32 @@ websites such as Libre.fm.") (sha256 (base32 "0j7qivaa04bpdz3anmgci5833dgiyfqqwq9fdrpl9m68b34gl773")))) - (build-system python-build-system) - (propagated-inputs - (list python-requests eyed3 python-beautifulsoup4 youtube-dl)) + (build-system pyproject-build-system) (arguments - '(#:modules ((guix build python-build-system) - (guix build utils) - (srfi srfi-26)) - #:phases (modify-phases %standard-phases - (add-before 'build 'change-directory - (lambda _ - (chdir "instantmusic-0.1") #t)) - (add-before 'install 'fix-file-permissions - (lambda _ - ;; Fix some read-only files that would cause a build failure - (for-each (cut chmod <> #o644) - (find-files "instantmusic.egg-info" - "PKG-INFO|.*\\.txt")) - #t))))) + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'build 'change-directory + (lambda _ + (chdir "instantmusic-0.1"))) + (add-before 'build 'patch-yt-dlp + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "bin/instantmusic" + (("youtube-dl") + (search-input-file inputs "bin/yt-dlp"))) + (substitute* "setup.py" + (("youtube-dl") + "yt-dlp")))) + (add-before 'install 'fix-file-permissions + (lambda _ + ;; Fix some read-only files that would cause a build failure + (for-each (lambda (file) + (chmod file #o644)) + (find-files "instantmusic.egg-info" + "PKG-INFO|.*\\.txt"))))))) + (native-inputs (list python-setuptools python-wheel)) + (inputs (list yt-dlp)) + (propagated-inputs (list python-requests eyed3 python-beautifulsoup4)) (home-page "https://github.com/yask123/Instant-Music-Downloader") (synopsis "Command-line program to download a song from YouTube") (description "InstantMusic downloads a song from YouTube in MP3 format. diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 9874b2b910..b99b57459c 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2020 Eric Bavier <bavier@posteo.net> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2015-2018, 2020-2025 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015-2025 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl> ;;; Copyright © 2016 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2016, 2020, 2021, 2022, 2023 Ricardo Wurmus <rekado@elephly.net> @@ -10,13 +10,15 @@ ;;; Copyright © 2018–2022 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2019-2024 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2019 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de> ;;; Copyright © 2020 Roel Janssen <roel@gnu.org> +;;; Copyright © 2021, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2024, 2025 David Elsing <david.elsing@posteo.net> ;;; Copyright © 2024 Romain Garbage <romain.garbage@inria.fr> ;;; Copyright © 2024 Arun Isaac <arunisaac@systemreboot.net> -;;; Copyright © 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -497,6 +499,78 @@ can use the same high-level API to link their software with different cluster/resource management systems.") (license license:gpl3+))) +(define-public python-pathos + (package + (name "python-pathos") + (version "0.3.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pathos" version)) + (sha256 + (base32 "0m077iw5fml4r7csgi4j7ngvdmg1y9jxly64gi56argq1qnr3m5s")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (replace 'check + ;; XXX: Tests freeze when invoked with Pytest directly, this step + ;; is taken from project's tox.ini. + (lambda* (#:key tests? inputs outputs #:allow-other-keys) + (when tests? + (invoke "python" "./pathos/tests/__main__.py"))))))) + (native-inputs + (list python-setuptools-next)) + (propagated-inputs + (list python-dill + python-multiprocess + python-pox + python-ppft)) + (home-page "https://pypi.org/project/pathos/") + (synopsis + "Parallel graph management and execution in heterogeneous computing") + (description + "Python-pathos is a framework for heterogeneous computing. It provides a +consistent high-level interface for configuring and launching parallel +computations across heterogeneous resources. Python-pathos provides +configurable launchers for parallel and distributed computing, where each +launcher contains the syntactic logic to configure and launch jobs in an +execution environment.") + (license license:bsd-3))) + +(define-public python-ppft + (package + (name "python-ppft") + (version "1.7.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "ppft" version)) + (sha256 + (base32 + "15hvw39m2r3chm8zbqgkld0m1cl049rxidln4a6jnk72rx479xzk")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? inputs outputs #:allow-other-keys) + (when tests? + (invoke "python" "./ppft/tests/__main__.py"))))))) + (native-inputs + (list python-setuptools-next)) + (home-page "https://pypi.org/project/ppft/") + (synopsis "Fork of Parallel Python") + (description + "This package is a fork of Parallel Python. The Parallel Python +module (@code{pp}) provides an easy and efficient way to create +parallel-enabled applications for @dfn{symmetric multiprocessing} (SMP) +computers and clusters. It features cross-platform portability and dynamic +load balancing.") + (license license:bsd-3))) + (define-public python-schwimmbad (package (name "python-schwimmbad") diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm index 61c2f13951..4d389179f9 100644 --- a/gnu/packages/prolog.scm +++ b/gnu/packages/prolog.scm @@ -185,7 +185,7 @@ it.") (define-public trealla (package (name "trealla") - (version "2.82.2") + (version "2.82.6") (source (origin (method git-fetch) @@ -194,7 +194,7 @@ it.") (url "https://github.com/trealla-prolog/trealla") (commit (string-append "v" version)))) (sha256 - (base32 "0ahcc7whfl1izzdqmqsxr87i997x07c0sg6ribawmwfpwqf7r0xa")) + (base32 "1yfnavv1m5jgi28nzil4mmin3gq28ykpl6g4aqis7i9f9s638dp2")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (native-inputs diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index b98e9dfa09..d5772b7716 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -1608,13 +1608,13 @@ flake8 to check PEP-8 naming conventions.") (method url-fetch) (uri (pypi-uri "pyannotate" version)) (sha256 - (base32 - "16bm0mf7wxvy0lgmcs1p8n1ji8pnvj1jvj8zk3am70dkp825iv84")))) - (build-system python-build-system) + (base32 "16bm0mf7wxvy0lgmcs1p8n1ji8pnvj1jvj8zk3am70dkp825iv84")))) + (build-system pyproject-build-system) + (native-inputs + (list python-setuptools python-wheel)) (propagated-inputs (list python-mypy-extensions python-six)) - (home-page - "https://github.com/dropbox/pyannotate") + (home-page "https://github.com/dropbox/pyannotate") (synopsis "Auto-generate PEP-484 annotations") (description "This package, PyAnnotate, is used to auto-generate PEP-484 annotations.") diff --git a/gnu/packages/python-compression.scm b/gnu/packages/python-compression.scm index 66f6828377..8fd893cb8e 100644 --- a/gnu/packages/python-compression.scm +++ b/gnu/packages/python-compression.scm @@ -168,7 +168,6 @@ to access its data, so it can be used as a drop-in replacement.") python-coverage python-coveralls python-hypothesis - python-pyannotate python-pytest python-pytest-cov python-setuptools @@ -394,8 +393,7 @@ library.") (build-system pyproject-build-system) (propagated-inputs (list python-importlib-metadata)) (native-inputs - (list python-pyannotate - python-pytest + (list python-pytest python-setuptools-scm python-setuptools python-wheel)) @@ -639,9 +637,10 @@ the LZ4 frame format.") (method url-fetch) (uri (pypi-uri "lzstring" version)) (sha256 - (base32 - "18ly9pppy2yspxzw7k1b23wk77k7m44rz2g0271bqgqrk3jn3yhs")))) - (build-system python-build-system) + (base32 "18ly9pppy2yspxzw7k1b23wk77k7m44rz2g0271bqgqrk3jn3yhs")))) + (build-system pyproject-build-system) + (native-inputs + (list python-setuptools python-wheel)) (propagated-inputs (list python-future)) (home-page "https://github.com/gkovacs/lz-string-python") diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index c78af1a279..1b8a718453 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -10932,7 +10932,9 @@ metadata from HTML markup. Currently, extruct supports: (uri (pypi-uri "wadllib" version)) (sha256 (base32 "1z65crvdsjxh9nahz1g6q021ijmv85ixmq88l96d61qh5imavndc")))) - (build-system python-build-system) + (build-system pyproject-build-system) + (native-inputs + (list python-setuptools python-wheel)) (propagated-inputs (list python-lazr-uri)) (home-page "https://launchpad.net/wadllib") (synopsis "Web Application Description Language (WADL) navigation library") diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 92e517e959..d71d26b15f 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -10780,27 +10780,37 @@ objects.") "This is a Python library for color math and conversions.") (license license:bsd-3))) +(define-public python-colormath2 + (package + (inherit python-colormath) + (name "python-colormath2") + (version "3.0.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "colormath2" version)) + (sha256 + (base32 "1yigkhvjgbl9nrlijn4iwcs6k7i5y58drix1331cd1hb9wzn35z7")))) + (build-system pyproject-build-system) + (propagated-inputs (list python-networkx python-numpy)) + (native-inputs (list python-setuptools python-wheel)) + (home-page "https://github.com/bkmgit/python-colormath2"))) + (define-public python-spectra (package (name "python-spectra") - (version "0.0.11") + (version "0.1.0") (source (origin (method url-fetch) (uri (pypi-uri "spectra" version)) (sha256 - (base32 - "1f322x914bhkg6r5gv1vmnir3iy0k5kih0fd2gp3rdkw32jn5cwf")))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ (invoke "nosetests" "-v")))))) + (base32 "0gva48a1rn5yxj6dgy76dnndqaf09k5q2l9r41h2a66b84rf6c3a")))) + (build-system pyproject-build-system) (propagated-inputs - (list python-colormath)) + (list python-colormath2)) (native-inputs - (list python-nose)) + (list python-pytest python-setuptools python-wheel)) (home-page "https://github.com/jsvine/spectra") (synopsis "Color scales and color conversion") (description @@ -27975,21 +27985,20 @@ belong to tagged versions.") (method url-fetch) (uri (pypi-uri "setuptools-git" version)) (sha256 - (base32 - "0i84qjwp5m0l9qagdjww2frdh63r37km1c48mrvbmaqsl1ni6r7z")))) - (build-system python-build-system) + (base32 "0i84qjwp5m0l9qagdjww2frdh63r37km1c48mrvbmaqsl1ni6r7z")))) + (build-system pyproject-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - ;; This is needed for tests. - (add-after 'unpack 'configure-git - (lambda _ - (setenv "HOME" "/tmp") - (invoke "git" "config" "--global" "user.email" "guix") - (invoke "git" "config" "--global" "user.name" "guix") - #t))))) + (list + #:phases + #~(modify-phases %standard-phases + ;; This is needed for tests. + (add-after 'unpack 'configure-git + (lambda _ + (setenv "HOME" "/tmp") + (invoke "git" "config" "--global" "user.email" "guix") + (invoke "git" "config" "--global" "user.name" "guix")))))) (native-inputs - `(("git" ,git-minimal))) + (list git-minimal python-setuptools python-wheel)) (home-page "https://github.com/msabramo/setuptools-git") (synopsis "Setuptools revision control system plugin for Git") (description @@ -30245,13 +30254,13 @@ N-dimensional arrays for Python.") (define-public python-dill (package (name "python-dill") - (version "0.3.9") + (version "0.4.0") (source (origin (method url-fetch) (uri (pypi-uri "dill" version)) (sha256 - (base32 "0b2inivjahjlph54a70x6wi3pax4qsgclhlw0blbz37nvmyjdal1")))) + (base32 "1w5w5hlijw7ahqji45ssyvdip5pv074h4nw97bsj8ws7vz9g2cq6")))) (build-system pyproject-build-system) (arguments (list @@ -30280,14 +30289,14 @@ the saved state of the original interpreter session.") (define-public python-multiprocess (package (name "python-multiprocess") - (version "0.70.17") + (version "0.70.18") (source (origin (method url-fetch) (uri (pypi-uri "multiprocess" version)) (sha256 (base32 - "0ypm9yj1ng1s96hk2iwll190dkpc2j5zras8kay9x00n6hdg3qja")))) + "03bdxiincqq3g66vl3sf5ygagjz5sbrpr83djlipprmkwql72ngr")))) (build-system pyproject-build-system) (arguments (list @@ -30319,7 +30328,7 @@ preload_resources\ (format #t "test suite not run~%"))))))) (propagated-inputs (list python-dill)) - (native-inputs (list python-setuptools python-wheel)) + (native-inputs (list python-setuptools-next)) (home-page "https://pypi.org/project/multiprocess/") (synopsis "Multiprocessing and multithreading in Python") (description @@ -31299,26 +31308,22 @@ by Igor Pavlov.") (define-public python-ifaddr (package (name "python-ifaddr") - (version "0.1.7") + (version "0.2.0") (source (origin (method url-fetch) (uri (pypi-uri "ifaddr" version)) (sha256 - (base32 - "150sxdlicwrphmhnv03ykxplyd2jdrxz0mikgnivavgilrn8m7hz")))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ (invoke "nosetests")))))) + (base32 "1m5fqjqf53m31qrl8fxp2sbwf4mvk5mbjpw2jm2x8rgpmg5by36c")) + (snippet #~(delete-file "ifaddr/_win32.py")))) + (build-system pyproject-build-system) (native-inputs - (list python-nose)) + (list python-pytest python-setuptools python-wheel)) (home-page "https://github.com/pydron/ifaddr") (synopsis "Network interface and IP address enumeration library") - (description "This package provides a network interface and IP address -enumeration library in Python.") + (description + "This package provides a network interface and IP address enumeration +library in Python.") (license license:expat))) (define-public python-zeroconf @@ -32123,56 +32128,33 @@ layer and then tune the behaviour with any of the lower layers including the native API of @code{python-argparse}.") (license license:lgpl3+))) -(define-public python-ppft - (package - (name "python-ppft") - (version "1.6.6.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "ppft" version)) - (sha256 - (base32 - "1z1invkhszc5d2mvgr221v7cszzifcc77mz0pv3wjp6x5q2768cy")))) - (build-system python-build-system) - (arguments '(#:tests? #f)) ; there are none - (propagated-inputs - (list python-six)) - (home-page "https://pypi.org/project/ppft/") - (synopsis "Fork of Parallel Python") - (description - "This package is a fork of Parallel Python. The Parallel Python -module (@code{pp}) provides an easy and efficient way to create -parallel-enabled applications for @dfn{symmetric multiprocessing} (SMP) -computers and clusters. It features cross-platform portability and dynamic -load balancing.") - (license license:bsd-3))) - (define-public python-pox (package (name "python-pox") - (version "0.2.7") + (version "0.3.6") (source (origin (method url-fetch) (uri (pypi-uri "pox" version)) (sha256 (base32 - "0y17ckc2p6i6709s279sjdj4q459mpcc38ymg9zv9y6vl6jf3bq6")))) - (build-system python-build-system) + "01gnsgz6wfmpmb57qr4cgpkampiy6l7c1kxa0hlacn81c0wyvvl4")))) + (build-system pyproject-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (mkdir-p "/tmp/guix") - (setenv "SHELL" "bash") - (setenv "USERNAME" "guix") - (setenv "HOME" "/tmp/guix") ; must end on USERNAME... - (invoke "py.test" "-vv") - #t))))) + (list + #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? inputs outputs #:allow-other-keys) + (when tests? + (mkdir-p "/tmp/guix") + (setenv "SHELL" "bash") + (setenv "USERNAME" "guix") + (setenv "HOME" "/tmp/guix") ; must end on USERNAME... + (invoke "python" "./pox/tests/__main__.py"))))))) (native-inputs - (list python-pytest which)) + (list python-setuptools-next + which)) ;pox/tests/test_shutils.py (home-page "https://pypi.org/project/pox/") (synopsis "Python utilities for file system exploration and automated builds") (description @@ -32185,39 +32167,6 @@ discovery of what has been installed on an operating system, and where the essential tools are located.") (license license:bsd-3))) -(define-public python-pathos - (package - (name "python-pathos") - (version "0.2.5") - (source - (origin - (method url-fetch) - (uri (pypi-uri "pathos" version)) - (sha256 - (base32 - "0in8hxdz7k081ijn6q94gr39ycy7363sx4zysmbwyvd7snqjrbi1")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "python" "./tests/__main__.py")))))) - (propagated-inputs - (list python-dill python-multiprocess python-pox python-ppft)) - (native-inputs - (list python-pytest)) - (home-page "https://pypi.org/project/pathos/") - (synopsis - "Parallel graph management and execution in heterogeneous computing") - (description - "Python-pathos is a framework for heterogeneous computing. It provides a -consistent high-level interface for configuring and launching parallel -computations across heterogeneous resources. Python-pathos provides configurable -launchers for parallel and distributed computing, where each launcher contains -the syntactic logic to configure and launch jobs in an execution environment.") - (license license:bsd-3))) - (define-public python-flit (package (name "python-flit") @@ -32830,30 +32779,6 @@ prevent debuggers and other applications from inspecting the memory within your process.") (license license:expat))) -(define-public python-owslib - (package - (name "python-owslib") - (version "0.19.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "OWSLib" version)) - (sha256 - (base32 "0v8vg0naa9rywvd31cpq65ljbdclpsrx09788v4xj7lg10np8nk0")))) - (build-system python-build-system) - (arguments - ;; TODO: package dependencies required for tests. - '(#:tests? #f - #:phases (modify-phases %standard-phases - (delete 'sanity-check)))) - (synopsis "Interface for Open Geospatial Consortium web service") - (description - "OWSLib is a Python package for client programming with Open Geospatial -Consortium (OGC) web service (hence OWS) interface standards, and their related -content models.") - (home-page "https://geopython.github.io/OWSLib/") - (license license:bsd-3))) - (define-public python-xattr (package (name "python-xattr") diff --git a/gnu/packages/ruby-check.scm b/gnu/packages/ruby-check.scm index 151f00e145..5ff48039bd 100644 --- a/gnu/packages/ruby-check.scm +++ b/gnu/packages/ruby-check.scm @@ -28,7 +28,7 @@ ;;; Copyright © 2022 Stephen Paul Weber <singpolyma@singpolyma.net> ;;; Copyright © 2022 Taiju HIGASHI <higashi@taiju.info> ;;; Copyright © 2022 Tom Fitzhenry <tom@tom-fitzhenry.me.uk> -;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com> +;;; Copyright © 2023, 2025 gemmaro <gemmaro.dev@gmail.com> ;;; Copyright © 2023 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream> ;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr> @@ -113,37 +113,19 @@ converting AsciiDoc content to HTML5, DocBook 5, PDF, and other formats.") (define-public ruby-builder (package (name "ruby-builder") - (version "3.2.4") + (version "3.3.0") (source (origin (method url-fetch) (uri (rubygems-uri "builder" version)) (sha256 (base32 - "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr")))) + "0pw3r2lyagsxkm71bf44v5b74f7l9r7di22brbyji9fwz791hya9")))) (build-system ruby-build-system) - (arguments - (list - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'patch - (lambda _ - (substitute* "rakelib/tags.rake" - (("File\\.exists\\?") "File.exist?")) - - ;; TODO This test is broken - ;; https://github.com/tenderlove/builder/issues/13 - (substitute* "test/test_blankslate.rb" - (("test_late_included_module_in_kernel_is_ok") - "test_late_included_module_in_kernel_is_ok - skip(\"test expected to fail\") -")) - (substitute* "rakelib/tags.rake" - (("RVM_GEMDIR = .*") "RVM_GEMDIR = 'no-rvm-please'\n"))))))) (synopsis "Ruby library to create structured data") (description "Builder provides a number of builder objects that make it easy to create structured data. Currently the following builder objects are supported: XML Markup and XML Events.") - (home-page "https://github.com/tenderlove/builder") + (home-page "https://github.com/rails/builder") (license license:expat))) (define-public ruby-cucumber-ci-environment diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm index 1211a5f3e7..90bf376b39 100644 --- a/gnu/packages/sphinx.scm +++ b/gnu/packages/sphinx.scm @@ -1331,22 +1331,12 @@ executed during the Sphinx build process.") (method url-fetch) (uri (pypi-uri "sphobjinv" version)) (sha256 - (base32 - "10x4g92agj6aai0lj0xpcx58zlm1zamzws1w9dczsl1izpz07ij7")) - (patches (search-patches - "python-sphobjinv-defer-ssl-import.patch")))) - (build-system python-build-system) - (arguments - (list - #:phases - #~(modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "pytest"))))))) + (base32 "10x4g92agj6aai0lj0xpcx58zlm1zamzws1w9dczsl1izpz07ij7")) + (patches (search-patches "python-sphobjinv-defer-ssl-import.patch")))) + (build-system pyproject-build-system) (native-inputs (list python-dictdiffer python-pytest python-pytest-check - python-sphinx python-stdio-mgr)) + python-setuptools python-wheel python-sphinx python-stdio-mgr)) (propagated-inputs (list python-attrs python-certifi python-jsonschema)) (home-page "https://github.com/bskinn/sphobjinv") diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index e685cdf4a5..9770e73f52 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -25,6 +25,7 @@ ;;; Copyright © 2024-2025 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; Copyright © 2025 Jonas Freimuth <jonas.freimuth@posteo.de> ;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2025 Rikard Nordgren <hrn@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -119,6 +120,96 @@ #:use-module (srfi srfi-1) #:use-module (ice-9 match)) +(define-public jags + (package + (name "jags") + (version "4.3.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/mcmc-jags/JAGS/" + (version-major version) ".x/Source/" + "JAGS-" version ".tar.gz")) + (sha256 + (base32 + "0aa2w4g5057vn1qjp954s2kwxfmy1h7p5yn56fyi7sz9nmaq69gr")))) + (build-system gnu-build-system) + (arguments + (list #:configure-flags + #~(list "--with-lapack=-lopenblas" + "--with-blas=-lopenblas"))) + (home-page "https://mcmc-jags.sourceforge.net/") + (native-inputs + (list gfortran openblas)) + (synopsis "Gibbs sampler") + (description "JAGS is Just Another Gibbs Sampler. It is a program for +analysis of Bayesian hierarchical models using Markov Chain Monte Carlo (MCMC) +simulation not wholly unlike BUGS. JAGS was written with three aims in mind: + +@enumerate +@item To have a cross-platform engine for the BUGS language; +@item To be extensible, allowing users to write their own functions, + distributions and samplers; +@item To be a platform for experimentation with ideas in Bayesian modelling. +@end enumerate\n") + (license license:gpl2))) + +(define-public java-jdistlib + (package + (name "java-jdistlib") + (version "0.4.5") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/jdistlib/jdistlib-" + version "-src.jar")) + (sha256 + (base32 + "1pkj8aahw9ydr1isbaqrkd05nvq98ik5jwwhf3yf3rky3z869v11")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "jdistlib.jar" + #:jdk ,icedtea-8 + #:tests? #f ; no dedicated test directory + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-broken-encoding + (lambda _ + (with-fluids ((%default-port-encoding "ISO-8859-1")) + (substitute* "src/jdistlib/Beta.java" + (("Scheff.+-Tukey") "Scheffe-Tukey"))) + #t))))) + (propagated-inputs + (list java-jtransforms)) + (native-inputs + (list java-junit)) + (home-page "https://jdistlib.sourceforge.net/") + (synopsis "Java library of statistical distributions") + (description "JDistlib is the Java Statistical Distribution Library, a +Java package that provides routines for various statistical distributions.") + ;; The files that were translated from R code are under GPLv2+; some files + ;; are under the GPLv3, which is a mistake. The author confirmed in an + ;; email that this whole project should be under GPLv2+. + (license license:gpl2+))) + +(define-public libxls + (package + (name "libxls") + (version "1.6.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/libxls/libxls/releases/download/" + "v" version "/libxls-" version ".tar.gz")) + (sha256 + (base32 "0b327zafbwnfxj75n722z6a6zw195rs5bjmm5wskl9dml1p87yxj")))) + (build-system gnu-build-system) + (home-page "https://github.com/libxls/libxls") + (synopsis "Read binary (.xls) Excel spreadsheet files") + (description + "libxls is a C library to read .xls spreadsheet files in the binary OLE +BIFF8 format as created by Excel 97 and later versions. It cannot write them. + +This package also provides @command{xls2csv} to export Excel files to CSV.") + (license license:bsd-2))) (define-public pspp (package @@ -174,59 +265,107 @@ can be imported from spreadsheets, text files and database sources and it can be output in text, PostScript, PDF or HTML.") (license license:gpl3+))) -(define-public jags +(define-public python-altair (package - (name "jags") - (version "4.3.1") + (name "python-altair") + (version "5.3.0") (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/mcmc-jags/JAGS/" - (version-major version) ".x/Source/" - "JAGS-" version ".tar.gz")) + (method git-fetch) ; no tests in PyPI + (uri (git-reference + (url "https://github.com/altair-viz/altair") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0aa2w4g5057vn1qjp954s2kwxfmy1h7p5yn56fyi7sz9nmaq69gr")))) - (build-system gnu-build-system) + "1lx3pkphi36pljns6jjxhyn9fbrana8f1y6gcg4yca48nvwlfssl")))) + (build-system pyproject-build-system) (arguments - (list #:configure-flags - #~(list "--with-lapack=-lopenblas" - "--with-blas=-lopenblas"))) - (home-page "https://mcmc-jags.sourceforge.net/") - (native-inputs - (list gfortran openblas)) - (synopsis "Gibbs sampler") - (description "JAGS is Just Another Gibbs Sampler. It is a program for -analysis of Bayesian hierarchical models using Markov Chain Monte Carlo (MCMC) -simulation not wholly unlike BUGS. JAGS was written with three aims in mind: - -@enumerate -@item To have a cross-platform engine for the BUGS language; -@item To be extensible, allowing users to write their own functions, - distributions and samplers; -@item To be a platform for experimentation with ideas in Bayesian modelling. -@end enumerate\n") - (license license:gpl2))) + (list #:test-flags + ;; XXX: This test file requires hard to package python-anywidgets. + #~(list "--ignore=tests/test_jupyter_chart.py" + "-k" (string-join + (list + ;; these tests open an external connection. + "not test_from_and_to_json_roundtrip" + "test_render_examples_to_chart" + ;; introduces a circular dependency on altair-viewer. + "not test_save_html" + ;; these tests require the vl-convert vega compiler + "test_vegalite_compiler" + "test_to_dict_with_format_vega" + "test_to_json_with_format_vega" + "test_to_url" + "test_renderer_with_none_embed_options" + "test_jupyter_renderer_mimetype") + " and not ")))) + (propagated-inputs (list python-jinja2 + python-jsonschema + python-numpy + python-pandas + python-setuptools + python-toolz + python-typing-extensions)) + (native-inputs (list python-black + python-hatchling + python-ipython + python-pytest + python-vega-datasets)) + (home-page "https://altair-viz.github.io/") + (synopsis "Declarative statistical visualization library for Python") + (description + "Vega-Altair is a declarative statistical visualization library for Python.") + (license license:expat))) -(define-public libxls +(define-public python-arviz (package - (name "libxls") - (version "1.6.3") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/libxls/libxls/releases/download/" - "v" version "/libxls-" version ".tar.gz")) - (sha256 - (base32 "0b327zafbwnfxj75n722z6a6zw195rs5bjmm5wskl9dml1p87yxj")))) - (build-system gnu-build-system) - (home-page "https://github.com/libxls/libxls") - (synopsis "Read binary (.xls) Excel spreadsheet files") + (name "python-arviz") + (version "0.21.0") + (source (origin + (method git-fetch) ; PyPI misses some test files + (uri (git-reference + (url "https://github.com/arviz-devs/arviz") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "02bqpl61gzn65vhwspi6gx9ln2wlwh8xm418i8vhmls44rvszcxf")))) + (build-system pyproject-build-system) + (arguments + ;; FIXME: matplotlib tests fail because of the "--save" test flag. + (list #:test-flags #~'("--ignore" + "arviz/tests/base_tests/test_plots_matplotlib.py") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'remove-radon + (lambda _ + (delete-file + ;; This dataset is loaded remotely, it's not supposed to + ;; be copied locally. + "arviz/data/example_data/code/radon/radon.json"))) + (add-before 'check 'write-permission + (lambda _ + ;; 3 tests require write permission. + (setenv "HOME" "/tmp")))))) + (native-inputs (list python-cloudpickle python-pytest)) + (propagated-inputs (list python-dm-tree + python-h5netcdf + python-matplotlib + python-numpy + python-packaging + python-pandas + python-scipy + python-typing-extensions + python-xarray + python-xarray-einstats + python-setuptools + python-wheel)) + (home-page "https://github.com/arviz-devs/arviz") + (synopsis "Exploratory analysis of Bayesian models") (description - "libxls is a C library to read .xls spreadsheet files in the binary OLE -BIFF8 format as created by Excel 97 and later versions. It cannot write them. - -This package also provides @command{xls2csv} to export Excel files to CSV.") - (license license:bsd-2))) + "ArviZ is a Python package for exploratory analysis of Bayesian models. +It includes functions for posterior analysis, data storage, model checking, +comparison and diagnostics.") + (license license:asl2.0))) ;; Update this package together with the set of recommended packages: r-boot, ;; r-class, r-cluster, r-codetools, r-foreign, r-kernsmooth, r-lattice, @@ -468,6 +607,42 @@ 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-chaospy + (package + (name "python-chaospy") + (version "4.3.13") + (source (origin ;; PyPI misses Pytest fixtures. + (method git-fetch) + (uri (git-reference + (url "https://github.com/jonathf/chaospy") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1bn4jmwygs5h0dskbniivj20qblgm75pyi9hcjf47r25kawd730m")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + ;; The deprecation warnings break the tests. + (add-after 'unpack 'dont-treat-deprecation-warnings-as-error + (lambda _ + (substitute* "pyproject.toml" + (("\"error::DeprecationWarning\",") ""))))))) + (propagated-inputs (list python-importlib-metadata python-numpoly + python-numpy python-scipy)) + (native-inputs (list python-pytest python-scikit-learn python-setuptools + python-wheel)) + (home-page "https://chaospy.readthedocs.io/en/master/") + (synopsis "Numerical tool for performing uncertainty quantification") + (description "Chaospy is a numerical toolbox for performing uncertainty +quantification using polynomial chaos expansions, advanced Monte Carlo +methods implemented in Python. It also include a full suite of tools for +doing low-discrepancy sampling, quadrature creation, polynomial manipulations, +and a lot more.") + (license license:expat))) + (define-public python-dcor (package (name "python-dcor") @@ -835,55 +1010,29 @@ Keizer et al. (2013) <doi:10.1038/psp.2013.24>, and Jonsson et al. and Vega-Lite examples.") (license license:expat))) -(define-public python-altair +(define-public python-emcee (package - (name "python-altair") - (version "5.3.0") - (source (origin - (method git-fetch) ; no tests in PyPI - (uri (git-reference - (url "https://github.com/altair-viz/altair") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1lx3pkphi36pljns6jjxhyn9fbrana8f1y6gcg4yca48nvwlfssl")))) + (name "python-emcee") + (version "3.1.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "emcee" version)) + (sha256 + (base32 "0zb3ihja3hyj6zjbhkpxhyyppnv58q2jjg0yd1lwmydqdaplvbqi")))) (build-system pyproject-build-system) - (arguments - (list #:test-flags - ;; XXX: This test file requires hard to package python-anywidgets. - #~(list "--ignore=tests/test_jupyter_chart.py" - "-k" (string-join - (list - ;; these tests open an external connection. - "not test_from_and_to_json_roundtrip" - "test_render_examples_to_chart" - ;; introduces a circular dependency on altair-viewer. - "not test_save_html" - ;; these tests require the vl-convert vega compiler - "test_vegalite_compiler" - "test_to_dict_with_format_vega" - "test_to_json_with_format_vega" - "test_to_url" - "test_renderer_with_none_embed_options" - "test_jupyter_renderer_mimetype") - " and not ")))) - (propagated-inputs (list python-jinja2 - python-jsonschema - python-numpy - python-pandas - python-setuptools - python-toolz - python-typing-extensions)) - (native-inputs (list python-black - python-hatchling - python-ipython + (propagated-inputs (list python-numpy)) + (native-inputs (list python-coverage python-pytest - python-vega-datasets)) - (home-page "https://altair-viz.github.io/") - (synopsis "Declarative statistical visualization library for Python") + python-pytest-cov + python-setuptools + python-setuptools-scm + python-wheel)) + (home-page "https://emcee.readthedocs.io/en/stable/") + (synopsis "Ensemble sampling toolkit for MCMC") (description - "Vega-Altair is a declarative statistical visualization library for Python.") + "@code{emcee} is a Python implementation of the affine-invariant ensemble +sampler for Markov chain Monte Carlo (MCMC).") (license license:expat))) (define-public python-george @@ -1044,57 +1193,6 @@ is widely used in many areas of astrophysical research.") algorithms for evaluating Bayesian evidence.") (license license:expat))) -(define-public python-arviz - (package - (name "python-arviz") - (version "0.21.0") - (source (origin - (method git-fetch) ; PyPI misses some test files - (uri (git-reference - (url "https://github.com/arviz-devs/arviz") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "02bqpl61gzn65vhwspi6gx9ln2wlwh8xm418i8vhmls44rvszcxf")))) - (build-system pyproject-build-system) - (arguments - ;; FIXME: matplotlib tests fail because of the "--save" test flag. - (list #:test-flags #~'("--ignore" - "arviz/tests/base_tests/test_plots_matplotlib.py") - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'remove-radon - (lambda _ - (delete-file - ;; This dataset is loaded remotely, it's not supposed to - ;; be copied locally. - "arviz/data/example_data/code/radon/radon.json"))) - (add-before 'check 'write-permission - (lambda _ - ;; 3 tests require write permission. - (setenv "HOME" "/tmp")))))) - (native-inputs (list python-cloudpickle python-pytest)) - (propagated-inputs (list python-dm-tree - python-h5netcdf - python-matplotlib - python-numpy - python-packaging - python-pandas - python-scipy - python-typing-extensions - python-xarray - python-xarray-einstats - python-setuptools - python-wheel)) - (home-page "https://github.com/arviz-devs/arviz") - (synopsis "Exploratory analysis of Bayesian models") - (description - "ArviZ is a Python package for exploratory analysis of Bayesian models. -It includes functions for posterior analysis, data storage, model checking, -comparison and diagnostics.") - (license license:asl2.0))) - (define-public python-pymc (package (name "python-pymc") @@ -1141,42 +1239,6 @@ modeling focusing on advanced Markov chain Monte Carlo (MCMC) and variational inference (VI) algorithms.") (license license:asl2.0))) -(define-public python-chaospy - (package - (name "python-chaospy") - (version "4.3.13") - (source (origin ;; PyPI misses Pytest fixtures. - (method git-fetch) - (uri (git-reference - (url "https://github.com/jonathf/chaospy") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1bn4jmwygs5h0dskbniivj20qblgm75pyi9hcjf47r25kawd730m")))) - (build-system pyproject-build-system) - (arguments - (list - #:phases - #~(modify-phases %standard-phases - ;; The deprecation warnings break the tests. - (add-after 'unpack 'dont-treat-deprecation-warnings-as-error - (lambda _ - (substitute* "pyproject.toml" - (("\"error::DeprecationWarning\",") ""))))))) - (propagated-inputs (list python-importlib-metadata python-numpoly - python-numpy python-scipy)) - (native-inputs (list python-pytest python-scikit-learn python-setuptools - python-wheel)) - (home-page "https://chaospy.readthedocs.io/en/master/") - (synopsis "Numerical tool for performing uncertainty quantification") - (description "Chaospy is a numerical toolbox for performing uncertainty -quantification using polynomial chaos expansions, advanced Monte Carlo -methods implemented in Python. It also include a full suite of tools for -doing low-discrepancy sampling, quadrature creation, polynomial manipulations, -and a lot more.") - (license license:expat))) - (define-public python-patsy (package (name "python-patsy") @@ -1301,31 +1363,6 @@ uncertainties and are backed by strong theoretical guarantees thanks to conformal prediction methods intervals.") (license license:bsd-3))) -(define-public python-emcee - (package - (name "python-emcee") - (version "3.1.6") - (source - (origin - (method url-fetch) - (uri (pypi-uri "emcee" version)) - (sha256 - (base32 "0zb3ihja3hyj6zjbhkpxhyyppnv58q2jjg0yd1lwmydqdaplvbqi")))) - (build-system pyproject-build-system) - (propagated-inputs (list python-numpy)) - (native-inputs (list python-coverage - python-pytest - python-pytest-cov - python-setuptools - python-setuptools-scm - python-wheel)) - (home-page "https://emcee.readthedocs.io/en/stable/") - (synopsis "Ensemble sampling toolkit for MCMC") - (description - "@code{emcee} is a Python implementation of the affine-invariant ensemble -sampler for Markov chain Monte Carlo (MCMC).") - (license license:expat))) - (define-public python-statsmodels (package (name "python-statsmodels") @@ -3095,43 +3132,6 @@ editing and rich syntax highlight. One would consider Radian as a IPython clone for R, though its design is more aligned to Julia.") (license license:expat))) -(define-public java-jdistlib - (package - (name "java-jdistlib") - (version "0.4.5") - (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/jdistlib/jdistlib-" - version "-src.jar")) - (sha256 - (base32 - "1pkj8aahw9ydr1isbaqrkd05nvq98ik5jwwhf3yf3rky3z869v11")))) - (build-system ant-build-system) - (arguments - `(#:jar-name "jdistlib.jar" - #:jdk ,icedtea-8 - #:tests? #f ; no dedicated test directory - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'fix-broken-encoding - (lambda _ - (with-fluids ((%default-port-encoding "ISO-8859-1")) - (substitute* "src/jdistlib/Beta.java" - (("Scheff.+-Tukey") "Scheffe-Tukey"))) - #t))))) - (propagated-inputs - (list java-jtransforms)) - (native-inputs - (list java-junit)) - (home-page "https://jdistlib.sourceforge.net/") - (synopsis "Java library of statistical distributions") - (description "JDistlib is the Java Statistical Distribution Library, a -Java package that provides routines for various statistical distributions.") - ;; The files that were translated from R code are under GPLv2+; some files - ;; are under the GPLv3, which is a mistake. The author confirmed in an - ;; email that this whole project should be under GPLv2+. - (license license:gpl2+))) - (define-public emacs-ess (package (name "emacs-ess") @@ -3276,32 +3276,6 @@ statistical analysis programs such as R, Julia, and JAGS.") files, including Rmarkdown files.") (license license:gpl3+))) -(define-public readstat - (let ((commit "718d49155e327471ed9bf4a8c157f849f285b46c") - (revision "0")) - (package - (name "readstat") - (version (git-version "1.1.9" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/WizardMac/ReadStat") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 "121axcx4shd0fqlcr1mk7y841sd59r9mx473c4av8gs81xfhcg0h")))) - (build-system gnu-build-system) - (native-inputs - (list autoconf automake gettext-minimal libtool)) - (inputs - (list zlib)) - (home-page "https://github.com/WizardMac/ReadStat") - (synopsis "Convert SAS, Stata, and SPSS files") - (description "Command-line tool and C library for reading files from -popular stats packages like SAS, Stata and SPSS.") - (license license:expat)))) - (define-public python-pyreadstat (package (name "python-pyreadstat") @@ -3346,59 +3320,6 @@ files into/from Pandas DataFrames. It is a wrapper around the C library @code{readstat}.") (license license:asl2.0))) -(define-public xlispstat - (let ((commit "f1bea6053df658ee48612bf1f63c35de99e2c649") - (revision "0")) - (package - (name "xlispstat") - (version (git-version "3.52.23" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/jhbadger/xlispstat.git") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1p0cmgy19kbkxia139cb5w9dnkp2cdqp5n3baag6cq3prn3n71mf")))) - (build-system gnu-build-system) - (arguments - `(#:parallel-build? #f ; Parallel builds are not supported - #:configure-flags (list "--with-gcc") - #:phases - (modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (with-output-to-file "exit.lsp" - (lambda () (display "(exit)"))) - (invoke "./xlisp" "tests/test" "exit"))))))) - (inputs (list tcsh - libx11 - libxmu - libxext - libxpm - libxaw - ncurses - gnuplot)) - (native-inputs (list pkg-config)) - (synopsis "Statistical analysis environment with interactive graphics") - (description "XLISP-STAT is a statistical environment based on a Lisp -dialect called XLISP. To facilitate statistical computations, standard -functions for addition, logarithms, etc., have been modified to operate on -lists and arrays of numbers, and a number of basic statistical functions have -been added. Many of these functions have been written in Lisp, and additional -functions can be added easily by a user. Several basic forms of plots, -including histograms, scatterplots, rotatable plots and scatterplot matrices -are provided. These plots support various forms of interactive highlighting -operations and can be linked so points highlighted in one plot will be -highlighted in all linked plots. Interactions with the plots are controlled -by the mouse, menus and dialog boxes. An object-oriented programming system -is used to allow menus, dialogs, and the response to mouse actions to be - customized.") - (home-page "https://homepage.divms.uiowa.edu/~luke/xls/xlsinfo/") - (license license:expat)))) - (define-public r-rlrsim (package (name "r-rlrsim") @@ -3537,6 +3458,67 @@ simple slopes, standardized coefficients, regions of significance (Johnson & Neyman, 1936; cf. Spiller et al., 2012), etc.") (license license:gpl3))) +(define-public r-vpc + (package + (name "r-vpc") + (version "1.2.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ronkeizer/vpc") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1bkp0zy1pswrqgcsdvxvc7gyfl544k89qrjqdcj4aqkif0bfqmx8")))) + (build-system r-build-system) + (native-inputs + (list r-testit)) + (propagated-inputs + (list r-classint + r-dplyr + r-ggplot2 + r-mass + r-readr + r-stringr + r-survival + r-tidyr)) + (home-page "https://vpc.ronkeizer.com/") + (synopsis "Create visual predictive checks") + (description + "Visual predictive checks are a commonly used diagnostic plot in +pharmacometrics, showing how certain statistics (percentiles) for observed +data compare to those same statistics for data simulated from a model. The +package can generate VPCs for continuous, categorical, censored, and +(repeated) time-to-event data.") + (license license:expat))) + +(define-public readstat + (let ((commit "718d49155e327471ed9bf4a8c157f849f285b46c") + (revision "0")) + (package + (name "readstat") + (version (git-version "1.1.9" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/WizardMac/ReadStat") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "121axcx4shd0fqlcr1mk7y841sd59r9mx473c4av8gs81xfhcg0h")))) + (build-system gnu-build-system) + (native-inputs + (list autoconf automake gettext-minimal libtool)) + (inputs + (list zlib)) + (home-page "https://github.com/WizardMac/ReadStat") + (synopsis "Convert SAS, Stata, and SPSS files") + (description "Command-line tool and C library for reading files from +popular stats packages like SAS, Stata and SPSS.") + (license license:expat)))) + (define-public ruby-enumerable-statistics (package (name "ruby-enumerable-statistics") @@ -3634,3 +3616,56 @@ statistical summary in arrays and enumerables.") can be used for learning (Structure and Parameter), inference (Probabilistic and Causal), and simulations in Bayesian Networks.") (license license:expat))) + +(define-public xlispstat + (let ((commit "f1bea6053df658ee48612bf1f63c35de99e2c649") + (revision "0")) + (package + (name "xlispstat") + (version (git-version "3.52.23" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jhbadger/xlispstat.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1p0cmgy19kbkxia139cb5w9dnkp2cdqp5n3baag6cq3prn3n71mf")))) + (build-system gnu-build-system) + (arguments + `(#:parallel-build? #f ; Parallel builds are not supported + #:configure-flags (list "--with-gcc") + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (with-output-to-file "exit.lsp" + (lambda () (display "(exit)"))) + (invoke "./xlisp" "tests/test" "exit"))))))) + (inputs (list tcsh + libx11 + libxmu + libxext + libxpm + libxaw + ncurses + gnuplot)) + (native-inputs (list pkg-config)) + (synopsis "Statistical analysis environment with interactive graphics") + (description "XLISP-STAT is a statistical environment based on a Lisp +dialect called XLISP. To facilitate statistical computations, standard +functions for addition, logarithms, etc., have been modified to operate on +lists and arrays of numbers, and a number of basic statistical functions have +been added. Many of these functions have been written in Lisp, and additional +functions can be added easily by a user. Several basic forms of plots, +including histograms, scatterplots, rotatable plots and scatterplot matrices +are provided. These plots support various forms of interactive highlighting +operations and can be linked so points highlighted in one plot will be +highlighted in all linked plots. Interactions with the plots are controlled +by the mouse, menus and dialog boxes. An object-oriented programming system +is used to allow menus, dialogs, and the response to mouse actions to be + customized.") + (home-page "https://homepage.divms.uiowa.edu/~luke/xls/xlsinfo/") + (license license:expat)))) diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm index 2fe41d1358..3ec115f318 100644 --- a/gnu/packages/time.scm +++ b/gnu/packages/time.scm @@ -411,20 +411,23 @@ business day calculation.") (version "2.6") (source (origin - (method url-fetch) - (uri (pypi-uri "parsedatetime" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/bear/parsedatetime") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 - "0mfl0ixshqkwx7z5siaib7ix5j2iahb1jqfpyhqp42wan7xnicsc")))) - (build-system python-build-system) + (base32 "001rxkawjjjffbqzjg96znkhj4z6q7ky349rldd8yx6vk8cgdc2m")))) + (build-system pyproject-build-system) (native-inputs - (list python-nose python-pyicu python-pytest python-pytest-runner)) + (list python-pyicu python-pytest python-setuptools python-wheel)) (propagated-inputs (list python-future)) (home-page "https://github.com/bear/parsedatetime/") (synopsis "Parse human-readable date/time text") (description - "Parse human-readable date/time text.") + "This package provides some tools to parse human-readable date/time text +in Python.") (license asl2.0))) (define-public python-ciso8601 diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index f4966439cb..fedc4827aa 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -96,6 +96,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix utils) #:use-module (guix packages) + #:use-module (guix deprecation) #:use-module (guix download) #:use-module (guix gexp) #:use-module (guix git-download) @@ -2943,23 +2944,30 @@ Jellyfin. It has support for various media files without transcoding.") (define-public gallery-dl (package (name "gallery-dl") - (version "1.28.2") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/mikf/gallery-dl" - "/releases/download/v" version "/gallery_dl-" - version ".tar.gz")) - (sha256 - (base32 - "0j4hxp1lbcxgg34ilzhcpxvswgnvvrlk66pn3w9ksv5g8jdz7rpi")))) - (build-system python-build-system) + (version "1.30.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mikf/gallery-dl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "15sgvk81s61v4yzzv1s5ksr4z77qhmv7ynyn34zrx5x41g72hgpz")))) + (build-system pyproject-build-system) + (arguments + (list + ;; XXX: A lot of those require network. + #:test-flags #~(list "--ignore=test/test_results.py"))) + (native-inputs (list python-pytest python-setuptools python-wheel)) (inputs (list python-requests ffmpeg)) (home-page "https://github.com/mikf/gallery-dl") (synopsis "Command-line program to download images from several sites") - (description "Gallery-dl is a command-line program that downloads image -galleries and collections from several image hosting sites. While this package -can use youtube-dl or yt-dlp packages to download videos, the focus is more on -images and image hosting sites.") + (description + "Gallery-dl is a command-line program that downloads image galleries and +collections from several image hosting sites. While this package can use +yt-dlp packages to download videos, the focus is more on images and image +hosting sites.") (license license:gpl2))) (define-public mpv-mpris @@ -3172,88 +3180,7 @@ to download videos from Austria's national television broadcaster.") video streaming services of the Finnish national broadcasting company Yle.") (license license:gpl3+))) -(define-public youtube-dl - (package - (name "youtube-dl") - (version "2021.12.17") - (source (origin - (method url-fetch) - (uri (string-append "https://youtube-dl.org/downloads/latest/" - "youtube-dl-" version ".tar.gz")) - (sha256 - (base32 - "1prm84ci1n1kjzhikhrsbxbgziw6br822psjnijm2ibqnz49jfwz")) - (snippet - '(begin - ;; Delete the pre-generated files, except for the man page - ;; which requires 'pandoc' to build. - (for-each delete-file '("youtube-dl" - ;;pandoc is needed to generate - ;;"youtube-dl.1" - "youtube-dl.bash-completion" - "youtube-dl.fish" - "youtube-dl.zsh")))))) - (build-system python-build-system) - (arguments - ;; The problem here is that the directory for the man page and completion - ;; files is relative, and for some reason, setup.py uses the - ;; auto-detected sys.prefix instead of the user-defined "--prefix=FOO". - ;; So, we need pass the prefix directly. In addition, make sure the Bash - ;; completion file is called 'youtube-dl' rather than - ;; 'youtube-dl.bash-completion'. - `(#:tests? #f ; Many tests fail. The test suite can be run with pytest. - #:phases (modify-phases %standard-phases - (add-after 'unpack 'default-to-the-ffmpeg-input - (lambda _ - ;; See <https://issues.guix.gnu.org/43418#5>. - ;; ffmpeg is big but required to request free formats - ;; from, e.g., YouTube so pull it in unconditionally. - ;; Continue respecting the --ffmpeg-location argument. - (substitute* "youtube_dl/postprocessor/ffmpeg.py" - (("\\.get\\('ffmpeg_location'\\)" match) - (format #f "~a or '~a'" match (which "ffmpeg")))))) - (add-before 'build 'build-generated-files - (lambda _ - ;; Avoid the make targets that require pandoc. - (invoke "make" - "PYTHON=python" - "youtube-dl" - ;;"youtube-dl.1" ; needs pandoc - "youtube-dl.bash-completion" - "youtube-dl.zsh" - "youtube-dl.fish"))) - (add-before 'install 'fix-the-data-directories - (lambda* (#:key outputs #:allow-other-keys) - (let ((prefix (assoc-ref outputs "out"))) - (mkdir "bash-completion") - (rename-file "youtube-dl.bash-completion" - "bash-completion/youtube-dl") - (substitute* "setup.py" - (("youtube-dl\\.bash-completion") - "bash-completion/youtube-dl") - (("'etc/") - (string-append "'" prefix "/etc/")) - (("'share/") - (string-append "'" prefix "/share/")))))) - (add-after 'install 'install-completion - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (zsh (string-append out - "/share/zsh/site-functions"))) - (mkdir-p zsh) - (copy-file "youtube-dl.zsh" - (string-append zsh "/_youtube-dl")))))))) - (native-inputs - (list zip)) - (inputs - (list ffmpeg)) - (synopsis "Download videos from YouTube.com and other sites") - (description - "Youtube-dl is a small command-line program to download videos from -YouTube.com and many more sites.") - (home-page "https://yt-dl.org") - (properties '((release-monitoring-url . "https://yt-dl.org/downloads/"))) - (license license:public-domain))) +(define-deprecated/public-alias youtube-dl yt-dlp) (define-public yt-dlp (package @@ -3407,8 +3334,7 @@ audio, images) from the Web. It can use either mpv or vlc for playback.") perl-term-readline-gnu perl-unicode-linebreak xdg-utils - ;; Some videos play without youtube-dl, but others silently fail to. - youtube-dl)) + yt-dlp)) (arguments `(#:modules ((guix build perl-build-system) (guix build utils) @@ -3421,9 +3347,9 @@ audio, images) from the Web. It can use either mpv or vlc for playback.") (add-after 'unpack 'refer-to-inputs (lambda* (#:key inputs #:allow-other-keys) (substitute* "lib/WWW/YoutubeViewer.pm" - (("'youtube-dl'") - (format #f "'~a/bin/youtube-dl'" - (assoc-ref inputs "youtube-dl")))) + (("'yt-dlp'") + (format #f "'~a'" + (search-input-file inputs "bin/yt-dlp")))) (substitute* '("bin/gtk2-youtube-viewer" "bin/gtk3-youtube-viewer") (("'xdg-open'") @@ -5100,44 +5026,6 @@ specifications.") Content System specification.") (license license:lgpl2.1+))) -(define-public mps-youtube - (package - (name "mps-youtube") - (version "0.2.8") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/mps-youtube/mps-youtube") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1w1jhw9rg3dx7vp97cwrk5fymipkcy2wrbl1jaa38ivcjhqg596y")))) - (build-system python-build-system) - (arguments - ;; Tests need to be disabled until #556 upstream is fixed. It reads as if the - ;; test suite results differ depending on the country and also introduce - ;; non-determinism in the tests. - ;; https://github.com/mps-youtube/mps-youtube/issues/556 - '(#:tests? #f - #:phases (modify-phases %standard-phases - ;; Loading this as a library will create cache directories, - ;; etc; which fails in the build container. - (delete 'sanity-check)))) - (propagated-inputs - (list python-pafy python-pygobject)) ; For mpris2 support - (home-page "https://github.com/mps-youtube/mps-youtube") - (synopsis "Terminal based YouTube player and downloader") - (description - "@code{mps-youtube} is based on mps, a terminal based program to -search, stream and download music. This implementation uses YouTube as -a source of content and can play and download video as well as audio. -It can use either mpv or mplayer for playback, and for conversion of -formats ffmpeg or libav is used. Users should install one of the -supported players in addition to this package.") - (license license:gpl3+))) - (define-public handbrake (package (name "handbrake") @@ -6759,6 +6647,92 @@ and press \"Record\". Peek is optimized for generating animated GIFs, but you can also directly record to WebM or MP4 if you prefer.") (license license:gpl3+))) +(define-public python-yewtube + (package + (name "python-yewtube") + (version "2.12.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mps-youtube/yewtube") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1bvn1zcycsq2gnvs10hn82ic8zp9q4s9gmmi6flahg3wavpnspzr")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'relax-requirements + (lambda _ + (substitute* "mps_youtube/__init__.py" + (("from pip\\._vendor import pkg_resources.*") + "") + (("__version__ =.*") + (format #f "__version__ = ~s~%" + #$(package-version this-package)))) + (substitute* "requirements.txt" + (("httpx.*") + "httpx\n")))) + (add-before 'check 'configure-tests + (lambda _ + (setenv "HOME" (getcwd)))) + ;; XXX: This can happen when some side-effects happens at + ;; initialization. See https://codeberg.org/guix/guix/issues/1089 + (add-before 'sanity-check 'patch-script + (lambda _ + (substitute* (string-append #$output "/bin/.yt-real") + (("import mps_youtube as mod") + "from mps_youtube.main import main") + (("sys\\.exit \\(mod\\.main\\.main \\(\\)\\)") + "sys.exit(main())")))) + (replace 'sanity-check + (lambda _ + (invoke (string-append #$output "/bin/yt") "-h")))))) + (native-inputs + (list python-dbus + python-pygobject + python-pytest + python-setuptools-next + python-wheel)) + (propagated-inputs + (list python-pylast + python-pyperclip + python-requests + python-youtube-search + yt-dlp)) + (home-page "https://github.com/mps-youtube/yewtube") + (synopsis "Terminal based YouTube player and downloader") + (description + "This package provides a terminal based @code{YouTube} player and +downloader. It does not require a Youtube API key.") + (license license:gpl3+))) + +(define-deprecated/public-alias mps-youtube python-yewtube) + +(define-public python-youtube-search + (package + (name "python-youtube-search") + (version "1.6.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "youtube-search-python" version)) + (sha256 + (base32 "1xgw6nqypnj3ymjkfyzc1vvwar73qvp08prnp15ypmzcd7bx2s25")))) + (build-system pyproject-build-system) + (propagated-inputs (list python-httpx)) + (native-inputs (list python-setuptools python-wheel)) + (home-page "https://github.com/alexmercerind/youtube-search-python") + (synopsis "Search for YouTube videos, channels & playlists") + (description + "This package provides tools to search for @code{YouTube} videos, +channels and playlists; as well as getting video metadata from links. This +package does not rely on the @code{YouTube} Data API v3.") + (license license:expat))) + (define-public wf-recorder (package (name "wf-recorder") diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index fd57213a12..de59e8dbb8 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -1141,7 +1141,7 @@ similar to live activity monitoring provided with NGINX plus.") (define-public lighttpd (package (name "lighttpd") - (version "1.4.79") + (version "1.4.80") (source (origin (method url-fetch) (uri (string-append "https://download.lighttpd.net/lighttpd/" @@ -1149,7 +1149,7 @@ similar to live activity monitoring provided with NGINX plus.") "lighttpd-" version ".tar.xz")) (sha256 (base32 - "1gc4c352jlqqgxyrgz2f5s7li1vxpd15ykza3wnp125dncjsca9v")))) + "1wsvy92dsyhlq99b7rvlj5n72m7rqggr27jxajnnpvmjx1qhypyc")))) (build-system gnu-build-system) (arguments (list #:configure-flags |