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