[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 1/3] gnu: Add ruby-git.
From: |
Thompson, David |
Subject: |
Re: [PATCH 1/3] gnu: Add ruby-git. |
Date: |
Mon, 15 Jun 2015 16:28:53 -0400 |
On Mon, Jun 15, 2015 at 4:25 PM, Mark H Weaver <address@hidden> wrote:
> David Thompson <address@hidden> writes:
>
>> From d5062fe608d840aca5034c9374dc0a99c926554b Mon Sep 17 00:00:00 2001
>> From: David Thompson <address@hidden>
>> Date: Sat, 13 Jun 2015 07:46:02 -0400
>> Subject: [PATCH 1/3] gnu: Add ruby-git.
>>
>> * gnu/packages/ruby.scm (ruby-git): New variable.
>> ---
>> gnu/packages/ruby.scm | 33 +++++++++++++++++++++++++++++++++
>> 1 file changed, 33 insertions(+)
>>
>> diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
>> index f7759ec..bd7ab79 100644
>> --- a/gnu/packages/ruby.scm
>> +++ b/gnu/packages/ruby.scm
>> @@ -28,6 +28,7 @@
>> #:use-module (gnu packages autotools)
>> #:use-module (gnu packages libffi)
>> #:use-module (gnu packages gdbm)
>> + #:use-module (gnu packages version-control)
>> #:use-module (guix packages)
>> #:use-module (guix download)
>> #:use-module (guix git-download)
>> @@ -570,3 +571,35 @@ functionality, making it easier to migrate test suites
>> from bacon to minitest.")
>> run as a daemon and to be controlled by simple start/stop/restart
>> commands.")
>> (home-page "https://github.com/thuehlinger/daemons")
>> (license license:expat)))
>> +
>> +(define-public ruby-git
>> + (package
>> + (name "ruby-git")
>> + (version "1.2.9.1")
>> + (source (origin
>> + (method url-fetch)
>> + (uri (string-append
>> + "https://github.com/schacon/ruby-git/archive/v"
>> + version ".tar.gz"))
>> + (file-name (string-append name "-" version ".tar.gz"))
>> + (sha256
>> + (base32
>> + "08zg20zc7f7yy34ix2qdd8jbiz7xhjc8alk370869sq3h75hs9jc"))))
>> + (build-system ruby-build-system)
>> + (arguments
>> + '(#:phases (modify-phases %standard-phases
>> + (add-before 'check 'create-fake-home
>> + (lambda _
>> + ;; The test suite runs 'git config --global' commands,
>> + ;; so a fake home directory is needed for them to
>> + ;; succeed.
>> + (let ((fake-home (string-append (getcwd)
>> "/fake-home")))
>> + (mkdir fake-home)
>> + (setenv "HOME" fake-home)))))))
>> + (native-inputs
>> + `(("git" ,git)))
>> + (synopsis "Ruby wrappers for Git")
>> + (description "Ruby/Git is a Ruby library that can be used to create,
>> read
>> +and manipulate Git repositories by wrapping system calls to the git
>> binary.")
>
> It would be good to rewrite the references to the 'git' binary in the
> code to use an absolute path. This argues for making 'git' a normal
> input. What do you think?
I was conflicted about this when packaging so I didn't touch it. The
git binary is a configurable variable here, and I believe it defaults
to 'git'. I could try to patch the default value of it to be an
absolute path to git in the store, if you think that is reasonable.
Thanks!
- Dave