From 3b3fb28086aeb12188efc1be1bd2ced670acdbe7 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 12:30:52 -0500 Subject: [PATCH] gnu: python-flit-core: Propagate python-tomli instead of python-toml. Flit Core apparently requires tomli at runtime rather than toml. This means we must build a toml-less python-flit-core first, for bootstrapping purposes. * gnu/packages/python-build.scm (python-flit-core-bootstrap): New variable. (python-flit-core): Inherit from the above, replacing the propagated python-toml by python-tomli. (python-tomli): Adjust accordingly. --- gnu/packages/python-build.scm | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm index 29a2bdc2f7..a972a752be 100644 --- a/gnu/packages/python-build.scm +++ b/gnu/packages/python-build.scm @@ -163,7 +163,7 @@ (define-public python-tomli (invoke "pip" "--no-cache-dir" "--no-input" "install" "--no-deps" "--prefix" out whl))))))) (native-inputs - `(("python-flit-core" ,python-flit-core) + `(("python-flit-core-bootstrap" ,python-flit-core-bootstrap) ("python-pypa-build" ,python-pypa-build) ("python-six", python-six-bootstrap))) (home-page "https://github.com/hukkin/tomli") @@ -347,9 +347,10 @@ (define-public python-poetry-core compatible build front-ends to build Poetry managed projects.") (license license:expat))) -(define-public python-flit-core +;;; This package exists to bootstrap python-tomli. +(define-public python-flit-core-bootstrap (package - (name "python-flit-core") + (name "python-flit-core-bootstrap") (version "3.5.1") (source (origin @@ -387,3 +388,10 @@ (define-public python-flit-core backend for packages using Flit. The only public interface is the API specified by PEP 517, @code{flit_core.buildapi}.") (license license:bsd-3))) + +(define-public python-flit-core + (package/inherit python-flit-core-bootstrap + (name "python-flit-core") + (propagated-inputs + (modify-inputs (package-propagated-inputs python-flit-core-bootstrap) + (replace "python-toml" python-tomli)))))