44 return False |
44 return False |
45 |
45 |
46 def has_cvs(): |
46 def has_cvs(): |
47 re = r'Concurrent Versions System.*?server' |
47 re = r'Concurrent Versions System.*?server' |
48 return matchoutput('cvs --version 2>&1', re) |
48 return matchoutput('cvs --version 2>&1', re) |
49 |
|
50 def has_cvsps(): |
|
51 return matchoutput('cvsps -h -q 2>&1', r'cvsps version', True) |
|
52 |
49 |
53 def has_darcs(): |
50 def has_darcs(): |
54 return matchoutput('darcs --version', r'2\.[2-9]', True) |
51 return matchoutput('darcs --version', r'2\.[2-9]', True) |
55 |
52 |
56 def has_mtn(): |
53 def has_mtn(): |
184 checks = { |
181 checks = { |
185 "baz": (has_baz, "GNU Arch baz client"), |
182 "baz": (has_baz, "GNU Arch baz client"), |
186 "bzr": (has_bzr, "Canonical's Bazaar client"), |
183 "bzr": (has_bzr, "Canonical's Bazaar client"), |
187 "bzr114": (has_bzr114, "Canonical's Bazaar client >= 1.14"), |
184 "bzr114": (has_bzr114, "Canonical's Bazaar client >= 1.14"), |
188 "cvs": (has_cvs, "cvs client/server"), |
185 "cvs": (has_cvs, "cvs client/server"), |
189 "cvsps": (has_cvsps, "cvsps utility"), |
|
190 "darcs": (has_darcs, "darcs client"), |
186 "darcs": (has_darcs, "darcs client"), |
191 "eol-in-paths": (has_eol_in_paths, "end-of-lines in paths"), |
187 "eol-in-paths": (has_eol_in_paths, "end-of-lines in paths"), |
192 "execbit": (has_executablebit, "executable bit"), |
188 "execbit": (has_executablebit, "executable bit"), |
193 "fifo": (has_fifo, "named pipes"), |
189 "fifo": (has_fifo, "named pipes"), |
194 "git": (has_git, "git command line client"), |
190 "git": (has_git, "git command line client"), |