Compare commits
3 Commits
86f2b51617
...
183b2c0e59
Author | SHA1 | Date | |
---|---|---|---|
183b2c0e59 | |||
e361a06790 | |||
38b6d29c1f |
@ -186,302 +186,6 @@
|
|||||||
(description "Python Development Workflow for Humans.")
|
(description "Python Development Workflow for Humans.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
;; TODO: Candidate for upstream; upstream has version 4.0.2;
|
|
||||||
(define-public python-ujson
|
|
||||||
(package
|
|
||||||
(name "python-ujson")
|
|
||||||
(version "2.0.3")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "ujson" version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"18z9gb9ggy1r464b9q1gqs078mqgrkj6dys5a47529rqk3yfybdx"))
|
|
||||||
(modules '((guix build utils)))
|
|
||||||
(snippet '(begin
|
|
||||||
(delete-file-recursively "deps") #t))))
|
|
||||||
(build-system python-build-system)
|
|
||||||
(arguments
|
|
||||||
`(#:phases (modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'link-to-system-double-conversion
|
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
(let ((d-c (assoc-ref inputs "double-conversion")))
|
|
||||||
(substitute* "setup.py"
|
|
||||||
(("./deps/double-conversion/double-conversion\"")
|
|
||||||
(string-append d-c "/include/double-conversion\""))
|
|
||||||
(("-lstdc++" stdc)
|
|
||||||
(string-append "-L"
|
|
||||||
d-c
|
|
||||||
"/lib\","
|
|
||||||
" \"-ldouble-conversion\","
|
|
||||||
" \""
|
|
||||||
stdc))) #t)))
|
|
||||||
(replace 'check
|
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
|
||||||
(add-installed-pythonpath inputs outputs)
|
|
||||||
(invoke "pytest"))))))
|
|
||||||
(native-inputs `(("double-conversion" ,double-conversion)
|
|
||||||
("python-setuptools-scm" ,python-setuptools-scm)
|
|
||||||
("python-pytest" ,python-pytest)))
|
|
||||||
(home-page "https://github.com/ultrajson/ultrajson")
|
|
||||||
(synopsis "Ultra fast JSON encoder and decoder for Python")
|
|
||||||
(description
|
|
||||||
"UltraJSON is an ultra fast JSON encoder and decoder written in pure C with
|
|
||||||
bindings for Python 3.")
|
|
||||||
(license license:bsd-3)))
|
|
||||||
|
|
||||||
;; python-prompt-toolkit-2 was removed upstream from guix's channel; added here as awscliv2 depends on it
|
|
||||||
;; awscliv2 depends on 'prompt-toolkit<3.0.29,>=3.0.24', however upstream 3.0.29 is packaged
|
|
||||||
(define-public python-prompt-toolkit-3.0.28
|
|
||||||
(package/inherit python-prompt-toolkit
|
|
||||||
(name "python-prompt-toolkit")
|
|
||||||
(version "3.0.28")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "prompt_toolkit" version))
|
|
||||||
(sha256 (base32
|
|
||||||
"0l0nnm9fvs8lklk2qq8mylb9jrlxvlqzpmqr4n7rdhl63rmx274z"))))))
|
|
||||||
|
|
||||||
(define-public python-ruamel.yaml-0.17
|
|
||||||
(package
|
|
||||||
(name "python-ruamel.yaml")
|
|
||||||
(version "0.17.21")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "ruamel.yaml" version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1bxp4dfkzzsndf9f8fspr4jc85nwf5243b616lm7a4pjlabycz4b"))))
|
|
||||||
(build-system python-build-system)
|
|
||||||
(native-inputs
|
|
||||||
`(("python-pytest" ,python-pytest)))
|
|
||||||
(arguments
|
|
||||||
`(;; TODO: Tests require packaging "ruamel.std.pathlib".
|
|
||||||
#:tests? #f
|
|
||||||
#:phases (modify-phases %standard-phases
|
|
||||||
;; sanity-check depends on python-ruamel.yaml
|
|
||||||
(delete 'sanity-check))))
|
|
||||||
(home-page "https://bitbucket.org/ruamel/yaml")
|
|
||||||
(synopsis "YAML 1.2 parser/emitter")
|
|
||||||
(description
|
|
||||||
"This package provides YAML parser/emitter that supports roundtrip
|
|
||||||
preservation of comments, seq/map flow style, and map key order. It
|
|
||||||
is a derivative of Kirill Simonov’s PyYAML 3.11. It supports YAML 1.2
|
|
||||||
and has round-trip loaders and dumpers. It supports comments. Block
|
|
||||||
style and key ordering are kept, so you can diff the source.")
|
|
||||||
(license license:expat)))
|
|
||||||
|
|
||||||
(define-public python-ruamel.yaml.clib-0.2.6
|
|
||||||
(package
|
|
||||||
(name "python-ruamel.yaml.clib")
|
|
||||||
(version "0.2.6")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
;; pypi release code has cythonized code without corresponding source.
|
|
||||||
(method hg-fetch)
|
|
||||||
(uri (hg-reference
|
|
||||||
(url "http://hg.code.sf.net/p/ruamel-yaml-clib/code")
|
|
||||||
(changeset version)))
|
|
||||||
(file-name (string-append name "-" version "-checkout"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"05m3y7pjfbaarqbbgw1k6gs6cnnmxnwadjipxvw1aaaqk3s236cs"))
|
|
||||||
(modules '((guix build utils)))
|
|
||||||
(snippet
|
|
||||||
'(begin
|
|
||||||
(delete-file "_ruamel_yaml.c")))))
|
|
||||||
(build-system python-build-system)
|
|
||||||
(arguments
|
|
||||||
`(#:tests? #f ; This package is split from python-ruamel.yaml and
|
|
||||||
; depends on modules from it for the test suite.
|
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(delete 'sanity-check) ; Depends on python-ruamel.yaml
|
|
||||||
(add-after 'unpack 'cythonize-code
|
|
||||||
(lambda _
|
|
||||||
(invoke "cython" "_ruamel_yaml.pyx"))))))
|
|
||||||
(native-inputs
|
|
||||||
`(("python-cython" ,python-cython)))
|
|
||||||
(home-page "https://sourceforge.net/p/ruamel-yaml-clib/code/ci/default/tree")
|
|
||||||
(synopsis "C version of reader, parser and emitter for ruamel.yaml")
|
|
||||||
(description
|
|
||||||
"This package provides a C version of the reader, parser and emitter for
|
|
||||||
@code{ruamel.yaml} derived from libyaml.")
|
|
||||||
(license license:expat)))
|
|
||||||
|
|
||||||
;; awscliv2 is a little bit of a packaging mess. They vendor multiple modified
|
|
||||||
;; forks of software also maintained by the same company. Namely:
|
|
||||||
;;
|
|
||||||
;; - botocore@2.0.0dev155 and some of its dependencies:
|
|
||||||
;; - python-six@1.10.0
|
|
||||||
;; - Fragments (exceptions only) were extracted from:
|
|
||||||
;; - requests
|
|
||||||
;; - urllib3
|
|
||||||
;; - s3transfer@0.5.1
|
|
||||||
;;
|
|
||||||
;; botocore@2.0.0dev155 is incompatable with the same upstream version. For example:
|
|
||||||
;; https://github.com/aws/aws-cli/blob/2.15.4/awscli/botocore/httpchecksum.py
|
|
||||||
;; does not exist upstream (see: https://github.com/boto/botocore/tree/7083e5c204e139dc41f646e0ad85286b5e7c0c23/botocore)
|
|
||||||
(define-public awscliv2
|
|
||||||
(package
|
|
||||||
(name "awscliv2")
|
|
||||||
(version "2.15.6")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/aws/aws-cli")
|
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"02lq4zxnksx1ab8lyzbyl1lay884xbrxp77rbhn5mrfib9mqmvs0"))))
|
|
||||||
(native-inputs (list python-distro-1.5
|
|
||||||
python-docutils-0.15
|
|
||||||
python-awscrt-0.19.18
|
|
||||||
python-flit-core
|
|
||||||
python-prompt-toolkit-3.0.28
|
|
||||||
python-ruamel.yaml-0.17
|
|
||||||
python-ruamel.yaml.clib-0.2.6
|
|
||||||
python-cryptography
|
|
||||||
python-botocore-2.0.0dev155))
|
|
||||||
(inputs
|
|
||||||
(list groff
|
|
||||||
python-colorama-for-awscli
|
|
||||||
python-docutils-0.15
|
|
||||||
python-pyyaml
|
|
||||||
python-rsa))
|
|
||||||
(build-system pyproject-build-system)
|
|
||||||
(arguments
|
|
||||||
`(#:build-backend "backends.pep517"
|
|
||||||
#:phases (modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'use-cryptography-v41
|
|
||||||
(lambda _
|
|
||||||
(substitute* '("pyproject.toml")
|
|
||||||
(("cryptography>=3.3.2,<40.0.2") "cryptography>=3.3.2"))))
|
|
||||||
(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")
|
|
||||||
"'")))))
|
|
||||||
(add-after 'install 'install-completions
|
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
|
||||||
(bash-completion (string-append out
|
|
||||||
"/share/bash-completion/completions"))
|
|
||||||
(zsh-site-functions (string-append out
|
|
||||||
"/share/zsh/site-functions")))
|
|
||||||
(mkdir-p bash-completion)
|
|
||||||
(call-with-output-file (string-append bash-completion
|
|
||||||
"/aws")
|
|
||||||
(lambda (port)
|
|
||||||
(format port
|
|
||||||
(string-join (list "complete" "-C"
|
|
||||||
(string-append out
|
|
||||||
"/bin/aws_completer")
|
|
||||||
"aws")))))
|
|
||||||
|
|
||||||
(mkdir-p zsh-site-functions)
|
|
||||||
(rename-file (string-append out
|
|
||||||
"/bin/aws_zsh_completer.sh")
|
|
||||||
(string-append zsh-site-functions "/_aws"))
|
|
||||||
#t))))
|
|
||||||
;; FIXME: Tests currently fail
|
|
||||||
#:tests? #f))
|
|
||||||
(home-page "https://aws.amazon.com/cli/")
|
|
||||||
(synopsis "Command line client for AWS v2")
|
|
||||||
(description "AWS CLI provides a unified command line interface to the
|
|
||||||
Amazon Web Services (AWS) API.")
|
|
||||||
(license license:asl2.0)))
|
|
||||||
|
|
||||||
(define-public python-jmespath-0.10
|
|
||||||
(package
|
|
||||||
(inherit python-jmespath)
|
|
||||||
(version "0.10.0")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "jmespath" version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1yflbqggg1z9ndw9ps771hy36d07j9l2wwbj66lljqb6p1khapdq"))))))
|
|
||||||
|
|
||||||
(define-public python-distro-1.5
|
|
||||||
(package
|
|
||||||
(inherit python-distro)
|
|
||||||
(version "1.5.0")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "distro" version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"14nz51cqlnxmgfqqilxyvjwwa5xfivdvlm0d0b1qzgcgwdm7an0f"))))))
|
|
||||||
|
|
||||||
(define-public python-awscrt
|
|
||||||
(package
|
|
||||||
(name "python-awscrt")
|
|
||||||
(version "0.12.4")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "awscrt" version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1cmfkcv2zzirxsb989vx1hvna9nv24pghcvypl0zaxsjphv97mka"))))
|
|
||||||
(build-system python-build-system)
|
|
||||||
(arguments
|
|
||||||
'(#:tests? #f))
|
|
||||||
(native-inputs `(,cmake ,gcc-toolchain-10))
|
|
||||||
; (propagated-inputs `(("python-boto3" ,python-boto3)))
|
|
||||||
(home-page "https://github.com/awslabs/aws-crt-python")
|
|
||||||
(synopsis "Common runtime for AWS Python projects")
|
|
||||||
(description "Common runtime for AWS Python projects")
|
|
||||||
(license license:asl2.0)))
|
|
||||||
|
|
||||||
(define-public python-awscrt-0.19.18
|
|
||||||
(package
|
|
||||||
(name "python-awscrt")
|
|
||||||
(version "0.19.18")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "awscrt" version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"17f8j3n9zsywad48pnq1mz6r9i9y7jdcaliy7zm85q5yivynw2rm"))))
|
|
||||||
(build-system pyproject-build-system)
|
|
||||||
(arguments
|
|
||||||
'(#:tests? #f))
|
|
||||||
(native-inputs `(,cmake))
|
|
||||||
; (propagated-inputs `(("python-boto3" ,python-boto3)))
|
|
||||||
(home-page "https://github.com/awslabs/aws-crt-python")
|
|
||||||
(synopsis "Common runtime for AWS Python projects")
|
|
||||||
(description "Common runtime for AWS Python projects")
|
|
||||||
(license license:asl2.0)))
|
|
||||||
|
|
||||||
(define-public python-botocore-2.0.0dev155
|
|
||||||
(let ((commit "7083e5c204e139dc41f646e0ad85286b5e7c0c23")
|
|
||||||
(revision "2"))
|
|
||||||
(package
|
|
||||||
(inherit python-botocore)
|
|
||||||
(name "python-botocore")
|
|
||||||
(version "2.0.0dev155")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/boto/botocore")
|
|
||||||
(commit commit)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0lr98h80fgs6kplv52y92pcf1ba4041zq26wdfsfjkg84py9q83a"))))
|
|
||||||
(propagated-inputs `(("python-awscrt" ,python-awscrt)
|
|
||||||
("python-jmespath" ,python-jmespath-0.10)
|
|
||||||
("python-urllib3" ,python-urllib3)
|
|
||||||
("python-dateutil" ,python-dateutil)
|
|
||||||
,@(package-propagated-inputs python-awscrt))))))
|
|
||||||
|
|
||||||
(define-public python-htmlark
|
(define-public python-htmlark
|
||||||
(package
|
(package
|
||||||
(name "python-htmlark")
|
(name "python-htmlark")
|
||||||
|
Loading…
Reference in New Issue
Block a user