From: Efraim Flashner <efraim@flashner.co.il>
To: Ben Woodcroft <b.woodcroft@uq.edu.au>
Cc: guix-devel@gnu.org, "Clément Lassieur" <clement@lassieur.org>
Subject: Re: [PATCH] gnu: Add git-review.
Date: Thu, 8 Sep 2016 21:32:17 +0300 [thread overview]
Message-ID: <20160908183217.GK12493@macbook42.flashner.co.il> (raw)
In-Reply-To: <439770f1-4691-45ac-348e-9e41bc126e0d@uq.edu.au>
[-- Attachment #1.1: Type: text/plain, Size: 2155 bytes --]
On Thu, Sep 08, 2016 at 10:28:37PM +1000, Ben Woodcroft wrote:
> Hi there, thanks for the patch. I do not have any experience with Gerrit but
> some comments below:
>
>
> On 08/09/16 17:06, Clément Lassieur wrote:
> > [..]
> > + (source
> > + (origin
> > + (method url-fetch)
> > + (uri (string-append
> > + "https://pypi.python.org/packages/source/g/git-review/git-review-"
> > + version ".tar.gz"))
>
> Rather: (uri (pypi-uri "git-review" version))
>
> > + (sha256
> > + (base32
> > + "07d1jn9ryff5j5ic6qj5pbk10m1ccmpllj0wyalrcms1q9yhlzh8"))))
> > + (build-system python-build-system)
> > + (arguments `(#:tests? #f)) ; tests require a running Gerrit server
> > + (native-inputs
> > + `(("python-pbr" ,python-pbr)))
> > + (inputs
> > + `(("python-requests" ,python-requests)
> > + ("git" ,git)))
>
> I think including git simply as an input is problematic because git-review
> calls git via 'subprocess', as evidenced by
>
> $ ./pre-inst-env guix environment -C --ad-hoc git-review
> $ git-review
> [..]
> File "/gnu/store/m4gc2wx4q9if1vrhgclpspdil7rqsn21-python-3.4.3/lib/python3.4/subprocess.py",
> line 1457, in _execute_child
> raise child_exception_type(errno_num, err_msg)
> FileNotFoundError: [Errno 2] No such file or directory: 'git'
>
> So, I think we need to patch the source code to call the full path to git,
> or otherwise wrap the 'git-review' executable.
>
> > + (home-page "http://docs.openstack.org/infra/git-review/")
> > + (synopsis "Command-line tool for Gerrit")
> > + (description
> > + "Git-review is a command-line tool that helps submitting Git branches to
> > +Gerrit for review, or fetching existing ones.")
> > + (license asl2.0)))
> Otherwise seems OK to me. Can you test with environment -C -N?
> ben
>
Try it with the attached patch
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #1.2: 0001-gnu-python-git-review-Hardcode-git-path.patch --]
[-- Type: text/plain, Size: 1573 bytes --]
From cb5146c8eea6ea35b1ad058345f4759b36384eb4 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Thu, 8 Sep 2016 21:31:32 +0300
Subject: [PATCH] gnu: python-git-review: Hardcode git path.
* gnu/packages/openstack.scm (python-git-review)[arguments]: Hardcode
the location of `git' so that `git-review' can find it natively.
---
gnu/packages/openstack.scm | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 4cb38a9..d7876a8 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -796,7 +796,19 @@ permanence.")
(base32
"07d1jn9ryff5j5ic6qj5pbk10m1ccmpllj0wyalrcms1q9yhlzh8"))))
(build-system python-build-system)
- (arguments `(#:tests? #f)) ; tests require a running Gerrit server
+ (arguments
+ `(#:tests? #f ; tests require a running Gerrit server
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-git-calls
+ (lambda _
+ (let ((git (string-append
+ (assoc-ref %build-inputs "git") "/bin/git")))
+ (substitute* "git_review/cmd.py"
+ (("\"git ") (string-append "\"" git " "))
+ (("\"git\"") (string-append "\"" git "\""))
+ (("'git'") (string-append "'" git "'")))
+ #t))))))
(native-inputs
`(("python-pbr" ,python-pbr)))
(inputs
--
2.10.0
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
next prev parent reply other threads:[~2016-09-08 18:32 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-08 7:06 [PATCH] gnu: Add git-review Clément Lassieur
2016-09-08 7:37 ` Vincent Legoll
2016-09-08 10:16 ` Efraim Flashner
2016-09-08 12:28 ` [PATCH] gnu: Add python-git-review Clément Lassieur
2016-09-08 17:45 ` Efraim Flashner
2016-09-08 12:28 ` [PATCH] gnu: Add git-review Ben Woodcroft
2016-09-08 17:58 ` Efraim Flashner
2016-09-09 16:24 ` Clément Lassieur
2016-09-09 20:27 ` Clément Lassieur
2016-09-08 18:32 ` Efraim Flashner [this message]
2016-09-09 8:23 ` Clément Lassieur
2016-09-09 15:00 ` Efraim Flashner
2016-09-09 16:09 ` Clément Lassieur
2016-09-10 19:05 ` Efraim Flashner
2016-09-10 21:13 ` [PATCH] gnu: python-git-review: Wrap it so 'git', 'ssh' and 'scp' are found Clément Lassieur
2016-09-11 7:05 ` Efraim Flashner
2016-09-10 21:25 ` [PATCH] gnu: Add git-review Clément Lassieur
2016-09-09 18:49 ` Alex Kost
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160908183217.GK12493@macbook42.flashner.co.il \
--to=efraim@flashner.co.il \
--cc=b.woodcroft@uq.edu.au \
--cc=clement@lassieur.org \
--cc=guix-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.