forked from openbsd/www
-
Notifications
You must be signed in to change notification settings - Fork 0
/
cvsync.html
298 lines (261 loc) · 9.88 KB
/
cvsync.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
<!-- DO NOT EDIT MANUALLY! See comments in www/build/mirrors.dat for details -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>OpenBSD: CVSync</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="copyright" content="This document copyright 2003-2018 by OpenBSD.">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="openbsd.css">
<link rel="canonical" href="https://www.openbsd.org/cvsync.html">
<style type="text/css">
h3 { color: #0000e0; }
</style>
</head>
<body bgcolor="#FFFFFF" text="#000000" link="#23238E">
<h2>
<a href="index.html">
<font color="#0000ff"><i>Open</i></font><font color="#000084">BSD</font></a>
<font color="#e00000">Source repository access: CVSync and rsync</font>
</h2>
<hr>
<p>
OpenBSD uses the CVS version control system.
It is described in more detail <a href="anoncvs.html#CVS">here</a>.
The <a href="https://man.openbsd.org/cvs">cvs(1)</a> command is used
to checkout a working tree and perform standard operations (log, diff, etc).
It can either contact an CVS server (in most cases this will be an OpenBSD
<a href="anoncvs.html">anoncvs</a> server), or operate against a local
copy of the repository.
<p>
If you would like to operate a local anoncvs server, use cvs(1) commands
offline, or simply have faster access, you may use CVSync or rsync to
fetch a local copy of the repository.
<h3 id="CVSync">What Is CVSync?</h3>
<b>CVSync</b> is a software package specifically used for distributing
and updating <a href="https://man.openbsd.org/cvs">cvs(1)</a> repositories.
As it has knowledge of the file format it can operate more efficiently
than a general-purpose file synchronization program, however it is not
bug-free and can have problems updating at times.
<p>
The client <tt>cvsync</tt> runs on each user's machine (typically from
a <a href="https://man.openbsd.org/cron">cron(8)</a> job), and fetches
from a server running <tt>cvsyncd</tt>.
<h3 id="starting">Getting Started Using CVSync</h3>
<p>
CVS is part of OpenBSD's base system.
CVSync is an entirely different program and can be installed from
packages:
<pre>
<b>pkg_add cvsync</b>
</pre>
Do not build your own copy from unmodified upstream source -
the port/package has been modified to support commitid which is now
used in the OpenBSD repository.
<p>
In order to mirror the OpenBSD repository with CVSync,
the following configuration file might be used:
<pre>
config {
hostname anoncvs.eu.openbsd.org
# If your network link is a T1 or faster, comment out the following line.
compress
collection {
name openbsd release rcs
prefix /cvs
umask 002
}
}
</pre>
<p>
This directs cvsync to fetch or refresh all OpenBSD distributions from
<b>anoncvs.eu.openbsd.org</b> with a
<a href="https://man.openbsd.org/umask">umask(2)</a> that permits group write
permission to the local repository.
The local copy of the files are stored in <tt>/cvs</tt>.
<p>
Assuming this file is saved as <tt>cvs-syncfile</tt>, the
following command would be used to invoke cvsync
<pre>
<b>cvsync -c cvs-syncfile</b>
</pre>
<h3 id="rsync">Getting Started Using Rsync</h3>
Some repository mirrors offer access via rsync, a general-purpose
file synchronization program.
Again this should be installed from packages.
Two flavours are available:
<pre>
<b># pkg_add rsync</b>
Ambiguous: choose package for rsync
a 0: <None>
1: rsync-3.1.2p0
2: rsync-3.1.2p0-iconv
Your choice:
</pre>
Unless you have other requirements, simply install the standard version
(option 1 on the list above).
You can select the flavour on the command-line to avoid
<a href="//man.openbsd.org/pkg_add">pkg_add(1)</a> prompting for the
version like so:
<pre>
<b>pkg_add rsync--</b>
</pre>
In order to mirror the OpenBSD repository with rsync,
the following command line might be used:
<pre>
<b>rsync -avz --delete rsync://obsdacvs.cs.toronto.edu/obsdcvs/ /cvs/</b>
</pre>
<h3 id="using">Using CVS to Work With Your Repository</h3>
Now that you have a local copy of the CVS repository, it is now simple
to check out, update, or do any of the other CVS operations you would
normally do against a remote repository, locally.
For example:
<pre>
<b>cvs -d/cvs checkout -P src</b>
<b>cvs -d/cvs up -Pd</b>
<b>cvs -d/cvs diff -u file.c</b>
</pre>
More details on CVS operation can be found in
<a href="faq/faq5.html#BldGetSrc">FAQ5, Fetching appropriate source
code</a> and in the
<a href="https://man.openbsd.org/cvs">cvs(1)</a>
man page.
<h3 id="CVSROOT">Available Repository Servers</h3>
The following CVSync and rsync repository servers are available:
<ul>
<li><strong>anoncvs.comstyle.com</strong><br>
Location: Toronto, Canada.<br>
Maintained by <a href="mailto:[email protected]">Brad Smith</a>.<br>
Updated hourly.<br>
<p>
<li><strong>obsdacvs.cs.toronto.edu</strong><br>
<strong>rsync://obsdacvs.cs.toronto.edu/obsdcvs/</strong><br>
Location: University of Toronto, Toronto, ON, Canada.<br>
Maintained by <a href="mailto:[email protected]">Nick Holland</a>.<br>
Updated every 2 hours.<br>
<p>
<li><strong>anoncvs.fr.openbsd.org</strong><br>
<strong>rsync://anoncvs.fr.openbsd.org/openbsd-cvs/</strong><br>
Location: Paris, France.<br>
Maintained by <a href="mailto:[email protected]">Landry Breuil, Antoine Jacoutot</a>.<br>
Updated every 2 hours from anoncvs1.ca.openbsd.org.<br>
<p>
<li><a href="https://mirror.osn.de/"><strong>mirror.osn.de</strong></a><br>
<strong>rsync://mirror.osn.de/openbsd-all/</strong><br>
Location: Nürnberg, Germany.<br>
Maintained by <a href="mailto:[email protected]">Armin Wolfermann</a>.<br>
Updated every 3 hours.<br>
<p>
<li><strong>ftp.hostserver.de</strong><br>
<strong>rsync://ftp.hostserver.de/cvsync/</strong><br>
Location: Frankfurt, Germany.<br>
Maintained by <a href="mailto:[email protected]">Sebastian Benoit, Peter Hessler</a>.<br>
Updated hourly from anoncvs1.ca.openbsd.org.<br>
<p>
<li><a href="http://www.allbsd.org/"><strong>cvsync.allbsd.org</strong></a><br>
Location: Tokyo, Japan.<br>
Maintained by <a href="mailto:[email protected]">Hiroki Sato</a>.<br>
<p>
<li><strong>anoncvs.eu.openbsd.org</strong><br>
<strong>rsync://anoncvs.eu.openbsd.org/OpenBSD-cvs/</strong><br>
Location: Stockholm University, Stockholm, Sweden.<br>
Maintained by <a href="mailto:[email protected]">Janne Johansson</a>.<br>
Updated every 2 hours.<br>
<p>
<li><strong>anoncvs.spacehopper.org (rsync only, no cvsync)</strong><br>
<strong>rsync://anoncvs.spacehopper.org/OpenBSD-CVS/</strong><br>
Location: Plymouth, United Kingdom.<br>
Maintained by <a href="mailto:[email protected]">Stuart Henderson</a>.<br>
Updated hourly from anoncvs.ca.openbsd.org.<br>
<p>
<li><strong>anoncvs3.usa.openbsd.org</strong><br>
Location: National Center for Atmospheric Research, Boulder, CO, USA.<br>
Maintained by <a href="mailto:[email protected]">Todd C. Miller</a>.<br>
Updated hourly.<br>
<p>
<li><strong>anoncvs4.usa.openbsd.org</strong><br>
Location: New York Internet, New York, NY, USA.<br>
Maintained by <a href="mailto:[email protected]">Todd C. Miller</a>.<br>
Updated hourly.<br>
<p>
<li><strong>anoncvs2.usa.openbsd.org</strong><br>
Host also known as <strong>openbsd.se.rit.edu</strong>.<br>
Location: Rochester Institute of Technology, Rochester, NY, USA.<br>
Maintained by <a href="mailto:[email protected]">Todd C. Miller</a>.<br>
Updated hourly.<br>
<p>
<li><strong>anoncvs1.usa.openbsd.org</strong><br>
Host also known as <strong>anoncvs.usa.openbsd.org</strong>.<br>
Location: Network Media, LLC, Bend, OR, USA.<br>
Maintained by <a href="mailto:[email protected]">Todd C. Miller</a>.<br>
Updated hourly.<br>
<p>
</ul>
<em>Note:</em> If your server is listed on here with inaccurate or
unknown information, please contact <a
href="mailto:[email protected]"><tt>[email protected]</tt></a>
<p>
You may want to use <a href="https://man.openbsd.org/traceroute">traceroute(8)</a>
to find out which server is nearest you.
Problems with a server should be reported to the <b>maintainer</b> of the
server in question.
<p>
As of December 2017, the CVS repository sizes are:
<p>
<table>
<tr><td width="20"></td>
<td><strong>openbsd-ports</strong></td>
<td>- <b>1220</b>MB</td></tr>
<tr><td></td>
<td><strong>openbsd-src</strong></td>
<td>- <b>2865</b>MB</td></tr>
<tr><td></td>
<td><strong>openbsd-www</strong></td>
<td>- <b>704</b>MB</td></tr>
<tr><td></td>
<td><strong>openbsd-xenocara</strong></td>
<td>- <b>1658</b>MB</td></tr>
<tr><td></td>
<td><strong>openbsd-cvsroot</strong></td>
<td>- <b>158</b>MB</td></tr>
</table>
<p>
The overall repository size currently increases at a rate
of about <b>400</b>MB per annum. The src repository increases by about
<b>150</b>MB.
<p>
<strong>IMPORTANT NOTE:</strong>
There are a few issues relating to cryptographic software that everyone
should be aware of:
<ul>
<li>
<p>
The OpenBSD sources are from Canada. As
<a href="http://www.efc.ca/pages/doc/crypto-export.html">
researched by a Canadian individual</a> and as
<a href="http://axion.physics.ubc.ca/ECL.html">
described in the Export Control list of Canada</a>,
it is legal to export crypto software from Canada to the world.
</li>
<li>
<p>
However, if you are outside the USA or Canada, you should not
fetch the cryptographic sections of the OpenBSD sources from a
CVSync server located in the USA. The files in question are...
<ul>
<li><tt>src/kerberosIV/*</tt></li>
<li><tt>src/kerberosV/*</tt></li>
<li><tt>src/lib/libdes/*</tt></li>
<li><tt>src/lib/libc/crypt/crypt.c</tt></li>
<li><tt>src/lib/libc/crypt/morecrypt.c</tt></li>
<li><tt>src/sys/crypto</tt></li>
<li><tt>src/sys/netinet</tt></li>
<li><tt>src/usr.sbin/afs/src/rxkad/*</tt></li>
</ul>
<p>
Because of the USA ITAR munitions list,
crypto software may only be exported to Canada from the USA.
</li>
</ul>
</body>
</html>