Annotation of www/anoncvs.html, Revision 1.157
1.135 naddy 1: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
1.1 deraadt 2: <html>
3: <head>
1.93 deraadt 4: <title>OpenBSD AnonCVS</title>
1.135 naddy 5: <link rev="made" href="mailto:www@openbsd.org">
1.93 deraadt 6: <meta name="resource-type" content="document">
7: <meta name="description" content="How to get OpenBSD updates via Internet using Anonymous CVS">
8: <meta name="keywords" content="openbsd,anoncvs,updates">
9: <meta name="distribution" content="global">
1.140 horacio 10: <meta name="copyright" content="This document copyright 1996-2001 by OpenBSD.">
1.1 deraadt 11: </head>
12:
1.135 naddy 13: <body bgcolor="#ffffff" text="#000000" link="#23238e">
1.1 deraadt 14:
1.135 naddy 15: <img alt="[OpenBSD]" height="30" width="141" src="images/smalltitle.gif">
1.93 deraadt 16: <p>
1.135 naddy 17: <h2><font color="#e00000">Anonymous CVS</font></h2>
1.14 downsj 18:
1.135 naddy 19: <hr>
20:
21: <h3>Table Of Contents</h3>
22:
23: <ul>
1.100 ericj 24: <li><a href="#anoncvs">What is Anonymous CVS?</a>
25: <li><a href="#CVS">What is CVS?</a>
1.135 naddy 26: <li><a href="#starting">Getting Started Using Anonymous CVS</a>
27: <li><a href="#using">Using CVS to Get and Update your Source Tree</a>
28: <li><a href="#CVSROOT">Available Anonymous CVS Servers</a>
29: <li><a href="#CRYPTO">Getting crypto sources through cvs(1)</a>
30: <li><a href="#EXAMPLE">Example usages for cvs(1)</a>
1.104 ericj 31: <li><a href="#WHICH">Use rsh(1) or ssh(1)?</a>
1.135 naddy 32: <li><a href="#SUP">Mirroring the CVS repository via sup(1)</a>
33: <li><a href="#MIRROR">Setting up an anoncvs mirror</a>
1.100 ericj 34: </ul>
1.135 naddy 35:
1.100 ericj 36: <hr>
37:
1.135 naddy 38: <h3><a name="anoncvs"><font color="#0000e0">What is Anonymous CVS?</font></a></h3>
1.99 ericj 39:
1.15 grr 40: <p>
41: Anonymous CVS is a method of keeping your local copy of the OpenBSD source
42: tree up to date with respect to changes made to current OpenBSD sources.
1.109 jason 43: In addition to following the bleeding edge of development, it is
44: also possible to track the patches for errata of a release.
1.99 ericj 45: </p>
46:
1.14 downsj 47: <p>
1.15 grr 48: The major advantage of Anonymous CVS over other source code update
49: techniques is that it works directly against a central source code
50: repository or mirror. This means that you have the full set of CVS
51: commands available to control merging and updating your changes with
1.154 jsyn 52: other source changes and for performing diffs, change histories
1.15 grr 53: and other queries against the central repository.
1.99 ericj 54: </p>
55:
1.36 deraadt 56: <p>
1.135 naddy 57: The OpenBSD Project currently has five main source repositories:
1.99 ericj 58: </p>
59:
60: <ul>
1.140 horacio 61: <li><b>src</b> - Houses all source code for the OpenBSD Operating System.</li>
62: <li><b>ports</b> - Houses the <a href="./ports.html">OpenBSD Ports</a>.</li>
63: <li><b>www</b> - Houses all OpenBSD web pages. (Including this one).</li>
1.135 naddy 64: <li><b>X11</b> - Houses OpenBSD's adaptation of the
65: <a href="http://www.XFree86.org/">XFree86-3</a> software project.</li>
66: <li><b>XF4</b> - Houses OpenBSD's adaptation of the
67: <a href="http://www.XFree86.org/">XFree86-4</a> software project.</li>
1.99 ericj 68: </ul>
69:
1.100 ericj 70: <p>
71: To summarize, the real strength of using Anonymous CVS is that it is
72: a "tolerant" source code control system - it <strong>respects</strong>
73: changes that you have made to your local sources and makes <strong>
74: "best efforts"</strong> to update your entire source tree, rather than
75: leaving you a list of arcane problems that have to be resolved before
76: continuing.
77: </p>
78:
1.135 naddy 79: <h3><a name="CVS"><font color="#0000e0">What is CVS?</font></a></h3>
1.99 ericj 80:
1.36 deraadt 81: <p>
1.135 naddy 82: <a href="why-cvs.html">
1.36 deraadt 83: CVS is the source code control system used to manage the OpenBSD source tree.</a>
1.16 deraadt 84: It implements a central repository for all officially released source code
1.15 grr 85: and changes, while permitting developers to maintain local copies of the
1.99 ericj 86: source code with their working changes. Developers with "<b>write access</b>"
1.15 grr 87: can commit changes directly to the OpenBSD source tree, while "Anonymous
1.155 jsyn 88: CVS" users have "<b>read access</b>" and can keep their local copies of the
89: source up to date and issue queries against the central depository.
1.99 ericj 90: </p>
91:
1.15 grr 92: <p>
1.22 niklas 93: The major strength of CVS is that it has the ability to perform intelligent
1.15 grr 94: merges of changes to the central repository with changes that you make to
95: your local copy. This means that if you make a change to a module and
96: perform an update, your changes are not "blown away", rather CVS makes
97: best efforts to merge the changes made to the central sources with changes
98: you've made to your local copy.
1.99 ericj 99: </p>
100:
1.15 grr 101: <p>
102: In the event that the changes can't be completely merged, CVS provides a
103: "soft fallback", in terms of providing you with annotated changes to your
1.39 todd 104: local copy, preserving an unmodified copy of your version and continuing
1.15 grr 105: to update any other source modules you requested.
1.99 ericj 106: </p>
107:
1.155 jsyn 108: <h3><a name="starting"><font color="#0000e0">Getting Started Using Anonymous
109: CVS</font></a></h3>
1.100 ericj 110:
111: <p>
112: The latest version of CVS is available at
1.140 horacio 113: <a href="http://www.cvshome.org/">Cyclic</a>.
1.100 ericj 114: Versions earlier than 1.6 are not recommended, and may not work.
115: If you already have OpenBSD installed, CVS is included.
116: </p>
117:
1.22 niklas 118: <p>
1.99 ericj 119: People who own an OpenBSD CD may have seen the <i>CVS/</i> dirs on it.
1.155 jsyn 120: Actually there is a reason, the CD has a checkout of the OpenBSD <b>src</b>
121: module usable to continue updating from. Using this tree will result in a much
1.23 mickey 122: faster initial CVS update than a fresh checkout of the full OpenBSD
123: source tree. There are two ways of using the CD:
1.99 ericj 124: </p>
125:
1.23 mickey 126: <ul>
1.155 jsyn 127: <li>To copy the CVS tree from the CD to <i>/usr/src</i> (assuming the CD is
128: mounted on /mnt):
1.22 niklas 129: <pre>
1.99 ericj 130: # <b>cd /mnt; pax -rw CVS Makefile [a-z]* /usr/src</b>
1.22 niklas 131: </pre>
1.155 jsyn 132: <li>Use a union mount (see <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=mount_union&apropos=0&sektion=8&manpath=OpenBSD+Current&format=html">mount_union(8)</a>)
133: with the CD below a writable directory. (This can be used when only compiling from the tree.)
1.22 niklas 134: <pre>
1.99 ericj 135: # <b>mount -t union -o -b /mnt /usr/src</b>
1.22 niklas 136: </pre>
1.23 mickey 137: </ul>
1.100 ericj 138:
139: <p>
1.155 jsyn 140: For people who don't have a CD on hand, you can use <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=cvs&sektion=1&format=html">
141: cvs(1)</a> to "<b>checkout</b>" the source repository for you. This is
142: discussed in the <a href="#using">next section</a>.
1.100 ericj 143: </p>
144:
145: <p>
1.155 jsyn 146: After this, <i>/usr/src</i> will be a nice checkout area where all
147: <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=cvs&sektion=1&format=html">
148: cvs(1)</a> commands will work OK.
1.100 ericj 149: </p>
150:
1.155 jsyn 151: <h3><a name="using"><font color="#0000e0">Using CVS to get and update your
152: source tree</font></a></h3>
1.100 ericj 153:
154: <p>
1.109 jason 155: CVS was designed to be a simple way to retrieve and update your sources,
156: therefore there isn't much involved at all in doing so. You must first
157: decide whether you want to track <i>current</i> or a patch branch.
1.112 kjell 158: The current tree has all of the up to the minute changes,
1.109 jason 159: whereas a patch branch contains a formal release plus the patches
1.157 ! heko 160: from the <a href="errata.html">errata</a> already applied. For a definition
! 161: of <i>current</i>, see the <a href="faq/upgrade-minifaq.html#1.1">Upgrade
! 162: Mini-FAQ</a>.
1.109 jason 163:
164: <p>Once you have decided which tree to follow, you much choose which Anonymous
165: CVS server you are going to use. A list of these servers is
1.135 naddy 166: <a href="#CVSROOT">below</a>. Do, however, notice that there are three ways
1.109 jason 167: to access these servers.
1.100 ericj 168: </p>
1.99 ericj 169:
1.135 naddy 170: <dl>
1.155 jsyn 171: <dt><b>ssh</b><dd>Secure Shell can be used to access the anonymous CVS servers.
172: This is the <em>recommended</em> way of doing so, as it is encrypted. As of
173: 2.6, OpenBSD has included OpenSSH in its standard distribution.
174: <dt><b>rsh</b><dd>Remote Shell can be used on some of the servers for users
175: who don't have access to <a href="http://www.openssh.com/">ssh</a>.
176: <dt><b>pserver</b><dd>pserver is primarily useful for users who are behind
177: firewalls that block the other two connections.
1.135 naddy 178: </dl>
1.100 ericj 179:
180: <p>
1.155 jsyn 181: <b>NOTE:</b> For users wishing to use ssh, you must first set the
182: <var>CVS_RSH</var> variable to ssh.
1.100 ericj 183:
184: <ul>
1.135 naddy 185: <li>For Korn/Bourne shells:
1.100 ericj 186: <pre>
1.135 naddy 187: $ <b>export CVS_RSH=/usr/bin/ssh</b>
1.100 ericj 188: </pre>
1.135 naddy 189: <li>For csh/tcsh:
1.100 ericj 190: <pre>
1.135 naddy 191: % <b>setenv CVS_RSH /usr/bin/ssh</b>
1.100 ericj 192: </pre>
193: </ul>
194:
195: <p>
1.155 jsyn 196: Once you have chosen which <a href="#CVSROOT">Anonymous CVS Server</a> you will
197: use, and which method you will use, you can start using cvs. For those of you
198: who have CDs you can start with the CVS checkout that is on the CD by using
199: the method <a href="#starting">above</a> to get the sources onto your system.
200: If you don't have a CD handy, use the method below to checkout the sources.
201: This method puts the OpenBSD source tree into <i>/usr/src</i>.
1.100 ericj 202: </p>
203:
1.135 naddy 204: <pre>
205: # <b>cd /usr; cvs checkout -P src</b>
206: </pre>
1.99 ericj 207:
1.1 deraadt 208: <p>
1.109 jason 209: The above will checkout the <i>current</i> source tree. Many of you will
210: only want a patch branch sources. To checkout a patch branch, you must
211: specify a tag along with your command. Example:
1.100 ericj 212: </p>
1.1 deraadt 213:
1.135 naddy 214: <pre>
1.150 jufi 215: # <b>cd /usr; cvs checkout -P -rOPENBSD_2_9 src</b>
1.135 naddy 216: </pre>
1.1 deraadt 217: <p>
1.150 jufi 218: Or OPENBSD_2_8 for 2.8, etc.
1.100 ericj 219:
1.150 jufi 220: <p> Currently only the OPENBSD_2_9 tag contains the release sources and
1.109 jason 221: errata already applied.
1.100 ericj 222:
1.155 jsyn 223: <h3><a name="CVSROOT"><font color="#0000e0">Available Anonymous CVS Servers
224: </font></a></h3>
1.1 deraadt 225:
226: <p>
227: There are two levels of source tree access:
228:
229: <dl>
230: <dt><strong>Read-write access for developers:</strong>
231: <dd>Developers who need to commit changes to the source tree must have
232: an account on the OpenBSD machines. Getting this access will be a
233: natural result of working on the sources with other OpenBSD developers.
234: If someone does some good work and shows they can work with the team,
235: they will get an account.
236: </dl>
237:
238: <dl>
239: <dt><strong>Read-only access for everyone:</strong>
240: <dd>Anyone can access the read-only CVS repositories. These copies
241: of the read-write CVS repository are mirrored often. To use one,
1.135 naddy 242: set your <var>CVSROOT</var> environment variable to one of
1.1 deraadt 243: the following values:
1.12 grr 244: <p>
1.135 naddy 245: <em>Please see the note about using ssh vs. rsh below!</em>
1.12 grr 246: <p>
1.1 deraadt 247: <ul>
1.83 millert 248: <li><strong>CVSROOT=anoncvs@anoncvs1.usa.openbsd.org:/cvs</strong><br>
249: Host also known as <strong>anoncvs@anoncvs4.usa.openbsd.org</strong>.<br>
1.143 millert 250: located in Redwood City, California, western USA.<br>
1.135 naddy 251: maintained by <a href="mailto:millert@openbsd.org">Todd Miller</a>.<br>
1.143 millert 252: protocols: rsh, ssh, ssh port 2022, pserver.<br>
1.1 deraadt 253: updated every 4 hours.<br>
254: <p>
1.83 millert 255: <li><strong>CVSROOT=anoncvs@anoncvs.usa.openbsd.org:/cvs</strong><br>
256: Host also known as <strong>anoncvs3.usa.openbsd.org</strong>.<br>
1.1 deraadt 257: located at the University of Colorado, Boulder, western USA.<br>
1.148 millert 258: maintained by <a href="mailto:millert@openbsd.org">Todd Miller</a>.<br>
1.94 millert 259: protocols: rsh, ssh, ssh port 2022, pserver.<br>
1.144 millert 260: updated every 3 hours.<br>
1.1 deraadt 261: <p>
1.76 deraadt 262: <li><strong>CVSROOT=anoncvs@anoncvs5.usa.openbsd.org:/cvs</strong><br>
263: Host also known as <strong>squid.nas.nasa.gov</strong>.<br>
264: located at Ames Research Center, Moffett Field, California, USA.<br>
1.135 naddy 265: maintained by <a href="mailto:allison@mail.arc.nasa.gov">Tyler Allison</a>.<br>
1.77 deraadt 266: protocols: ssh only.<br>
267: updated every 3 hours.<br>
1.121 deraadt 268: <p>
1.84 beck 269: <li><strong>CVSROOT=anoncvs@mirror.arc.nasa.gov:/cvs</strong><br>
270: located at Ames Research Center, Moffett Field, California, USA.<br>
1.135 naddy 271: maintained by <a href="mailto:allison@mail.arc.nasa.gov">Tyler Allison</a>.<br>
1.84 beck 272: protocols: ssh only.<br>
273: updated every 3 hours.<br>
1.76 deraadt 274: <p>
1.31 deraadt 275: <li><strong>CVSROOT=anoncvs@anoncvs6.usa.openbsd.org:/cvs</strong><br>
276: Host also known as <strong>openbsd.citi.umich.edu</strong>.<br>
277: located at the University of Michigan, central USA.<br>
1.135 naddy 278: maintained by <a href="mailto:rees@umich.edu">Jim Rees</a>.<br>
1.31 deraadt 279: protocols: ssh, ssh port 2022.<br>
280: updated every 12 hours.<br>
281: <p>
1.24 deraadt 282: <li><strong>CVSROOT=anoncvs@anoncvs1.ca.openbsd.org:/cvs</strong><br>
1.40 beck 283: Host also known as <strong>anoncvs.ca.openbsd.org</strong>,
1.74 beck 284: <strong>openbsd.sunsite.ualberta.ca</strong><br>
1.24 deraadt 285: located in Edmonton, Alberta, Canada.<br>
1.149 miod 286: maintained by <A HREF="mailto:beck@ualberta.ca">Bob Beck</A>.<br>
1.53 beck 287: protocols: ssh, rsh, ssh port 2022, pserver<br>
1.45 beck 288: updated every 2 hours.<br>
1.24 deraadt 289: <p>
1.151 brad 290: <li><strong>CVSROOT=anoncvs@anoncvs.comstyle.com:/cvs</strong><br>
291: Host also known as <strong>openbsd.comstyle.com</strong><br>
292: located in Toronto, Ontario, Canada.<br>
293: maintained by <A HREF="mailto:brad@comstyle.com">Brad Smith</A>.<br>
294: protocols: ssh, ssh port 2022<br>
295: updated every 2 hours.<br>
296: <p>
1.1 deraadt 297: <li><strong>CVSROOT=anoncvs@anoncvs.uk.openbsd.org:/cvs</strong><br>
298: located in London, UK.<br>
1.135 naddy 299: maintained by <a href="mailto:peter@wonderland.org">Peter Galbavy</a>.<br>
1.116 beck 300: protocols: ssh only.<br>
301: updated every 6 hours.<br>
1.1 deraadt 302: <p>
1.117 beck 303: <li><strong>CVSROOT=anoncvs@anoncvs2.uk.openbsd.org:/cvs</strong><br>
304: located in London, UK.<br>
1.135 naddy 305: maintained by <a href="mailto:joe@hole-in-the.net">Joe Warren-Meeks</a>.<br>
1.117 beck 306: protocols: ssh only.<br>
1.119 brian 307: updated every 3 hours.<br>
1.117 beck 308: <p>
1.1 deraadt 309: <li><strong>CVSROOT=anoncvs@anoncvs.tw.openbsd.org:/cvs</strong><br>
1.64 deraadt 310: Host also known as <strong>OpenBSD.csie.NCTU.edu.tw</strong>.<br>
1.1 deraadt 311: located in Taipei, Taiwan.<br>
1.135 naddy 312: maintained by <a href="mailto:lkchu@OpenBSD.csie.NCTU.edu.tw">Liang-Kai Chu</a>.<br>
1.1 deraadt 313: protocols: rsh, ssh, ssh port 2022.<br>
314: updated every 12 hours.<br>
315: <p>
316: <li><strong>CVSROOT=anoncvs@anoncvs.no.openbsd.org:/cvs</strong><br>
1.64 deraadt 317: Host also known as <strong>cvs.inet.no</strong>.<br>
1.1 deraadt 318: located in Norway.<br>
1.135 naddy 319: maintained by <a href="mailto:cvsadmin@inet.no">Michael Shuldman</a>.<br>
1.1 deraadt 320: protocols: rsh, ssh, ssh port 2022.<br>
321: updated every 4 hours.<br>
322: <p>
1.33 deraadt 323: <li><strong>CVSROOT=anoncvs@anoncvs.se.openbsd.org:/cvs</strong><br>
1.54 art 324: Host also known as <strong>anoncvs.stacken.kth.se</strong>.<br>
1.33 deraadt 325: located in Sweden.<br>
1.135 naddy 326: maintained by <a href="mailto:anoncvs@stacken.kth.se">Magnus Holmberg</a>.<br>
1.33 deraadt 327: protocols: rsh, ssh, ssh port 2022.<br>
1.57 art 328: updated every 3 hours.<br>
1.68 wvdputte 329: <p>
330: <li><strong>CVSROOT=anoncvs@anoncvs.be.openbsd.org:/cvs</strong><br>
331: Host also known as <strong>badlands.rug.ac.be</strong>.<br>
332: located in Belgium.<br>
1.135 naddy 333: maintained by <a href="mailto:wvdputte@reptile.rug.ac.be">Wim Vandeputte</a>.<br>
1.68 wvdputte 334: protocols: ssh, ssh port 2022.<br>
335: updated every 3 hours.<br>
1.69 deraadt 336: <p>
1.142 naddy 337: <li><strong>CVSROOT=anoncvs@anoncvs.nl.openbsd.org:/cvs</strong><br>
338: Host also known as <strong>anoncvs.calyx.nl</strong>.<br>
1.118 beck 339: located in Amsterdam, The Netherlands.<br>
1.142 naddy 340: maintained by <a href="mailto:nick@calyx.net">Nick Merrill</a> and
341: <a href="mailto:alex@calyx.nl">Alexander Grendel</a>.<br>
1.118 beck 342: protocols: ssh.<br>
343: updated every 3 hours.<br>
344: <p>
1.69 deraadt 345: <li><strong>CVSROOT=anoncvs@anoncvs.jp.openbsd.org:/cvs</strong><br>
346: Host also known as <strong>kankoromochi.econ.nagasaki-u.ac.jp</strong>.<br>
347: located at Nagasaki Univ. Faculty of Economics, JAPAN.<br>
1.135 naddy 348: maintained by <a href="mailto:sigh@net.nagasaki-u.ac.jp">SUZUKI Hitoshi</a>.<br>
1.79 deraadt 349: protocols: ssh, pserver.<br>
350: updated every 3 hours.<br>
1.121 deraadt 351: <p>
1.73 deraadt 352: <li><strong>CVSROOT=anoncvs@anoncvs.cz.openbsd.org:/cvs</strong><br>
353: Host also known as <strong>com-os2.ms.mff.cuni.cz</strong>.<br>
1.155 jsyn 354: located at Faculty Math & Physics, Charles University, Prague, Czech
355: republic.<br>
356: maintained by <a href="mailto:galambos@com-os2.ms.mff.cuni.cz">Leo Galambos
357: </a>.<br>
1.73 deraadt 358: protocols: ssh, ssh port 2022.<br>
359: updated every 3 hours.<br>
1.121 deraadt 360: <p>
1.84 beck 361: <li><strong>CVSROOT=anoncvs@anoncvs1.au.openbsd.org:/cvs</strong><br>
362: Host also known as <strong>anoncvs.au.openbsd.org</strong>,
363: <strong>anoncvs.openbsd.aba.net.au</strong><br>
364: located in Carlton, Victoria, Australia.<br>
1.149 miod 365: maintained by <A HREF="mailto:mwp@aba.net.au">Micheal Paddon</A>.<br>
1.84 beck 366: protocols: ssh<br>
367: updated every 4 hours.<br>
1.121 deraadt 368: <p>
1.103 beck 369: <li><strong>CVSROOT :pserver:anoncvs@cvs.bsdfr.org:/cvs</strong><br>
1.141 naddy 370: located in France<br>
1.149 miod 371: maintained by: <a href="mailto:jch@oleane.net">Jean-Claude Christophe</a>.<br>
1.103 beck 372: protocols: pserver<br>
373: updated every 24h <br>
1.121 deraadt 374: <p>
1.115 beck 375: <li><strong>CVSROOT=anoncvs@grappa.unix-ag.uni-kl.de:/cvs</strong><br>
376: located at the University of Kaiserslautern, Germany<br>
1.135 naddy 377: maintained by <A HREF="mailto:hgw@d1906.inka.de">Hans Günter Weigand</A>
1.149 miod 378: and <A HREF="mailto:naddy@openbsd.org">Christian Weisgerber</A>.<br>
1.115 beck 379: protocols: rsh, ssh, ssh port 2022, pserver<br>
1.135 naddy 380: updated every 6 hours from cvsup.uk.openbsd.org.<br>
1.121 deraadt 381: <p>
1.80 beck 382: <li><strong>CVSROOT=anoncvs@exokernel.lcs.mit.edu:/cvs</strong><br>
383: located at M.I.T, Eastern USA.<br>
384: maintained by ????<br>
385: protocols: ssh, ???<br>
386: updated every ? hours.<br>
1.121 deraadt 387: <p>
1.108 ho 388: <li><strong>CVSROOT=anoncvs@xyzzy.gsnig.org:/cvs</strong><br>
389: Located in Göteborg, Sweden<br>
1.149 miod 390: maintained by <A HREF="mailto:martin@openbsd.org">Martin Fredriksson</A>.<br>
1.108 ho 391: protocols: ssh port 2022<br>
392: updated every 4 hours.<br>
1.121 deraadt 393: <p>
1.80 beck 394: <li><strong>CVSROOT=anoncvs@stl-isaas.ey.com:/cvs</strong><br>
1.90 beck 395: Located in St. Louis, MO, Eastern USA<br>
1.149 miod 396: maintained by <A HREF="mailto:aaron11@sprynet.com">Aaron Miller</A>.<br>
1.81 beck 397: protocols: ssh, ssh port 2022, pserver<br>
398: updated every 3 hours.<br>
1.121 deraadt 399: <p>
1.91 beck 400: <li><strong>CVSROOT=anoncvs@openbsd.groupbsd.org:/cvs</strong><br>
1.92 jason 401: Located in Hillsborough NC, Eastern USA<br>
1.149 miod 402: maintained by <A HREF="mailto:jason@openbsd.org">Jason Wright</A>.<br>
1.91 beck 403: protocols: ssh<br>
404: updated every 4 hours.<br>
1.121 deraadt 405: <p>
1.120 beck 406: <li><strong>CVSROOT=anoncvs@anoncvs.mx.openbsd.org:/cvs</strong><br>
407: Located at Campus Iztacala, Universidad Autonoma de Mexico<br>
1.149 miod 408: maintained by <A HREF="mailto:alex@iztacala.unam.mx">Alejandro Juarez</A>.<br>
1.120 beck 409: protocols: ssh<br>
410: updated every 3 hours.<br>
1.121 deraadt 411: <p>
1.128 beck 412: <li><strong>CVSROOT=anoncvs@anoncvs.pl.openbsd.org:/cvs</strong><br>
413: Host also known as <strong>anoncvs1.pl.openbsd.org</strong>,
414: <strong>incredible.bmtmc.gda.pl</strong><br>
1.126 beck 415: Located at BMT Maritime Consultants, Gdansk, Poland<br>
1.122 beck 416: maintained by <A HREF="mailto:detergent@incredible.bmtmc.gda.pl">
1.149 miod 417: Adam Naguszewski</A>.<br>
1.128 beck 418: protocols: ssh, pserver<br>
1.122 beck 419: updated every 3 hours.<br>
420: <p>
1.123 beck 421: <li><strong>CVSROOT=anoncvs@rt.fm:/cvs</strong><br>
1.136 miod 422: Located in Lake in the Hills, Illinois, USA<br>
1.123 beck 423: maintained by <A HREF="mailto:jcs@rt.fm">
1.149 miod 424: Joshua Stein</A>.<br>
1.123 beck 425: protocols: ssh<br>
1.124 beck 426: updated every 3 hours.<br>
1.131 beck 427: <P>
428: <li><strong>CVSROOT=anoncvs@shellhung.org:/cvs</strong><br>
429: Located in Hong Kong, China<br>
430: maintained by <A HREF="mailto:shell@shellhung.org">
1.149 miod 431: Shell Hung</A>.<br>
1.131 beck 432: protocols: pserver, ssh<br>
433: updated every 3 hours.<br>
1.123 beck 434: <p>
1.147 miod 435: <li><strong>CVSROOT=anoncvs@anoncvs.openbsd.org.ar:/cvs</strong><br>
1.137 beck 436: Located in Buenos Aires, Argentina<br>
1.138 beck 437: maintained by <A HREF="mailto:alejo@fibertel.com.ar">
1.147 miod 438: Alejo Sanchez</A> and
1.149 miod 439: <A HREF="mailto:claudio@core-sdi.com">Claudio Castiglia</A>.<br>
1.137 beck 440: protocols: ssh<br>
441: updated every 3 hours.<br>
442: <p>
1.149 miod 443: <li><strong>CVSROOT=anoncvs@cvs.openbsd.cz:/cvs</strong><br>
444: Located in Prague, Czech Republic<br>
445: maintained by <A HREF="mailto:vladya@openbsd.cz">Vladimir Kotal</A>.<br>
446: protocols: ssh, pserver.<br>
447: updated every 4 hours.<br>
1.152 beck 448: <p>
1.153 mickey 449: <li><strong>CVSROOT=anoncvs@anoncvs.openbsd.org.ua:/cvs</strong><br>
1.152 beck 450: Located in Kiev, Ukraine<br>
451: maintained by <A HREF="mailto:hunter@dg.net.ua">Sergey Smitienko</A>.<br>
452: protocols: ssh<br>
453: updated every 6 hours.<br>
1.73 deraadt 454: </ul>
1.84 beck 455:
456:
1.73 deraadt 457: <p>
1.135 naddy 458: <em>Note:</em> If your server is listed on here with inaccurate or
1.104 ericj 459: unknown information, please contact
1.135 naddy 460: <a href="mailto:beck@openbsd.org"><tt>beck@openbsd.org</tt></a>
1.104 ericj 461: </p>
462:
1.80 beck 463: <p>
1.104 ericj 464: You may want to use
1.135 naddy 465: <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=traceroute&sektion=8&format=html">traceroute(8)</a>
1.104 ericj 466: to find out which server is nearest you.
1.11 michaels 467: Problems with a server should be reported to the <b>maintainer</b> of the
468: server in question.
1.135 naddy 469: </dl>
1.104 ericj 470:
1.155 jsyn 471: <h3><a name="CRYPTO"><font color="#0000e0">Getting crypto sources through
472: cvs(1)</font></a></h3>
1.104 ericj 473:
1.1 deraadt 474: <p>
475: <strong>IMPORTANT NOTE:</strong>
476: There are a few issues relating to cryptographic software that everyone
477: should be aware of:
478: <ul>
479: <li>The OpenBSD sources are from Canada.
1.9 deraadt 480: As
1.135 naddy 481: <a href="http://insight.mcmaster.ca/org/efc/pages/doc/crypto-export.html">
1.9 deraadt 482: researched by a Canadian individual</a>
483: and as
1.135 naddy 484: <a href="http://axion.physics.ubc.ca/ECL.html">
1.9 deraadt 485: described in the Export Control list of Canada</a>
1.156 ian 486: it is legal to export crypto software from Canada to the world.
1.1 deraadt 487: <p>
488: <li>However, if you are outside the USA or Canada, you should not
489: fetch the cryptographic sections of the OpenBSD sources from an
490: anoncvs server located in the USA. The files in question are...
491: <ul>
492: <li>src/kerberosIV/*
1.57 art 493: <li>src/lib/libdes/*
1.1 deraadt 494: <li>src/lib/libc/crypt/crypt.c
495: <li>src/lib/libc/crypt/morecrypt.c
1.36 deraadt 496: <li>src/sys/netinet
1.67 art 497: <li>src/usr.sbin/afs/src/rxkad/*
1.56 matthieu 498: <li>X11/xc/lib/Xdmcp/Wraphelp.c
1.1 deraadt 499: </ul>
500: Because of the USA ITAR munitions list,
501: crypto software may only be exported to Canada from the USA.
502: <p>
503: <li>The OpenBSD project is looking for more anoncvs servers -- read
504: on to find out how you can help.
505: </ul>
506:
1.155 jsyn 507: <h3><a name="EXAMPLE"><font color="#0000e0">Example usages for cvs(1)</font>
508: </a></h3>
1.104 ericj 509:
1.1 deraadt 510: <p>
1.135 naddy 511: A sample use of an anoncvs server would be:
512: <pre>
1.104 ericj 513: % <strong>setenv CVSROOT anoncvs@anoncvs.ca.openbsd.org:/cvs</strong>
514: % <strong>cd /tmp</strong>
515: % <strong>cvs get src/sys/arch/sparc</strong>
1.12 grr 516: [copies the files from the repository to your machine]
1.104 ericj 517: % <strong>cvs log src/sys/arch/sparc/sparc/locore.s</strong>
1.135 naddy 518: [shows the commit log for the chosen file]
1.104 ericj 519: % <strong>cvs diff -bc -r1.1 -r1.5 src/sys/arch/sparc/sparc/locore.s</strong>
1.12 grr 520: [shows the changes between revisions 1.1 and rev 1.5]
1.135 naddy 521: </pre>
1.1 deraadt 522:
523: <p>
1.155 jsyn 524: <a name="pserver">In order to use a cvs ``pserver'' (a direct TCP connection
525: instead of using ssh or rsh) you must login once:</a>
1.104 ericj 526:
1.135 naddy 527: <pre>
1.104 ericj 528: % <strong>setenv CVSROOT :pserver:anoncvs@anoncvs.ca.openbsd.org:/cvs</strong>
529: % <strong>cvs login</strong>
1.59 beck 530: (Logging in to anoncvs@anoncvs1.ca.openbsd.org)
1.104 ericj 531: CVS password: <strong>anoncvs</strong>
1.135 naddy 532: [This writes a line to ~/.cvspass (filename over-ridden by CVS_PASSFILE).]
1.18 todd 533: [An example line from my ~/.cvspass after typing 'blah' for the above ]
534: [password is: ]
535: [:pserver:anoncvs@anoncvs5.usa.openbsd.org:/cvs Au'yc ]
1.135 naddy 536: [After logging in ONCE every other use of the above CVSROOT will work. ]
1.104 ericj 537: % <strong>cvs get ksrc-i386 ksrc-common</strong>
1.135 naddy 538: [Allows you to retrieve ONLY that necessary to rebuild an i386 kernel. ]
539: </pre>
1.18 todd 540:
541: <p>
1.39 todd 542: Here is how someone using anoncvs regularly would update his
1.1 deraadt 543: source tree:
1.60 millert 544: <ul><li>First, start out by `get'-ing an initial tree:
1.27 todd 545:
1.109 jason 546: <p> (If you are following <i>current</i>):
1.135 naddy 547: <pre>
548: # <strong>setenv CVSROOT anoncvs@anoncvs.ca.openbsd.org:/cvs</strong>
549: # <strong>cd /usr</strong>
550: # <strong>cvs -q get -PA src</strong>
551: </pre>
1.109 jason 552:
1.150 jufi 553: <p> (If you are following the patch branch for 2.9):
1.135 naddy 554: <pre>
555: # <strong>setenv CVSROOT anoncvs@anoncvs.ca.openbsd.org:/cvs</strong>
556: # <strong>cd /usr</strong>
1.150 jufi 557: # <strong>cvs -q get -rOPENBSD_2_9 -P src</strong>
1.135 naddy 558: </pre>
1.27 todd 559: </li>
1.37 todd 560:
1.27 todd 561: <li> Anytime afterwards, to `update' this tree:
1.109 jason 562: <p> (If you are following <i>current</i>):
1.135 naddy 563: <pre>
564: # <strong>cd /usr/src</strong>
565: # <strong>cvs -q up -PAd</strong>
566: </pre>
1.27 todd 567:
1.150 jufi 568: <p> (If you are following the patch branch for 2.9):
1.135 naddy 569: <pre>
570: # <strong>cd /usr/src</strong>
1.150 jufi 571: # <strong>cvs -q up -rOPENBSD_2_9 -Pd</strong>
1.135 naddy 572: </pre>
1.109 jason 573:
1.154 jsyn 574: Every time you ran this it would synchronize your /usr/src tree. It would
1.1 deraadt 575: not destroy any of your local changes, rather it would attempt to merge
576: changes in. If you use obj directories (not obj symbolic links) you may
577: wish to append "-I obj" to the cvs command line, this will keep cvs from
578: spitting out a warning about all the obj directories it is going to
579: encounter which are not in the repository.
1.72 millert 580:
581: <p>
1.109 jason 582: <li> NOTES: if you are updating a source tree that you initially fetched
1.72 millert 583: from a different server, or from a CD, you <strong>must</strong>
1.145 marc 584: add the <em>-d $CVSROOT</em> options to cvs. If you are following
1.109 jason 585: a patch branch, be sure to always <strong>omit</strong> the <code>-A</code>
586: flag to cvs, or you may find yourself tracking <i>current</i> instead.
1.72 millert 587:
1.109 jason 588: <p> (If you are following <i>current</i>):
1.135 naddy 589: <pre>
590: # <strong>cd /usr/src</strong>
591: # <strong>cvs -d $CVSROOT -q up -PAd</strong>
592: </pre>
1.72 millert 593:
1.109 jason 594: <p> (If you are following a patch branch):
1.135 naddy 595: <pre>
596: # <strong>cd /usr/src</strong>
597: # <strong>cvs -d $CVSROOT -q up -Pd</strong>
598: </pre>
1.109 jason 599:
1.27 todd 600: </li>
601: </ul>
602:
1.37 todd 603: <p>
1.135 naddy 604: To <a name="ports">use</a> <a href="ports.html">ports</a>, it is similar to src:
1.37 todd 605: <ul><li>
1.157 ! heko 606: <p> (If you are following <i>current</i>):
1.37 todd 607: <pre>
1.135 naddy 608: # <strong>setenv CVSROOT anoncvs@anoncvs.ca.openbsd.org:/cvs</strong>
609: # <strong>cd /usr</strong>
610: # <strong>cvs -q get -PA ports</strong>
1.38 deraadt 611: </pre>
1.37 todd 612: </li>
1.157 ! heko 613: <p> (If you are following the patch branch for 2.9):
! 614: <pre>
! 615: # <strong>setenv CVSROOT anoncvs@anoncvs.ca.openbsd.org:/cvs</strong>
! 616: # <strong>cd /usr</strong>
! 617: # <strong>cvs -q get -rOPENBSD_2_9 -P ports</strong>
! 618: </pre>
! 619: <p> (If you want to use the ports tree as it was before the
! 620: <a href="ports.html#Life">switch to -current</a>):
! 621: <pre>
! 622: # <strong>setenv CVSROOT anoncvs@anoncvs.ca.openbsd.org:/cvs</strong>
! 623: # <strong>cd /usr</strong>
! 624: # <strong>cvs -q get -rOPENBSD_2_9_TRACKING_SWITCH -P ports</strong>
! 625: </pre>
1.37 todd 626: <li> Anytime afterwards, to `update' this tree:
1.157 ! heko 627: <p> (If you are following <i>current</i>):
1.37 todd 628: <pre>
1.135 naddy 629: # <strong>cd /usr</strong>
630: # <strong>cvs -q up -PAd ports</strong>
1.157 ! heko 631: </pre>
! 632: <p> (If you are following the patch branch for 2.9):
! 633: <pre>
! 634: # <strong>cd /usr</strong>
! 635: # <strong>cvs -q up -rOPENBSD_2_9 ports</strong>
! 636: </pre>
! 637: <p> (If you want to use the ports tree as it was before the
! 638: <a href="ports.html#Life">switch to -current</a>):
! 639: <pre>
! 640: # <strong>setenv CVSROOT anoncvs@anoncvs.ca.openbsd.org:/cvs</strong>
! 641: # <strong>cd /usr</strong>
! 642: # <strong>cvs -q up -rOPENBSD_2_9_TRACKING_SWITCH -P ports</strong>
1.37 todd 643: </pre>
644: </li>
1.127 jufi 645: </ul>
1.37 todd 646:
1.104 ericj 647: In the above example, <i>-q</i> is optional, only intended to minimize
1.27 todd 648: cvs's output. For those who like to see screenfulls of output, it
649: can be omitted.
1.1 deraadt 650:
651: <p>
1.104 ericj 652: or to make a diff of a locally patched module (here <i>cd.c</i>) to include with
1.12 grr 653: a bug report:
1.135 naddy 654: <pre>
655: # <strong>cd /usr</strong>
656: # <strong>cvs diff -u src/sys/scsi/cd.c > /tmp/patch</strong>
657: </pre>
1.12 grr 658:
659: <p>
1.155 jsyn 660: The <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=cvs&sektion=1&format=html">
661: cvs(1) man page</a>
1.104 ericj 662: (included with the CVS sources) has much more
1.1 deraadt 663: information about how CVS can be used.
664:
1.135 naddy 665: <h4>X11 Source tree</h4>
666:
1.1 deraadt 667: <p>
1.105 ericj 668: Anoncvs mirrors also carry the OpenBSD X11 source tree. You can adapt
669: the recipe above to update your X11 source tree from the second CD.
670: Either copy or use a union mount to get the X11 sources in <i>/usr/X11</i>:
671:
672: <ul>
673: <li>copy the tree off it (assuming the 2nd CD is mounted on /mnt):
674: <pre>
675: # <strong>cd /mnt; cp -Rp X11 /usr</strong>
676: </pre>
677: <li>use a union mount with the CD below a writable directory.
678: <pre>
679: # <strong>mount -t union -o -b /mnt/X11 /usr/X11</strong>
1.135 naddy 680: </pre>
681: </ul>
1.105 ericj 682:
683: After this, <i>/usr/X11</i> will be ready to be used by cvs. You can for
684: example update it to -current source (assuming you've already set
1.140 horacio 685: the <var>CVSROOT</var> environment variable):
1.105 ericj 686:
1.135 naddy 687: <pre>
1.105 ericj 688: # <strong>cd /usr/X11</strong>
689: # <strong>cvs -q update -PAd</strong>
1.135 naddy 690: </pre>
1.105 ericj 691:
692: <p>
1.12 grr 693: <strong>Warning:</strong>
694: When using cvs you should take care that your current directory is either
1.109 jason 695: the root of the tree you are referencing or in a separate place such as /tmp.
1.12 grr 696: Some commands such as "get" can create an arbitrary sub-tree in the current
697: directory, and a subsequent update will recursively flesh out this sub-tree.
698:
699: <p>
1.1 deraadt 700: The anoncvs service gives fledgling developers a chance to learn CVS
701: operation and get thoroughly involved in the development process
702: before getting "commit" access -- as a result of showing useful
703: skills and high quality results they will naturally later be given
704: developer access. As well, people providing patches can create
705: their "diff"s relative to the CVS tree, which will ease integration.
706:
1.104 ericj 707:
1.135 naddy 708: <h3><a name="WHICH"><font color="#0000e0">Use rsh(1) or ssh(1)?</font></a></h3>
1.104 ericj 709:
1.1 deraadt 710: <p>
1.15 grr 711: <strong>Anoncvs: rsh vs. ssh</strong>
1.12 grr 712: <br>
713: By default, the CVS client uses rsh to talk to the CVS server. Many
1.39 todd 714: of the CVS sites no longer support rsh for security reasons or a local
1.12 grr 715: problem like a firewall or imperfect protocol emulator such as slirp
716: may prevent you from using rsh.
1.142 naddy 717: The alternative is a to use a "secure shell" connection using
1.140 horacio 718: <a href="http://www.openssh.com/">OpenSSH</a>.
1.28 beck 719:
1.75 millert 720: <p>
721: Once ssh is installed, one sets the environment variable
1.135 naddy 722: <var>CVS_RSH</var> to point to ssh (typically
1.113 brad 723: <strong>/usr/bin/ssh</strong>). If your local site prevents you
1.28 beck 724: from connecting out to port 22 (which ssh defaults to using) use port
725: 2022.
1.1 deraadt 726:
727: <p>
728: Do not be tempted to turn on compression since CVS already compresses.
729: Use something like the following in your <strong>$HOME/.ssh/config</strong>
1.10 millert 730: file. Note that not all anoncvs servers allow ssh connections on
1.21 millert 731: port 2022. Also note that most anoncvs servers no longer accept
732: the <strong>none</strong> cipher as it is disabled in recent
733: versions of ssh for security reasons.
1.1 deraadt 734: <pre>
1.59 beck 735: Host anoncvs.ca.openbsd.org
1.1 deraadt 736: Port 2022
737: </pre>
738:
739: <p>
740: CVS is a little noisy starting up; to quiet it a bit you may want to
741: do this:
1.105 ericj 742:
1.135 naddy 743: <pre>
744: <strong>% setenv CVS_CLIENT_PORT -1</strong>
745: </pre>
1.1 deraadt 746:
747: <p>
1.155 jsyn 748: <h3><a name="SUP"><font color="#0000e0">Mirroring the CVS repository via
749: sup(1)</font></a></h3>
1.107 millert 750:
751: <p>
752: Users wishing to mirror the OpenBSD CVS tree itself may now do so
1.143 millert 753: from <em>anoncvs.usa.openbsd.org</em> or <em>anoncvs1.usa.openbsd.org</em>
754: (these are different machines). Note that this is the cvs tree,
755: <b>not</b> a checked out source tree. It is only useful if you
756: want to be able to do fast cvs operations (diff, annotate, etc) or
757: if you have multiple source trees and you only want to transfer new
758: data once (you can then checkout a tree from your local cvs mirror).
1.107 millert 759: <p>
760: A sample supfile would be:
761: <pre>
762: cvs host=anoncvs.usa.openbsd.org hostbase=/ base=/home delete
763: </pre>
764: <p>
765: which would mirror the cvs tree into /home/cvs with the sup data
1.133 millert 766: files ending up in /home/sup. The full OpenBSD cvs tree is currently
767: about 1.3 gigabytes in size.
1.65 matthieu 768:
1.155 jsyn 769: <h3><a name="MIRROR"><font color="#0000e0">Setting up an anoncvs mirror
770: </font></a></h3>
1.105 ericj 771:
1.107 millert 772: <p>
1.1 deraadt 773: If you wish to be a new anoncvs mirror site, please contact the anoncvs
1.135 naddy 774: <a href="mailto:sup@openbsd.org">maintainer</a>.
1.134 millert 775: Anoncvs mirrors require about 1.2GB of disk, and use up to 32MB of swap
1.1 deraadt 776: per anoncvs user (assuming the user does a large operation; while smaller
777: operations use fewer resources, anoncvs still makes much more of an
778: impact than ftp or sup). Such anoncvs machines should have excellent
779: network connectivity for the area they are expected to serve. A
1.135 naddy 780: <a href="anoncvs.shar">document</a>
1.1 deraadt 781: which describes the setup of anoncvs servers is available.
782:
1.135 naddy 783: <h3><font color="#0000e0">Final notes</font></h3>
1.60 millert 784: After upgrading your source tree, you should read the comments
1.154 jsyn 785: at the top of <KBD>/usr/src/Makefile</KBD> before attempting
1.60 millert 786: a build. Also, you should build a new kernel <strong>before</strong>
1.101 ericj 787: doing a <KBD>make build</KBD> if possible. In some cases it may be
1.60 millert 788: necessary to rebuild and install the <KBD>config</KBD> utility before
789: you can build the kernel. If <KBD>config GENERIC</KBD> fails this
790: is probably the case.
791: <p>
792: It is important to note that upgrading from a release to the current tree
793: by rebuilding the sources can be rather difficult due to dependencies
794: that are often not obvious. Therefore, it is suggested that you first
1.154 jsyn 795: install the latest snapshot before attempting a tree build from source.
1.1 deraadt 796:
797: <hr>
1.155 jsyn 798: <a href="index.html"><img height="24" width="24" src="back.gif" border="0"
799: alt="OpenBSD"></a>
1.135 naddy 800: <a href="mailto:www@openbsd.org">www@openbsd.org</a>
1.156 ian 801: <br><small>$OpenBSD: anoncvs.html,v 1.155 2001/08/08 21:13:17 jsyn Exp $
1.155 jsyn 802: </small>
1.1 deraadt 803:
804: </body>
805: </html>