Annotation of www/anoncvs.html, Revision 1.266
1.246 steven 1: <!-- DO NOT EDIT MANUALLY! This is generated from www/build/mirrors.pl -->
2:
1.180 jufi 3: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
1.1 deraadt 4: <html>
5: <head>
1.93 deraadt 6: <title>OpenBSD AnonCVS</title>
1.135 naddy 7: <link rev="made" href="mailto:www@openbsd.org">
1.93 deraadt 8: <meta name="resource-type" content="document">
1.249 nick 9: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
1.93 deraadt 10: <meta name="description" content="How to get OpenBSD updates via Internet using Anonymous CVS">
11: <meta name="keywords" content="openbsd,anoncvs,updates">
12: <meta name="distribution" content="global">
1.261 nick 13: <meta name="copyright" content="This document copyright 1996-2007 by OpenBSD.">
1.1 deraadt 14: </head>
15:
1.226 nick 16: <body bgcolor="#ffffff" text="#000000">
1.1 deraadt 17:
1.249 nick 18: <a href="index.html"><img alt="[OpenBSD]" height="30" width="141" src="images/smalltitle.gif" border="0"></a>
1.93 deraadt 19: <p>
1.135 naddy 20: <h2><font color="#e00000">Anonymous CVS</font></h2>
1.14 downsj 21:
1.135 naddy 22: <hr>
23:
1.249 nick 24: <h3>Table Of Contents</h3>
1.135 naddy 25:
26: <ul>
1.249 nick 27: <li><a href="#anoncvs">What is Anonymous CVS?</a>
28: <li><a href="#CVS">What is CVS?</a>
29: <li><a href="#starting">Getting Started Using Anonymous CVS</a>
30: <li><a href="#using">Using CVS to Get and Update your Source Tree</a>
31: <li><a href="#CVSROOT">Available Anonymous CVS Servers</a>
32: <li><a href="#CRYPTO">Getting crypto sources through cvs(1)</a>
33: <li><a href="#EXAMPLE">Example usages for cvs(1)</a>
34: <li><a href="#WHICH">Use rsh(1) or ssh(1)?</a>
35: <li><a href="#SUP">Mirroring the CVS repository via sup(1)</a>
36: <li><a href="#MIRROR">Setting up an anoncvs mirror</a>
1.100 ericj 37: </ul>
1.135 naddy 38:
1.100 ericj 39: <hr>
40:
1.249 nick 41: <h3><a name="anoncvs"><font color="#0000e0">What is Anonymous CVS?</font></a></h3>
1.99 ericj 42:
1.15 grr 43: <p>
1.249 nick 44: Anonymous CVS is a method of keeping your local copy of the OpenBSD source
45: tree up to date with respect to changes made to current OpenBSD sources.
46: In addition to following the bleeding edge of development, it is
47: also possible to track the patches for errata of a release.
1.99 ericj 48:
1.14 downsj 49: <p>
1.249 nick 50: The major advantage of Anonymous CVS over other source code update
51: techniques is that it works directly against a central source code
52: repository or mirror. This means that you have the full set of CVS
53: commands available to control merging and updating your changes with
54: other source changes and for performing diffs, change histories
55: and other queries against the central repository.
1.99 ericj 56:
1.36 deraadt 57: <p>
1.261 nick 58: The OpenBSD Project currently has six main source repositories:
1.99 ericj 59:
60: <ul>
1.249 nick 61: <li><b>src</b> - Houses all source code for the OpenBSD Operating System.
62: <li><b>ports</b> - Houses the <a href="./ports.html">OpenBSD Ports</a>.
63: <li><b>www</b> - Houses all OpenBSD web pages. (Including this one).
64: <li><b>X11</b> - Houses OpenBSD's adaptation of the
65: <a href="http://www.XFree86.org/">XFree86-3</a> software project.
66: This is here just for historical purposes, most users will have no
67: reason to use this tree, it is no longer being used.
68: <li><b>XF4</b> - Houses OpenBSD's active X source tree.
1.259 nick 69: <li><b>xenocara</b> - Houses OpenBSD's in-development X.org v7 tree.
1.99 ericj 70: </ul>
71:
1.100 ericj 72: <p>
1.249 nick 73: To summarize, the real strength of using Anonymous CVS is that it is
74: a "tolerant" source code control system - it <strong>respects</strong>
75: changes that you have made to your local sources and makes <strong>
76: "best efforts"</strong> to update your entire source tree, rather than
77: leaving you a list of arcane problems that have to be resolved before
78: continuing.
79:
80: <h3><a name="CVS"><font color="#0000e0">What is CVS?</font></a></h3>
81:
82: <p>
1.260 nick 83: <a href="http://ximbiot.com/cvs/">CVS</a> is the source code control
1.249 nick 84: system used to <a href="why-cvs.html">manage the OpenBSD source
85: tree.</a>
86: It implements a central repository for all officially released source code
87: and changes, while permitting developers to maintain local copies of the
88: source code with their working changes.
1.226 nick 89:
1.249 nick 90: There are two levels of source tree access:
1.226 nick 91: <ul>
1.249 nick 92: <li><b>Read-write access for developers:</b>
93: Developers who need to commit changes to the source tree must have an
94: account on the OpenBSD machines.
95: Getting this access will be a natural result of working on the sources
96: with other OpenBSD developers.
97: If someone does some good work and shows they can work with the team,
98: they will get an account.
99:
100: <li><b>Read-only access for everyone:</b>
101: Anyone can access the read-only CVS repositories.
102: These copies of the read-write CVS repository are mirrored often.
1.226 nick 103: </ul>
1.99 ericj 104:
1.15 grr 105: <p>
1.249 nick 106: The major strength of CVS is that it has the ability to perform intelligent
107: merges of changes to the central repository with changes that you make to
108: your local copy. This means that if you make a change to a module and
109: perform an update, your changes are not "blown away", rather CVS makes
110: best efforts to merge the changes made to the central sources with changes
111: you've made to your local copy.
112:
113: <p>
114: In the event that the changes can't be completely merged, CVS provides a
115: "soft fallback", providing you with annotated changes to your
116: local copy, preserving an unmodified copy of your version and continuing
117: to update any other source modules you requested.
118:
119: <h3><a name="starting"><font color="#0000e0">Getting Started Using Anonymous
120: CVS</font></a></h3>
121:
122: While you can download the entire source tree from an AnonCVS server,
123: you can often save a lot of time and bandwidth by "preloading" your
124: source tree with the source files from either the OpenBSD CD or from an
125: FTP server.
126: This is particularly true if you are running
127: <a href="stable.html"><i>-stable</i></a>, as relatively few files change
128: between the <i>-release</i> and <i>-stable</i>.
1.100 ericj 129:
1.22 niklas 130: <p>
1.249 nick 131: To extract the source tree from the CD to <i>/usr/src</i> (assuming the CD is
132: mounted on /mnt):
1.22 niklas 133: <pre>
1.224 nick 134: # <b>cd /usr/src; tar xzf /mnt/src.tar.gz</b>
1.227 nick 135: # <b>cd /usr; tar xzf /mnt/XF4.tar.gz</b>
1.226 nick 136: # <b>tar xzf /mnt/ports.tar.gz</b>
1.22 niklas 137: </pre>
1.224 nick 138:
1.249 nick 139: The source files for download from the FTP servers are separated into two
140: files to minimize the time required to download for those wishing to work
141: with only one part of the tree. The two files are <tt>sys.tar.gz</tt>,
142: which contains the files used to create the kernel, and <tt>src.tar.gz</tt>
143: which contains all the other "userland" utilities.
144: In general, however, you will usually want both of them installed.
145: Assuming the downloaded files, <tt>src.tar.gz</tt> and
146: <tt>sys.tar.gz</tt> are in <tt>/usr</tt>:
1.224 nick 147:
1.22 niklas 148: <pre>
1.224 nick 149: # <b>cd /usr/src</b>
150: # <b>tar xzf ../sys.tar.gz</b>
1.225 nick 151: # <b>tar xzf ../src.tar.gz</b>
1.226 nick 152: # <b>cd /usr</b>
153: # <b>tar xzf XF4.tar.gz</b>
154: # <b>tar xzf ports.tar.gz</b>
1.22 niklas 155: </pre>
1.100 ericj 156:
157: <p>
1.249 nick 158: Not all people will wish to unpack all the file sets, but as the system
159: must be kept in sync, you will generally need to set up all trees.
1.226 nick 160:
161: <p>
1.249 nick 162: You can also just use cvs(1) to "<b>checkout</b>" the source repository
163: for you. This is discussed in the <a href="#using">next section</a>.
1.100 ericj 164:
165: <p>
1.249 nick 166: After this, <tt>/usr/src</tt> will be a nice checkout area where all
167: <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=cvs&sektion=1&format=html">
168: cvs(1)</a> commands will work properly.
1.100 ericj 169:
1.249 nick 170: <h3><a name="using"><font color="#0000e0">Using CVS to get and update your
171: source tree</font></a></h3>
1.100 ericj 172:
173: <p>
1.249 nick 174: CVS was designed to be a simple way to retrieve and update your sources.
175: You must first decide whether you want to track <i>-current</i> or a
176: <a href="stable.html">patch branch</a>.
177: The current tree has all of the up to the minute changes,
178: whereas a patch branch contains a formal release plus the patches
179: from the <a href="errata.html">errata</a> and lesser issues already applied.
180: For more information on these "flavors" of OpenBSD, see
181: <a href="faq/faq5.html#Flavors">here</a>.
182:
183: <p>Once you have decided which tree to follow, you must choose which Anonymous
184: CVS server you are going to use. A list of these servers is
185: <a href="#CVSROOT">below</a>.
186:
187: <p>
188: Once you have chosen which <a href="#CVSROOT">Anonymous CVS Server</a> you will
189: use, you can start using cvs. For those of you
190: who have CDs you can start with the CVS checkout that is on the CD by using
191: the method <a href="#starting">above</a> to get the sources onto your system.
192: If you don't have a CD handy, use the method below to checkout the sources.
193: This method puts the OpenBSD source tree into <i>/usr/src</i>.
1.100 ericj 194:
1.135 naddy 195: <pre>
196: # <b>cd /usr; cvs checkout -P src</b>
197: </pre>
1.99 ericj 198:
1.1 deraadt 199: <p>
1.249 nick 200: The above will checkout the <i>current</i> source tree. Many of you will
201: only want the patch branch sources. To checkout a patch branch, you must
202: specify a tag along with your command. Example:
1.1 deraadt 203:
1.135 naddy 204: <pre>
1.265 steven 205: # <b>cd /usr; cvs checkout -P -rOPENBSD_4_1 src</b>
1.135 naddy 206: </pre>
1.1 deraadt 207: <p>
1.265 steven 208: Or OPENBSD_4_0 for 4.0, etc.
1.100 ericj 209:
1.265 steven 210: <p> The OPENBSD_4_1 tag contains the release sources and
1.249 nick 211: errata already applied.
1.100 ericj 212:
1.249 nick 213: <h3><a name="CVSROOT"><font color="#0000e0">Available Anonymous CVS Servers
1.155 jsyn 214: </font></a></h3>
1.1 deraadt 215:
216: <p>
1.249 nick 217: <em>Please see the note about <a href="#WHICH">ssh vs. rsh</a> below!</em>
1.12 grr 218: <p>
1.1 deraadt 219: <ul>
1.256 grunk 220: <li><strong>CVSROOT=anoncvs@anoncvs.de.openbsd.org:/cvs</strong><br>
1.252 grunk 221: Location: University of Erlangen-Nuremberg, Erlangen, Germany.<br>
222: Maintained by <a href="mailto:grunk@pestilenz.org">Alexander von Gernler</a>.<br>
1.253 grunk 223: Protocols: ssh, ssh port 2022, pserver.<br>
1.252 grunk 224: Updated every 2 hours.<br>
225: SSH fingerprints:<br>
226: (RSA) 1024 fc:94:b0:c1:e5:b0:98:7c:58:43:99:76:97:ee:9f:b7<br>
227: (DSA) 1024 a9:00:3f:ba:50:81:16:d1:e9:b8:4f:3c:b2:10:e2:6c<br>
228: <p>
229: <li><strong>CVSROOT=anoncvs@anoncvs1.usa.openbsd.org:/cvs</strong><br>
1.249 nick 230: Host also known as <strong>anoncvs.usa.openbsd.org, anoncvs4.usa.openbsd.org</strong>.<br>
231: Location: Redwood City, CA, USA.<br>
232: Maintained by <a href="mailto:millert@openbsd.org">Todd Miller</a>.<br>
233: Protocols: rsh, ssh, ssh port 2022, pserver.<br>
234: Updated every 2 hours.<br>
1.214 millert 235: SSH fingerprints:<br>
236: (RSA1) 1024 64:de:26:16:c2:ff:1b:c7:24:ed:a4:4a:d7:2f:69:3e<br>
237: (RSA) 1024 49:67:9a:46:62:8a:3f:4e:b3:63:ca:d6:41:29:2a:2f<br>
238: (DSA) 1024 a7:75:49:77:f3:47:d1:3c:5e:65:84:84:3b:03:f1:33<br>
1.196 nick 239: <p>
1.209 david 240: <li><strong>CVSROOT=anoncvs@anoncvs3.usa.openbsd.org:/cvs</strong><br>
1.249 nick 241: Location: National Center for Atmospheric Research, Boulder, CO, USA.<br>
242: Maintained by <a href="mailto:millert@openbsd.org">Todd Miller</a>.<br>
243: Protocols: rsh, ssh, ssh port 2022, pserver.<br>
244: Updated every 2 hours.<br>
1.214 millert 245: SSH fingerprints:<br>
1.222 millert 246: (RSA1) 1024 34:95:19:c2:b3:e7:61:7b:39:e8:ab:86:37:cd:c4:49<br>
247: (RSA) 1024 42:56:39:98:65:05:e7:2a:98:2b:ee:cc:e5:a3:53:ed<br>
248: (DSA) 1024 e3:e7:83:ef:f6:78:dc:d3:ca:a5:cf:64:c6:b7:4f:43<br>
1.1 deraadt 249: <p>
1.246 steven 250: <li><strong>CVSROOT=anoncvs@rt.fm:/cvs</strong><br>
1.249 nick 251: Location: Lake in the Hills, IL, USA.<br>
252: Maintained by <a href="mailto:jcs@rt.fm">Joshua Stein</a>.<br>
253: Protocols: ssh.<br>
254: Updated every 3 hours.<br>
1.231 mickey 255: SSH fingerprints:<br>
1.246 steven 256: (RSA) 1024 54:74:ca:17:d0:07:c3:53:b7:7e:1d:9b:10:bf:04:37<br>
257: (DSA) 1024 46:78:40:52:7a:18:f9:0e:68:61:b0:27:29:f9:d9:c4<br>
1.1 deraadt 258: <p>
1.246 steven 259: <li><strong>CVSROOT=anoncvs@anoncvs1.ca.openbsd.org:/cvs</strong><br>
1.249 nick 260: Host also known as <strong>anoncvs.ca.openbsd.org, openbsd.sunsite.ualberta.ca</strong>.<br>
261: Location: Edmonton, Canada.<br>
262: Maintained by <a href="mailto:beck@ualberta.ca">Bob Beck</a>.<br>
263: Protocols: ssh, rsh, ssh port 2022, pserver.<br>
264: Updated every 2 hours.<br>
1.246 steven 265: <p>
266: <li><strong>CVSROOT=anoncvs@anoncvs.skyrock.com:/cvs/openbsd</strong><br>
1.249 nick 267: Location: Paris, France.<br>
268: Maintained by <a href="mailto:anoncvs@pureftpd.org">Frank Denis</a>.<br>
269: Protocols: ssh, ssh port 2022.<br>
270: Updated every 2 hours from anoncvs3.usa.openbsd.org.<br>
1.246 steven 271: SSH fingerprints:<br>
272: (RSA1) 2048 4d:60:d8:ab:bc:c6:29:64:b4:45:1b:98:2b:fe:40:7e<br>
273: (RSA) 2048 01:f1:c4:25:c8:e3:0d:0e:7a:33:94:14:f4:9d:98:5f<br>
274: (DSA) 2048 73:36:41:46:fd:0a:67:df:e6:c1:4a:6b:02:61:f4:61<br>
1.121 deraadt 275: <p>
1.264 grunk 276: <li><strong>CVSROOT=anoncvs@openbsd.spline.de:/cvs</strong><br>
277: Host also known as <strong>openbsd.spline.inf.fu-berlin.de</strong>.<br>
278: Location: SPLINE, Institut für Informatik, Freie Universität, Berlin, Germany.<br>
279: Maintained by <a href="mailto:stsp@spline.de">Stefan Sperling</a>.<br>
280: Protocols: ssh, ssh port 2222, pserver.<br>
281: Updated every 2 hours from openbsd.informatik.uni-erlangen.de.<br>
282: SSH fingerprints:<br>
283: (RSA) 2048 13:d2:a6:ff:5c:29:f8:ca:15:73:75:1b:b1:d3:b0:48<br>
284: (DSA) 2048 a0:c2:60:15:54:50:af:07:64:85:89:66:29:e7:0b:86<br>
285: <p>
1.246 steven 286: <li><strong>CVSROOT=anoncvs@mirror.osn.de:/cvs</strong><br>
1.249 nick 287: Location: Nürnberg, Germany.<br>
288: Maintained by <a href="mailto:aw@osn.de">Armin Wolfermann</a>.<br>
289: Protocols: ssh.<br>
1.252 grunk 290: Updated every 4 hours from anoncvs1.usa.openbsd.org.<br>
1.215 david 291: SSH fingerprints:<br>
1.246 steven 292: (RSA) 1024 f2:73:d2:f6:e3:01:ef:ca:3b:e7:6c:80:b6:bd:bb:84<br>
293: (DSA) 1024 fb:33:05:62:96:20:cf:88:7e:10:cb:8d:91:72:57:32<br>
294: <p>
295: <li><strong>CVSROOT=anoncvs@anoncvs.silihost.hu:/cvs</strong><br>
1.249 nick 296: Location: Budapest, Hungary.<br>
297: Maintained by <a href="mailto:robert@openbsd.org">Robert Nagy</a>.<br>
298: Protocols: ssh.<br>
299: Updated every 3 hours from anoncvs.de.openbsd.org.<br>
1.123 beck 300: <p>
1.246 steven 301: <li><strong>CVSROOT=anoncvs@anoncvs.jp.openbsd.org:/cvs</strong><br>
1.249 nick 302: Host also known as <strong>kankoromochi.econ.nagasaki-u.ac.jp</strong>.<br>
303: Location: Nagasaki University, Faculty of Economics, Nagasaki, Japan.<br>
304: Maintained by <a href="mailto:sigh@net.nagasaki-u.ac.jp">Suzuki Itoshi</a>.<br>
305: Protocols: ssh, pserver.<br>
306: Updated every 3 hours.<br>
1.176 miod 307: <p>
308: <li><strong>CVSROOT=anoncvs@anoncvs.openbsd.lt:/cvs</strong><br>
1.249 nick 309: Location: TVK, Cable TV and Internet Services, Taurage, Lithuania.<br>
310: Maintained by <a href="mailto:helpas@ebox.lt">Donatas Budvytis</a>.<br>
311: Protocols: ssh.<br>
312: Updated every 3 hours from cvsup.no.openbsd.org.<br>
1.183 jufi 313: <p>
1.246 steven 314: <li><strong>CVSROOT=anoncvs@anoncvs.nl.openbsd.org:/cvs</strong><br>
1.249 nick 315: Host also known as <strong>anoncvs.calyx.nl</strong>.<br>
316: Location: Amsterdam, The Netherlands.<br>
317: Protocols: ssh.<br>
318: Updated every 3 hours.<br>
1.194 nick 319: <p>
1.246 steven 320: <li><strong>CVSROOT=anoncvs@anoncvs.no.openbsd.org:/cvs</strong><br>
1.249 nick 321: Host also known as <strong>cvs.inet.no</strong>.<br>
322: Location: Oslo, Norway.<br>
323: Maintained by <a href="mailto:cvsadmin@inet.no">Michael Schuldman</a>.<br>
324: Protocols: rsh, ssh, ssh port 2022.<br>
325: Updated every 4 hours.<br>
1.186 beck 326: <p>
327: <li><strong>CVSROOT=anoncvs@openbsd.chem.uw.edu.pl:/cvs</strong><br>
1.249 nick 328: Location: Warsaw, Poland.<br>
329: Maintained by <a href="mailto:admin@chem.uw.edu.pl">Piotr Klein</a>.<br>
330: Protocols: ssh.<br>
331: Updated every 3 hours.<br>
1.203 saad 332: <p>
1.221 beck 333: <li><strong>CVSROOT=anoncvs@anoncvs.se.openbsd.org:/cvs</strong><br>
1.249 nick 334: Location: Stacken computer club, Stockholm, Sweden.<br>
1.262 nick 335: Maintained by <a href="mailto:mho@stacken.kth.se">Magnus Holmberg</a>.<br>
1.249 nick 336: Protocols: ssh.<br>
337: Updated every 3 hours.<br>
1.229 pedro 338: <p>
1.246 steven 339: <li><strong>CVSROOT=anoncvs@mirror.sese.asu.edu:/cvs</strong><br>
1.249 nick 340: Location: Arizona State University, Tempe, AZ, USA.<br>
1.263 steven 341: Maintained by <a href="mailto:marco@azbsd.org">Mark Peoples</a>.<br>
1.249 nick 342: Protocols: ssh.<br>
343: Updated every 4 hours from anoncvs3.usa.openbsd.org.<br>
1.230 naddy 344: <p>
345: <li><strong>CVSROOT=anoncvs@mirror.sg.depaul.edu:/cvs</strong><br>
1.249 nick 346: Location: DePaul University, Chicago, IL, USA.<br>
347: Maintained by <a href="mailto:mirror-admin@sg.depaul.edu">Eric Pancer</a>.<br>
348: Protocols: ssh, ssh port 2022, pserver.<br>
349: Updated every 2 hours.<br>
1.230 naddy 350: SSH fingerprints:<br>
351: (RSA1) 1024 5b:1c:cb:b7:5f:82:82:cc:af:13:21:a4:2c:c2:55:6b<br>
1.246 steven 352: (RSA) 1024 18:0f:97:2a:cf:6c:7f:d4:ca:2b:bc:c8:b9:56:2b:86<br>
353: (DSA) 1024 65:cb:ce:7c:3e:29:5c:82:0b:9d:fa:b7:bb:e0:4b:47<br>
1.236 grunk 354: <p>
1.254 steven 355: <li><strong>CVSROOT=anoncvs@mirror.planetunix.net:/cvs</strong><br>
356: Location: Board of Trade Center, Chicago, IL, USA.<br>
357: Maintained by <a href="mailto:brian@planetunix.net">Brian Brombacher</a>.<br>
358: Protocols: ssh, ssh port 2022, pserver.<br>
359: Updated every 3 hours from anoncvs3.usa.openbsd.org.<br>
360: SSH fingerprints:<br>
361: (RSA1) 2048 e4:22:93:81:84:e0:68:8c:0b:d5:1f:78:cd:6f:fa:c3<br>
362: (RSA) 2048 8f:42:bd:b0:a2:94:df:6b:af:1e:96:03:ea:68:03:d9<br>
363: (DSA) 1024 26:51:e8:b3:38:88:dc:a8:2a:98:59:86:ab:40:bb:a4<br>
364: <p>
1.246 steven 365: <li><strong>CVSROOT=anoncvs@anoncvs.nyc.openbsd.org:/cvs</strong><br>
1.249 nick 366: Location: New York Internet, New York, NY, USA.<br>
367: Maintained by <a href="mailto:mickey@openbsd.org">Michael Shalayeff</a>.<br>
368: Protocols: rsh, ssh, ssh port 2022, pserver.<br>
369: Updated every 2 hours.<br>
1.246 steven 370: SSH fingerprints:<br>
371: (RSA1) 1024 ff:97:fc:34:c6:09:7f:b2:bd:31:4e:d5:51:ce:f3:44<br>
372: (RSA) 1024 05:ac:be:be:f8:f6:ab:63:5e:80:6c:be:d3:31:41:cd<br>
373: (DSA) 1024 89:be:38:4d:2a:1b:1a:db:93:65:9d:36:7f:ee:d2:76<br>
1.240 grunk 374: <p>
1.246 steven 375:
1.73 deraadt 376: </ul>
1.84 beck 377:
1.73 deraadt 378: <p>
1.249 nick 379: <em>Note:</em> If your server is listed on here with inaccurate or
380: unknown information, please contact
381: <a href="mailto:beck@openbsd.org"><tt>beck@openbsd.org</tt></a>
1.104 ericj 382:
1.80 beck 383: <p>
1.249 nick 384: You may want to use
1.135 naddy 385: <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=traceroute&sektion=8&format=html">traceroute(8)</a>
1.249 nick 386: to find out which server is nearest you.
387: Problems with a server should be reported to the <b>maintainer</b> of the
388: server in question.
1.104 ericj 389:
1.249 nick 390: <h3><a name="CRYPTO"><font color="#0000e0">Getting crypto sources through
391: cvs(1)</font></a></h3>
1.104 ericj 392:
1.1 deraadt 393: <p>
1.249 nick 394: <strong>IMPORTANT NOTE:</strong>
395: There are a few issues relating to cryptographic software that everyone
396: should be aware of:
1.1 deraadt 397: <ul>
1.249 nick 398: <li>The OpenBSD sources are from Canada.
399: As
1.182 nick 400: <a href="http://www.efc.ca/pages/doc/crypto-export.html">
1.249 nick 401: researched by a Canadian individual</a>
402: and as
1.135 naddy 403: <a href="http://axion.physics.ubc.ca/ECL.html">
1.249 nick 404: described in the Export Control list of Canada</a>
405: it is legal to export crypto software from Canada to the world.
1.1 deraadt 406: <p>
1.249 nick 407: <li>However, if you are outside the USA or Canada, you should not
408: fetch the cryptographic sections of the OpenBSD sources from an
409: anoncvs server located in the USA. The files in question are...
1.1 deraadt 410: <ul>
411: <li>src/kerberosIV/*
1.167 miod 412: <li>src/kerberosV/*
1.57 art 413: <li>src/lib/libdes/*
1.1 deraadt 414: <li>src/lib/libc/crypt/crypt.c
415: <li>src/lib/libc/crypt/morecrypt.c
1.167 miod 416: <li>src/sys/crypto
1.36 deraadt 417: <li>src/sys/netinet
1.67 art 418: <li>src/usr.sbin/afs/src/rxkad/*
1.167 miod 419: <li>XF4/xc-mit/lib/Xdmcp/Wraphelp.c
420: <li>XF4/xc-old/lib/Xdmcp/Wraphelp.c
421: <li>XF4/xc/lib/Xdmcp/Wraphelp.c
1.1 deraadt 422: </ul>
1.249 nick 423: Because of US Dept. of Commerce policy,
424: crypto software may only be exported to Canada from the USA.
1.1 deraadt 425: </ul>
426:
1.249 nick 427: <h3><a name="EXAMPLE"><font color="#0000e0">Example usages for cvs(1)</font>
1.155 jsyn 428: </a></h3>
1.104 ericj 429:
1.198 david 430: <p>
1.249 nick 431: NOTICE: If you want to update a branch (such as a patch branch)
432: to <i>current</i>, you would add the <code>-A</code>
433: flag to cvs, but this flag is of little use otherwise. Some older
434: versions of the OpenBSD documentation recommended use of this flag
435: in many examples. We no longer recommend this flag unless absolutely necessary.
1.163 chris 436:
1.1 deraadt 437: <p>
1.249 nick 438: A sample use of an anoncvs server would be:
1.135 naddy 439: <pre>
1.245 ray 440: $ <strong>cd /tmp</strong>
441: $ <strong>cvs -d anoncvs@anoncvs.ca.openbsd.org:/cvs get src/sys/arch/sparc</strong>
1.249 nick 442: [copies the files from the repository to your machine]
1.245 ray 443: $ <strong>cd src/sys/arch/sparc</strong>
444: $ <strong>cvs log locore.s</strong>
1.249 nick 445: [shows the commit log for the chosen file]
1.245 ray 446: $ <strong>cvs diff -bc -r1.1 -r1.5 locore.s</strong>
1.249 nick 447: [shows the changes between revisions 1.1 and rev 1.5]
1.135 naddy 448: </pre>
1.1 deraadt 449:
450: <p>
1.249 nick 451: <a name="pserver">In order to use a cvs ``pserver'' (a direct TCP connection
452: instead of using ssh or rsh) you must login once:</a>
1.104 ericj 453:
1.135 naddy 454: <pre>
1.245 ray 455: $ <strong>cvs -d :pserver:anoncvs@anoncvs.ca.openbsd.org:/cvs login</strong>
1.249 nick 456: (Logging in to anoncvs@anoncvs1.ca.openbsd.org)
1.104 ericj 457: CVS password: <strong>anoncvs</strong>
1.249 nick 458: [This writes a line to ~/.cvspass (filename over-ridden by CVS_PASSFILE).]
459: [An example line from my ~/.cvspass after typing 'blah' for the above ]
460: [password is: ]
461: [:pserver:anoncvs@anoncvs5.usa.openbsd.org:/cvs Au'yc ]
462: [After logging in ONCE every other use of the above CVSROOT will work. ]
1.245 ray 463: $ <strong>cvs -d :pserver:anoncvs@anoncvs.ca.openbsd.org:/cvs get ksrc-i386 ksrc-common</strong>
1.249 nick 464: [Allows you to retrieve ONLY that necessary to rebuild an i386 kernel. ]
1.135 naddy 465: </pre>
1.18 todd 466:
467: <p>
1.249 nick 468: Here is how someone using anoncvs regularly would update his
469: source tree:
470: <ul><li>First, start out by `get'-ing an initial tree:
1.27 todd 471:
1.249 nick 472: <p> (If you are following <i>current</i>):
1.135 naddy 473: <pre>
474: # <strong>cd /usr</strong>
1.245 ray 475: # <strong>cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs get -P src</strong>
1.135 naddy 476: </pre>
1.109 jason 477:
1.265 steven 478: <p> (If you are following the patch branch for 4.1):
1.135 naddy 479: <pre>
480: # <strong>cd /usr</strong>
1.265 steven 481: # <strong>cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs get -rOPENBSD_4_1 -P src</strong>
1.135 naddy 482: </pre>
1.37 todd 483:
1.249 nick 484: <li> Anytime afterwards, to `update' this tree:
485: <p> (If you are following <i>current</i>):
1.135 naddy 486: <pre>
487: # <strong>cd /usr/src</strong>
1.163 chris 488: # <strong>cvs -q up -Pd</strong>
1.135 naddy 489: </pre>
1.27 todd 490:
1.265 steven 491: <p> (If you are following the patch branch for 4.1):
1.135 naddy 492: <pre>
493: # <strong>cd /usr/src</strong>
1.265 steven 494: # <strong>cvs -q up -rOPENBSD_4_1 -Pd</strong>
1.135 naddy 495: </pre>
1.109 jason 496:
1.249 nick 497: Every time you ran this it would synchronize your /usr/src tree. It would
498: not destroy any of your local changes, rather it would attempt to merge
499: changes in.
1.72 millert 500:
501: <p>
1.249 nick 502: <li> NOTE:
503: If you are updating a source tree that you initially fetched
504: from a different server, or from a CD, you <strong>must</strong>
505: add the <em>-d anoncvs@anoncvs.ca.openbsd.org:/cvs</em> options to cvs.
1.135 naddy 506: <pre>
507: # <strong>cd /usr/src</strong>
1.245 ray 508: # <strong>cvs -d anoncvs@anoncvs.ca.openbsd.org:/cvs -q up -Pd</strong>
1.135 naddy 509: </pre>
1.27 todd 510: </ul>
511:
1.37 todd 512: <p>
1.249 nick 513: To <a name="ports">use</a> <a href="ports.html">ports</a>, it is similar to src:
1.37 todd 514: <ul><li>
1.249 nick 515: <p> (If you are following <i>current</i>):
1.37 todd 516: <pre>
1.135 naddy 517: # <strong>cd /usr</strong>
1.245 ray 518: # <strong>cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs get -P ports</strong>
1.38 deraadt 519: </pre>
1.265 steven 520: <p> (If you are following the patch branch for 4.1):
1.157 heko 521: <pre>
522: # <strong>cd /usr</strong>
1.265 steven 523: # <strong>cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs get -rOPENBSD_4_1 -P ports</strong>
1.157 heko 524: </pre>
1.249 nick 525: <li> Anytime afterwards, to `update' this tree:
526: <p> (If you are following <i>current</i>):
1.37 todd 527: <pre>
1.218 nick 528: # <strong>cd /usr/ports</strong>
529: # <strong>cvs -q up -Pd</strong>
1.157 heko 530: </pre>
1.265 steven 531: <p> (If you are following the patch branch for 4.1):
1.157 heko 532: <pre>
1.218 nick 533: # <strong>cd /usr/ports</strong>
1.265 steven 534: # <strong>cvs -q up -rOPENBSD_4_1 -Pd</strong>
1.157 heko 535: </pre>
1.127 jufi 536: </ul>
1.37 todd 537:
1.249 nick 538: In the above example, <i>-q</i> is optional, only intended to minimize
539: cvs's output. For those who like to see screenfulls of output, it
540: can be omitted.
1.1 deraadt 541:
542: <p>
1.250 steven 543: To make a diff of a locally patched module (here <i>cd.c</i>) to include with
1.249 nick 544: a bug report:
1.135 naddy 545: <pre>
546: # <strong>cd /usr</strong>
547: # <strong>cvs diff -u src/sys/scsi/cd.c > /tmp/patch</strong>
548: </pre>
1.12 grr 549:
550: <p>
1.249 nick 551: The <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=cvs&sektion=1&format=html">
552: cvs(1) man page</a>
553: (included with the CVS sources) has much more
554: information about how CVS can be used.
1.1 deraadt 555:
1.105 ericj 556: <p>
1.249 nick 557: <strong>Warning:</strong>
558: When using cvs you should take care that your current directory is either
559: the root of the tree you are referencing or in a separate place such as /tmp.
560: Some commands such as "get" can create an arbitrary sub-tree in the current
561: directory, and a subsequent update will recursively flesh out this sub-tree.
1.12 grr 562:
563: <p>
1.249 nick 564: The anoncvs service gives fledgling developers a chance to learn CVS
565: operation and get thoroughly involved in the development process
566: before getting "commit" access -- as a result of showing useful
567: skills and high quality results they will naturally later be given
568: developer access. As well, people providing patches can create
569: their "diff"s relative to the CVS tree, which will ease integration.
1.1 deraadt 570:
1.104 ericj 571:
1.249 nick 572: <h3><a name="WHICH"><font color="#0000e0">Use rsh(1) or ssh(1)?</font></a></h3>
1.104 ericj 573:
1.249 nick 574: CVS supports three access methods between the CVS server and the CVS
575: client:
1.226 nick 576:
577: <ul>
1.249 nick 578: <li><b>ssh:</b> Secure Shell can be used to access the anonymous CVS servers.
579: This is the <i>recommended</i> way of doing so, as it is encrypted.
1.226 nick 580:
1.249 nick 581: <li><b>rsh:</b> Remote Shell can be used on some of the servers for users
582: who don't have access to <a href="http://www.openssh.com/">ssh</a>.
1.226 nick 583:
1.249 nick 584: <li><b>pserver:</b> pserver is primarily useful for users who are behind
585: firewalls that block the other two connections.
1.226 nick 586: </ul>
587:
1.249 nick 588: <p>
589: <b>NOTE:</b> For users wishing to use rsh, you must first set the
590: <tt>CVS_RSH</tt> environment variable to point to the rsh(1) program:
1.226 nick 591:
592: <ul>
1.249 nick 593: <li>For Korn/Bourne shells:
1.226 nick 594: <pre>
595: $ <b>export CVS_RSH=/usr/bin/rsh</b>
596: </pre>
1.249 nick 597: <li>For csh/tcsh:
1.226 nick 598: <pre>
599: % <b>setenv CVS_RSH /usr/bin/rsh</b>
600: </pre>
601: </ul>
602:
1.1 deraadt 603: <p>
1.249 nick 604: By default, OpenBSD's CVS client uses ssh ("secure shell":
605: <a href="http://www.openssh.com/">OpenSSH</a>) to talk to the CVS server.
1.159 jcs 606:
607: <p>
1.249 nick 608: Many of the CVS sites no longer support rsh for security reasons. Local
609: problems like firewalls or imperfect protocol emulators such as slirp may
610: also hinder rsh usage. However, if rsh is desired, one must set the
611: <var>CVS_RSH</var> environment variable to point to rsh
612: (typically <strong>/usr/bin/rsh</strong>).
1.159 jcs 613:
614: <p>
1.249 nick 615: If local policy prevents outgoing connections to ssh's default port of 22,
616: port 2022 may be used in its place. Note, however, that not all anoncvs
617: servers accept ssh connections on this port. Furthermore, most anoncvs servers
618: no longer accept the <strong>none</strong> cipher, as it is disabled in
619: recent versions of ssh for security reasons. Also, do not be tempted
620: to turn on compression: CVS already compresses.
1.159 jcs 621:
622: <p>
1.249 nick 623: One could specify something like the following in the
624: <strong>$HOME/.ssh/config</strong> configuration file to avoid the pitfalls
625: and restrictions mentioned above:
1.1 deraadt 626: <pre>
1.59 beck 627: Host anoncvs.ca.openbsd.org
1.159 jcs 628: Compression no
1.1 deraadt 629: Port 2022
630: </pre>
631:
632: <p>
1.249 nick 633: CVS is a little noisy starting up; to quiet it a bit you may want to
634: do this:
1.105 ericj 635:
1.135 naddy 636: <pre>
1.245 ray 637: <strong>$ export CVS_CLIENT_PORT=-1</strong>
1.135 naddy 638: </pre>
1.1 deraadt 639:
640: <p>
1.249 nick 641: <h3><a name="SUP"><font color="#0000e0">Mirroring the CVS repository via
642: sup(1)</font></a></h3>
1.107 millert 643:
644: <p>
1.249 nick 645: Users wishing to mirror the OpenBSD CVS tree itself may now do so
646: from <em>anoncvs.usa.openbsd.org</em> or <em>anoncvs3.usa.openbsd.org</em>
647: (these are different machines). Note that this is the cvs tree,
648: <b>not</b> a checked out source tree. It is only useful if you
649: want to be able to do fast cvs operations (diff, annotate, etc) or
650: if you have multiple source trees and you only want to transfer new
651: data once (you can then checkout a tree from your local cvs mirror).
1.107 millert 652: <p>
1.249 nick 653: A sample supfile would be:
1.107 millert 654: <pre>
655: cvs host=anoncvs.usa.openbsd.org hostbase=/ base=/home delete
656: </pre>
657: <p>
1.249 nick 658: which would mirror the cvs tree into /home/cvs with the sup data
659: files ending up in /home/sup. The full OpenBSD cvs tree is currently
1.260 nick 660: about 3.5GB in size, and will, of course continue to grow.
1.65 matthieu 661:
1.249 nick 662: <h3><a name="MIRROR"><font color="#0000e0">Setting up an anoncvs mirror
1.155 jsyn 663: </font></a></h3>
1.105 ericj 664:
1.107 millert 665: <p>
1.249 nick 666: If you wish to setup a new anoncvs mirror site and make it available to
667: the general public, please contact the anoncvs
668: <a href="mailto:sup@openbsd.org">maintainer</a>.
1.259 nick 669: Anoncvs mirrors currently require about 3.5GB of disk (and it will grow!),
670: and use up to 32MB of swap
1.249 nick 671: per anoncvs user (assuming the user does a large operation; while smaller
672: operations use fewer resources, anoncvs still makes much more of an
673: impact than ftp or sup). Such anoncvs machines should have excellent
674: network connectivity for the area they are expected to serve. A
675: <a href="anoncvs.shar">document</a>
676: which describes the setup of anoncvs servers is available.
677:
678: <h3><font color="#0000e0">Final notes</font></h3>
679: After upgrading your source tree, you should read the comments
680: at the top of <kbd>/usr/src/Makefile</kbd> before attempting
681: a build. Also, you should build a new kernel <strong>before</strong>
682: doing a <kbd>make build</kbd> if possible. In some cases it may be
683: necessary to rebuild and install the <kbd>config</kbd> utility before
684: you can build the kernel. If <kbd>config GENERIC</kbd> fails this
685: is probably the case.
686: <p>
687: It is important to note that upgrading from a release to the current tree
688: by rebuilding the sources can be rather difficult due to dependencies
689: that are often not obvious. Therefore, it is suggested that you first
690: install the latest snapshot before attempting a tree build from source.
1.1 deraadt 691:
692: <hr>
1.249 nick 693: <a href="index.html"><img height="24" width="24" src="back.gif" border="0"
694: alt="OpenBSD"></a>
1.135 naddy 695: <a href="mailto:www@openbsd.org">www@openbsd.org</a>
1.266 ! pedro 696: <br><small>$OpenBSD: anoncvs.html.end,v 1.7 2007/05/01 17:56:27 steven Exp $
1.155 jsyn 697: </small>
1.1 deraadt 698:
699: </body>
700: </html>