forked from tribes/guix
Compare commits
39 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 861f6c542e | |||
| cbeca8a726 | |||
| d62dc2a321 | |||
| 2ee962f657 | |||
| df39c10677 | |||
| 1b280ff5be | |||
| 2544f815df | |||
| f0b284513a | |||
| 22f962b8a6 | |||
| 7254d98a17 | |||
| 444b781f70 | |||
| 47c0faa4ff | |||
| a5ac8961bb | |||
| 123e79dc83 | |||
| 8fbf5290a3 | |||
| e1d0335f44 | |||
| 54fc97a07f | |||
| 1768771455 | |||
| 5fca756307 | |||
| 74efe751e7 | |||
| 7912fc52b1 | |||
| c26c3d0f53 | |||
| 0d11c221b8 | |||
| 6abb7bc422 | |||
| 03937c8724 | |||
| 7ff2ca1b5c | |||
| 380efb7408 | |||
| 589f4cc655 | |||
| 05e669ac50 | |||
| 08341ec277 | |||
| b725619636 | |||
| a3f6d396cd | |||
| 7d67cacad1 | |||
| 333d61cf5b | |||
| 21a4d649b2 | |||
| 5ff9ca0339 | |||
| c4657c774b | |||
| b559fd6938 | |||
| fa38888348 |
@@ -68,6 +68,7 @@ guix/discovery\.scm @guix/core
|
||||
guix/docker\.scm @guix/core
|
||||
guix/download\.scm @guix/core
|
||||
guix/elf\.scm @guix/core
|
||||
guix/fossil-download\.scm @guix/core
|
||||
guix/ftp-client\.scm @guix/core
|
||||
guix/gexp\.scm @guix/core
|
||||
guix/git-authenticate\.scm @guix/core
|
||||
@@ -484,6 +485,7 @@ gnu/services/version-control\.scm @guix/vcs
|
||||
gnu/tests/version-control\.scm @guix/vcs
|
||||
guix/build/bzr\.scm @guix/vcs
|
||||
guix/build/cvs\.scm @guix/vcs
|
||||
guix/build/fossil\.scm @guix/vcs
|
||||
guix/build/git\.scm @guix/vcs
|
||||
guix/build/hg\.scm @guix/vcs
|
||||
guix/build/svn\.scm @guix/vcs
|
||||
|
||||
@@ -104,6 +104,7 @@ MODULES = \
|
||||
guix/discovery.scm \
|
||||
guix/android-repo-download.scm \
|
||||
guix/bzr-download.scm \
|
||||
guix/fossil-download.scm \
|
||||
guix/git-download.scm \
|
||||
guix/hg-download.scm \
|
||||
guix/hash.scm \
|
||||
@@ -236,6 +237,7 @@ MODULES = \
|
||||
guix/build/asdf-build-system.scm \
|
||||
guix/build/bzr.scm \
|
||||
guix/build/copy-build-system.scm \
|
||||
guix/build/fossil.scm \
|
||||
guix/build/git.scm \
|
||||
guix/build/hg.scm \
|
||||
guix/build/glib-or-gtk-build-system.scm \
|
||||
|
||||
@@ -20,6 +20,9 @@ Please send Guix bug reports to bug-guix@gnu.org.
|
||||
*** New service for Fossil SCM
|
||||
*** TeX Live updated to 2026.1
|
||||
|
||||
** Programming interfaces
|
||||
*** New (guix fossil-download) module, for fetching Fossil repositories
|
||||
|
||||
* Changes in 1.5.0 (since 1.4.0)
|
||||
** Package management
|
||||
*** New ‘rpm’ format for the ‘guix pack’ command
|
||||
|
||||
@@ -8737,6 +8737,52 @@ The example below denotes a version of gnu-standards to fetch:
|
||||
|
||||
@end deftp
|
||||
|
||||
For Fossil repositories, the module @code{(guix fossil-download)} defines
|
||||
the @code{fossil-fetch} origin method and @code{fossil-reference} data type
|
||||
for support of the Fossil @abbr{SCM, software configuration management} system.
|
||||
|
||||
@deffn {Procedure} fossil-fetch ref hash-algo hash [name]
|
||||
Return a fixed-output derivation that fetches @var{ref}, a
|
||||
@code{<fossil-reference>} object. The output is expected to have recursive
|
||||
hash @var{hash} of type @var{hash-algo} (a symbol). Use @var{name} as
|
||||
the file name, or a generic name if @code{#f}.
|
||||
@end deffn
|
||||
|
||||
@deftp {Data Type} fossil-reference
|
||||
This data type represents a Fossil reference
|
||||
for @code{fossil-fetch} to retrieve.
|
||||
|
||||
@table @asis
|
||||
@item @code{uri} (type: string)
|
||||
The URI of a Fossil repository to clone, in one of the following forms,
|
||||
in which @code{[...]} denotes optional elements:
|
||||
|
||||
@table @code
|
||||
@item http[s]://[userid[:password]@@]host[:port][/path]
|
||||
A HTTP/HTTPS URL.
|
||||
@item [file://]path/to/repo.fossil
|
||||
A file URI, where the path must have an extra leading @code{/}
|
||||
to use an absolute path (without the URI scheme, the repository
|
||||
is opened directly without cloning).
|
||||
@end table
|
||||
|
||||
@item @code{check-in} (type: string)
|
||||
A @url{https://fossil-scm.org/home/doc/trunk/www/checkin_names.wiki,
|
||||
name of the check-in} to fetch, e.g.@: its canonical hexadecimal identifier,
|
||||
associated tag and/or timestamp.
|
||||
@end table
|
||||
|
||||
The example below denotes the @code{version-3.51.1} tag
|
||||
of the SQLite repository:
|
||||
|
||||
@lisp
|
||||
(fossil-reference
|
||||
(uri "https://sqlite.org/src")
|
||||
(check-in "version-3.51.1"))
|
||||
@end lisp
|
||||
|
||||
@end deftp
|
||||
|
||||
@node Defining Package Variants
|
||||
@section Defining Package Variants
|
||||
|
||||
|
||||
@@ -565,6 +565,7 @@ challenges"))
|
||||
"guix/docker.scm"
|
||||
"guix/download.scm"
|
||||
"guix/elf.scm"
|
||||
"guix/fossil-download.scm"
|
||||
"guix/ftp-client.scm"
|
||||
"guix/gexp.scm"
|
||||
"guix/git-authenticate.scm"
|
||||
@@ -1214,6 +1215,7 @@ the \"texlive\" importer."
|
||||
"gnu/tests/version-control.scm"
|
||||
"guix/build/bzr.scm"
|
||||
"guix/build/cvs.scm"
|
||||
"guix/build/fossil.scm"
|
||||
"guix/build/git.scm"
|
||||
"guix/build/hg.scm"
|
||||
"guix/build/svn.scm")))
|
||||
|
||||
@@ -1698,6 +1698,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/libcss-check-format.patch \
|
||||
%D%/packages/patches/libeb-gcc-14.patch \
|
||||
%D%/packages/patches/libextractor-tidy-support.patch \
|
||||
%D%/packages/patches/libfossil-skip-amalgamation.patch \
|
||||
%D%/packages/patches/libftdi-fix-paths-when-FTDIPP-set.patch \
|
||||
%D%/packages/patches/libgeotiff-fix-tests-with-proj-9.1.1.patch \
|
||||
%D%/packages/patches/libgeotiff-fix-tests-with-proj-9.3.0.patch \
|
||||
|
||||
+479
-38
@@ -284,7 +284,7 @@ a wide set of telescopes.")
|
||||
(define-public astroterm
|
||||
(package
|
||||
(name "astroterm")
|
||||
(version "1.0.10")
|
||||
(version "1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -293,7 +293,7 @@ a wide set of telescopes.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1k946b5qv6jqiap3pi4gv2w46lq0j9q19lfrzkzlypi8h2a9plng"))))
|
||||
(base32 "1p6rxv18gp989fmydbp75mrqxffjlqwp6xkdk18jj322hri0lidv"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -770,7 +770,7 @@ analysis.")
|
||||
(define-public cpl
|
||||
(package
|
||||
(name "cpl")
|
||||
(version "7.3.2")
|
||||
(version "7.3.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -778,7 +778,7 @@ analysis.")
|
||||
"https://ftp.eso.org/pub/dfs/pipelines/libraries/cpl/cpl-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "083ppsa6ifc52m0s4ww4l9cajnh2f0y3s5bxaq31drihhrd2c355"))))
|
||||
(base32 "090xp9scg34z60iiklf8w7gmbjbja3sdv7xk97pn8llklvks8xgi"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
;; pycpl expects to find a lib/esopipes-plugins directory. This is
|
||||
@@ -1215,7 +1215,7 @@ programs for the manipulation and analysis of astronomical data.")
|
||||
(define-public gpredict
|
||||
(package
|
||||
(name "gpredict")
|
||||
(version "2.4")
|
||||
(version "2.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1224,7 +1224,7 @@ programs for the manipulation and analysis of astronomical data.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0dfwb6h7bkhx782pj78xw4c1h1r6kd3md7xjz1jvxapsx0iypclw"))))
|
||||
(base32 "1bcy50g1hkdwdadr5lb2fs3ry261qcp10kf3cc0kif9y8im91zwl"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -1409,7 +1409,7 @@ floating-point (no compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit,
|
||||
(define-public indi
|
||||
(package
|
||||
(name "indi")
|
||||
(version "2.1.9")
|
||||
(version "2.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1418,7 +1418,7 @@ floating-point (no compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit,
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0nlvcp4z2wb0yha141x25xgvcl5rsqm7jq47c49rxq0bb3arjyig"))))
|
||||
(base32 "0rknhrv7hhwmgvsi9lgrajl6hipsxk7d7nqazk7i8cczsrxgwdjx"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -2031,29 +2031,32 @@ model-fitting photometry or morphological analyses.")
|
||||
(define-public python-aiapy
|
||||
(package
|
||||
(name "python-aiapy")
|
||||
(version "0.11.0")
|
||||
(version "0.12.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "aiapy" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/LM-SAL/aiapy")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "11hjqk8840y7dwny0r8apqf0a0kb0lyn7kr1syzqhp87zjslna5q"))))
|
||||
(base32 "0b5zvqnjxpdx8830s2f5pziyjqh8isy4y4b7j0xg5rh4vm7zqfhm"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests: 47 passed, 76 skipped
|
||||
#:test-flags
|
||||
;; Remove data is required: ValueError: Did not find any files
|
||||
;; at https:/github.com/sunpy/data/blob/main/aiapy/aia_lev1_\
|
||||
;; 193a_2013_03_15t12_01_06_84z_image_lev1.fits?raw=true
|
||||
#~(list (string-append "--deselect=aiapy/calibrate/tests/test_meta.py"
|
||||
"::test_fix_pointing_missing_value"))
|
||||
;; tests: 47 passed, 82 skipped, 133 warnings
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'set-home
|
||||
(add-after 'unpack 'include-package-data
|
||||
(lambda _
|
||||
;; See: <https://github.com/LM-SAL/aiapy/pull/396>.
|
||||
(substitute* "pyproject.toml"
|
||||
(("include-package-data = true.*" all)
|
||||
(string-append all
|
||||
"\n[tool.setuptools.package-data]
|
||||
aiapy = ['*.rst']")))))
|
||||
(add-before 'check 'set-HOME
|
||||
(lambda _
|
||||
;; E PermissionError: [Errno 13] Permission denied:
|
||||
;; '/homeless-shelter'
|
||||
(setenv "HOME" "/tmp"))))))
|
||||
(native-inputs
|
||||
(list nss-certs-for-test
|
||||
@@ -3769,6 +3772,45 @@ processing of CCD images built on a framework to provide error propagation and
|
||||
bad pixel tracking throughout the reduction process.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-cdasws
|
||||
(package
|
||||
(name "python-cdasws")
|
||||
(version "1.8.15")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cdasws" version))
|
||||
(sha256
|
||||
(base32 "04jfzbdpyrfzdz6x2xxcgnpv5bih58bnw0mvscbzklwhq9wsd0gk"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;require network, and missing "context" module
|
||||
(native-inputs
|
||||
(list python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-dateutil
|
||||
python-requests
|
||||
python-urllib3))
|
||||
(home-page "https://cdaweb.gsfc.nasa.gov/WebServices/REST/")
|
||||
(synopsis
|
||||
"NASA's Coordinated Data Analysis System Web Service Client Library")
|
||||
(description
|
||||
"This package provides NASA's Coordinated Data Analysis System Web
|
||||
Service Client Library.
|
||||
|
||||
The Coordinated Data Analysis System (CDAS) supports simultaneous
|
||||
multi-mission, multi-instrument selection and comparison of science data among
|
||||
a wide range of current space missions. While CDAWeb provides access to this
|
||||
data through an HTML-based user interface, these Web services provides a (Web)
|
||||
application programmming interface (API) to CDAS. If you are not a software
|
||||
developer and simply want to use the existing web (HTML) interface to CDAS,
|
||||
then return to the main CDAWeb page. If you are developing software that
|
||||
requires science data from any of the CDAWeb datasets, then the CDAS Web
|
||||
services will provide access to the data without having to explicitly
|
||||
find,download, and read the data files.")
|
||||
;; NASA open source agreement version 1.3, BSD like.
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-cdflib
|
||||
(package
|
||||
(name "python-cdflib")
|
||||
@@ -5032,6 +5074,42 @@ CFITSIO library. Among other things, it can
|
||||
@end itemize")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public python-flatstar
|
||||
(package
|
||||
(name "python-flatstar")
|
||||
(version "0.2.1-alpha")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ladsantos/flatstar")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0r6w8sz7z9ri9plqn98dz93c9rb33ky544y1wzwifh1m8y3m67si"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; assert np.float32(2.861023e-06) < 1e-06
|
||||
#~(list "--deselect=tests/test_draw.py::test_supersampling"
|
||||
;; assert np.float32(1.9073486e-06) < 1e-06
|
||||
"--deselect=tests/test_draw.py::test_upscaling")))
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-numpy
|
||||
python-pillow))
|
||||
(home-page "https://github.com/ladsantos/flatstar")
|
||||
(synopsis "Make 2d intensity maps of limb-darkened stars")
|
||||
(description
|
||||
"@code{flatstar} is a pure-Python tool for drawing stellar disks with
|
||||
scientifically-rigorous limb darkening. Each pixel has an accurate fractional
|
||||
intensity in relation to the total stellar intensity of @code{1.0}. It is
|
||||
ideal for ray-tracing simulations of stars and planetary transits.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-galsim
|
||||
(package
|
||||
(name "python-galsim")
|
||||
@@ -5703,6 +5781,41 @@ universes of galaxies starting from a catalog of dark matter halos obtained
|
||||
from a cosmological simulation.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-hapiclient
|
||||
(package
|
||||
(name "python-hapiclient")
|
||||
(version "0.2.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/hapi-server/client-python")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0mjb12cphcqq3vj3czyx77yrd3jl15gz6a2a2q5fcz21i63fpig6"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; Tests require access to:
|
||||
;; http://hapi-server.org/servers/TestData/xhapi
|
||||
;; http://hapi-server.org/servers/TestData2.0/hapi
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
(list python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-isodate
|
||||
python-joblib
|
||||
python-numpy
|
||||
python-pandas
|
||||
python-urllib3))
|
||||
(home-page "https://github.com/hapi-server/client-python")
|
||||
(synopsis "Interface to Heliophysics data server API")
|
||||
(description
|
||||
"This package provides an interface to @acronym{Heliophysics Application
|
||||
Programmer’s Interface, HAPI} data server API.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-hasasia
|
||||
(package
|
||||
(name "python-hasasia")
|
||||
@@ -6477,6 +6590,47 @@ quantification of galaxies, quasar-host galaxy decomposition and much more.")
|
||||
(native-inputs
|
||||
(list python-setuptools))))
|
||||
|
||||
(define-public python-lephare
|
||||
(package
|
||||
(name "python-lephare")
|
||||
(version "0.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "lephare" version))
|
||||
(sha256
|
||||
(base32 "1nkd807kl2xg25iwb5wj380pxlvrd9abdaznaw5if3qjmjkjx86s"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; Network access is required to reach <http://svo2.cab.inta-csic.es>.
|
||||
#~(list "--deselect=tests/lephare/test_data_retrieval.py::test_get_auxiliary_data"
|
||||
"--deselect=tests/lephare/test_filter.py::test_filtersvc")
|
||||
#:phases
|
||||
'(modify-phases %standard-phases
|
||||
(add-before 'sanity-check 'set-HOME
|
||||
(lambda _ (setenv "HOME" "/tmp"))))))
|
||||
(native-inputs
|
||||
(list cmake-minimal
|
||||
python-pytest
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-astropy
|
||||
python-matplotlib
|
||||
python-numpy
|
||||
python-platformdirs
|
||||
python-pooch
|
||||
python-requests
|
||||
python-scipy
|
||||
python-wurlitzer))
|
||||
(home-page "https://lephare.readthedocs.io/en/latest/")
|
||||
(synopsis "Photometric redshift estimator")
|
||||
(description
|
||||
"LePHARE is a code for estimating galaxy redshifts and physical parameters
|
||||
using template fitting.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-libstempo
|
||||
(package
|
||||
(name "python-libstempo")
|
||||
@@ -6692,6 +6846,37 @@ restrictive than the API used by astropy, so the appropriate module to use
|
||||
will depend on your needs.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-madrigalweb
|
||||
(package
|
||||
(name "python-madrigalweb")
|
||||
(version "3.3.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "madrigalweb" version))
|
||||
(sha256
|
||||
(base32 "0p55igi0xrckjbihcbjn14033hzliq6qjmacrxigrvjw3m016b75"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;network access is required
|
||||
(native-inputs
|
||||
(list python-setuptools))
|
||||
(home-page "https://cedar.openmadrigal.org")
|
||||
(synopsis "Python Madrigal Remote API")
|
||||
(description
|
||||
"@code{madrigalWeb} is a pure python module to access data from any
|
||||
@url{https://cedar.openmadrigal.org/, Madrigal}
|
||||
database.
|
||||
|
||||
Madrigal is an upper atmospheric science database used by groups throughout
|
||||
the world. Madrigal is a robust, World Wide Web based system capable of
|
||||
managing and serving archival and real-time data, in a variety of formats,
|
||||
from a wide range of upper atmospheric science instruments. Data at each
|
||||
Madrigal site is locally controlled and can be updated at any time, but shared
|
||||
metadata between Madrigal sites allow searching of all Madrigal sites at once
|
||||
from any Madrigal site.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-mapsims
|
||||
(package
|
||||
(name "python-mapsims")
|
||||
@@ -6970,6 +7155,44 @@ Astronomy.")
|
||||
"Orbital is a high level orbital mechanics package for Python.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-p-winds
|
||||
(package
|
||||
(name "python-p-winds")
|
||||
(version "1.4.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ladsantos/p-winds")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0z94nvx47v50c7nq20kny49cr2w2xszvijy9bfxp2dbgq49ip244"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;network access is required to fetch test data
|
||||
(native-inputs
|
||||
(list python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-astropy
|
||||
python-flatstar
|
||||
python-numpy
|
||||
python-scipy))
|
||||
(home-page "https://github.com/ladsantos/p-winds")
|
||||
(synopsis "Parker wind models for planetary atmospheres")
|
||||
(description
|
||||
"Python implementation of Parker wind models for planetary atmospheres.
|
||||
@code{p-winds} produces simplified, 1-D models of the upper atmosphere of a
|
||||
planet, and perform radiative transfer to calculate observable spectral
|
||||
signatures.
|
||||
|
||||
The scalable implementation of 1D models allows for atmospheric retrievals to
|
||||
calculate atmospheric escape rates and temperatures. In addition, the modular
|
||||
implementation allows for a smooth plugging-in of more complex descriptions to
|
||||
forward model their corresponding spectral signatures (e.g., self-consistent
|
||||
or 3D models).")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-petrofit
|
||||
(package
|
||||
(name "python-petrofit")
|
||||
@@ -8013,6 +8236,114 @@ data. Pysat's plug-in design allows analysis support for any data, including
|
||||
user provided data sets.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-pysatmadrigal
|
||||
(package
|
||||
(name "python-pysatmadrigal")
|
||||
(version "0.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pysat/pysatMadrigal")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1x1sbx9xv9h1p85cryn2b9kbnxy0kb9xzfgxcvfrpfxa5ji4qwcp"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; ValueError: unable to open url http://cedar.openmadrigal.org
|
||||
#~(list "-k" "not test_download and not test_remote_file_list")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'sanity-check 'set-HOME
|
||||
(lambda _
|
||||
(setenv "HOME" "/tmp")))
|
||||
(add-before 'check 'pre-check
|
||||
(lambda _
|
||||
(mkdir "pysatData")
|
||||
(invoke "python" "-c"
|
||||
"import pysat; pysat.params['data_dirs'] = 'pysatData'"))))))
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-pytest-cov ;remove after pyton-team is merged
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-h5py
|
||||
python-madrigalweb
|
||||
python-numpy
|
||||
python-packaging
|
||||
python-pandas
|
||||
python-pysat
|
||||
python-xarray))
|
||||
(home-page "https://github.com/pysat/pysatMadrigal")
|
||||
(synopsis "Madrigal instrument support for the pysat ecosystem")
|
||||
(description
|
||||
"This package provides functions to import data from the
|
||||
@url{https://cedar.openmadrigal.org/, Madrigal} database (upper atmospheric
|
||||
science database) into pysat.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-pysatspaceweather
|
||||
(package
|
||||
(name "python-pysatspaceweather")
|
||||
(version "0.2.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pysat/pysatSpaceWeather")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0gd6vzy2ikgkrff94qg52pysf1vp7h1p12p8in9j6f6n3cs1b0z2"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests: 352 passed, 561 skipped, 61 deselected, 2510 warnings
|
||||
#:test-flags
|
||||
#~(list "-m" "not remote_data"
|
||||
;; Network access is required.
|
||||
"-k" (string-join
|
||||
(list "not test_download"
|
||||
"test_historic_ace_no_data"
|
||||
"test_historic_download_past_limit"
|
||||
"test_missing_kp_file"
|
||||
"test_missing_prelim_file"
|
||||
"test_realtime_ace_bad_day"
|
||||
;; KeyError: 'f107'
|
||||
"test_45day_forecast_data_length")
|
||||
" and not "))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'sanity-check 'set-HOME
|
||||
(lambda _
|
||||
(setenv "HOME" "/tmp")))
|
||||
(add-before 'check 'pre-check
|
||||
(lambda _
|
||||
(mkdir "pysatData")
|
||||
(invoke "python" "-c"
|
||||
"import pysat; pysat.params['data_dirs'] = 'pysatData'"))))))
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-netcdf4
|
||||
python-numpy
|
||||
python-packaging
|
||||
python-pandas
|
||||
python-pysat
|
||||
python-requests
|
||||
python-xarray))
|
||||
(home-page "https://github.com/pysat/pysatSpaceWeather")
|
||||
(synopsis "Pysat support for Space Weather Indices")
|
||||
(description
|
||||
"This package provides pysatSpaceWeather - a Python module, which
|
||||
contains routines to load common historic, real-time, and forecasted space
|
||||
weather indices as pysat.Instrument objects.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-pysiaf
|
||||
(package
|
||||
(name "python-pysiaf")
|
||||
@@ -8188,6 +8519,59 @@ experiments. It is a large refactor of
|
||||
memory usage, improving performance and run in parallel with MPI.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-pyspedas
|
||||
(package
|
||||
(name "python-pyspedas")
|
||||
(version "2.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/spedas/pyspedas")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "12fdqf45rxwcsy72vbfwrzmd03zlcan62bawq966rcmqs1riwqwn"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; XXX: Netowrk access is required and set up of geopack.
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'sanity-check 'set-HOME
|
||||
(lambda _
|
||||
(setenv "HOME" "/tmp"))))))
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-aioboto3
|
||||
python-astropy
|
||||
python-cdasws
|
||||
python-cdflib
|
||||
python-fsspec
|
||||
python-geopack
|
||||
python-hapiclient
|
||||
python-matplotlib
|
||||
python-netcdf4
|
||||
python-numpy
|
||||
python-pandas
|
||||
python-pywavelets
|
||||
python-requests
|
||||
python-s3fs
|
||||
python-scipy
|
||||
python-setuptools
|
||||
python-spacepy
|
||||
python-xarray))
|
||||
(home-page "https://spedas.org")
|
||||
(synopsis "Python Space Physics Environment Data Analysis Software")
|
||||
(description
|
||||
"The Python-based Space Physics Environment Data Analysis Software
|
||||
(PySPEDAS) framework supports multi-mission, multi-instrument retrieval,
|
||||
analysis, and visualization of heliophysics time series data.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-pysynphot
|
||||
;; XXX: 2.0.0 was released in 2021 there are a lot of changes since that
|
||||
;; time and it failed to build with python-astropy 6.0.0, use the latest
|
||||
@@ -9402,6 +9786,67 @@ Computing Cluster, HPCC}
|
||||
@end itemize")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-spacepy
|
||||
(package
|
||||
(name "python-spacepy")
|
||||
(version "0.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/spacepy/spacepy")
|
||||
(commit (string-append "release-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1i9657j4qll3f8z20n9md93yh35n0vjj32k522bdqxq5pda8dng0"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests:
|
||||
#:test-flags
|
||||
#~(list "--ignore=developer/"
|
||||
;; Tests depend on https://cdf.gsfc.nasa.gov/.
|
||||
"--ignore=tests/test_all.py"
|
||||
"--ignore=tests/test_coordinates.py"
|
||||
"--ignore=tests/test_datamodel.py"
|
||||
"--ignore=tests/test_irbempy.py"
|
||||
"--ignore=tests/test_pycdf.py"
|
||||
"--ignore=tests/test_pycdf_istp.py"
|
||||
"--ignore=tests/test_time.py"
|
||||
;; AssertionError: Lists differ: ['[sp[38 chars]cePy UNRELEASED
|
||||
;; default test entry: value\n', [38 chars]]\n'] != ['[sp[38
|
||||
;; chars]cePy 0.7.0 default test entry: value\n', '#tes[33
|
||||
;; chars]]\n']
|
||||
(string-append "--deselect=tests/test_base.py::"
|
||||
"SpacepyConfigTests::"
|
||||
"testWriteDefaultsMultipleSections"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'sanity-check 'set-HOME
|
||||
(lambda _
|
||||
(setenv "HOME" "/tmp")))
|
||||
(add-before 'check 'remove-local-source
|
||||
(lambda _
|
||||
(delete-file-recursively "spacepy"))))))
|
||||
(native-inputs
|
||||
(list gfortran
|
||||
python-pytest
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-astropy
|
||||
python-h5py
|
||||
python-matplotlib
|
||||
python-numpy
|
||||
python-dateutil
|
||||
python-scipy))
|
||||
(home-page "https://github.com/spacepy/spacepy")
|
||||
(synopsis "Tools for Space Science Applications")
|
||||
(description
|
||||
"SpacePy is a package for Python, targeted at the space sciences, that
|
||||
aims to make basic data analysis, modeling and visualization easier. It
|
||||
builds on the capabilities of NumPy and MatPlotLib packages.")
|
||||
(license license:psfl)))
|
||||
|
||||
(define-public python-spacetrack
|
||||
(package
|
||||
(name "python-spacetrack")
|
||||
@@ -11675,7 +12120,7 @@ deconvolution). Such post-processing is not performed by Stackistry.")
|
||||
(define-public stellarium
|
||||
(package
|
||||
(name "stellarium")
|
||||
(version "25.4")
|
||||
(version "26.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -11684,16 +12129,12 @@ deconvolution). Such post-processing is not performed by Stackistry.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "085ip706z3jsjgyp114h9x8sl7g947mrfrhgckrk86fmajwia3hc"))))
|
||||
(base32 "05c36v2cyvxdvh4wyapdgc642khnldnbpzad76ql738894ga5djk"))))
|
||||
(build-system qt-build-system)
|
||||
;; TODO: Complete documentation build and split into dedicated outputs.
|
||||
(arguments
|
||||
(list
|
||||
;; FIXME: Tests keep failing on 100% when preparing test-suit for INDI.
|
||||
#:tests? #f
|
||||
#:configure-flags
|
||||
#~(list "-DENABLE_GPS=1"
|
||||
"-DENABLE_TESTING=0"
|
||||
#~(list "-DENABLE_TESTING=ON"
|
||||
(string-append "-DCMAKE_CXX_FLAGS=-isystem "
|
||||
#$(this-package-input "qtpositioning") "/include/qt6"
|
||||
" -isystem "
|
||||
@@ -11720,6 +12161,7 @@ deconvolution). Such post-processing is not performed by Stackistry.")
|
||||
qtmultimedia
|
||||
qtpositioning
|
||||
qtserialport
|
||||
qtsvg
|
||||
qttranslations
|
||||
qtwayland
|
||||
qtwebengine
|
||||
@@ -11734,12 +12176,11 @@ deconvolution). Such post-processing is not performed by Stackistry.")
|
||||
python-wrapper
|
||||
qttools))
|
||||
(home-page "https://stellarium.org/")
|
||||
(synopsis "3D sky viewer")
|
||||
(synopsis "Planetarium and 3D sky viewer")
|
||||
(description
|
||||
"Stellarium is a planetarium. It shows a realistic sky in
|
||||
3D, just like what you see with the naked eye, binoculars, or a telescope. It
|
||||
can be used to control telescopes over a serial port for tracking celestial
|
||||
objects.")
|
||||
"Stellarium shows a realistic sky in 3D, just like what you see with the
|
||||
naked eye, binoculars, or a telescope. It can be used to control telescopes
|
||||
over a serial port for tracking celestial objects.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public stiff
|
||||
@@ -12047,7 +12488,7 @@ See related paper
|
||||
(define-public tenmon
|
||||
(package
|
||||
(name "tenmon")
|
||||
(version "20260217")
|
||||
(version "20260412")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -12056,7 +12497,7 @@ See related paper
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "07hiqr6jxmbw2dasbmyvcjmfxw4hjsn7xp269irjgfijsf8ga68n"))))
|
||||
(base32 "0ba7hnkskmr2rydy9rvf3c5cs401bv80qhs32sw5r43kdlpvlaxx"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -12266,7 +12707,7 @@ traveling to a star 100 light years away looks like.")
|
||||
(define-public wcslib
|
||||
(package
|
||||
(name "wcslib")
|
||||
(version "8.5")
|
||||
(version "8.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -12274,7 +12715,7 @@ traveling to a star 100 light years away looks like.")
|
||||
"wcslib-releases/"
|
||||
"wcslib-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "1kpacbh6zrci44qab0jllkn3a9z3b465w17qcfivvfpxzdw1pzgi"))
|
||||
(base32 "0nndcz82qvfx3hhhw0bylyrydnc23a8bqhp71w4yz6d10lv44c70"))
|
||||
(snippet
|
||||
#~(begin (use-modules (guix build utils))
|
||||
(delete-file-recursively "C/flexed")))))
|
||||
|
||||
+198
-3
@@ -784,7 +784,7 @@ reading the extensive documentation about BookmarkPlus on the Emacs Wiki.")
|
||||
(package
|
||||
(name "emacs-bqn-mode")
|
||||
;; Upstream releases are tagged by date.
|
||||
(version "2025-07-06")
|
||||
(version "2026-02-08")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -793,7 +793,7 @@ reading the extensive documentation about BookmarkPlus on the Emacs Wiki.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1b25k66nn4qa4ryhm8mzc53qvsvhgjzdngisw28cpdh109627iz3"))))
|
||||
(base32 "1m9l4if3a9i6r76v370gh6azgj2lwqcnpavfv2bkvm9ad56f3pa8"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;No tests found in source.
|
||||
@@ -24580,6 +24580,13 @@ Meow’s motions.")
|
||||
#:tests? #f ; no test suite
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'patch-el-files 'patch-xauth-path
|
||||
;; Uses xauth directly at runtime to authenticate with the X server.
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "xcb.el"
|
||||
(("xauth list")
|
||||
(string-append (search-input-file inputs "/bin/xauth")
|
||||
" list")))))
|
||||
(add-after 'expand-load-path 'regenerate-el-files
|
||||
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
||||
(substitute* "xelb-gen"
|
||||
@@ -24587,6 +24594,7 @@ Meow’s motions.")
|
||||
(invoke "make"
|
||||
(format #f "PROTO_PATH=~a/share/xcb"
|
||||
#$(this-package-native-input "xcb-proto"))))))))
|
||||
(inputs (list xauth))
|
||||
(native-inputs (list xcb-proto))
|
||||
(propagated-inputs (list emacs-compat))
|
||||
(home-page "https://github.com/emacs-exwm/xelb")
|
||||
@@ -35412,12 +35420,199 @@ files are easily readable and they work nicely with version control systems.")
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list #:include #~(cons "^data\\/" %default-include)
|
||||
#:tests? #f)) ; no tests
|
||||
#:tests? #f ; no tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; The nerd-icons-install-fonts function would otherwise
|
||||
;; download fonts from the network. Replace it with a stub
|
||||
;; that instructs the user to install the font via Guix.
|
||||
(add-after 'unpack 'disable-font-installer
|
||||
(lambda _
|
||||
(emacs-batch-edit-file "nerd-icons.el"
|
||||
'(progn
|
||||
(search-forward "(defun nerd-icons-install-fonts")
|
||||
(beginning-of-line)
|
||||
(kill-sexp)
|
||||
(insert "\
|
||||
(defun nerd-icons-install-fonts (&optional pfx)
|
||||
(interactive \"P\")
|
||||
(message \"To use nerd-icons fonts, install `font-nerd-symbols' using
|
||||
`guix package -i font-nerd-symbols' or add it to your manifest or home config.
|
||||
Remember, that you may have to run `fc-cache -rv' to refresh the font cache.\
|
||||
\"))")
|
||||
(basic-save-buffer))))))))
|
||||
(synopsis "Library for easily using nerd font icons inside Emacs")
|
||||
(description "Nerd-icons an alternative to all-the-icons. It works on both
|
||||
GUI and terminal, and requires a nerd font installed on your system.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-nerd-icons-dired
|
||||
;; No tags provided upstream
|
||||
(let ((commit "adf9a2bb5f3f13be7a676923639337f3fcc5d8c3")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-nerd-icons-dired")
|
||||
(version (git-version "0.0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/rainstormstudio/nerd-icons-dired")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0x1xmwlfjgbk5kk4bxvgz4ykwwgiwmdbzhgsw49kpzz678a3qzrp"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;no tests
|
||||
(propagated-inputs (list emacs-nerd-icons))
|
||||
(home-page "https://github.com/rainstormstudio/nerd-icons-dired")
|
||||
(synopsis "Icons for Dired via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to Dired, using the @code{nerd-icons} package.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-nerd-icons-ivy-rich
|
||||
;; Tagged release is not up-to-date, according to the "Version:" keyword in
|
||||
;; main file.
|
||||
(let ((commit "5006f91b49e86e232cdc1a628501b76124c41dac")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-nerd-icons-ivy-rich")
|
||||
(version (git-version "1.0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/seagle0128/nerd-icons-ivy-rich")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0m62l4cl9j3ssd25rz40vgrv99bmwn6l4ig2sf8zzi0fpzm8axgh"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;tests require Cask
|
||||
(propagated-inputs
|
||||
(list emacs-ivy-rich
|
||||
emacs-nerd-icons))
|
||||
(home-page "https://github.com/seagle0128/nerd-icons-ivy-rich")
|
||||
(synopsis "Icons for Ivy via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to Ivy, using the @code{ivy-rich} and
|
||||
@code{nerd-icons} packages.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-nerd-icons-ibuffer
|
||||
(package
|
||||
(name "emacs-nerd-icons-ibuffer")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/seagle0128/nerd-icons-ibuffer")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1wj6kcgvh700maj9i5pmgzc48lbj0dbxx849a8w519m4anr7b23s"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;tests require Cask
|
||||
(propagated-inputs
|
||||
(list emacs-nerd-icons))
|
||||
(home-page "https://github.com/seagle0128/nerd-icons-ibuffer")
|
||||
(synopsis "Icons for Ibuffer via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to ibuffer in Emacs, using the @code{nerd-icons}
|
||||
package.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-nerd-icons-completion
|
||||
;; No tags provided upstream
|
||||
(let ((commit "63a6b3f1eb98bb381c86a1658ac401c8967079b8")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-nerd-icons-completion")
|
||||
(version (git-version "0.0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/rainstormstudio/nerd-icons-completion")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "08p361rh5mv3ng10av1381kzl9s4msdjyca96hsgsh05qwq5pdrf"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;no tests
|
||||
(propagated-inputs (list emacs-nerd-icons))
|
||||
(home-page "https://github.com/rainstormstudio/nerd-icons-completion")
|
||||
(synopsis "Icons for Emacs minibuffer completion via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to minibuffer completion in Emacs, using the
|
||||
@code{nerd-icons} package. It supports @code{vertico} and @code{marginalia}.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-nerd-icons-corfu
|
||||
(package
|
||||
(name "emacs-nerd-icons-corfu")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/LuigiPiucco/nerd-icons-corfu")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "036p45wqwrqhn5xv5sn3gsm2mb79gj6fk24zpkfa7wrv45qqgb21"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;no tests
|
||||
(propagated-inputs
|
||||
(list emacs-corfu
|
||||
emacs-nerd-icons))
|
||||
(home-page "https://github.com/LuigiPiucco/nerd-icons-corfu")
|
||||
(synopsis "Icons for Corfu via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to @code{corfu}, using the @code{nerd-icons}
|
||||
package.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-nerd-icons-mode-line
|
||||
;; No tags provided upstream
|
||||
(let ((commit "23eca8e16799524889d661f4140355e81b8f929c")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-nerd-icons-mode-line")
|
||||
(version (git-version "0.0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/grolongo/nerd-icons-mode-line")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0l2bg22cllab9wz5wxd6zhrywavqrlvv1a6y49ij63qhlsfncy6s"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;no tests
|
||||
(propagated-inputs (list emacs-nerd-icons))
|
||||
(home-page "https://github.com/grolongo/nerd-icons-mode-line")
|
||||
(synopsis "Icons for the Emacs modeline via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to the modeline in Emacs, using the
|
||||
@code{nerd-icons} package.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-all-the-icons
|
||||
;; The latest release was on 3 June 2021.
|
||||
(let ((commit "4778632b29c8c8d2b7cd9ce69535d0be01d846f9")
|
||||
|
||||
@@ -1219,20 +1219,23 @@ readily with other Python GIS packages such as pyproj, Rtree, and Shapely.")
|
||||
(define-public python-geopack
|
||||
(package
|
||||
(name "python-geopack")
|
||||
(version "1.0.10")
|
||||
(version "1.0.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "geopack" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tsssss/geopack")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0mryjp7m4h99qlpvnn40s81sygr73qcv8rkmjp9pcli1gz829kjf"))))
|
||||
(base32 "0ap5j4359xxjkbz06y097yq5d37sxcwlnlsfwrv6dvza7ydmgcgg"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; XXX Reported upstream <https://github.com/tsssss/geopack/issues/21>.
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
(list python-pytest python-setuptools python-wheel))
|
||||
(list python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-numpy python-scipy))
|
||||
(home-page "https://github.com/tsssss/geopack")
|
||||
|
||||
@@ -2598,6 +2598,92 @@ of Evince is to replace the multiple document viewers that exist
|
||||
on the GNOME Desktop with a single simple application.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public papers
|
||||
(package
|
||||
(name "papers")
|
||||
(version "50.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/papers/"
|
||||
(version-major version) "/"
|
||||
"papers-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "01dws72fb19i9jwp3r0khr7ym2ns51fifdzafb5dcr5w8vmj06rh"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:glib-or-gtk? #t
|
||||
#:configure-flags
|
||||
#~(list (string-append "-Dc_link_args=-Wl,-rpath=" #$output "/lib"))
|
||||
#:imported-modules `(,@%meson-build-system-modules
|
||||
,@%cargo-build-system-modules)
|
||||
#:modules `(((guix build cargo-build-system) #:prefix cargo:)
|
||||
(guix build meson-build-system)
|
||||
(guix build utils))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'prepare-for-build
|
||||
(lambda _
|
||||
(substitute* "meson.build"
|
||||
(("gtk_update_icon_cache: true")
|
||||
"gtk_update_icon_cache: false")
|
||||
(("update_desktop_database: true")
|
||||
"update_desktop_database: false"))
|
||||
(substitute* "meson.build"
|
||||
(("'Cargo.lock',")
|
||||
""))
|
||||
(delete-file "Cargo.lock")))
|
||||
(add-after 'configure 'prepare-cargo-build-system
|
||||
(lambda args
|
||||
(for-each
|
||||
(lambda (phase)
|
||||
(format #t "Running cargo phase: ~a~%" phase)
|
||||
(apply (assoc-ref cargo:%standard-phases phase)
|
||||
#:vendor-dir "vendor"
|
||||
#:cargo-target #$(cargo-triplet)
|
||||
args))
|
||||
'(unpack-rust-crates
|
||||
configure
|
||||
check-for-pregenerated-files
|
||||
patch-cargo-checksums))
|
||||
|
||||
(setenv "RUSTFLAGS"
|
||||
(string-append (or (getenv "RUSTFLAGS") "")
|
||||
" -C link-arg=-Wl,-rpath,"
|
||||
#$output "/lib")))))))
|
||||
(native-inputs
|
||||
(cons* blueprint-compiler
|
||||
gettext-minimal
|
||||
`(,glib "bin")
|
||||
gobject-introspection
|
||||
gi-docgen
|
||||
itstool
|
||||
pkg-config
|
||||
rust
|
||||
`(,rust "cargo")
|
||||
(or (and=> (%current-target-system)
|
||||
(compose list make-rust-sysroot))
|
||||
'())))
|
||||
(inputs
|
||||
(cons* appstream
|
||||
djvulibre
|
||||
exempi
|
||||
gtk
|
||||
libadwaita
|
||||
libarchive
|
||||
libspelling
|
||||
libtiff
|
||||
nautilus ; for nautilus extension
|
||||
poppler-next
|
||||
zlib
|
||||
(cargo-inputs 'papers)))
|
||||
(home-page "https://apps.gnome.org/Papers")
|
||||
;; TODO: drop “new” when updating to GNOME 49 or newer.
|
||||
(synopsis "GNOME's new document viewer")
|
||||
(description "Papers is a document viewer capable of displaying multiple
|
||||
and single page document formats like PDF and DejaVu.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public gsettings-desktop-schemas
|
||||
(package
|
||||
(name "gsettings-desktop-schemas")
|
||||
|
||||
@@ -48,6 +48,34 @@
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (ice-9 match))
|
||||
|
||||
(define-public fsviewer
|
||||
(package
|
||||
(name "fsviewer")
|
||||
(version "0.2.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/roblillack/fsviewer")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32
|
||||
"067fvbq7b4lbnn1flmwf8lm0vq4n6qz5yz6hhab30l4gksfk51cg"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments (list #:tests? #f)) ;no tests
|
||||
(inputs
|
||||
(list windowmaker libxmu libxpm))
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(home-page "https://github.com/roblillack/fsviewer")
|
||||
(synopsis "File viewer for Window Maker")
|
||||
(description "FSViewer is a NeXT FileViewer lookalike for Window
|
||||
Maker supporting browser mode and list mode. This version is a fork of
|
||||
FSViewer.app originally written by George Clernon (1998-99) and later
|
||||
maintained by Guido Scholz (2002-07).")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public gnustep-make
|
||||
(package
|
||||
(name "gnustep-make")
|
||||
|
||||
@@ -5790,7 +5790,7 @@ processing filters.")
|
||||
(define-public guile-pnm
|
||||
(package
|
||||
(name "guile-pnm")
|
||||
(version "0.1.0")
|
||||
(version "0.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -5799,7 +5799,7 @@ processing filters.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1yvsni4hll20g99zq4wl734f9i8gpjr1sqsnk3a93k2dd7b6ymac"))))
|
||||
(base32 "06kgp1gh8hdj1j6w7i981prx93wfjpayrnjlydlzs7l5j04l4m3a"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
@@ -4914,7 +4914,7 @@ transparently through a bridge.")
|
||||
(define-public libnl
|
||||
(package
|
||||
(name "libnl")
|
||||
(version "3.7.0")
|
||||
(version "3.12.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -4923,7 +4923,7 @@ transparently through a bridge.")
|
||||
"/libnl-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0faryrbvp0x4s2zhg5d78vd5q4w34lrr736gpm9wcwpaxv5krr4z"))))
|
||||
"066xq01y2mx0xi7bwa5y6ciw1ygla15qdlzzyvyzb8zijrqwllgw"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("bison" ,bison)
|
||||
@@ -4938,7 +4938,7 @@ transparently through a bridge.")
|
||||
(string-join (string-split version #\.) "_")
|
||||
"/libnl-doc-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1ra8xdf06q9hlsrnc1yz67xkp4kd9sd27ff02mlixixnyyjp32sp"))))))
|
||||
(base32 "18f14pdycghy6fcd27faqgh19zpam6b45s8bgsk85kb9wwzq3yd4"))))))
|
||||
(outputs `("out" "doc"))
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
||||
@@ -3995,6 +3995,45 @@ addition it can be used as a module in Python for plotting. It supports
|
||||
vector and bitmap output, including PDF, Postscript, SVG and EMF.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public voro++
|
||||
(package
|
||||
(name "voro++")
|
||||
(version "0.4.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://math.lbl.gov/" name "/download/dir/"
|
||||
name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0zj3xbrqf8sm49yhypy23k3w9786r94kcwm8v803ikp23q3p0ygg"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;no tests
|
||||
#:make-flags #~(list (string-append "PREFIX=" #$output))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure)))) ;no configure
|
||||
(home-page "https://math.lbl.gov/voro++/")
|
||||
(synopsis "C++ library for the computation of the Voronoi diagram")
|
||||
(description
|
||||
"Voro++ is a software library for carrying out three-dimensional
|
||||
computations of the Voronoi tessellation. A distinguishing feature of the
|
||||
Voro++ library is that it carries out cell-based calculations, computing the
|
||||
Voronoi cell for each particle individually. It is particularly well-suited
|
||||
for applications that rely on cell-based statistics, where features of Voronoi
|
||||
cells (eg. volume, centroid, number of faces) can be used to analyze a system
|
||||
of particles.
|
||||
|
||||
Voro++ comprises of several C++ classes that can be built as a static library.
|
||||
A command-line utility is also provided that can use most features of the
|
||||
code. The direct cell-by-cell construction makes the library particularly
|
||||
well-suited to handling special boundary conditions and walls. It employs
|
||||
algorithms that are tolerant for numerical precision errors, it exhibits high
|
||||
performance, and it has been successfully employed on very large particle
|
||||
systems.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public maxflow
|
||||
(package
|
||||
(name "maxflow")
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -265,15 +265,11 @@
|
||||
amal.flags = -nc
|
||||
amal.run = TOPDIR="$(DIR.top)" $(SHELL.bash) $(bin.make-amal) --quiet
|
||||
|
||||
libfossil.c: $(amal.deps)
|
||||
$(amal.run) $(amal.flags)
|
||||
-libfossil.h: libfossil.c
|
||||
-all: libfossil.c
|
||||
@if ENABLE_CXX
|
||||
-libfossil.hpp: libfossil.c
|
||||
-libfossil.c++: libfossil.c
|
||||
amal.flags += -c++
|
||||
@endif
|
||||
|
||||
.PHONY: amal
|
||||
amal: libfossil.c
|
||||
@@ -287,19 +283,16 @@
|
||||
fossil uv sync
|
||||
@endif
|
||||
@endif
|
||||
|
||||
install: install-headers
|
||||
-install-headers: libfossil.h $(install-dir.include)
|
||||
- $(INSTALL.noexec) libfossil.h $(install-dir.include)
|
||||
+install-headers: include/libfossil.h $(install-dir.include)
|
||||
+ $(INSTALL.noexec) $< $(install-dir.include)
|
||||
@if ENABLE_CXX
|
||||
-libfossil++.hpp: libfossil.h
|
||||
-libfossil++.cpp: libfossil++.hpp
|
||||
-all: libfossil++.cpp
|
||||
install-headers: install-headers++
|
||||
-install-headers++: libfossil++.hpp $(install-dir.include)
|
||||
- $(INSTALL.noexec) libfossil++.hpp $(install-dir.include)
|
||||
+install-headers++: include/libfossil.hpp $(install-dir.include)
|
||||
+ $(INSTALL.noexec) $< $(install-dir.include)
|
||||
@endif # ENABLE_CXX
|
||||
clean: clean-amalgamation
|
||||
clean-amalgamation:
|
||||
rm -f libfossil.c libfossil.h libfossil++.cpp libfossil++.hpp
|
||||
rm -f libfossil-config.h libfossil-amalgamation.zip VERSION.h
|
||||
|
||||
@@ -472,6 +472,34 @@ Poppler gives access to the following binary programs:
|
||||
(license license:gpl2+)
|
||||
(home-page "https://poppler.freedesktop.org/")))
|
||||
|
||||
(define-public poppler-next
|
||||
(package
|
||||
(inherit poppler)
|
||||
(name "poppler-next")
|
||||
(version "26.04.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://poppler.freedesktop.org/poppler-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"14q69q6ipy3m4ywdhlr48qlscwzrv8jcns3g2306pyaa25im35dh"))))
|
||||
(arguments (substitute-keyword-arguments arguments
|
||||
((#:configure-flags flags)
|
||||
#~(cons*
|
||||
"-DENABLE_GPGME=OFF"
|
||||
"-DENABLE_QT5=OFF"
|
||||
"-DENABLE_QT6=OFF"
|
||||
#$flags))
|
||||
((#:phases phases)
|
||||
#~(modify-phases #$phases
|
||||
(add-after 'install 'sanitize-pkg-config-files
|
||||
(lambda _
|
||||
(substitute* (find-files #$output "\\.pc$")
|
||||
(("^Requires.private:.*" all)
|
||||
(string-append "# " all)))))))))
|
||||
(inputs (modify-inputs inputs (prepend curl)))))
|
||||
|
||||
(define-public poppler-data
|
||||
(package
|
||||
(name "poppler-data")
|
||||
|
||||
@@ -167,6 +167,46 @@
|
||||
#:use-module (guix utils)
|
||||
#:use-module (srfi srfi-1))
|
||||
|
||||
(define-public python-aioboto3
|
||||
(package
|
||||
(name "python-aioboto3")
|
||||
(version "15.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/terricain/aioboto3")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05644x17f9sl8mv9bp8l0rjcmw5x2ssyd5z1v3xmgcspk5qs6qn8"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;XXX: all tests faild
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'relax-requirements
|
||||
(lambda _
|
||||
(substitute* "pyproject.toml"
|
||||
(("aiobotocore\\[boto3\\]==2.25.1")
|
||||
"aiobotocore >= 2.25.1")))))))
|
||||
(native-inputs
|
||||
(list python-setuptools
|
||||
python-setuptools-scm))
|
||||
(propagated-inputs
|
||||
(list python-aiobotocore
|
||||
python-aiofiles
|
||||
;; [optional]
|
||||
python-boto3
|
||||
python-cryptography))
|
||||
(home-page "https://github.com/terricain/aioboto3")
|
||||
(synopsis "Async boto3 wrapper")
|
||||
(description
|
||||
"This package is mostly just a wrapper combining the great work of boto3
|
||||
and aiobotocore.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-aiocoap
|
||||
(package
|
||||
(name "python-aiocoap")
|
||||
|
||||
@@ -9353,6 +9353,10 @@
|
||||
(crate-source "form_urlencoded" "1.2.2"
|
||||
"1kqzb2qn608rxl3dws04zahcklpplkd5r1vpabwga5l50d2v4k6b"))
|
||||
|
||||
(define rust-formatx-0.2.4
|
||||
(crate-source "formatx" "0.2.4"
|
||||
"02m0alndynacid8j6hx7iwpliq13szfhj6xfldzwhgzm72n6z1nq"))
|
||||
|
||||
(define rust-four-cc-0.4.0
|
||||
(crate-source "four-cc" "0.4.0"
|
||||
"0acnincbs26yjzkmdhw3q22c9dx5v56m1dybgkj7r6j1dp2vyp3r"))
|
||||
@@ -10040,6 +10044,18 @@
|
||||
(crate-source "genetlink" "0.2.5"
|
||||
"17q7zlmp95fx28zjkzh69g6d5q6rm2a3dkj7yy5jk8gsq5v0128z"))
|
||||
|
||||
(define rust-geo-0.30.0
|
||||
(crate-source "geo" "0.30.0"
|
||||
"1q82kvy988axk2jndfd9xblj42phyha9gnbs7sd7x6fqf5v3j5j4"))
|
||||
|
||||
(define rust-geo-types-0.7.18
|
||||
(crate-source "geo-types" "0.7.18"
|
||||
"0b58y1467yvxbqsvzgcpzbl0n0zgqr965mbwlhfs2pq0yix69y14"))
|
||||
|
||||
(define rust-geographiclib-rs-0.2.5
|
||||
(crate-source "geographiclib-rs" "0.2.5"
|
||||
"0hbqkaxb2hld74kswrkf1cza0y53j8g8s4lalwlslzmk5c5084gn"))
|
||||
|
||||
(define rust-get-size-derive2-0.6.2
|
||||
(crate-source "get-size-derive2" "0.6.2"
|
||||
"1q3l3q3x3nas1qfkglccm9v49rgg0cn7hq7d9llyickqchi7m8bm"))
|
||||
@@ -14479,6 +14495,26 @@
|
||||
(crate-source "hyprland-macros" "0.3.4"
|
||||
"1sz4yhwi7d1s2wfpk9ql43dgmiq0j3j8skmrijpi55lp5vax6hf9"))
|
||||
|
||||
(define rust-i-float-1.7.0
|
||||
(crate-source "i_float" "1.7.0"
|
||||
"0hw33gz4441yl9x2q7vkipmdrj406svwf5i4vigrbfr9d10kmpw5"))
|
||||
|
||||
(define rust-i-key-sort-0.2.0
|
||||
(crate-source "i_key_sort" "0.2.0"
|
||||
"1kczb6y1523izrdf0mriaw46y5kb7c9wxjclmy5s58a88wxjaz1l"))
|
||||
|
||||
(define rust-i-overlay-2.0.5
|
||||
(crate-source "i_overlay" "2.0.5"
|
||||
"0jgfbk1jm95210d4p5qv7svpy55n4l3cqgd0fhhx9zaa33pxyhh5"))
|
||||
|
||||
(define rust-i-shape-1.7.0
|
||||
(crate-source "i_shape" "1.7.0"
|
||||
"1khv16yyvkp43pvrilpfd9vjkcbr1r56skwjzwc6fwkq4sjgaf0a"))
|
||||
|
||||
(define rust-i-tree-0.8.3
|
||||
(crate-source "i_tree" "0.8.3"
|
||||
"0f8ic0myw6k6jvkl5rjviqmfk7m1309aaza7z4f1hw6pjyy82l8m"))
|
||||
|
||||
(define rust-i18n-config-0.4.7
|
||||
(crate-source "i18n-config" "0.4.7"
|
||||
"1j89hnd1d2zqfb1s9jgcd5vzf5a9iisfc18v324mpgn06540g24f"))
|
||||
@@ -15210,6 +15246,10 @@
|
||||
(crate-source "inherent" "1.0.13"
|
||||
"19zv61fmn71kwmdd33nq1c1l5qpw9dpmpw6j10jnwv2az85zh9y7"))
|
||||
|
||||
(define rust-ink-stroke-modeler-rs-0.1.0
|
||||
(crate-source "ink-stroke-modeler-rs" "0.1.0"
|
||||
"1mmxi6w0b6r6imiggzdk0bi77cwpadpgf57xzkl45kdbsmk3077x"))
|
||||
|
||||
(define rust-inkwell-0.2.0
|
||||
(crate-source "inkwell" "0.2.0"
|
||||
"1hb9wdh6hfr8shdnx3hda2mrb2vgglqyc94f2ysggf509x5cnkrz"))
|
||||
@@ -25251,6 +25291,10 @@
|
||||
"0yqy3h6c13c73519bnwzmiv9nzxyl7sajl6n4q3lvnc4l77x5s0r"
|
||||
#:snippet '(delete-file-recursively "tests")))
|
||||
|
||||
(define rust-robust-1.2.0
|
||||
(crate-source "robust" "1.2.0"
|
||||
"0fcqw67hgs1k9parr6rbkhzkjbd1my9n44fb1v7sv80wp65yw9sf"))
|
||||
|
||||
(define rust-rocket-0.5.1
|
||||
(crate-source "rocket" "0.5.1"
|
||||
"0gypf9z6s0kshv33qq1vf16raw8xnr1p03ii0kfgf7d3jrr905m5"))
|
||||
@@ -25418,6 +25462,10 @@
|
||||
(crate-source "rsqlite-vfs" "0.1.0"
|
||||
"0kap86yzwl355byfs891185h723nxvl746fdp8gnpvrna0qz58d8"))
|
||||
|
||||
(define rust-rstar-0.12.2
|
||||
(crate-source "rstar" "0.12.2"
|
||||
"1fsx2z2l6nq2fd95g9yvw1a9qvypllq9q6aqb3x6vlng7k8h0522"))
|
||||
|
||||
(define rust-rstest-0.19.0
|
||||
(crate-source "rstest" "0.19.0"
|
||||
"0c43nsxpm1b74jxc73xwg94is6bwqvfzkrr1xbqyx7j7l791clwx"))
|
||||
@@ -67177,6 +67225,279 @@
|
||||
rust-zstd-0.13.3
|
||||
rust-zstd-safe-7.2.4
|
||||
rust-zstd-sys-2.0.15+zstd.1.5.7))
|
||||
(papers =>
|
||||
(list rust-adler2-2.0.1
|
||||
rust-aes-0.8.4
|
||||
rust-aho-corasick-1.1.4
|
||||
rust-allocator-api2-0.2.21
|
||||
rust-anstream-0.6.21
|
||||
rust-anstyle-1.0.13
|
||||
rust-anstyle-parse-0.2.7
|
||||
rust-anstyle-query-1.1.5
|
||||
rust-anstyle-wincon-3.0.11
|
||||
rust-approx-0.5.1
|
||||
rust-ashpd-0.12.1
|
||||
rust-async-broadcast-0.7.2
|
||||
rust-async-channel-2.5.0
|
||||
rust-async-executor-1.13.3
|
||||
rust-async-fs-2.2.0
|
||||
rust-async-io-2.6.0
|
||||
rust-async-lock-3.4.2
|
||||
rust-async-net-2.0.0
|
||||
rust-async-process-2.5.0
|
||||
rust-async-recursion-1.1.1
|
||||
rust-async-signal-0.2.13
|
||||
rust-async-task-4.7.1
|
||||
rust-async-trait-0.1.89
|
||||
rust-atomic-waker-1.1.2
|
||||
rust-autocfg-1.5.0
|
||||
rust-bitflags-2.10.0
|
||||
rust-block-0.1.6
|
||||
rust-block-buffer-0.10.4
|
||||
rust-block-padding-0.3.3
|
||||
rust-blocking-1.6.2
|
||||
rust-bumpalo-3.19.1
|
||||
rust-bytemuck-1.24.0
|
||||
rust-byteorder-1.5.0
|
||||
rust-byteorder-lite-0.1.0
|
||||
rust-cairo-rs-0.21.5
|
||||
rust-cairo-sys-rs-0.21.5
|
||||
rust-cbc-0.1.2
|
||||
rust-cc-1.2.54
|
||||
rust-cfg-expr-0.20.6
|
||||
rust-cfg-if-1.0.4
|
||||
rust-cipher-0.4.4
|
||||
rust-colorchoice-1.0.4
|
||||
rust-concurrent-queue-2.5.0
|
||||
rust-cpufeatures-0.2.17
|
||||
rust-crc32fast-1.5.0
|
||||
rust-crossbeam-utils-0.8.21
|
||||
rust-crypto-common-0.1.7
|
||||
rust-digest-0.10.7
|
||||
rust-displaydoc-0.2.5
|
||||
rust-endi-1.1.1
|
||||
rust-enumflags2-0.7.12
|
||||
rust-enumflags2-derive-0.7.12
|
||||
rust-env-filter-0.1.4
|
||||
rust-env-logger-0.11.8
|
||||
rust-equivalent-1.0.2
|
||||
rust-errno-0.3.14
|
||||
rust-event-listener-5.4.1
|
||||
rust-event-listener-strategy-0.5.4
|
||||
rust-fastrand-2.3.0
|
||||
rust-fdeflate-0.3.7
|
||||
rust-field-offset-0.3.6
|
||||
rust-find-msvc-tools-0.1.8
|
||||
rust-flate2-1.1.8
|
||||
rust-float-next-after-1.0.0
|
||||
rust-foldhash-0.2.0
|
||||
rust-form-urlencoded-1.2.2
|
||||
rust-formatx-0.2.4
|
||||
rust-futures-0.3.31
|
||||
rust-futures-channel-0.3.31
|
||||
rust-futures-core-0.3.31
|
||||
rust-futures-executor-0.3.31
|
||||
rust-futures-io-0.3.31
|
||||
rust-futures-lite-2.6.1
|
||||
rust-futures-macro-0.3.31
|
||||
rust-futures-sink-0.3.31
|
||||
rust-futures-task-0.3.31
|
||||
rust-futures-util-0.3.31
|
||||
rust-gdk-pixbuf-0.21.5
|
||||
rust-gdk-pixbuf-sys-0.21.5
|
||||
rust-gdk4-0.10.3
|
||||
rust-gdk4-sys-0.10.3
|
||||
rust-generic-array-0.14.7
|
||||
rust-geo-0.30.0
|
||||
rust-geo-types-0.7.18
|
||||
rust-geographiclib-rs-0.2.5
|
||||
rust-getrandom-0.2.17
|
||||
rust-getrandom-0.3.4
|
||||
rust-gettext-rs-0.7.7
|
||||
rust-gettext-sys-0.26.0
|
||||
rust-gio-0.21.5
|
||||
rust-gio-sys-0.21.5
|
||||
rust-git-version-0.3.9
|
||||
rust-git-version-macro-0.3.9
|
||||
rust-glib-0.21.5
|
||||
rust-glib-macros-0.21.5
|
||||
rust-glib-sys-0.21.5
|
||||
rust-gobject-sys-0.21.5
|
||||
rust-graphene-rs-0.21.5
|
||||
rust-graphene-sys-0.21.5
|
||||
rust-gsk4-0.10.3
|
||||
rust-gsk4-sys-0.10.3
|
||||
rust-gtk4-0.10.3
|
||||
rust-gtk4-macros-0.10.3
|
||||
rust-gtk4-sys-0.10.3
|
||||
rust-hash32-0.3.1
|
||||
rust-hashbrown-0.16.1
|
||||
rust-heapless-0.8.0
|
||||
rust-heck-0.5.0
|
||||
rust-hermit-abi-0.5.2
|
||||
rust-hex-0.4.3
|
||||
rust-hkdf-0.12.4
|
||||
rust-hmac-0.12.1
|
||||
rust-i-float-1.7.0
|
||||
rust-i-key-sort-0.2.0
|
||||
rust-i-overlay-2.0.5
|
||||
rust-i-shape-1.7.0
|
||||
rust-i-tree-0.8.3
|
||||
rust-icu-collections-2.1.1
|
||||
rust-icu-locale-core-2.1.1
|
||||
rust-icu-normalizer-2.1.1
|
||||
rust-icu-normalizer-data-2.1.1
|
||||
rust-icu-properties-2.1.2
|
||||
rust-icu-properties-data-2.1.2
|
||||
rust-icu-provider-2.1.1
|
||||
rust-idna-1.1.0
|
||||
rust-idna-adapter-1.2.1
|
||||
rust-image-0.25.9
|
||||
rust-indexmap-2.13.0
|
||||
rust-ink-stroke-modeler-rs-0.1.0
|
||||
rust-inout-0.1.4
|
||||
rust-is-terminal-polyfill-1.70.2
|
||||
rust-jiff-0.2.18
|
||||
rust-jiff-static-0.2.18
|
||||
rust-js-sys-0.3.85
|
||||
rust-lazy-static-1.5.0
|
||||
rust-libadwaita-0.8.1
|
||||
rust-libadwaita-sys-0.8.1
|
||||
rust-libc-0.2.180
|
||||
rust-libm-0.2.16
|
||||
rust-linux-raw-sys-0.11.0
|
||||
rust-litemap-0.8.1
|
||||
rust-locale-config-0.3.0
|
||||
rust-log-0.4.29
|
||||
rust-lru-0.16.3
|
||||
rust-malloc-buf-0.0.6
|
||||
rust-md-5-0.10.6
|
||||
rust-memchr-2.7.6
|
||||
rust-memoffset-0.9.1
|
||||
rust-miniz-oxide-0.8.9
|
||||
rust-moxcms-0.7.11
|
||||
rust-num-0.4.3
|
||||
rust-num-bigint-0.4.6
|
||||
rust-num-bigint-dig-0.8.6
|
||||
rust-num-complex-0.4.6
|
||||
rust-num-integer-0.1.46
|
||||
rust-num-iter-0.1.45
|
||||
rust-num-rational-0.4.2
|
||||
rust-num-traits-0.2.19
|
||||
rust-objc-0.2.7
|
||||
rust-objc-foundation-0.1.1
|
||||
rust-objc-id-0.1.1
|
||||
rust-once-cell-1.21.3
|
||||
rust-once-cell-polyfill-1.70.2
|
||||
rust-oo7-0.5.0
|
||||
rust-ordered-stream-0.2.0
|
||||
rust-pango-0.21.5
|
||||
rust-pango-sys-0.21.5
|
||||
rust-parking-2.2.1
|
||||
rust-pbkdf2-0.12.2
|
||||
rust-percent-encoding-2.3.2
|
||||
rust-pin-project-lite-0.2.16
|
||||
rust-pin-utils-0.1.0
|
||||
rust-piper-0.2.4
|
||||
rust-pkg-config-0.3.32
|
||||
rust-png-0.18.0
|
||||
rust-polling-3.11.0
|
||||
rust-portable-atomic-1.13.0
|
||||
rust-portable-atomic-util-0.2.4
|
||||
rust-potential-utf-0.1.4
|
||||
rust-ppv-lite86-0.2.21
|
||||
rust-proc-macro-crate-3.4.0
|
||||
rust-proc-macro2-1.0.106
|
||||
rust-pxfm-0.1.27
|
||||
rust-quote-1.0.44
|
||||
rust-r-efi-5.3.0
|
||||
rust-rand-0.8.5
|
||||
rust-rand-0.9.2
|
||||
rust-rand-chacha-0.3.1
|
||||
rust-rand-chacha-0.9.0
|
||||
rust-rand-core-0.6.4
|
||||
rust-rand-core-0.9.5
|
||||
rust-regex-1.12.2
|
||||
rust-regex-automata-0.4.13
|
||||
rust-regex-syntax-0.8.8
|
||||
rust-robust-1.2.0
|
||||
rust-rstar-0.12.2
|
||||
rust-rustc-version-0.4.1
|
||||
rust-rustix-1.1.3
|
||||
rust-rustversion-1.0.22
|
||||
rust-semver-1.0.27
|
||||
rust-serde-1.0.228
|
||||
rust-serde-core-1.0.228
|
||||
rust-serde-derive-1.0.228
|
||||
rust-serde-repr-0.1.20
|
||||
rust-serde-spanned-1.0.4
|
||||
rust-sha2-0.10.9
|
||||
rust-shell-words-1.1.1
|
||||
rust-shlex-1.3.0
|
||||
rust-signal-hook-registry-1.4.8
|
||||
rust-simd-adler32-0.3.8
|
||||
rust-slab-0.4.11
|
||||
rust-smallvec-1.15.1
|
||||
rust-spin-0.9.8
|
||||
rust-stable-deref-trait-1.2.1
|
||||
rust-subtle-2.6.1
|
||||
rust-syn-2.0.114
|
||||
rust-synstructure-0.13.2
|
||||
rust-system-deps-7.0.7
|
||||
rust-target-lexicon-0.13.3
|
||||
rust-temp-dir-0.1.16
|
||||
rust-tempfile-3.24.0
|
||||
rust-thiserror-2.0.18
|
||||
rust-thiserror-impl-2.0.18
|
||||
rust-tinystr-0.8.2
|
||||
rust-toml-0.9.11+spec-1.1.0
|
||||
rust-toml-datetime-0.7.5+spec-1.1.0
|
||||
rust-toml-edit-0.23.10+spec-1.0.0
|
||||
rust-toml-parser-1.0.6+spec-1.1.0
|
||||
rust-toml-writer-1.0.6+spec-1.1.0
|
||||
rust-tracing-0.1.44
|
||||
rust-tracing-attributes-0.1.31
|
||||
rust-tracing-core-0.1.36
|
||||
rust-typenum-1.19.0
|
||||
rust-uds-windows-1.1.0
|
||||
rust-unicode-ident-1.0.22
|
||||
rust-url-2.5.8
|
||||
rust-utf8-iter-1.0.4
|
||||
rust-utf8parse-0.2.2
|
||||
rust-uuid-1.20.0
|
||||
rust-version-compare-0.2.1
|
||||
rust-version-check-0.9.5
|
||||
rust-wasi-0.11.1+wasi-snapshot-preview1
|
||||
rust-wasip2-1.0.1+wasi-0.2.4
|
||||
rust-wasm-bindgen-0.2.108
|
||||
rust-wasm-bindgen-macro-0.2.108
|
||||
rust-wasm-bindgen-macro-support-0.2.108
|
||||
rust-wasm-bindgen-shared-0.2.108
|
||||
rust-winapi-0.3.9
|
||||
rust-winapi-i686-pc-windows-gnu-0.4.0
|
||||
rust-winapi-x86-64-pc-windows-gnu-0.4.0
|
||||
rust-windows-link-0.2.1
|
||||
rust-windows-sys-0.61.2
|
||||
rust-winnow-0.7.14
|
||||
rust-wit-bindgen-0.46.0
|
||||
rust-writeable-0.6.2
|
||||
rust-yoke-0.8.1
|
||||
rust-yoke-derive-0.8.1
|
||||
rust-zbus-5.14.0
|
||||
rust-zbus-macros-5.14.0
|
||||
rust-zbus-names-4.3.1
|
||||
rust-zerocopy-0.8.35
|
||||
rust-zerocopy-derive-0.8.35
|
||||
rust-zerofrom-0.1.6
|
||||
rust-zerofrom-derive-0.1.6
|
||||
rust-zeroize-1.8.2
|
||||
rust-zeroize-derive-1.4.3
|
||||
rust-zerotrie-0.2.3
|
||||
rust-zerovec-0.11.5
|
||||
rust-zerovec-derive-0.11.2
|
||||
rust-zvariant-5.10.0
|
||||
rust-zvariant-derive-5.10.0
|
||||
rust-zvariant-utils-3.3.0))
|
||||
(parinfer-rust =>
|
||||
(list rust-addr2line-0.24.2
|
||||
rust-adler2-2.0.0
|
||||
|
||||
@@ -68,6 +68,7 @@
|
||||
;;; Copyright © 2025 Matthew Elwin <elwin@northwestern.edu>
|
||||
;;; Copyright © 2025 Roman Scherer <roman@burningswell.com>
|
||||
;;; Copyright © 2026 Ingar <ingar@onionmail.info>
|
||||
;;; Copyright © 2026 Nguyễn Gia Phong <cnx@loang.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -91,6 +92,7 @@
|
||||
#:use-module (guix deprecation)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix fossil-download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix hg-download)
|
||||
#:use-module (guix build-system cargo)
|
||||
@@ -111,6 +113,7 @@
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages build-tools)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages curl)
|
||||
@@ -3519,6 +3522,74 @@ output of the @code{git} command.")
|
||||
modification time.")
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public libfossil
|
||||
(let ((ci "914ed6dcaff13bf7209c9f27ccfb77c2d8fdf36b8d2133aa1590258b0708f035")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "libfossil")
|
||||
(version (fossil-version "0.6.0" revision ci))
|
||||
(source
|
||||
(origin
|
||||
(method fossil-fetch)
|
||||
(uri (fossil-reference
|
||||
(uri "https://fossil.wanderinghorse.net/r/libfossil")
|
||||
(check-in ci)))
|
||||
(file-name (fossil-file-name name version))
|
||||
(sha256
|
||||
(base32 "0a0ycnnba2izmiqjj8hgvjgjdwhpn0x36lhy3vmw4j7bhny0df52"))
|
||||
(patches (search-patches "libfossil-skip-amalgamation.patch"))
|
||||
(modules '((guix build utils)
|
||||
(ice-9 ftw)
|
||||
(srfi srfi-26)))
|
||||
(snippet
|
||||
#~(begin
|
||||
(define (delete-all-but directory . preserve)
|
||||
(with-directory-excursion directory
|
||||
(let* ((pred (negate (cut member <>
|
||||
(cons* "." ".." preserve))))
|
||||
(items (scandir "." pred)))
|
||||
(for-each (cut delete-file-recursively <>) items))))
|
||||
(delete-all-but "autosetup" "proj.tcl" "wh-common.tcl")
|
||||
(delete-file-recursively "extsrc")
|
||||
;; Re-create Fossil check-out manifests,
|
||||
;; whose content does not affect in semantics.
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(call-with-output-file file (const #t)))
|
||||
'("manifest" "manifest.uuid"))))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
#~(list "--no-debug" "--no-fnc" ;TODO: C++ and Tcl binding?
|
||||
(string-append "--with-sqlite="
|
||||
#$(this-package-input "sqlite"))
|
||||
(string-append "--soname=libfossil.so"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key configure-flags #:allow-other-keys)
|
||||
(apply invoke "autosetup"
|
||||
(string-append "--prefix=" #$output)
|
||||
configure-flags)))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(substitute* "sanity-checks.sh"
|
||||
;; FIXME: these tests requires a Fossil checkout.
|
||||
(("\\./f-sanity.*") "")
|
||||
(("\\./f-parseparty.*") ""))
|
||||
(setenv "LD_LIBRARY_PATH" (getcwd))
|
||||
(invoke "./sanity-checks.sh")))))))
|
||||
(native-inputs (list autosetup))
|
||||
(inputs (list sqlite-next zlib))
|
||||
(home-page "https://fossil.wanderinghorse.net/r/libfossil")
|
||||
(synopsis "Unofficial Fossil SCM Library API")
|
||||
(description
|
||||
"@code{libfossil} is an alternative interface into Fossil repositories,
|
||||
as opposed to a replacement for the core fossil application,
|
||||
intended for new ways to access and manipulate fossil repositories.")
|
||||
(license license:bsd-2))))
|
||||
|
||||
(define-public fnc
|
||||
(package
|
||||
(name "fnc")
|
||||
|
||||
+12
-10
@@ -895,16 +895,18 @@ requirements.
|
||||
If @var{config} contains SMB mounts, adds samba-nmbd and samba-winbindd to the
|
||||
service requirements.
|
||||
"
|
||||
(delete-duplicates
|
||||
(fold
|
||||
(lambda (fs-type acc)
|
||||
(cond
|
||||
((string= "nfs" fs-type)
|
||||
(append acc '(rpc.statd)))
|
||||
((string= "smb" fs-type)
|
||||
(append acc '(samba-nmbd samba-winbindd)))))
|
||||
'()
|
||||
(map autofs-map-entry-type (autofs-configuration->raw-entries config)))))
|
||||
(fold
|
||||
(lambda (fs-type acc)
|
||||
(cond
|
||||
((string= "nfs" fs-type)
|
||||
(append acc '(rpc.statd)))
|
||||
((string= "smb" fs-type)
|
||||
(append acc '(samba-nmbd samba-winbindd)))
|
||||
(else acc)))
|
||||
'()
|
||||
(delete-duplicates
|
||||
(map autofs-map-entry-type
|
||||
(autofs-configuration->raw-entries config)))))
|
||||
|
||||
(define (autofs-shepherd-service config)
|
||||
(match-record config <autofs-configuration> (autofs timeout)
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2025 Nguyễn Gia Phong <cnx@loang.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
;;;
|
||||
;;; Commentary:
|
||||
;;;
|
||||
;;; This is the build-side support code of (guix fossil-download).
|
||||
;;; It allows a Fossil repository to be opened at a specific revision.
|
||||
;;;
|
||||
;;; Code:
|
||||
|
||||
(define-module (guix build fossil)
|
||||
#:use-module (guix build utils)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (srfi srfi-35)
|
||||
#:use-module (web uri)
|
||||
#:export (fossil-fetch))
|
||||
|
||||
(define* (fossil-fetch uri check-in file #:key (fossil-command "fossil"))
|
||||
"Fetch CHECK-IN from URI into DIRECTORY. CHECK-IN must be a valid
|
||||
Fossil check-in name. Return #t on success, else raise an exception."
|
||||
(setenv "FOSSIL_HOME" "/tmp")
|
||||
(invoke fossil-command
|
||||
"tarball" check-in file "-R"
|
||||
(case (uri-scheme (string->uri-reference uri))
|
||||
((file https) ;clone the repository first
|
||||
(match-let ((repository (simple-format #f "/tmp/~a.fossil"
|
||||
(basename file ".tar.gz")))
|
||||
((input . output) (pipe)))
|
||||
;; Trust the TLS certificate of the server,
|
||||
;; since we'll later verify the tarball's checksum.
|
||||
(display "y" output)
|
||||
(close-port output)
|
||||
(with-input-from-port input
|
||||
(cut invoke fossil-command "clone"
|
||||
"--no-open" "--once" uri repository))
|
||||
(close-port input)
|
||||
repository))
|
||||
((ssh) ;TODO: authentication for SSH
|
||||
(let ((message (string-append "fetching a Fossil repository through SSH"
|
||||
" is not supported: " uri)))
|
||||
(raise (condition (&message (message message))))))
|
||||
((#f) uri)))) ;local file
|
||||
@@ -0,0 +1,125 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2025 Nguyễn Gia Phong <cnx@loang.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
;;;
|
||||
;;; Commentary:
|
||||
;;;
|
||||
;;; An <origin> method that open Fossil checkout at a specific version.
|
||||
;;; The repository URI and version are specified
|
||||
;;; with a <fossil-reference> object.
|
||||
;;;
|
||||
;;; Code:
|
||||
|
||||
(define-module (guix fossil-download)
|
||||
#:use-module (guix build-system)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix modules)
|
||||
#:use-module (guix monads)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix records)
|
||||
#:use-module (guix store)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (srfi srfi-35)
|
||||
#:use-module (web uri)
|
||||
#:export (fossil-reference
|
||||
fossil-reference?
|
||||
fossil-reference-uri
|
||||
fossil-reference-check-in
|
||||
|
||||
fossil-fetch
|
||||
fossil-version
|
||||
fossil-file-name))
|
||||
|
||||
(define-record-type* <fossil-reference>
|
||||
fossil-reference make-fossil-reference fossil-reference?
|
||||
(uri fossil-reference-uri)
|
||||
(check-in fossil-reference-check-in))
|
||||
|
||||
(define (fossil-version version revision check-in)
|
||||
"Return the version string for packages using fossil-download."
|
||||
;; fossil-version is almost exclusively executed while modules
|
||||
;; are being loaded, leading to any errors hiding their backtrace.
|
||||
;; Avoid the mysterious error "Value out of range 0 to N: 10"
|
||||
;; when the check-in ID is too short, which can happen, for example,
|
||||
;; when the user swapped the revision and check-in arguments by mistake.
|
||||
(when (< (string-length check-in) 10)
|
||||
(raise
|
||||
(condition
|
||||
(&message (message "fossil-version: check-in ID unexpectedly short")))))
|
||||
(string-append version "-" revision "." (string-take check-in 10)))
|
||||
|
||||
(define (fossil-file-name name version)
|
||||
"Return the file-name for packages using fossil-download."
|
||||
(string-append name "-" version ".tar.gz"))
|
||||
|
||||
(define* (fossil-fetch ref hash-algo hash
|
||||
#:optional name
|
||||
#:key (system (%current-system))
|
||||
(guile (default-guile))
|
||||
(fossil (@* (gnu packages version-control)
|
||||
fossil)))
|
||||
"Return a fixed-output derivation that fetches REF, a <fossil-reference>
|
||||
object. The output is expected to have recursive hash HASH of type
|
||||
HASH-ALGO (a symbol). Use NAME as the file name, or a generic name if #f."
|
||||
(let* ((modules (source-module-closure '((guix build fossil)
|
||||
(guix build download)
|
||||
(guix build download-nar))))
|
||||
(uri (fossil-reference-uri ref))
|
||||
(scheme-of-uri (uri-scheme (string->uri-reference uri)))
|
||||
(check-in (fossil-reference-check-in ref))
|
||||
(tarball-name (or name (fossil-file-name (basename uri) check-in)))
|
||||
(tarball-url (and (eq? 'https scheme-of-uri)
|
||||
(simple-format #f "~a/tarball/~a/~a"
|
||||
uri check-in tarball-name)))
|
||||
(guile-json (@* (gnu packages guile) guile-json-4))
|
||||
(gnutls (@* (gnu packages tls) guile-gnutls))
|
||||
(guile-lzlib (@* (gnu packages guile) guile-lzlib))
|
||||
(build
|
||||
(with-imported-modules modules
|
||||
(with-extensions (list guile-json gnutls ;for (guix swh)
|
||||
guile-lzlib)
|
||||
#~(begin
|
||||
(use-modules (guix build fossil)
|
||||
((guix build download)
|
||||
#:select (download-method-enabled? url-fetch))
|
||||
(guix build download-nar))
|
||||
(or (and (download-method-enabled? 'upstream)
|
||||
(or (and #$tarball-url
|
||||
(url-fetch #$tarball-url #$output))
|
||||
(fossil-fetch
|
||||
#$(if scheme-of-uri uri (local-file uri))
|
||||
#$check-in
|
||||
#$output
|
||||
#:fossil-command
|
||||
#+(file-append fossil "/bin/fossil"))))
|
||||
(and (download-method-enabled? 'nar)
|
||||
(download-nar #$output))))))))
|
||||
(mlet %store-monad ((guile (package->derivation guile system)))
|
||||
(gexp->derivation tarball-name build
|
||||
#:leaked-env-vars '("http_proxy" "https_proxy"
|
||||
"COLUMNS" "USER")
|
||||
#:env-vars (match (getenv "GUIX_DOWNLOAD_METHODS")
|
||||
(#f '())
|
||||
(value
|
||||
`(("GUIX_DOWNLOAD_METHODS" . ,value))))
|
||||
#:system system
|
||||
#:hash-algo hash-algo
|
||||
#:hash hash
|
||||
#:recursive? #t
|
||||
#:guile-for-build guile
|
||||
#:local-build? #t))))
|
||||
@@ -2,6 +2,7 @@
|
||||
;;; Copyright © 2012-2013, 2015-2020, 2022, 2025 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2022 Remco van 't Veer <remco@remworks.net>
|
||||
;;; Copyright © 2026 jgart <jgart@dismail.de>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -140,6 +141,9 @@ current one."
|
||||
|
||||
(option '("vacuum-database") #f #f
|
||||
(lambda args
|
||||
(unless (zero? (getuid))
|
||||
(leave
|
||||
(G_ "vacuuming the database can only be used by root~%")))
|
||||
(vacuum-database)
|
||||
(exit 0)))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user