diff --git a/zilti/packages/python.scm b/zilti/packages/python.scm index b751b85..719b825 100644 --- a/zilti/packages/python.scm +++ b/zilti/packages/python.scm @@ -13,6 +13,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages check) + #:use-module (gnu packages cmake) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages databases) @@ -63,9 +64,32 @@ (sha256 (base32 "1wswxrn4givsm917mfl39rafgadimf1sldpbjdjws00g1wx36hf0")))) - (build-system python-build-system) + (build-system pyproject-build-system) (arguments - '(#:tests? #f)) + (list #:tests? #f)) + (home-page "https://aws.amazon.com/cli/") + (synopsis "Command line client for AWS") + (description "AWS CLI provides a unified command line interface to the +Amazon Web Services (AWS) API.") + (license license:asl2.0))) + +(define-public python-ruamel-yaml-clib + (package + (name "python-ruamel-yaml-clib") + (version "0.2.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "ruamel.yaml.clib" version)) + (sha256 + (base32 + "15wlbw7wys3nana0xgip8mgjlpcr1f2qwrvivf04377a5ddgs20z")))) + (build-system pyproject-build-system) + (arguments + (list #:tests? #f)) + (inputs + (list python-ruamel-base + python-ruamel-yaml)) (home-page "https://aws.amazon.com/cli/") (synopsis "Command line client for AWS") (description "AWS CLI provides a unified command line interface to the @@ -74,25 +98,50 @@ Amazon Web Services (AWS) API.") (define-public python-ruamel-yaml (package - (name "python-ruamel-yaml") - (version "0.17.32") - (source - (origin - (method url-fetch) - (uri (pypi-uri "ruamel.yaml" version)) - (sha256 - (base32 - "1hpg033cyw7h3kv44qxbb443phikdnx5qalp892y250rfrir14zc")))) - (build-system python-build-system) - (arguments - '(#:tests? #f)) - (inputs - (list python-ruamel-base)) - (home-page "https://aws.amazon.com/cli/") - (synopsis "Command line client for AWS") - (description "AWS CLI provides a unified command line interface to the + (name "python-ruamel-yaml") + (version "0.17.32") + (source + (origin + (method url-fetch) + (uri (pypi-uri "ruamel.yaml" version)) + (sha256 + (base32 + "1hpg033cyw7h3kv44qxbb443phikdnx5qalp892y250rfrir14zc")))) + (build-system pyproject-build-system) + (arguments + (list #:tests? #f + #:phases + #~(modify-phases %standard-phases + (delete 'sanity-check)))) + (inputs + (list python-ruamel-base)) + (home-page "https://aws.amazon.com/cli/") + (synopsis "Command line client for AWS") + (description "AWS CLI provides a unified command line interface to the Amazon Web Services (AWS) API.") - (license license:asl2.0))) + (license license:asl2.0))) + +(define-public python-awscrt + (package + (name "python-awscrt") + (version "0.20.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "awscrt" version)) + (sha256 + (base32 + "1li94chzfaqam3vkwaw33j2c861g5lg9vkybnnx72crq6m5yk75z")))) + (build-system pyproject-build-system) + (arguments + (list #:tests? #f)) + (inputs + (list cmake)) + (home-page "https://aws.amazon.com/cli/") + (synopsis "Command line client for AWS") + (description "AWS CLI provides a unified command line interface to the +Amazon Web Services (AWS) API.") + (license license:asl2.0))) (define-public awscli-2 (package @@ -111,29 +160,41 @@ Amazon Web Services (AWS) API.") (build-system gnu-build-system) (arguments ;; FIXME: The 'pypi' release does not contain tests. - '(#:tests? #f - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'fix-reference-to-groff - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "awscli/help.py" - (("if not self._exists_on_path\\('groff'\\):") "") - (("raise ExecutableNotFoundError\\('groff'\\)") "") - (("cmdline = \\['groff'") - (string-append "cmdline = ['" - (search-input-file inputs "bin/groff") - "'")))))))) + '(#:phases + (modify-phases + %standard-phases + (add-after 'unpack 'relax-requirements + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "pyproject.toml" + (("cryptography>=3.3.2,<40.0.2") "cryptography>=3.3.2") + (("flit_core>=3.7.1,<3.8.1") "flit_core>=3.7.1") + (("awscrt>=0.19.18,<=0.19.19") "awscrt>=0.16.4") + (("ruamel.yaml>=0.15.0,<=0.17.21") "ruamel.yaml>=0.15.0") + (("ruamel.yaml.clib>=0.2.0,<=0.2.7") "ruamel.yaml.clib>=0.2.0")))) + (add-after 'unpack 'fix-reference-to-groff + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "awscli/help.py" + (("if not self._exists_on_path\\('groff'\\):") "") + (("raise ExecutableNotFoundError\\('groff'\\)") "") + (("cmdline = \\['groff'") + (string-append "cmdline = ['" + (search-input-file inputs "bin/groff") + "'")))))))) (inputs (list groff + python-awscrt python-wrapper python-colorama-for-awscli python-botocore + python-distro python-flit-core python-importlib-resources python-executor python-s3transfer python-docutils-0.15 - python-pyyaml + python-prompt-toolkit + python-ruamel-yaml + python-ruamel-yaml-clib python-rsa)) (home-page "https://aws.amazon.com/cli/") (synopsis "Command line client for AWS")