gnu: Add python-timezonefinder.

* gnu/packages/time.scm (python-timezonefinder): New variable.
* gnu/packages/geo.scm (h3-3, python-h3-3): New variables. The latest
compatible versions to build python-timezonefinder.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
This commit is contained in:
Sharlatan Hellseher 2023-04-28 00:43:04 +01:00 committed by Efraim Flashner
parent 424ba87292
commit 5a70b9b924
No known key found for this signature in database
GPG key ID: 41AAE7DCCA3D8351
2 changed files with 74 additions and 0 deletions

View file

@ -251,6 +251,23 @@ (define-public h3
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 @@ (define-public python-h3
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")

View file

@ -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 @@ (define-module (gnu packages time)
#: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 @@ (define-public python-ciso8601
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")