[BACK]Return to cvsync.html CVS log [TXT][DIR] Up to [local] / www

File: [local] / www / Attic / cvsync.html (download) (as text)

Revision 1.141, Fri Apr 6 23:41:34 2018 UTC (6 years, 1 month ago) by sthen
Branch: MAIN
Changes since 1.140: +2 -2 lines

sync

<!-- DO NOT EDIT MANUALLY! See comments in www/build/mirrors.dat for details -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>OpenBSD: CVSync</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="copyright" content="This document copyright 2003-2018 by OpenBSD.">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="openbsd.css">
<link rel="canonical" href="https://www.openbsd.org/cvsync.html">
<style type="text/css">
  h3 { color: #0000e0; }
</style>
</head>

<body bgcolor="#FFFFFF" text="#000000" link="#23238E">

<h2>
<a href="index.html">
<font color="#0000ff"><i>Open</i></font><font color="#000084">BSD</font></a>
<font color="#e00000">Source repository access: CVSync and rsync</font>
</h2>
<hr>
<p>

OpenBSD uses the CVS version control system.
It is described in more detail <a href="anoncvs.html#CVS">here</a>.
The <a href="https://man.openbsd.org/cvs">cvs(1)</a> command is used
to checkout a working tree and perform standard operations (log, diff, etc).
It can either contact an CVS server (in most cases this will be an OpenBSD
<a href="anoncvs.html">anoncvs</a> server), or operate against a local
copy of the repository.

<p>
If you would like to operate a local anoncvs server, use cvs(1) commands
offline, or simply have faster access, you may use CVSync or rsync to
fetch a local copy of the repository.

<h3 id="CVSync">What Is CVSync?</h3>

<b>CVSync</b> is a software package specifically used for distributing
and updating <a href="https://man.openbsd.org/cvs">cvs(1)</a> repositories.
As it has knowledge of the file format it can operate more efficiently
than a general-purpose file synchronization program, however it is not
bug-free and can have problems updating at times.

<p>
The client <tt>cvsync</tt> runs on each user's machine (typically from
a <a href="https://man.openbsd.org/cron">cron(8)</a> job), and fetches
from a server running <tt>cvsyncd</tt>.

<h3 id="starting">Getting Started Using CVSync</h3>

<p>
CVS is part of OpenBSD's base system.
CVSync is an entirely different program and can be installed from
packages:

<pre>
        <b>pkg_add cvsync</b>
</pre>

Do not build your own copy from unmodified upstream source -
the port/package has been modified to support commitid which is now
used in the OpenBSD repository.

<p>
In order to mirror the OpenBSD repository with CVSync,
the following configuration file might be used:

<pre>
	config {
	    hostname anoncvs.eu.openbsd.org
	    # If your network link is a T1 or faster, comment out the following line.
	    compress
	    collection {
		name openbsd release rcs
		prefix /cvs
		umask 002
	    }
	}
</pre>

<p>
This directs cvsync to fetch or refresh all OpenBSD distributions from
<b>anoncvs.eu.openbsd.org</b> with a
<a href="https://man.openbsd.org/umask">umask(2)</a> that permits group write
permission to the local repository.
The local copy of the files are stored in <tt>/cvs</tt>.

<p>
Assuming this file is saved as <tt>cvs-syncfile</tt>, the
following command would be used to invoke cvsync

<pre>
        <b>cvsync -c cvs-syncfile</b>
</pre>

<h3 id="rsync">Getting Started Using Rsync</h3>

Some repository mirrors offer access via rsync, a general-purpose
file synchronization program.
Again this should be installed from packages.
Two flavours are available:

<pre>
	<b># pkg_add rsync</b>
	Ambiguous: choose package for rsync
	a	0: <None>
		1: rsync-3.1.2p0
		2: rsync-3.1.2p0-iconv
	Your choice:
</pre>

Unless you have other requirements, simply install the standard version
(option 1 on the list above).
You can select the flavour on the command-line to avoid
<a href="//man.openbsd.org/pkg_add">pkg_add(1)</a> prompting for the
version like so:
<pre>
	<b>pkg_add rsync--</b>
