From deeec484a6cdb95464ebd2527b16771935d113ec Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 21 Jun 2022 11:48:56 +0300 Subject: gnu: python-pyzmq: Remove bundled and generated code. * gnu/packages/python-xyz.scm (python-pyzmq)[source]: Add snippet to remove bundled source code and pre-cythonized files. --- gnu/packages/python-xyz.scm | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f19f0ed285..7e6fe74323 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -9956,7 +9956,25 @@ applications.") (method url-fetch) (uri (pypi-uri "pyzmq" version)) (sha256 - (base32 "0737kizh53n4rjq1xbm6nhr0bq65xflg04i1d8fcky0nwwrw1pcf")))) + (base32 "0737kizh53n4rjq1xbm6nhr0bq65xflg04i1d8fcky0nwwrw1pcf")) + (snippet + #~(begin + (use-modules (guix build utils)) + ;; The bundled zeromq source code. + (delete-file-recursively "bundled") + ;; Delete cythonized files. + (for-each delete-file + (list "zmq/backend/cython/constants.c" + "zmq/backend/cython/context.c" + "zmq/backend/cython/_device.c" + "zmq/backend/cython/error.c" + "zmq/backend/cython/message.c" + "zmq/backend/cython/_poll.c" + "zmq/backend/cython/_proxy_steerable.c" + "zmq/backend/cython/socket.c" + "zmq/backend/cython/utils.c" + "zmq/backend/cython/_version.c" + "zmq/devices/monitoredqueue.c")))))) (build-system python-build-system) (arguments `(#:configure-flags -- cgit v1.2.3 From 779853e926bdb075dfadbf7dbc1a0e6bdcb93d66 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 21 Jun 2022 03:32:10 +0200 Subject: gnu: python-pika: Update to 1.2.1. * gnu/packages/python-xyz.scm (python-pika): Update to 1.2.1. [arguments]: Adjust tests for nose2. Respect #:tests? keyword. [native-inputs]: Remove PYTHON-NOSE; add PYTHON-NOSE2. --- gnu/packages/python-xyz.scm | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 7e6fe74323..11c50a762b 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -16120,7 +16120,7 @@ focus on event-based network programming and multiprotocol integration.") (define-public python-pika (package (name "python-pika") - (version "1.2.0") + (version "1.2.1") (source (origin (method git-fetch) @@ -16130,27 +16130,29 @@ focus on event-based network programming and multiprotocol integration.") (file-name (git-file-name name version)) (sha256 (base32 - "0cm45xydk2jigydwszwik89qlbk6l3l18sxhzppzqmxw2rdkm22s")))) + "0sqj3bg6jwign8vwvn337fbwy69sm684ns1vh5kbfnskq4him9i2")))) (build-system python-build-system) (arguments '(#:phases (modify-phases %standard-phases - (add-before 'check 'disable-live-tests + (add-after 'unpack 'disable-live-tests (lambda _ ;; Disable tests that require RabbitMQ, which is not ;; yet available in Guix. - (substitute* "setup.cfg" - (("tests/unit,tests/acceptance") - "tests/unit")) + (substitute* "nose2.cfg" + (("tests=tests/unit,tests/acceptance") + "start-dir=tests/unit")) (with-directory-excursion "tests" (for-each delete-file '("unit/base_connection_tests.py" "unit/threaded_test_wrapper_test.py"))))) (replace 'check - (lambda _ - (invoke "nosetests")))))) + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (setenv "PYTHONPATH" (getcwd)) + (invoke "nose2" "-v"))))))) (native-inputs (list python-mock - python-nose + python-nose2 ;; These are optional at runtime, and provided here for tests. python-gevent python-tornado -- cgit v1.2.3 From a358602d35e71cbde9d390beeeebc08543ab3414 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 21 Jun 2022 15:52:25 +0200 Subject: gnu: python-ipython-sql: Update to 0.4.1. * gnu/packages/python-xyz.scm (python-ipython-sql): Update to 0.4.1. [arguments]: Remove #:phases. Add #:tests?. --- gnu/packages/python-xyz.scm | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 11c50a762b..0fe436cbe5 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -8298,25 +8298,16 @@ cluster down and deletes the throwaway profile.") (define-public python-ipython-sql (package (name "python-ipython-sql") - (version "0.4.0") + (version "0.4.1") (source (origin (method url-fetch) (uri (pypi-uri "ipython-sql" version)) (sha256 - (base32 "0v74ayc6vw98f4jljmwy45qpqbcbhlrb4g1qdyypq9sppxcqx21y")))) + (base32 "1r6rz8jgrqzhkf2flwjw75d96g8l7kykmx5wli3q1988w96391ip")))) (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'fix-build - (lambda _ - ;; The "NEWS.rst" file is missing from the PyPI distribution. - ;; (see: https://github.com/catherinedevlin/ipython-sql/issues/164) - (substitute* "setup.py" - (("NEWS = [^\n]*") "") - (("long_description=README \\+ '\\\\n\\\\n' \\+ NEWS,") - "long_description=README,"))))))) + ;; Tests must run under IPython. + (arguments '(#:tests? #f)) (propagated-inputs (list python-ipython python-ipython-genutils -- cgit v1.2.3 From c7738ffcadb6b8348a520d745a1eb7e91ee28524 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 21 Jun 2022 15:57:03 +0200 Subject: gnu: python-ipython-sql: Remove prettytable version constraint. * gnu/packages/python-xyz.scm (python-ipython-sql)[arguments]: Add #:phases. --- gnu/packages/python-xyz.scm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0fe436cbe5..72d144fdcf 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -8306,8 +8306,16 @@ cluster down and deletes the throwaway profile.") (sha256 (base32 "1r6rz8jgrqzhkf2flwjw75d96g8l7kykmx5wli3q1988w96391ip")))) (build-system python-build-system) - ;; Tests must run under IPython. - (arguments '(#:tests? #f)) + (arguments + (list #:tests? #f ;must run under IPython + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'permit-newer-prettytable + ;; See https://github.com/catherinedevlin/ipython-sql/issues/202 + (lambda _ + (substitute* "setup.py" + (("prettytable<1") + "prettytable"))))))) (propagated-inputs (list python-ipython python-ipython-genutils -- cgit v1.2.3 From 705c609048a221a76394c5a0b477b348e08db6ef Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 21 Jun 2022 16:18:09 +0200 Subject: gnu: Add python-autopage. * gnu/packages/python-xyz.scm (python-autopage): New variable. --- gnu/packages/python-xyz.scm | 52 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 72d144fdcf..a07e130e8a 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -6668,6 +6668,58 @@ multivalue dictionary that retains the order of insertions and deletions.") run simple @code{argparse} parsers from function signatures.") (license license:lgpl3+))) +(define-public python-autopage + (package + (name "python-autopage") + (version "0.5.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "autopage" version)) + (sha256 + (base32 + "169ixll1ncm2a2pcc86665ikjv2lrzs10p6c1w4yj55p3gk3xgh1")))) + (build-system python-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + ;; Do a manual PEP 517 style build/install procedure until the + ;; python-build-system overhaul is merged. + (replace 'build + (lambda _ + ;; ZIP does not support timestamps before 1980. + (let ((circa-1980 (* 10 366 24 60 60))) + (setenv "SOURCE_DATE_EPOCH" (number->string circa-1980)) + (invoke "python" "-m" "build" "--wheel" "--no-isolation" ".")))) + (add-before 'check 'disable-e2e-tests + (lambda _ + ;; These tests rely on KeyboardInterrupts which do not + ;; work in the build container. + (delete-file "autopage/tests/test_end_to_end.py"))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "pytest" "-vv")))) + (replace 'install + (lambda _ + (let ((whl (car (find-files "dist" "\\.whl$")))) + (invoke "pip" "--no-cache-dir" "--no-input" + "install" "--no-deps" "--prefix" #$output whl))))))) + (native-inputs + (list python-pypa-build + python-setuptools + python-wheel + ;; For tests. + python-fixtures + python-pytest + python-testtools)) + (home-page "https://github.com/zaneb/autopage") + (synopsis "Automatic paging for console output") + (description + "Autopage is a Python library to automatically display terminal output +from a program in a @dfn{pager} such as @command{less}.") + (license license:asl2.0))) + (define-public python-autopep8 (package (name "python-autopep8") -- cgit v1.2.3 From d29b206ef14af88b1996429392d84783ba012841 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 21 Jun 2022 15:33:34 +0200 Subject: gnu: python-prettytable: Update to 3.3.0. * gnu/packages/python-xyz.scm (python-prettytable): Update to 3.3.0. [arguments]: New field. Override check phase. [native-inputs]: Add PYTHON-PYTEST, PYTHON-PYTEST-LAZY-FIXTURE, and PYTHON-SETUPTOOLS-SCM. [propagated-inputs]: Add PYTHON-WCWIDTH. [home-page]: Update to current. --- gnu/packages/python-xyz.scm | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index a07e130e8a..194b342ee6 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -11542,16 +11542,28 @@ functional languages.") (define-public python-prettytable (package (name "python-prettytable") - (version "0.7.2") + (version "3.3.0") (source (origin (method url-fetch) - (uri (pypi-uri "prettytable" version ".tar.bz2")) + (uri (pypi-uri "prettytable" version)) (sha256 (base32 - "0diwsicwmiq2cpzpxri7cyl5fmsvicafw6nfqf6p6p322dji2g45")))) + "1c599w31i2ndzbkn85xwsgv9sd2j16r56dl922w4jh3rs97vb3hi")))) (build-system python-build-system) - (home-page "https://code.google.com/archive/p/prettytable/") + (arguments + (list #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "pytest" "-vv"))))))) + (native-inputs + (list python-pytest + python-pytest-lazy-fixture + python-setuptools-scm)) + (propagated-inputs (list python-wcwidth)) + (home-page "https://github.com/jazzband/prettytable") (synopsis "Display tabular data in an ASCII table format") (description "A library designed to represent tabular data in visually appealing ASCII -- cgit v1.2.3 From eb3aee6cd0f70a4f36630fd9d4ad38d4e00b4283 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 22 Jun 2022 00:31:00 +0200 Subject: gnu: python-lsp-server: Remove unneeded input. * gnu/packages/python-xyz.scm (python-lsp-server)[propagated-inputs]: Remove PYTHON-CONFIGPARSER. --- gnu/packages/python-xyz.scm | 1 - 1 file changed, 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 194b342ee6..948c007ae2 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5132,7 +5132,6 @@ Server (PLS).") "not test_pyqt_completion")))))) (propagated-inputs (list python-autopep8 - python-configparser python-pydocstyle python-flake8 python-future -- cgit v1.2.3 From 8ef4d33a177635b58f2e5e51d68d1bc52f685ff1 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 22 Jun 2022 17:27:06 +0200 Subject: gnu: python-pydantic: Update to 1.9.1. * gnu/packages/python-xyz.scm (python-pydantic): Update to 1.9.1. [arguments]: Remove phase 'disable-test. --- gnu/packages/python-xyz.scm | 25 ++----------------------- 1 file changed, 2 insertions(+), 23 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 948c007ae2..c0bb67d76a 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5038,7 +5038,7 @@ which can produce feeds in RSS 2.0, RSS 0.91, and Atom formats.") (define-public python-pydantic (package (name "python-pydantic") - (version "1.9.0") + (version "1.9.1") (source (origin (method git-fetch) @@ -5047,32 +5047,11 @@ which can produce feeds in RSS 2.0, RSS 0.91, and Atom formats.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "14wj3k9007fpbxk7593w6gdqrr68yzrsw4a41sj5ji4cv3r8z18b")))) + (base32 "1406kgppqa7524mxllsipj7gb8fn7pwf51l11lqik59xjhsfv94f")))) (build-system python-build-system) (arguments '(#:phases (modify-phases %standard-phases - (add-before 'check 'disable-test - (lambda _ - ;; Reported upstream: - ;; . - ;; Disable the faulty test as the fix is unclear. - (substitute* "tests/test_validators.py" - (("test_assert_raises_validation_error") - "_test_assert_raises_validation_error")) - - ;; These fail because of . - ;; Remove after Python has been upgraded to >= 3.9. - (substitute* "tests/test_generics.py" - (("assert replace_types\\(Callable, \\{T: int\\}\\) == Callable") - "")) - (substitute* "tests/test_schema.py" - (("test_unenforced_constraints_schema") - "_test_unenforced_constraints_schema")) - - ;; Disable tests for the Hypothesis plugin because it is tricky - ;; to configure in the build container. - (delete-file "tests/test_hypothesis_plugin.py"))) (replace 'check (lambda _ (invoke "pytest" "-vv")))))) (native-inputs -- cgit v1.2.3 From 4a1550516ab7d90864f93f2e4ad2aefb5fc18d11 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 22 Jun 2022 12:33:11 +0300 Subject: gnu: python-py-cpuinfo: Update to 8.0.0-1.4d6987e. * gnu/packages/python-xyz.scm (python-py-cpuinfo): Update to 8.0.0-1.4d6987e. [source]: Download using git-fetch. --- gnu/packages/python-xyz.scm | 39 +++++++++++++++++++++++---------------- 1 file changed, 23 insertions(+), 16 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index c0bb67d76a..0c3794ed78 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -25181,23 +25181,30 @@ choose to use Base64 without the “=” padding.") (license license:asl2.0))) (define-public python-py-cpuinfo - (package - (name "python-py-cpuinfo") - (version "5.0.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "py-cpuinfo" version)) - (sha256 - (base32 - "0045y6832gqjg63jmw0qj2jwyypgjwr7sfdq3lfv49b6fxpl5xic")))) - (build-system python-build-system) - (home-page "https://github.com/workhorsy/py-cpuinfo") - (synopsis "Get CPU info with Python") - (description - "This Python module returns the CPU info by using the best sources of + ;; This is the first commit where riscv64-linux support is available. + ;; We can move back to pypi releases with the next release. + (let ((commit "4d6987e5c30f2ebacb20781892c01329042cce60") + (revision "1")) + (package + (name "python-py-cpuinfo") + (version (git-version "8.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/workhorsy/py-cpuinfo") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0h5wi1bfcqqr1x3j1pa7dmkx7siprsyksbsy80fl2sdrrgpji0b0")))) + (build-system python-build-system) + (home-page "https://github.com/workhorsy/py-cpuinfo") + (synopsis "Get CPU info with Python") + (description + "This Python module returns the CPU info by using the best sources of information for your operating system.") - (license license:expat))) + (license license:expat)))) (define-public python-canonicaljson (package -- cgit v1.2.3 From 8e2ff622ed7e493a644ebcff62299d2ed1c4e806 Mon Sep 17 00:00:00 2001 From: jgart Date: Tue, 21 Jun 2022 23:29:04 -0500 Subject: gnu: python-parso: Update to 0.8.3. * gnu/packages/yyy.scm (python-parso): Update to 0.8.3. [arguments]: Satisfy guix lint. Signed-off-by: Christopher Baines --- gnu/packages/python-xyz.scm | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0c3794ed78..84040a2e3f 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -21413,20 +21413,23 @@ time-based (TOTP) passwords.") (define-public python-parso (package (name "python-parso") - (version "0.8.2") + (version "0.8.3") (source (origin (method url-fetch) (uri (pypi-uri "parso" version)) (sha256 - (base32 "161k8771m7w60qakyvrwf9q62lvakmix7mpfylpy7713qs939f0j")))) + (base32 "185gkxq92kqiw2h5zp1cmyn04055x0lix4hmi5c077xm1clvw1wc")))) (native-inputs (list python-pytest)) (build-system python-build-system) (arguments - `(#:phases (modify-phases %standard-phases - (replace 'check - (lambda _ (invoke "pytest" "-vv")))))) + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "pytest" "-vv"))))))) (home-page "https://github.com/davidhalter/parso") (synopsis "Python Parser") (description "Parso is a Python parser that supports error recovery and -- cgit v1.2.3 From 80ba78ab98b405dc0a6c2703584a6737dcd209ee Mon Sep 17 00:00:00 2001 From: raingloom Date: Tue, 16 Nov 2021 23:35:09 -0500 Subject: gnu: Fix formatting of python-nbconvert description. * gnu/packages/python-xyz (python-nbconvert)[description]: Fix formatting. Signed-off-by: Maxim Cournoyer --- gnu/packages/python-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 84040a2e3f..a2178bf5d5 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -13089,7 +13089,7 @@ time.") texlive-zapfding)))) (home-page "https://jupyter.org") (synopsis "Converting Jupyter Notebooks") - (description "The @code{nbconvert} tool, @{jupyter nbconvert}, converts + (description "The @code{nbconvert} tool, @code{jupyter nbconvert}, converts notebooks to various other formats via Jinja templates. It allows you to convert an @code{.ipynb} notebook file into various static formats including: -- cgit v1.2.3 From a5436115a0caadbe9df18ece69df91dd574788d6 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 22 Jun 2022 10:57:28 +0200 Subject: gnu: python-babel: Update to 2.10.3. * gnu/packages/python-xyz.scm (python-babel): Update to 2.10.3. --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index a2178bf5d5..112ebfa508 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1233,14 +1233,14 @@ by @code{binstar}, @code{binstar-build}, and @code{chalmers}.") (define-public python-babel (package (name "python-babel") - (version "2.9.0") + (version "2.10.3") (source (origin (method url-fetch) (uri (pypi-uri "Babel" version)) (sha256 (base32 - "018yg7g2pa6vjixx1nx41cfispgfi0azzp0a1chlycbj8jsil0ys")))) + "0l9cvfmsz0hlvcinxaf6xf2f02ldgw3xq9i1fc7lk5zf24vma53n")))) (build-system python-build-system) (native-inputs (list python-freezegun python-pytest tzdata-for-tests)) -- cgit v1.2.3 From 3787f0d215dd0836907b2d9d5d40f4053792cc07 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 23 Jun 2022 18:57:58 +0200 Subject: gnu: python-charset-normalizer: Update to 2.1.0. * gnu/packages/python-xyz.scm (python-charset-normalizer): Update to 2.1.0. --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 112ebfa508..1d841b641d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -13418,13 +13418,13 @@ automatically detect a wide range of file encodings.") (define-public python-charset-normalizer (package (name "python-charset-normalizer") - (version "2.0.11") + (version "2.1.0") (source (origin (method url-fetch) (uri (pypi-uri "charset-normalizer" version)) (sha256 - (base32 "071pi2kd222rjjrjdllffqv3iz4bfaj93a9bfs65907fd6fqlfcq")))) + (base32 "04zlajr77f6c7ai59l46as1idi0jjgbvj72lh4v5wfpz2s070pjp")))) (build-system python-build-system) (arguments (list #:phases -- cgit v1.2.3 From bc6780ee9a3b7a0b96d2e27a11cd2a93da31e37e Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Wed, 15 Jun 2022 12:02:04 +0200 Subject: gnu: Add python-geomet. * gnu/packages/python-xyz.scm (python-geomet): New variable. --- gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 1d43049776..9b19d4ee28 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -30006,3 +30006,23 @@ with it, and it also implements recommendations from the and names, built from Unicode CLDR and the IANA subtag registry, if you install @code{python-language-data}.") (license license:expat))) + +(define-public python-geomet + (package + (name "python-geomet") + (version "0.3.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "geomet" version)) + (sha256 + (base32 + "06rfvadx5dr5xrgsc5bsmqil9c9kff6i13xl988gy0gfg0cl2lnb")))) + (build-system python-build-system) + (propagated-inputs (list python-click python-six)) + (home-page "https://github.com/geomet/geomet") + (synopsis "Convert GeoJSON to WKT/WKB (Well-Known Text/Binary) or +GeoPackage Binary") + (description "This package provides utilities and functions for converting +GeoJSON to WKT/WKB (Well-Known Text/Binary) or GeoPackage Binary, and vice +versa. Extended WKB/WKT are also supported.") + (license license:asl2.0))) -- cgit v1.2.3 From 08efb331d0ea086527effb868700a8c6804eebf1 Mon Sep 17 00:00:00 2001 From: jgart Date: Thu, 16 Jun 2022 16:43:19 -0500 Subject: gnu: Add python-pydantic-cli. * gnu/packages/python-xyz.scm (python-pydantic-cli): New variable. Modified-by: Maxim Cournoyer Signed-off-by: Maxim Cournoyer --- gnu/packages/python-xyz.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 9b19d4ee28..d45ce658f2 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5107,6 +5107,34 @@ which can produce feeds in RSS 2.0, RSS 0.91, and Atom formats.") errors when data is invalid.") (license license:expat))) +(define-public python-pydantic-cli + (package + (name "python-pydantic-cli") + (version "4.3.0") + (source + (origin + (method git-fetch) ;for tests + (uri (git-reference + (url "https://github.com/mpkocher/pydantic-cli") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1v4dx6n60rbsan5zpw2rgdih7lb3h0xclagn1p6zfwl0r9l9cvym")))) + (build-system python-build-system) + (propagated-inputs + (list python-pydantic)) + (native-inputs + (list python-black + python-mypy + python-pytest)) + (home-page "https://github.com/mpkocher/pydantic-cli") + (synopsis "Turn Pydantic defined data models into CLI tools") + (description + "@code{python-pydantic} enables specifying @acronym{CLI, Command Line +Interfaces} via data models provided in the JSON format.") + (license license:expat))) + (define-public python-pydocstyle (package (name "python-pydocstyle") -- cgit v1.2.3 From 95ed62c12bb33f6b64daf2f51df0e610f1abc913 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 2 Jul 2022 21:28:39 +0100 Subject: gnu: Add python-glymur. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/python-xyz.scm (python-glymur): New variable. Co-authored-by: Ludovic Courtès --- gnu/packages/python-xyz.scm | 73 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 72 insertions(+), 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d45ce658f2..3f4867ece0 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -94,7 +94,7 @@ ;;; Copyright © 2020, 2021 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2020 EuAndreh ;;; Copyright © 2021, 2022 Morgan Smith -;;; Copyright © 2021 Sharlatan Hellseher +;;; Copyright © 2021, 2022 Sharlatan Hellseher ;;; Copyright © 2021 Ellis Kenyő ;;; Copyright © 2021 LibreMiami ;;; Copyright © 2021 Xinglu Chen @@ -912,6 +912,77 @@ progress bar and a percentage indicator object that let you track the progress of a loop structure or other iterative computation.") (license license:bsd-3))) +(define-public python-glymur + (package + (name "python-glymur") + (version "0.10.1") + (source + (origin + (method git-fetch) ; no tests data in PyPi package + (uri (git-reference + (url "https://github.com/quintusdias/glymur") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1cq9r8vzwvds1kasy5gc2rxw034jh9l43rraps1n739072pfz6qg")))) + (build-system python-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-library-locations + (lambda* (#:key inputs #:allow-other-keys) + ;; XXX: It's a workaround for Python inability to find the + ;; .so libraries with ctypes.util.find_library() + (substitute* '("glymur/config.py") + (("path = find_library\\(libname\\)") + (string-append + "if libname == \"openjp2\":\n" + " path = \"" + (search-input-file inputs "/lib/libopenjp2.so") "\"\n" + " elif libname == \"tiff\":\n" + " path = \"" + (search-input-file inputs "/lib/libtiff.so") "\"\n" + " elif libname == \"c\":\n" + " path = \"" + (search-input-file inputs "/lib/libc.so.6") "\"\n"))))) + ;; TODO: implement as a feature of python-build-system (PEP-621, + ;; PEP-631, PEP-660) + (replace 'build + (lambda _ + (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version) + ;; ZIP does not support timestamps before 1980. + (setenv "SOURCE_DATE_EPOCH" "315532800") + (invoke "python" "-m" "build" "--wheel" "--no-isolation" "."))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((whl (car (find-files "dist" "\\.whl$")))) + (invoke "pip" "--no-cache-dir" "--no-input" + "install" "--no-deps" "--prefix" #$output whl)))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + ;; Failing test due to inability of + ;; ctypes.util.find_library() to determine library path, + ;; which is patched above. + (delete-file "tests/test_config.py") + (invoke "python" "-m" "pytest" "-vv" "tests"))))))) + (native-inputs + (list python-pypa-build python-pytest)) + (inputs + (list openjpeg ; glymur/lib/openjp2.py + libtiff)) ; glymur/lib/tiff.py + (propagated-inputs + (list python-lxml + python-numpy + python-packaging)) + (home-page "https://github.com/quintusdias/glymur") + (synopsis "Python interface to OpenJPEG and LibTIFF") + (description + "This package provides Python interface to the OpenJPEG library which +allows one to read and write JPEG 2000 files") + (license license:expat))) + (define-public python-gphoto2 (package (name "python-gphoto2") -- cgit v1.2.3 From 345ae8c40f8f26b9715340c6a56679ab2a6e6174 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Sun, 10 Jul 2022 02:43:22 -0400 Subject: gnu: Add python-proton-client. * gnu/packages/python-xyz.scm (python-proton-client): New variable. --- gnu/packages/python-xyz.scm | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3f4867ece0..f7e6b57aa9 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -98,7 +98,7 @@ ;;; Copyright © 2021 Ellis Kenyő ;;; Copyright © 2021 LibreMiami ;;; Copyright © 2021 Xinglu Chen -;;; Copyright © 2021 Raghav Gururajan +;;; Copyright © 2021, 2022 Raghav Gururajan ;;; Copyright © 2021 jgart ;;; Copyright © 2021 Danial Behzadi ;;; Copyright © 2021 Maxime Devos @@ -939,7 +939,7 @@ of a loop structure or other iterative computation.") (string-append "if libname == \"openjp2\":\n" " path = \"" - (search-input-file inputs "/lib/libopenjp2.so") "\"\n" + (search-input-file inputs "/lib/libopenjp2.so") "\"\n"t " elif libname == \"tiff\":\n" " path = \"" (search-input-file inputs "/lib/libtiff.so") "\"\n" @@ -30125,3 +30125,33 @@ GeoPackage Binary") GeoJSON to WKT/WKB (Well-Known Text/Binary) or GeoPackage Binary, and vice versa. Extended WKB/WKT are also supported.") (license license:asl2.0))) + +(define-public python-proton-client + (package + (name "python-proton-client") + (version "0.7.1") + (source (origin + (method git-fetch) + (uri (git-reference + ;; PyPi doesn't have the latest version. + (url "https://github.com/ProtonMail/proton-python-client") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "164b6451nakyfcjqq11xn32iv3xccsi9bjjq2gzfs2nbxzsfl4ws")))) + (build-system python-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'patch-libssl-path + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "proton/srp/_ctsrp.py" + (("libssl\\.so") + (search-input-file inputs "/lib/libssl.so")))))))) + (inputs (list openssl)) + (propagated-inputs (list python-bcrypt python-gnupg python-pyopenssl + python-requests)) + (home-page "https://github.com/ProtonMail/proton-python-client") + (synopsis "Proton client module") + (description "Proton client is a python module that provides Proton API.") + (license license:gpl3+))) -- cgit v1.2.3 From e47d8d1139bd3fde0ec0b7798631f4a84a1b71a5 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Sun, 10 Jul 2022 12:04:00 -0400 Subject: Revert "gnu: Add python-proton-client." This reverts commit 345ae8c40f8f26b9715340c6a56679ab2a6e6174, which was accidentally pushed. --- gnu/packages/python-xyz.scm | 34 ++-------------------------------- 1 file changed, 2 insertions(+), 32 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f7e6b57aa9..3f4867ece0 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -98,7 +98,7 @@ ;;; Copyright © 2021 Ellis Kenyő ;;; Copyright © 2021 LibreMiami ;;; Copyright © 2021 Xinglu Chen -;;; Copyright © 2021, 2022 Raghav Gururajan +;;; Copyright © 2021 Raghav Gururajan ;;; Copyright © 2021 jgart ;;; Copyright © 2021 Danial Behzadi ;;; Copyright © 2021 Maxime Devos @@ -939,7 +939,7 @@ of a loop structure or other iterative computation.") (string-append "if libname == \"openjp2\":\n" " path = \"" - (search-input-file inputs "/lib/libopenjp2.so") "\"\n"t + (search-input-file inputs "/lib/libopenjp2.so") "\"\n" " elif libname == \"tiff\":\n" " path = \"" (search-input-file inputs "/lib/libtiff.so") "\"\n" @@ -30125,33 +30125,3 @@ GeoPackage Binary") GeoJSON to WKT/WKB (Well-Known Text/Binary) or GeoPackage Binary, and vice versa. Extended WKB/WKT are also supported.") (license license:asl2.0))) - -(define-public python-proton-client - (package - (name "python-proton-client") - (version "0.7.1") - (source (origin - (method git-fetch) - (uri (git-reference - ;; PyPi doesn't have the latest version. - (url "https://github.com/ProtonMail/proton-python-client") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "164b6451nakyfcjqq11xn32iv3xccsi9bjjq2gzfs2nbxzsfl4ws")))) - (build-system python-build-system) - (arguments - `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-libssl-path - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "proton/srp/_ctsrp.py" - (("libssl\\.so") - (search-input-file inputs "/lib/libssl.so")))))))) - (inputs (list openssl)) - (propagated-inputs (list python-bcrypt python-gnupg python-pyopenssl - python-requests)) - (home-page "https://github.com/ProtonMail/proton-python-client") - (synopsis "Proton client module") - (description "Proton client is a python module that provides Proton API.") - (license license:gpl3+))) -- cgit v1.2.3 From 556a96fe21e6b9d3e878f7cdb49b882646e55890 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 11 Jul 2022 10:48:09 +0300 Subject: gnu: python-gevent: Remove cythonized files. * gnu/packages/python-xyz.scm (python-gevent)[source]: Adjust snippet to also remove generated cythonized files. [native-inputs]: Add python-cython. --- gnu/packages/python-xyz.scm | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3f4867ece0..c28b0675ad 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -16127,7 +16127,27 @@ graphviz.") (snippet '(begin ;; unbunding libev and c-ares - (delete-file-recursively "deps"))))) + (delete-file-recursively "deps") + ;; Remove cythonized files. + (with-directory-excursion "src/gevent" + (for-each delete-file + (append (list "resolver/cares.c" + "queue.c" + "local.c" + "libev/corecext.h" + "libev/corecext.c" + "greenlet.c" + "event.c" + "_waiter.c" + "_tracer.c" + "_semaphore.c" + "_imap.c" + "_ident.c" + "_hub_primitives.c" + "_hub_local.c" + "_greenlet_primitives.c" + "_abstract_linkable.c") + (find-files "." "\\.html$")))))))) (build-system python-build-system) (arguments `(#:modules ((ice-9 ftw) @@ -16215,8 +16235,9 @@ graphviz.") (propagated-inputs (list python-greenlet python-zope-event python-zope-interface)) (native-inputs - ;; For tests. - (list python-dnspython python-psutil python-objgraph)) + (list python-cython + ;; For tests. + python-dnspython python-psutil python-objgraph)) (inputs (list c-ares libev)) (home-page "https://www.gevent.org/") -- cgit v1.2.3 From 908b680a5f213620c19c157223b45ccf3e534ade Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 12 Jul 2022 12:35:56 +0300 Subject: gnu: python-attrs: Remove test deadlines on riscv64-linux. * gnu/packages/python-xyz.scm (python-attrs)[arguments]: When building for riscv64-linux remove the hypothesis test deadlines. --- gnu/packages/python-xyz.scm | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index c28b0675ad..f146746058 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -19000,6 +19000,15 @@ from the header, as well as section details and data available.") (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases + ,@(if (target-riscv64?) + ;; TODO: Remove the conditional on staging. + `((add-after 'unpack 'remove-test-hypothesis-deadlines + (lambda _ + (substitute* "tests/test_make.py" + (("assume, given") "assume, given, settings") + (("( +)@given" all spaces) + (string-append spaces "@settings(deadline=None)\n" all)))))) + '()) (replace 'check (lambda* (#:key tests? #:allow-other-keys) (when tests? -- cgit v1.2.3 From 023259c4bd1a38225fb1c06660c0cf393210e811 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Tue, 12 Jul 2022 15:54:59 -0400 Subject: gnu: inkscape: Rename variable to inkscape/stable and hide package. This will allow introducing a new 'inkscape' package that can be more freely upgraded on the main branch. * gnu/packages/inkscape.scm (inkscape): Rename to... (inkscape/stable): ... this, and make it a hidden package. * gnu/packages/admin.scm (wpa-supplicant-gui)[native-inputs]: Rename inkscape input accordingly. * gnu/packages/docbook.scm (dblatex): Likewise. * gnu/packages/gnome-xyz.scm (arc-theme): Likewise. * gnu/packages/python-xyz.scm (python-matplotlib-documentation): Likewise. (python-nbconvert): Likewise. * gnu/packages/xfce.scm (xfdesktop): Likewise. * gnu/packages/xorg.scm (hackneyed-x11-cursors): Likewise. --- gnu/packages/admin.scm | 2 +- gnu/packages/docbook.scm | 52 +++---- gnu/packages/gnome-xyz.scm | 2 +- gnu/packages/inkscape.scm | 337 ++++++++++++++++++++++---------------------- gnu/packages/python-xyz.scm | 4 +- gnu/packages/xfce.scm | 4 +- gnu/packages/xorg.scm | 2 +- 7 files changed, 203 insertions(+), 200 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index dea58354d9..88cb8fded9 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2144,7 +2144,7 @@ command.") (native-inputs ;; For icons. (modify-inputs (package-native-inputs wpa-supplicant) - (prepend imagemagick inkscape))) + (prepend imagemagick inkscape/stable))) (arguments `(#:phases (modify-phases %standard-phases (add-after 'unpack 'chdir diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index dcaac3b8d2..ae0ea07dbf 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -476,37 +476,37 @@ the in DocBook SGML DTDs.") ;; TODO: Add xfig/transfig for fig2dev utility (inputs `(("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts - texlive-latex-anysize - texlive-latex-appendix - texlive-latex-bookmark - texlive-latex-changebar - texlive-latex-colortbl - texlive-latex-fancybox - texlive-latex-fancyhdr - texlive-latex-fancyvrb - texlive-latex-float - texlive-latex-footmisc - texlive-hyperref - texlive-latex-jknapltx + texlive-latex-anysize + texlive-latex-appendix + texlive-latex-bookmark + texlive-latex-changebar + texlive-latex-colortbl + texlive-latex-fancybox + texlive-latex-fancyhdr + texlive-latex-fancyvrb + texlive-latex-float + texlive-latex-footmisc + texlive-hyperref + texlive-latex-jknapltx - ;; TODO: Use non-deprecated name on - ;; next rebuild cycle. - texlive-latex-listings + ;; TODO: Use non-deprecated name on + ;; next rebuild cycle. + texlive-latex-listings - texlive-latex-multirow - texlive-latex-overpic - texlive-latex-pdfpages - texlive-latex-refcount - texlive-latex-subfigure - texlive-latex-titlesec - texlive-wasysym + texlive-latex-multirow + texlive-latex-overpic + texlive-latex-pdfpages + texlive-latex-refcount + texlive-latex-subfigure + texlive-latex-titlesec + texlive-wasysym - texlive-fonts-rsfs - texlive-stmaryrd + texlive-fonts-rsfs + texlive-stmaryrd - texlive-generic-iftex))) + texlive-generic-iftex))) ("imagemagick" ,imagemagick) ;for convert - ("inkscape" ,inkscape) ;for svg conversion + ("inkscape" ,inkscape/stable) ;for svg conversion ("docbook" ,docbook-xml) ("libxslt" ,libxslt))) ;for xsltproc (arguments diff --git a/gnu/packages/gnome-xyz.scm b/gnu/packages/gnome-xyz.scm index da316186d5..1cf4793ba7 100644 --- a/gnu/packages/gnome-xyz.scm +++ b/gnu/packages/gnome-xyz.scm @@ -1109,7 +1109,7 @@ of windows.") (list `(,glib "bin") ; for glib-compile-resources gnome-shell gtk+ - inkscape + inkscape/stable optipng pkg-config sassc/libsass-3.5)) diff --git a/gnu/packages/inkscape.scm b/gnu/packages/inkscape.scm index c87f148329..5a06962368 100644 --- a/gnu/packages/inkscape.scm +++ b/gnu/packages/inkscape.scm @@ -52,53 +52,56 @@ #:use-module (gnu packages image) #:use-module (gnu packages pkg-config)) -(define-public inkscape - (package - (name "inkscape") - (version "1.1.1") - (source - (origin - (method url-fetch) - (uri (string-append "https://media.inkscape.org/dl/" - "resources/file/" - "inkscape-" version ".tar.xz")) - (sha256 - (base32 "1bvqg5xfs3m6r7qfdhmgzwhd1hx8wvg3nhvhmalwzcdm6ffhpjmf")) - (modules '((guix build utils) - (ice-9 format))) - (snippet - '(begin - (let-syntax - ;; XXX: The build system doesn't currently support using - ;; system libraries over bundled ones (see: - ;; https://gitlab.com/inkscape/inkscape/issues/876). - ((unbundle - (syntax-rules () - ((_ (name source-dir use-pkg-config?) ...) - (begin - ;; Delete bundled source directories. - (delete-file-recursively source-dir) ... - (substitute* '("src/CMakeLists.txt" - "src/3rdparty/CMakeLists.txt") - (((string-append ".*add_subdirectory\\(" - (basename source-dir) "\\).*")) - "") ...) - ;; Remove bundled entries from INKSCAPE_TARGET_LIBS. - (substitute* "src/CMakeLists.txt" - (((string-append name "_LIB.*")) "") ...) - ;; Register the external libraries, so that their - ;; headers are added to INKSCAPE_INCS_SYS and their - ;; shared libraries added to INKSCAPE_LIBS. - (if use-pkg-config? - (let* ((width (string-length "pkg_check_modules(")) - (indent (string-join (make-list width " ") ""))) - (substitute* "CMakeScripts/DefineDependsandFlags.cmake" - (("^pkg_check_modules\\(INKSCAPE_DEP REQUIRED.*" start) - (string-append start - (format #f "~a~a~%" indent name))))) - (substitute* "CMakeScripts/DefineDependsandFlags.cmake" - (("^find_package\\(Iconv REQUIRED\\).*" start) - (string-append (format #f " +;;; A variant of Inkscape intended to be bumped only on core-updates, to avoid +;;; rebuilding 2k+ packages through dblatex. +(define-public inkscape/stable + (hidden-package + (package + (name "inkscape") + (version "1.1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://media.inkscape.org/dl/" + "resources/file/" + "inkscape-" version ".tar.xz")) + (sha256 + (base32 "1bvqg5xfs3m6r7qfdhmgzwhd1hx8wvg3nhvhmalwzcdm6ffhpjmf")) + (modules '((guix build utils) + (ice-9 format))) + (snippet + '(begin + (let-syntax + ;; XXX: The build system doesn't currently support using + ;; system libraries over bundled ones (see: + ;; https://gitlab.com/inkscape/inkscape/issues/876). + ((unbundle + (syntax-rules () + ((_ (name source-dir use-pkg-config?) ...) + (begin + ;; Delete bundled source directories. + (delete-file-recursively source-dir) ... + (substitute* '("src/CMakeLists.txt" + "src/3rdparty/CMakeLists.txt") + (((string-append ".*add_subdirectory\\(" + (basename source-dir) "\\).*")) + "") ...) + ;; Remove bundled entries from INKSCAPE_TARGET_LIBS. + (substitute* "src/CMakeLists.txt" + (((string-append name "_LIB.*")) "") ...) + ;; Register the external libraries, so that their + ;; headers are added to INKSCAPE_INCS_SYS and their + ;; shared libraries added to INKSCAPE_LIBS. + (if use-pkg-config? + (let* ((width (string-length "pkg_check_modules(")) + (indent (string-join (make-list width " ") ""))) + (substitute* "CMakeScripts/DefineDependsandFlags.cmake" + (("^pkg_check_modules\\(INKSCAPE_DEP REQUIRED.*" start) + (string-append start + (format #f "~a~a~%" indent name))))) + (substitute* "CMakeScripts/DefineDependsandFlags.cmake" + (("^find_package\\(Iconv REQUIRED\\).*" start) + (string-append (format #f " find_path(~a_INCLUDE_DIR NAMES ~:*~a/~:*~a.h ~:*~a.h) if(NOT ~:*~a_INCLUDE_DIR) message(FATAL_ERROR \"~:*~a headers not found\") @@ -112,125 +115,125 @@ if(NOT ~:*~a_LIB) else() list(APPEND INKSCAPE_LIBS ~:*~a_LIB) endif()~%~%" - name) - start)))) ... - ;; Fix the references to the headers of the - ;; unbundled libraries. - (substitute* (find-files "." "\\.h$|\\.cpp$") - (((string-append "#include (\"|<)3rdparty/" - (basename source-dir)) _ quote) - (string-append "#include " quote - (basename source-dir))) - ...)))))) - (unbundle ("2geom" "src/3rdparty/2geom" #t) - ;; libcroco cannot be unbundled as it is heavily - ;; modified (see: - ;; https://gitlab.com/inkscape/inkscape/issues/876#note_276114904). - ;; ("croco" "src/3rdparty/libcroco" #t) - ;; FIXME: Unbundle the following libraries once they - ;; have been packaged. - ;; ("cola" "src/3rdparty/adaptagrams/libcola") - ;; ("avoid" "src/3rdparty/adaptagrams/libavoid") - ;; ("vpsc" "src/3rdparty/adaptagrams/libvpsc") - ;; libuemf cannot be unbundled as it slightly modified - ;; from upstream (see: - ;; https://gitlab.com/inkscape/inkscape/issues/973). - ;; ("uemf" "src/3rdparty/libuemf" #f) - ;; FIXME: libdepixelize upstream is ancient and doesn't - ;; build with a recent lib2geom - ;; (see: https://bugs.launchpad.net/libdepixelize/+bug/1862458). - ;;("depixelize" "src/3rdparty/libdepixelize") - ("autotrace" "src/3rdparty/autotrace" #t))) - ;; Lift the requirement on the double-conversion library, as - ;; it is only needed by lib2geom, which is now unbundled. - (substitute* "CMakeScripts/DefineDependsandFlags.cmake" - ((".*find_package\\(DoubleConversion.*") "")))))) - (build-system cmake-build-system) - (arguments - `(#:test-target "check" ;otherwise some test binaries are missing - #:imported-modules (,@%cmake-build-system-modules - (guix build glib-or-gtk-build-system)) - #:modules ((guix build cmake-build-system) - ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) - (guix build utils)) - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file - (assoc-ref glib-or-gtk:%standard-phases - 'generate-gdk-pixbuf-loaders-cache-file)) - (add-after 'unpack 'patch-icon-cache-generator - (lambda _ - (substitute* "share/icons/application/CMakeLists.txt" - (("gtk-update-icon-cache") "true")))) - (add-after 'unpack 'disable-latex-export-tests - ;; FIXME: For some reason the test.pdf_tex file generated by the - ;; "--export-latex" lacks "some text" in its content when run in - ;; the build environment. Skip the related tests. - (lambda _ - (substitute* "testfiles/cli_tests/CMakeLists.txt" - (("add_cli_test\\(export-latex") - "message(TEST_DISABLED: export-latex")))) - (add-after 'unpack 'set-home - ;; Mute Inkscape warnings during tests. - (lambda _ - (setenv "HOME" (getcwd)))) - ;; Move the check phase after the install phase, as when run in the - ;; tests, Inkscape relies on files that are not yet installed, such - ;; as the "share/inkscape/ui/units.xml" file. - (delete 'check) - (add-after 'install 'check - (assoc-ref %standard-phases 'check)) - (add-after 'install 'glib-or-gtk-compile-schemas - (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas)) - (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap - (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) - (add-after 'install 'wrap-program - ;; Ensure Python is available at runtime. - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (wrap-program (string-append out "/bin/inkscape") - `("GUIX_PYTHONPATH" ":" prefix - (,(getenv "GUIX_PYTHONPATH")))))))))) - (inputs - `(("aspell" ,aspell) - ("autotrace" ,autotrace) - ("gdl" ,gdl-minimal) - ("gtkmm" ,gtkmm-3) - ("gtk" ,gtk+) - ("gtkspell3" ,gtkspell3) - ("gsl" ,gsl) - ("poppler" ,poppler) - ("lib2geom" ,lib2geom) - ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("libxml2" ,libxml2) - ("libxslt" ,libxslt) - ("libgc" ,libgc) - ("libsoup" ,libsoup-minimal-2) - ("libcdr" ,libcdr) - ("libvisio" ,libvisio) - ("libwpd" ,libwpd) - ("libwpg" ,libwpg) - ("freetype" ,freetype) - ("popt" ,popt) - ("potrace" ,potrace) - ("lcms" ,lcms) - ("boost" ,boost) - ("python" ,python-wrapper) - ("python-scour" ,python-scour) - ("python-pyserial" ,python-pyserial) - ("python-numpy" ,python-numpy) - ("python-lxml" ,python-lxml))) - (native-inputs - (list imagemagick ;for tests - intltool - `(,glib "bin") - googletest - perl - pkg-config)) - (home-page "https://inkscape.org/") - (synopsis "Vector graphics editor") - (description "Inkscape is a vector graphics editor. What sets Inkscape + name) + start)))) ... + ;; Fix the references to the headers of the + ;; unbundled libraries. + (substitute* (find-files "." "\\.h$|\\.cpp$") + (((string-append "#include (\"|<)3rdparty/" + (basename source-dir)) _ quote) + (string-append "#include " quote + (basename source-dir))) + ...)))))) + (unbundle ("2geom" "src/3rdparty/2geom" #t) + ;; libcroco cannot be unbundled as it is heavily + ;; modified (see: + ;; https://gitlab.com/inkscape/inkscape/issues/876#note_276114904). + ;; ("croco" "src/3rdparty/libcroco" #t) + ;; FIXME: Unbundle the following libraries once they + ;; have been packaged. + ;; ("cola" "src/3rdparty/adaptagrams/libcola") + ;; ("avoid" "src/3rdparty/adaptagrams/libavoid") + ;; ("vpsc" "src/3rdparty/adaptagrams/libvpsc") + ;; libuemf cannot be unbundled as it slightly modified + ;; from upstream (see: + ;; https://gitlab.com/inkscape/inkscape/issues/973). + ;; ("uemf" "src/3rdparty/libuemf" #f) + ;; FIXME: libdepixelize upstream is ancient and doesn't + ;; build with a recent lib2geom + ;; (see: https://bugs.launchpad.net/libdepixelize/+bug/1862458). + ;;("depixelize" "src/3rdparty/libdepixelize") + ("autotrace" "src/3rdparty/autotrace" #t))) + ;; Lift the requirement on the double-conversion library, as + ;; it is only needed by lib2geom, which is now unbundled. + (substitute* "CMakeScripts/DefineDependsandFlags.cmake" + ((".*find_package\\(DoubleConversion.*") "")))))) + (build-system cmake-build-system) + (arguments + `(#:test-target "check" ;otherwise some test binaries are missing + #:imported-modules (,@%cmake-build-system-modules + (guix build glib-or-gtk-build-system)) + #:modules ((guix build cmake-build-system) + ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file + (assoc-ref glib-or-gtk:%standard-phases + 'generate-gdk-pixbuf-loaders-cache-file)) + (add-after 'unpack 'patch-icon-cache-generator + (lambda _ + (substitute* "share/icons/application/CMakeLists.txt" + (("gtk-update-icon-cache") "true")))) + (add-after 'unpack 'disable-latex-export-tests + ;; FIXME: For some reason the test.pdf_tex file generated by the + ;; "--export-latex" lacks "some text" in its content when run in + ;; the build environment. Skip the related tests. + (lambda _ + (substitute* "testfiles/cli_tests/CMakeLists.txt" + (("add_cli_test\\(export-latex") + "message(TEST_DISABLED: export-latex")))) + (add-after 'unpack 'set-home + ;; Mute Inkscape warnings during tests. + (lambda _ + (setenv "HOME" (getcwd)))) + ;; Move the check phase after the install phase, as when run in the + ;; tests, Inkscape relies on files that are not yet installed, such + ;; as the "share/inkscape/ui/units.xml" file. + (delete 'check) + (add-after 'install 'check + (assoc-ref %standard-phases 'check)) + (add-after 'install 'glib-or-gtk-compile-schemas + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas)) + (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) + (add-after 'install 'wrap-program + ;; Ensure Python is available at runtime. + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/inkscape") + `("GUIX_PYTHONPATH" ":" prefix + (,(getenv "GUIX_PYTHONPATH")))))))))) + (inputs + `(("aspell" ,aspell) + ("autotrace" ,autotrace) + ("gdl" ,gdl-minimal) + ("gtkmm" ,gtkmm-3) + ("gtk" ,gtk+) + ("gtkspell3" ,gtkspell3) + ("gsl" ,gsl) + ("poppler" ,poppler) + ("lib2geom" ,lib2geom) + ("libjpeg" ,libjpeg-turbo) + ("libpng" ,libpng) + ("libxml2" ,libxml2) + ("libxslt" ,libxslt) + ("libgc" ,libgc) + ("libsoup" ,libsoup-minimal-2) + ("libcdr" ,libcdr) + ("libvisio" ,libvisio) + ("libwpd" ,libwpd) + ("libwpg" ,libwpg) + ("freetype" ,freetype) + ("popt" ,popt) + ("potrace" ,potrace) + ("lcms" ,lcms) + ("boost" ,boost) + ("python" ,python-wrapper) + ("python-scour" ,python-scour) + ("python-pyserial" ,python-pyserial) + ("python-numpy" ,python-numpy) + ("python-lxml" ,python-lxml))) + (native-inputs + (list imagemagick ;for tests + intltool + `(,glib "bin") + googletest + perl + pkg-config)) + (home-page "https://inkscape.org/") + (synopsis "Vector graphics editor") + (description "Inkscape is a vector graphics editor. What sets Inkscape apart is its use of Scalable Vector Graphics (SVG), an XML-based W3C standard, as the native format.") - (license license:gpl3+))) ;see the file COPYING + (license license:gpl3+)))) ;see the file COPYING diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f146746058..efcd51db95 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -6455,7 +6455,7 @@ toolkits.") (string-append info "/matplotlib-figures")))))))) (native-inputs (list graphviz - inkscape + inkscape/stable python-colorspacious python-mpl-sphinx-theme python-scipy @@ -13148,7 +13148,7 @@ time.") "and not test_execute_widgets_from_nbconvert " "and not test_execute_multiple_notebooks "))))))))) (inputs - (list inkscape pandoc)) + (list inkscape/stable pandoc)) (native-inputs (list python-ipykernel ;; Adding ipywidgets would create a cycle. diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm index ddd484b165..323ecd3042 100644 --- a/gnu/packages/xfce.scm +++ b/gnu/packages/xfce.scm @@ -862,11 +862,11 @@ on the screen.") "backgrounds/xfce-verticals.png")) #t))) - #:disallowed-references (,inkscape ,imagemagick))) + #:disallowed-references (,inkscape/stable ,imagemagick))) (native-inputs (list pkg-config intltool ;; For our own ‘prepare-background-image’ phase. - inkscape imagemagick)) + inkscape/stable imagemagick)) (inputs (list exo garcon diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index e5c255c33d..6a424b71d2 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -2206,7 +2206,7 @@ X server: @code{handhelds}, @code{redglass} and @code{whiteglass}.") (lambda* (#:key make-flags #:allow-other-keys) (apply invoke `("make" "install" ,@make-flags "THEME_NAME=Hackneyed-Dark"))))))) - (native-inputs (list imagemagick inkscape xcursorgen)) + (native-inputs (list imagemagick inkscape/stable xcursorgen)) (home-page "https://gitlab.com/Enthymeme/hackneyed-x11-cursors") (synopsis "Classic cursor theme for X11") (description "Hackneyed is a scalable cursor theme mildly resembling old -- cgit v1.2.3 From 5b48591176a08bddfd0147bd854785fb4f6a62ba Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 13 Jul 2022 22:05:12 +0200 Subject: gnu: python-pillow: Update to 9.2.0. * gnu/packages/python-xyz.scm (python-pillow): Update to 9.2.0. --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 1d841b641d..4eecdc3560 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -6855,13 +6855,13 @@ retrieve text and metadata from PDFs as well as merge entire files together.") (define-public python-pillow (package (name "python-pillow") - (version "9.0.0") + (version "9.2.0") (source (origin (method url-fetch) (uri (pypi-uri "Pillow" version)) (sha256 (base32 - "0gjry0yqryd2678sm47jhdnbghzxn5wk8pgyaqwr4qi7x5ijjvpf")) + "011wgm1mssjchpva9wsi2a07im9czyjvik137xlp5f0g7vykdrkm")) (modules '((guix build utils))) (snippet '(begin (delete-file-recursively "src/thirdparty"))))) -- cgit v1.2.3 From 692c2ad327f9e85de5f0b850d86674762558cc05 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Wed, 13 Jul 2022 22:34:58 -0400 Subject: gnu: python-gevent: Disable failing test on i686-linux. Fixes . * gnu/packages/python-xyz.scm (python-gevent) [phases]{adjust-tests}: Skip the test__core_stat.py test suite. --- gnu/packages/python-xyz.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index efcd51db95..cd81cee0f9 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -16220,7 +16220,11 @@ graphviz.") "test__doctests.py" "test__all__.py" "test___config.py" - "test__execmodules.py"))) + "test__execmodules.py" + ;; This test contains 'test_unlink', which + ;; fails on i686 (see: + ;; https://github.com/gevent/gevent/issues/1558). + "test__core_stat.py"))) (call-with-output-file "skipped_tests.txt" (lambda (port) (format port "~a~%" -- cgit v1.2.3 From 57629484b0bbedf65b52ea1b832c37aae4ac26da Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 15 Jul 2022 15:31:41 +0300 Subject: gnu: python-numpy: Fix buidling on powerpc64le-linux. Reported by mrvdb- on IRC. * gnu/packages/python-xyz.scm (python-numpy)[arguments]: Adjust custom 'fix-executable-paths phase to substitute occurrences of '/bin/true'. --- gnu/packages/python-xyz.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index cd81cee0f9..7f6bbd55be 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5562,7 +5562,10 @@ include_dirs = ~:*~a/include~%" #$(this-package-input "openblas")))))) ;; instead of /bin/sh. (substitute* "numpy/distutils/exec_command.py" (("'/bin/sh'") - (format #f "~s" (search-input-file inputs "bin/bash")))))) + (format #f "~s" (search-input-file inputs "bin/bash")))) + ;; Don't try to call '/bin/true' specifically. + (substitute* "numpy/core/tests/test_cpu_features.py" + (("/bin/true") (search-input-file inputs "bin/true"))))) (replace 'check (lambda* (#:key tests? outputs inputs #:allow-other-keys) (when tests? -- cgit v1.2.3 From 1f22184b2236996b5ef20fbcfa7805f94250a147 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 16 Jul 2022 17:10:13 +0200 Subject: gnu: python-attrs: Disable test deadline on all architectures. * gnu/packages/python-xyz.scm (python-attrs)[arguments]: Remove conditional. --- gnu/packages/python-xyz.scm | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0885d976bd..62ca287449 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -19000,15 +19000,12 @@ from the header, as well as section details and data available.") (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases - ,@(if (target-riscv64?) - ;; TODO: Remove the conditional on staging. - `((add-after 'unpack 'remove-test-hypothesis-deadlines - (lambda _ - (substitute* "tests/test_make.py" - (("assume, given") "assume, given, settings") - (("( +)@given" all spaces) - (string-append spaces "@settings(deadline=None)\n" all)))))) - '()) + (add-after 'unpack 'remove-test-hypothesis-deadlines + (lambda _ + (substitute* "tests/test_make.py" + (("assume, given") "assume, given, settings") + (("( +)@given" all spaces) + (string-append spaces "@settings(deadline=None)\n" all))))) (replace 'check (lambda* (#:key tests? #:allow-other-keys) (when tests? -- cgit v1.2.3 From 8d241c685a35227cd6b733dc16a5ca9a60480722 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 16 Jul 2022 17:19:09 +0200 Subject: gnu: python-chardet: Update to 5.0.0. * gnu/packages/python-xyz.scm (python-chardet): Update to 5.0.0. --- gnu/packages/python-xyz.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 62ca287449..a9371dccd2 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -13495,14 +13495,14 @@ simulation, statistical modeling, machine learning and much more.") (define-public python-chardet (package (name "python-chardet") - (version "4.0.0") + (version "5.0.0") (source (origin (method url-fetch) (uri (pypi-uri "chardet" version)) (sha256 (base32 - "1ykr04qyhgpc0h5b7dhqw4g92b1xv7ki2ky910mhy4mlbnhm6vqd")))) + "1amqmz8731ly6f9rkbk09w4jqgmmgyxykd1bawhgrdbqzlmxys03")))) (native-inputs (list python-pytest)) (build-system python-build-system) @@ -13511,7 +13511,10 @@ simulation, statistical modeling, machine learning and much more.") #~(modify-phases %standard-phases (replace 'check (lambda _ - (invoke "pytest" "-vv"))) + (invoke "pytest" "-vv" "-k" + ;; Disable test that fails sporadically: + ;; https://github.com/chardet/chardet/issues/256 + "not test_detect_all_and_detect_one_should_agree"))) ;; This package provides a 'chardetect' executable that only ;; depends on Python, so customize the wrap phase to avoid ;; adding pytest and friends in order to save size. -- cgit v1.2.3 From fce8de7800cb260df358b4715ff52b51d12ebf70 Mon Sep 17 00:00:00 2001 From: jgart Date: Fri, 8 Jul 2022 04:29:34 -0500 Subject: gnu: Add python-clrprint. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/python-xyz.scm (python-clrprint): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 7f6bbd55be..0ab4755fcc 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -30093,6 +30093,26 @@ profile. It supports: Currently, Linux is the only platform supported by this library.") (license license:expat))) +(define-public python-clrprint + (package + (name "python-clrprint") + (version "2.0.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "clrprint" version)) + (sha256 + (base32 + "0xfn8d1by2w7pjiji887qljk1avn4fylbnz1mj28gysm5g0zvy43")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ;there are no tests + (propagated-inputs (list python-colorama python-termcolor)) + (home-page "https://github.com/AbhijithAJ/clrprint") + (synopsis "Print colorful output in the terminal") + (description "@code{clrprint} is developed to print colorful output in the +terminal. It has red, blue, green, yellow, purple and black/white (default) +colors.") + (license license:expat))) + (define-public python-musical-scales (package (name "python-musical-scales") -- cgit v1.2.3 From f2e6891f7de2ade67e0e03ca2c80f6c50c0a7b1f Mon Sep 17 00:00:00 2001 From: Antero Mejr Date: Sat, 9 Jul 2022 18:34:37 +0000 Subject: gnu: Add python-bsdiff4. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/python-xyz.scm (python-bsdiff4): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0ab4755fcc..11f709f7b5 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -30182,3 +30182,24 @@ GeoPackage Binary") GeoJSON to WKT/WKB (Well-Known Text/Binary) or GeoPackage Binary, and vice versa. Extended WKB/WKT are also supported.") (license license:asl2.0))) + +(define-public python-bsdiff4 + (package + (name "python-bsdiff4") + (version "1.2.2") + (home-page "https://github.com/ilanschnell/bsdiff4") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1fa0vkmbr0a9xifq7i5gfcf7ifn739i1fdij8awynm299fsqvvhx")))) + (build-system python-build-system) + (synopsis "Binary diff and patch using the BSDIFF4 format") + (description "This package provides a Python library for the @code{bsdiff} +binary diff utility. It also provides two command-line tools, @code{bsdiff4} +and @code{bspatch4}.") + (license license:bsd-2))) -- cgit v1.2.3