summary refs log tree commit diff
path: root/gnu/packages/python-build.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-12-20 12:30:52 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-01-10 11:44:40 -0500
commit3b3fb28086aeb12188efc1be1bd2ced670acdbe7 (patch)
tree9968dea8e9995613d8ae086349b5cbfeb9a57fd7 /gnu/packages/python-build.scm
parent0be45b28a959ce0909c7f7b1232c3d9f40e87ea4 (diff)
downloadguix-3b3fb28086aeb12188efc1be1bd2ced670acdbe7.tar.gz
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.
Diffstat (limited to 'gnu/packages/python-build.scm')
-rw-r--r--gnu/packages/python-build.scm14
1 files 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 @@ Python file, so it can be easily copied into your project.")
                (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 @@ a light weight, fully compliant, self-contained package allowing PEP 517
 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 @@ compatible build front-ends to build Poetry managed projects.")
 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)))))