</pre>

In order to mirror the OpenBSD repository with rsync,
the following command line might be used:

<pre>
	<b>rsync -avz --delete rsync://obsdacvs.cs.toronto.edu/obsdcvs/ /cvs/</b>
</pre>

<h3 id="using">Using CVS to Work With Your Repository</h3>

Now that you have a local copy of the CVS repository, it is now simple
to check out, update, or do any of the other CVS operations you would
normally do against a remote repository, locally.
For example:
<pre>
        <b>cvs -d/cvs checkout -P src</b>
        <b>cvs -d/cvs up -Pd</b>
        <b>cvs -d/cvs diff -u file.c</b>
</pre>
More details on CVS operation can be found in
<a href="faq/faq5.html#BldGetSrc">FAQ5, Fetching appropriate source
code</a> and in the
<a href="https://man.openbsd.org/cvs">cvs(1)</a>
man page.

<h3 id="CVSROOT">Available Repository Servers</h3>

The following CVSync and rsync repository servers are available:

<ul>
<li><strong>anoncvs.comstyle.com</strong><br>
Location: Toronto, Canada.<br>
Maintained by <a href="mailto:brad@comstyle.com">Brad Smith</a>.<br>
Updated hourly.<br>
<p>
<li><strong>obsdacvs.cs.toronto.edu</strong><br>
<strong>rsync://obsdacvs.cs.toronto.edu/obsdcvs/</strong><br>
Location: University of Toronto, Toronto, ON, Canada.<br>
Maintained by <a href="mailto:nick@holland-consulting.net">Nick Holland</a>.<br>
Updated every 2 hours.<br>
<p>
<li><strong>anoncvs.fr.openbsd.org</strong><br>
<strong>rsync://anoncvs.fr.openbsd.org/openbsd-cvs/</strong><br>
Location: Paris, France.<br>
Maintained by <a href="mailto:openbsd-mirror@bsdfrog.org">Landry Breuil, Antoine Jacoutot</a>.<br>
Updated every 2 hours from anoncvs1.ca.openbsd.org.<br>
<p>
<li><a href="https://mirror.osn.de/"><strong>mirror.osn.de</strong></a><br>
<strong>rsync://mirror.osn.de/openbsd-all/</strong><br>
Location: N&uuml;rnberg, Germany.<br>
Maintained by <a href="mailto:aw@osn.de">Armin Wolfermann</a>.<br>
Updated every 3 hours.<br>
<p>
<li><strong>ftp.hostserver.de</strong><br>
<strong>rsync://ftp.hostserver.de/cvsync/</strong><br>
Location: Frankfurt, Germany.<br>
Maintained by <a href="mailto:mirror@hostserver.de">Sebastian Benoit, Peter Hessler</a>.<br>
Updated hourly from anoncvs1.ca.openbsd.org.<br>
<p>
<li><a href="http://www.allbsd.org/"><strong>cvsync.allbsd.org</strong></a><br>
Location: Tokyo, Japan.<br>
Maintained by <a href="mailto:hrs@allbsd.org">Hiroki Sato</a>.<br>
<p>
<li><strong>anoncvs.eu.openbsd.org</strong><br>
<strong>rsync://anoncvs.eu.openbsd.org/OpenBSD-cvs/</strong><br>
Location: Stockholm University, Stockholm, Sweden.<br>
Maintained by <a href="mailto:jj@deadzoft.org">Janne Johansson</a>.<br>
Updated every 2 hours.<br>
<p>
<li><strong>anoncvs.spacehopper.org (rsync only, no cvsync)</strong><br>
<strong>rsync://anoncvs.spacehopper.org/OpenBSD-CVS/</strong><br>
Location: Plymouth, United Kingdom.<br>
Maintained by <a href="mailto:sthen@openbsd.org">Stuart Henderson</a>.<br>
Updated hourly from anoncvs.ca.openbsd.org.<br>
<p>
<li><strong>anoncvs3.usa.openbsd.org</strong><br>
Location: National Center for Atmospheric Research, Boulder, CO, USA.<br>
Maintained by <a href="mailto:millert@openbsd.org">Todd C. Miller</a>.<br>
Updated hourly.<br>
<p>
<li><strong>anoncvs4.usa.openbsd.org</strong><br>
Location: New York Internet, New York, NY, USA.<br>
Maintained by <a href="mailto:millert@openbsd.org">Todd C. Miller</a>.<br>
Updated hourly.<br>
<p>
<li><strong>anoncvs2.usa.openbsd.org</strong><br>
Host also known as <strong>openbsd.se.rit.edu</strong>.<br>
Location: Rochester Institute of Technology, Rochester, NY, USA.<br>
Maintained by <a href="mailto:millert@openbsd.org">Todd C. Miller</a>.<br>
Updated hourly.<br>
<p>
<li><strong>anoncvs1.usa.openbsd.org</strong><br>
Host also known as <strong>anoncvs.usa.openbsd.org</strong>.<br>
Location: Network Media, LLC, Bend, OR, USA.<br>
Maintained by <a href="mailto:millert@openbsd.org">Todd C. Miller</a>.<br>
Updated hourly.<br>
<p>

