gnu: Update harfbuzz to 0.9.20.
[jackhill/guix/guix.git] / gnu / packages / version-control.scm
CommitLineData
dcee3fc5
NK
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
cf3fe3b0 3;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
a4572a17 4;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
dcee3fc5
NK
5;;;
6;;; This file is part of GNU Guix.
7;;;
8;;; GNU Guix is free software; you can redistribute it and/or modify it
9;;; under the terms of the GNU General Public License as published by
10;;; the Free Software Foundation; either version 3 of the License, or (at
11;;; your option) any later version.
12;;;
13;;; GNU Guix is distributed in the hope that it will be useful, but
14;;; WITHOUT ANY WARRANTY; without even the implied warranty of
15;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16;;; GNU General Public License for more details.
17;;;
18;;; You should have received a copy of the GNU General Public License
19;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
20
1b1c335f 21(define-module (gnu packages version-control)
cf3fe3b0 22 #:use-module ((guix licenses) #:select (asl2.0 gpl1+ gpl2+ gpl3+))
dcee3fc5
NK
23 #:use-module (guix packages)
24 #:use-module (guix download)
1b1c335f 25 #:use-module (guix build-system gnu)
dcee3fc5
NK
26 #:use-module (guix build-system python)
27 #:use-module (guix build utils)
28 #:use-module ((gnu packages gettext)
1972fed4 29 #:renamer (symbol-prefix-proc 'guix:))
2b24faa2 30 #:use-module (gnu packages apr)
1972fed4 31 #:use-module (gnu packages nano)
cf3fe3b0
CR
32 #:use-module (gnu packages perl)
33 #:use-module (gnu packages python)
34 #:use-module (gnu packages sqlite)
a4572a17
LC
35 #:use-module (gnu packages system)
36 #:use-module (gnu packages emacs)
1972fed4 37 #:use-module (gnu packages compression))
dcee3fc5
NK
38
39(define-public bazaar
40 (package
41 (name "bazaar")
42 (version "2.5.1")
43 (source
44 (origin
45 (method url-fetch)
46 (uri (string-append "https://launchpad.net/bzr/2.5/" version
47 "/+download/bzr-" version ".tar.gz"))
48 (sha256
49 (base32
50 "10krjbzia2avn09p0cdlbx2wya0r5v11w5ymvyl72af5dkx4cwwn"))))
51 (build-system python-build-system)
52 (inputs
53 ;; Note: 'tools/packaging/lp-upload-release' and 'tools/weavemerge.sh'
54 ;; require Zsh.
55 `(("gettext" ,guix:gettext)))
56 (arguments
57 `(#:tests? #f)) ; no test target
58 (home-page "https://gnu.org/software/bazaar")
2c71cf66 59 (synopsis "Decentralized revision control system")
dcee3fc5
NK
60 (description
61 "GNU Bazaar is a distributed version control system, which supports both
62central version control and distributed version control. Developers can
63organize their workspace in whichever way they want. It is possible to work
64from a command line or use a GUI application.")
2c71cf66 65 (license gpl2+)))
1b1c335f 66
cf3fe3b0
CR
67(define-public subversion
68 (package
69 (name "subversion")
70 (version "1.7.8")
71 (source (origin
72 (method url-fetch)
e23dc82c 73 (uri (string-append "http://archive.apache.org/dist/subversion/subversion-"
cf3fe3b0
CR
74 version ".tar.bz2"))
75 (sha256
76 (base32
77 "11inl9n1riahfnbk1fax0dysm2swakzhzhpmm2zvga6fikcx90zw"))))
78 (build-system gnu-build-system)
79 (inputs
2b24faa2
AE
80 `(("apr" ,apr)
81 ("apr-util" ,apr-util)
cf3fe3b0
CR
82 ("perl" ,perl)
83 ("python" ,python)
84 ("sqlite" ,sqlite)
85 ("zlib" ,zlib)))
86 (home-page "http://subversion.apache.org/")
87 (synopsis "Subversion, a revision control system")
88 (description
89 "Subversion exists to be universally recognized and adopted as an
90open-source, centralized version control system characterized by its
91reliability as a safe haven for valuable data; the simplicity of its model and
92usage; and its ability to support the needs of a wide variety of users and
93projects, from individuals to large-scale enterprise operations.")
94 (license asl2.0)))
95
1b1c335f
LC
96(define-public rcs
97 (package
98 (name "rcs")
99 (version "5.9.0")
100 (source (origin
101 (method url-fetch)
102 (uri (string-append "mirror://gnu/rcs/rcs-"
103 version ".tar.xz"))
104 (sha256
105 (base32
106 "0w26vsx732dcmb5qfhlkkzvrk1sx6d74qibrn914n14j0ci90jcq"))))
107 (build-system gnu-build-system)
108 (home-page "http://www.gnu.org/software/rcs/")
109 (synopsis "Per-file local revision control system")
110 (description
111 "The GNU Revision Control System (RCS) manages multiple revisions of
112files. RCS automates the storing, retrieval, logging, identification, and
113merging of revisions. RCS is useful for text that is revised frequently,
114including source code, programs, documentation, graphics, papers, and form
115letters.")
116 (license gpl3+)))
1972fed4
LC
117
118(define-public cvs
119 (package
120 (name "cvs")
121 (version "1.12.13")
122 (source (origin
123 (method url-fetch)
124 (uri (string-append
125 "http://ftp.gnu.org/non-gnu/cvs/source/feature/"
126 version "/cvs-" version ".tar.bz2"))
127 (sha256
128 (base32
129 "0pjir8cwn0087mxszzbsi1gyfc6373vif96cw4q3m1x6p49kd1bq"))))
130 (build-system gnu-build-system)
131 (arguments
132 ;; XXX: The test suite looks flawed, and the package is obsolete anyway.
133 '(#:tests? #f))
134 (inputs `(("zlib" ,zlib)
135 ("nano" ,nano))) ; the default editor
136 (home-page "http://cvs.nongnu.org")
137 (synopsis "Historical centralized version control system")
138 (description
139 "CVS is a version control system, an important component of Source
140Configuration Management (SCM). Using it, you can record the history of
141sources files, and documents. It fills a similar role to the free software
142RCS, PRCS, and Aegis packages.")
143 (license gpl1+)))
a4572a17
LC
144
145(define-public vc-dwim
146 (package
147 (name "vc-dwim")
148 (version "1.7")
149 (source (origin
150 (method url-fetch)
151 (uri (string-append "mirror://gnu/vc-dwim/vc-dwim-"
152 version ".tar.xz"))
153 (sha256
154 (base32
155 "094pjwshvazlgagc254in2xvrp93vhcj0kb5ms17qs7sch99x9z2"))))
156 (build-system gnu-build-system)
157 (inputs `(("perl" ,perl)
158 ("inetutils" ,inetutils) ; for `hostname', used in the tests
159 ("emacs" ,emacs))) ; for `ctags'
160 (home-page "http://www.gnu.org/software/vc-dwim/")
161 (synopsis "Version-control-agnostic ChangeLog diff and commit tool")
162 (description
163 "vc-dwim is a version-control-agnostic ChangeLog diff and commit
164tool. vc-chlog is a helper tool for writing GNU-style ChangeLog entries.")
165 (license gpl3+)))