aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2020-10-27 09:45:34 +0000
committerChristopher Baines <mail@cbaines.net>2020-10-28 16:53:01 +0000
commitf6839fed5f2052fd257b4af73effb10dcd9bf35b (patch)
treeac249369f908c8f83c1250bea50723c5a0d35ea5
parent36c74e27a830cef8c63973f6a35138209dfd26ae (diff)
downloadguix-f6839fed5f2052fd257b4af73effb10dcd9bf35b.tar
guix-f6839fed5f2052fd257b4af73effb10dcd9bf35b.tar.gz
gnu: Add pwclient.
* gnu/packages/patchutils.scm (pwclient): New variable.
-rw-r--r--gnu/packages/patchutils.scm54
1 files changed, 54 insertions, 0 deletions
diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm
index 12dd472c68..da0f13a01e 100644
--- a/gnu/packages/patchutils.scm
+++ b/gnu/packages/patchutils.scm
@@ -468,3 +468,57 @@ patches, and displays the patches along with comments and state information.
Users can login allowing them to change the state of patches.")
(home-page "http://jk.ozlabs.org/projects/patchwork/")
(license gpl2+)))
+
+(define-public pwclient
+ (package
+ (name "pwclient")
+ (version "1.3.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/getpatchwork/pwclient")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1xckwvcqklzpyh3xs4k2zm40ifp0q5fdkj2vmgb8vhfvl1ivs6jv"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-requirements
+ (lambda _
+ (substitute* "test-requirements.txt"
+ ;; The pytest requirement is unnecessarily strict
+ (("pytest>=3.0,<5.0;")
+ "pytest>=3.0,<6.0;"))
+ #t))
+ (add-before 'build 'set-PBR_VERSION
+ (lambda _
+ (setenv "PBR_VERSION"
+ ,version)
+ #t))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "pytest"))
+ #t))
+ (add-after 'install 'install-man-page
+ (lambda* (#:key outputs #:allow-other-keys)
+ (install-file "man/pwclient.1"
+ (string-append
+ (assoc-ref outputs "out")
+ "/share/man/man1"))
+ #t)))))
+ (native-inputs
+ `(("python-pbr" ,python-pbr)
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-mock" ,python-mock)))
+ (home-page
+ "https://github.com/getpatchwork/pwclient")
+ (synopsis "Command-line client for the Patchwork patch tracking tool")
+ (description
+ "pwclient is a VCS-agnostic tool for interacting with Patchwork, the
+web-based patch tracking system.")
+ (license gpl2+)))