</ul>

<em>Note:</em> If your server is listed on here with inaccurate or
unknown information, please contact <a
href="mailto:mirrors-discuss@openbsd.org"><tt>mirrors-discuss@openbsd.org</tt></a>

<p>
You may want to use <a href="https://man.openbsd.org/traceroute">traceroute(8)</a>
to find out which server is nearest you.
Problems with a server should be reported to the <b>maintainer</b> of the
server in question.

<p>
As of December 2017, the CVS repository sizes are:

<p>
<table>
<tr><td width="20"></td>
    <td><strong>openbsd-ports</strong></td>
    <td>- <b>1220</b>MB</td></tr>
<tr><td></td>
    <td><strong>openbsd-src</strong></td>
    <td>- <b>2865</b>MB</td></tr>
<tr><td></td>
    <td><strong>openbsd-www</strong></td>
    <td>- <b>704</b>MB</td></tr>
<tr><td></td>
    <td><strong>openbsd-xenocara</strong></td>
    <td>- <b>1658</b>MB</td></tr>
<tr><td></td>
    <td><strong>openbsd-cvsroot</strong></td>
    <td>- <b>158</b>MB</td></tr>
</table>

<p>
The overall repository size currently increases at a rate
of about <b>400</b>MB per annum. The src repository increases by about
<b>150</b>MB.

<p>
<strong>IMPORTANT NOTE:</strong>
There are a few issues relating to cryptographic software that everyone
should be aware of:

<ul>
  <li>
    <p>
    The OpenBSD sources are from Canada. As
    <a href="http://www.efc.ca/pages/doc/crypto-export.html">
    researched by a Canadian individual</a> and as
    <a href="http://axion.physics.ubc.ca/ECL.html">
    described in the Export Control list of Canada</a>,
    it is legal to export crypto software from Canada to the world.
  </li>
  <li>
    <p>
    However, if you are outside the USA or Canada, you should not
    fetch the cryptographic sections of the OpenBSD sources from a
    CVSync server located in the USA. The files in question are...
    <ul>
      <li><tt>src/kerberosIV/*</tt></li>
      <li><tt>src/kerberosV/*</tt></li>
      <li><tt>src/lib/libdes/*</tt></li>
      <li><tt>src/lib/libc/crypt/crypt.c</tt></li>
      <li><tt>src/lib/libc/crypt/morecrypt.c</tt></li>
      <li><tt>src/sys/crypto</tt></li>
      <li><tt>src/sys/netinet</tt></li>
      <li><tt>src/usr.sbin/afs/src/rxkad/*</tt></li>
    </ul>
    <p>
    Because of the USA ITAR munitions list,
    crypto software may only be exported to Canada from the USA.
  </li>
</ul>

</body>
</html>