mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 22:08:16 -05:00
gnu: Add ruby-git.
* gnu/packages/ruby.scm (ruby-git): New variable.
This commit is contained in:
parent
0808e361b0
commit
66e2086364
1 changed files with 50 additions and 0 deletions
|
@ -28,6 +28,7 @@ (define-module (gnu packages ruby)
|
|||
#: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,52 @@ (define-public ruby-daemons
|
|||
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 'build 'patch-git-binary
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Make the default git binary an absolute path to the
|
||||
;; store.
|
||||
(let ((git (string-append (assoc-ref inputs "git")
|
||||
"/bin/git")))
|
||||
(substitute* '("lib/git/config.rb")
|
||||
(("'git'")
|
||||
(string-append "'" git "'")))
|
||||
;; Fix a test that expects the binary to be simply
|
||||
;; 'git'.
|
||||
(substitute* '("tests/units/test_logger.rb")
|
||||
(("def test_logger")
|
||||
(string-append
|
||||
"def test_logger\n"
|
||||
"Git::Base.config.binary_path = 'git'")))
|
||||
#t)))
|
||||
(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)))))))
|
||||
(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.")
|
||||
(home-page "https://github.com/schacon/ruby-git")
|
||||
(license license:expat)))
|
||||
|
|
Loading…
Reference in a new issue