Browse Source

gnu: Add git.

* gnu/packages/version-control.scm (git): New variable.
Andreas Enge 8 years ago
1 changed files with 47 additions and 1 deletions
  1. +47

+ 47
- 1
gnu/packages/version-control.scm View File

@ -2,6 +2,7 @@
;;; Copyright © 2013 Nikita Karetnikov <>
;;; Copyright © 2013 Cyril Roelandt <>
;;; Copyright © 2013 Ludovic Courtès <>
;;; Copyright © 2013 Andreas Enge <>
;;; This file is part of GNU Guix.
@ -19,7 +20,7 @@
;;; along with GNU Guix. If not, see <>.
(define-module (gnu packages version-control)
#:use-module ((guix licenses) #:select (asl2.0 gpl1+ gpl2+ gpl3+))
#:use-module ((guix licenses) #:select (asl2.0 gpl1+ gpl2 gpl2+ gpl3+))
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
@ -28,11 +29,14 @@
#:use-module ((gnu packages gettext)
#:renamer (symbol-prefix-proc 'guix:))
#:use-module (gnu packages apr)
#:use-module (gnu packages curl)
#:use-module (gnu packages nano)
#:use-module (gnu packages openssl)
#:use-module (gnu packages perl)
#:use-module (gnu packages python)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages system)
#:use-module (gnu packages xml)
#:use-module (gnu packages emacs)
#:use-module (gnu packages compression))
@ -64,6 +68,48 @@ organize their workspace in whichever way they want. It is possible to work
from a command line or use a GUI application.")
(license gpl2+)))
(define-public git
(name "git")
(version "1.8.4")
(source (origin
(method url-fetch)
(uri (string-append ""
version ".tar.gz"))
(build-system gnu-build-system)
`(("curl" ,curl)
("expat" ,expat)
("gettext" ,guix:gettext)
("openssl" ,openssl)
("perl" ,perl)
("python" ,python) ; CAVEAT: incompatible with python-3 according to INSTALL
("zlib" ,zlib)))
`(#:make-flags `("V=1") ; more verbose compilation
#:test-target "test"
#:tests? #f ; FIXME: Many tests are failing
(lambda* (#:key #:allow-other-keys #:rest args)
(let ((configure (assoc-ref %standard-phases 'configure)))
(and (apply configure args)
(substitute* "Makefile"
(("/bin/sh") (which "sh"))
(("/usr/bin/perl") (which "perl"))
(("/usr/bin/python") (which "python"))))))
(synopsis "Distributed version control system")
"Git is a free distributed version control system designed to handle
everything from small to very large projects with speed and efficiency.")
(license gpl2)
(home-page "")))
(define-public subversion
(name "subversion")