On Thu, 5 Oct 2017 23:24:39 +0200 Tomáš Čech wrote: > * gnu/packages/python.scm (python-py3status)[inputs, arguments]: Add > missing file utility as input, adjust path used to call it. I would usually put the changelog last, as I think this is more consistent with other committers. Also, maybe this could be more specific like: * gnu/packages/python.scm (python-py3status)[inputs]: Add file. [arguments]: Modify phases to patch py3status to call file with an absolute path. > file is used to determine configuration file encoding and py3status > fails to start when this tool is missing. > --- > gnu/packages/python.scm | 15 ++++++++++++++- > 1 file changed, 14 insertions(+), 1 deletion(-) > > diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm > index 6ffd468b3..426ff12eb 100644 > --- a/gnu/packages/python.scm > +++ b/gnu/packages/python.scm > @@ -11468,8 +11468,21 @@ to occurrences in strings and comments.") > (base32 > "0i283z1pivmir61z8kbiycigc94l61v33ygzkhczf1ifq7cppyds")))) > (build-system python-build-system) > + (inputs > + `(("file" ,file))) > (arguments > - '(#:tests? #f)) ; TODO: Requires many libraries not in Guix. > + '(#:phases > + (modify-phases %standard-phases > + ;; 'file' is used for detection of configuration file > encoding > + ;; let's make link the dependency to particular input > + (add-before 'build 'patch-file-path > + (lambda* (#:key inputs #:allow-other-keys) > + (let ((file-path (assoc-ref inputs "file"))) > + (substitute* "py3status/parse_config.py" > + (("check_output\\(\\['file'") > + (string-append "check_output(['" file-path > "/bin/file'"))) > + #t)))) > + #:tests? #f)) ; TODO: Requires many libraries not in Guix. > (home-page "https://github.com/ultrabug/py3status") > (synopsis "Extensible i3status wrapper written in Python") > (description "py3status is an i3status wrapper which extends > i3status This change looks fine to me, and I checked that it builds as well. Please push :)