diff options
author | Edouard Klein <edk@beaver-labs.com> | 2020-05-25 11:32:47 +0200 |
---|---|---|
committer | Guix Patches Tester <> | 2020-05-25 10:35:13 +0100 |
commit | de10b460ce327e96c4603c547cece1a7b135e371 (patch) | |
tree | ced4f90c8554fbe30028d86eec2f4cf8bb273ebf /gnu/packages | |
parent | 868a18642318edc87e38d04697647aba2ca93b34 (diff) | |
download | patches-series-4088.tar patches-series-4088.tar.gz |
gnu: Add python-libtmuxseries-4088
* gnu/packages/check.scm (python-pytest-4): New variable.
* gnu/packages/tmux.scm (python-libtmux): New variable.
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/check.scm | 49 | ||||
-rw-r--r-- | gnu/packages/tmux.scm | 48 |
2 files changed, 97 insertions, 0 deletions
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 7d7fd189bc..5d3e44a16d 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -33,6 +33,7 @@ ;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org> ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2020 Josh Marshall <joshua.r.marshall.1991@gmail.com> +;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -66,6 +67,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages version-control) #:use-module (gnu packages time) #:use-module (gnu packages xml) #:use-module (guix utils) @@ -819,6 +821,53 @@ and many external plugins.") (license license:expat) (properties `((python2-variant . ,(delay python2-pytest)))))) +(define-public python-pytest-4 + (package + (name "python-pytest-4") + (version "4.5.0") + (source + (origin + (method git-fetch) + ;; Pypi source tarball does not include tests + (uri (git-reference + (url "https://github.com/pytest-dev/pytest.git") + (commit version))) + (file-name "python-pytest-4") + (sha256 + (base32 + "0igxfasjqabkzlb81vxqr58pfsdwjx4zzd1nc1b48wn6xnkkllhk")))) + (build-system python-build-system) + (propagated-inputs + `(("python-atomicwrites" ,python-atomicwrites) + ("python-attrs" ,python-attrs) + ("python-attrs" ,python-attrs) + ("python-more-itertools" ,python-more-itertools) + ("python-pluggy" ,python-pluggy) + ("python-six" ,python-six) + ("python-py" ,python-py) + ("python-wcwidth" ,python-wcwidth))) + (native-inputs + `(("python-setuptools-scm" ,python-setuptools-scm) + ("git" ,git))) + (arguments `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'git-tag + (lambda _ + ;; setuptools-scm needs to know the version + (invoke "git" "init") + (invoke "git" "add" ".") + (invoke "git" "config" "user.name" "John Doe") + (invoke "git" "config" "user.email" "nobody@example.com") + (invoke "git" "commit" "-m" "dummy commit") + (invoke "git" "tag" ,version)))))) + (home-page "https://docs.pytest.org/en/latest/") + (synopsis "Python testing library") + (description + "Pytest is a testing tool that provides auto-discovery of test modules +and functions, detailed info on failing assert statements, modular fixtures, +and many external plugins.") + (license license:expat))) + ;; Pytest 4.x are the last versions that support Python 2. (define-public python2-pytest (package diff --git a/gnu/packages/tmux.scm b/gnu/packages/tmux.scm index 8b54849b18..c4dd963b53 100644 --- a/gnu/packages/tmux.scm +++ b/gnu/packages/tmux.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re> +;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,8 +31,11 @@ #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) + #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages bash) + #:use-module (gnu packages check) + #:use-module (gnu packages linux) #:use-module (gnu packages libevent) #:use-module (gnu packages ncurses)) @@ -138,6 +142,50 @@ command and helper commands provided by tmuxifier to manage Tmux sessions and windows.") (license license:expat))) +(define-public python-libtmux + (package + (name "python-libtmux") + (version "0.8.2") + (source + (origin + (method git-fetch) + ;; Pypi source tarball does not include tests + (uri (git-reference + (url "https://github.com/tmux-python/libtmux.git") + (commit (string-append "v" version)))) + (file-name "python-libtmux") + (sha256 + (base32 + "1akjv6aqpc690c4l2cjh0fxbpxxg63sfjggapfjjjaqmcl38g1dz")))) + (build-system python-build-system) + (propagated-inputs + `(("python-pytest-4" ,python-pytest-4) + ("tmux" ,tmux) + ("procps" ,procps))) ;; Tests need top + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + ;; Extend PYTHONPATH so the built package will be found. + (setenv "PYTHONPATH" + (string-append (getcwd) "/build/lib:" + (getenv "PYTHONPATH"))) + ;; Skip tests that I suspect fail because of a change + ;; in behavior in tmux 3 from tmux 2 + ;; https://github.com/tmux-python/libtmux/issues/281 + (invoke "pytest" "-vv" "-k" + (string-append "not test_show_option_unknown " + "and not test_show_window_option_unknown")) + #t))))) + (home-page + "https://github.com/tmux-python/libtmux") + (synopsis "Scripting library / orm for tmux") + (description "Libtmux is the tool behind tmuxp, a tmux workspace manager in python. +It builds upon tmux's target and formats to create an object mapping to traverse, + inspect and interact with live tmux sessions.") + (license license:expat))) + (define-public tmux-xpanes (package (name "tmux-xpanes") |