diff options
-rw-r--r-- | gnu/packages/geo.scm | 37 | ||||
-rw-r--r-- | gnu/packages/time.scm | 37 |
2 files changed, 74 insertions, 0 deletions
diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index f226273812..1337e8f20b 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -251,6 +251,23 @@ combining the benefits of a hexagonal grid with S2's hierarchical subdivisions.") (license license:asl2.0))) +;; For python-timezonefinder, remove it when it starts supporting newer +;; version. +(define-public h3-3 + (package + (inherit h3) + (name "h3") + (version "3.7.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/uber/h3") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0bvsljfxmjvl23v9gxykc4aynjzh5xfy3wg02bxad7cknr1amx9j")))))) + (define-public python-h3 (package (name "python-h3") @@ -305,6 +322,26 @@ subdivisions.") hierarchical hexagonal geospatial indexing system") (license license:asl2.0))) +;; For python-timezonefinder, remove it when it starts supporting newer +;; version. +(define-public python-h3-3 + (package + (inherit python-h3) + (name "python-h3") + (version "3.7.6") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/uber/h3-py") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "16gxa1sivghxw179rik87r918mjasars2qkzidlwq83qfa4axn20")))) + (inputs + (modify-inputs (package-inputs python-h3) + (replace "h3" h3-3))))) + (define-public memphis (package (name "memphis") diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm index c0bcb848b3..36b561b041 100644 --- a/gnu/packages/time.scm +++ b/gnu/packages/time.scm @@ -21,6 +21,7 @@ ;;; Copyright © 2021 Ryan Prior <rprior@protonmail.com> ;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com> ;;; Copyright © 2022 Pradana AUMARS <paumars@courrier.dev> +;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -40,7 +41,9 @@ (define-module (gnu packages time) #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages geo) #:use-module (gnu packages golang) + #:use-module (gnu packages libffi) #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages python-build) @@ -50,8 +53,10 @@ #:use-module (gnu packages) #:use-module (guix build-system gnu) #:use-module (guix build-system go) + #:use-module (guix build-system pyproject) #:use-module (guix build-system python) #:use-module (guix download) + #:use-module (guix gexp) #:use-module (guix git-download) #:use-module (guix licenses) #:use-module (guix packages)) @@ -278,6 +283,38 @@ datetime module, available in Python 2.3+.") Python datetime objects.") (license expat))) +(define-public python-timezonefinder + (package + (name "python-timezonefinder") + (version "6.2.0") + (source + (origin + (method git-fetch) + ;; The PyPi distribution doesn't include the tests. + (uri (git-reference + (url "https://github.com/jannikmi/timezonefinder") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0qv9rh6j8c1cqwh4sxrfl1m1ah4aqrf0w2kyrf5cgrpfxi6xr94z")))) + (build-system pyproject-build-system) + (arguments + (list + ;; TODO: Guix has lower python-pytz than required in the latest + ;; version: pytz.exceptions.UnknownTimeZoneError: + ;; 'America/Ciudad_Juarez' + ;; It's optional, remove this constrain where python-pytz is updated. + #:test-flags #~(list "-k" "not test_with_pytz"))) + (native-inputs + (list python-poetry-core python-pytest)) + (propagated-inputs + (list python-cffi python-h3-3 python-numba python-numpy python-pytz)) + (home-page "https://timezonefinder.michelfe.it/gui") + (synopsis "Finding the timezone of any coordinates on Earth offline") + (description "This is a python package for looking up the corresponding +timezone for given coordinates on earth entirely offline.") + (license expat))) + (define-public python-tzlocal (package (name "python-tzlocal") |