gnu: Add python-setproctitle and python2-setproctitle.

* gnu/packages/python.scm (python-setproctitle, python2-setproctitle):
  New variables.
This commit is contained in:
Hartmut Goebel 2016-10-20 09:52:02 +02:00
parent 9518fde1a1
commit 8ab59181a4
No known key found for this signature in database
GPG Key ID: 634A8DFFD3F631DF
1 changed files with 59 additions and 0 deletions

View File

@ -11088,3 +11088,62 @@ transfers.")
`(("python2-futures" ,python2-futures)
("python2-setuptools" ,python2-setuptools)
,@(package-native-inputs base))))))
(define-public python-setproctitle
(package
(name "python-setproctitle")
(version "1.1.10")
(source
(origin
(method url-fetch)
(uri (pypi-uri "setproctitle" version))
(sha256
(base32
"163kplw9dcrw0lffq1bvli5yws3rngpnvrxrzdw89pbphjjvg0v2"))))
(build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-before 'check 'patch-Makefile
;; Stricly this is only required for the python2 variant.
;; But adding a phase in an inherited package seems to be
;; cumbersum. So we patch even for python3.
(lambda _
(let ((nose (assoc-ref %build-inputs "python2-nose")))
(when nose
(substitute* "Makefile"
(("\\$\\(PYTHON\\) [^ ]which nosetests[^ ] ")
(string-append nose "/bin/nosetests "))))
#t)))
(replace 'check
(lambda _
(setenv "PYTHON" (or (which "python3") (which "python")))
(setenv "PYCONFIG" (or (which "python3-config")
(which "python-config")))
(setenv "CC" "gcc")
;; No need to extend PYTHONPATH to find the built package, since
;; the Makefile will build anyway
(zero? (system* "make" "check")))))))
(native-inputs
`(("procps" ,procps))) ; required for tests
(home-page
"https://github.com/dvarrazzo/py-setproctitle")
(synopsis
"Setproctitle implementation for Python to customize the process title")
(description "The library allows a process to change its title (as displayed
by system tools such as ps and top).
Changing the title is mostly useful in multi-process systems, for
example when a master process is forked: changing the children's title
allows to identify the task each process is busy with. The technique
is used by PostgreSQL and the OpenSSH Server for example.")
(license license:bsd-3)
(properties `((python2-variant . ,(delay python2-setproctitle))))))
(define-public python2-setproctitle
(let ((base (package-with-python2
(strip-python2-variant python-setproctitle))))
(package
(inherit base)
(native-inputs `(("python2-nose" ,python2-nose)
,@(package-native-inputs base))))))