OpenBSD



The picture is Copyright (C) 1996 Shawn Mueller

OpenBSD

The OpenBSD project involves continuing development of a multiplatform 4.4BSD-based Unix-like operating system.


Changes Relative to other *BSD's.

OpenBSD looks a lot like NetBSD (which it is derived from, following the 4.4BSD roots), but is now being developed seperately. Good changes from other free operating systems will be merged in (of course, depending on various factors like developer time for example.) OpenBSD tracks NetBSD changes very closely; say anywhere between 2 days to 10 days behind the state of NetBSD-current all the time. Hence you can truly say that OpenBSD is NetBSD PLUS MORE STUFF.

Various additions have been made. This is only a small partial list of the major machine independent changes (ie. it is the most interesting changes or what people ask about most often). Check the specific port you are interested in for further details of that port -- many of them have been extended too.


Platforms currently supported.

Note: for some of these platforms, the platform-dependent code may be identical to that found in NetBSD because there isn't a specific OpenBSD developer. For other ports the differences are significant. If you find an empty page that means nothing of consequence that is directly port-specific has changed from NetBSD. (Of course there are differences, but they just aren't in the /sys/arch/XXXX directory).

Alpha
DEC Alpha-based machines.
Amiga
Amiga m68k-based models (MMU required).
ARC
ARC R4000/R4400 machines (including PICA)
Arm32
Acorn ARM6+ computers.
Atari
Atari TT and Falcon models.
HP300
Hewlett-Packard HP300/HP400 machines.
i386
Your standard run-of-the-mill PC.
mac68k
Most MC680x0-based Apple Macintosh models.
MVME68K
Motorola MVME147/16x/17x 68K VME cards.
PC532
A rare NS32532-based computer.
Pmax
DEC MIPS-based machines.
Sparc
Sun's Sun4, sun4c, and sun4m models.
Sun3
Sun's sun3 models.
Vax
DEC's VAX computers.


New platforms under development.

mvme88k
Motorola MVME18x/19x 88K VME cards
ppc
IBM/Apple/Motorola PowerPC-based machines.
romp
IBM PC RT series of machines.

Platforms not being developed, but which should be

There is enough free code available to make porting to these machines relatively easy.

hppa
Hewlett-Packard PA-RISC HP700/HP800 models.
iris
SGI Iris machines.



How we help developers and users.

BINARY SNAPSHOTS:

Snapshots will be made available from time to time on the ftp mirrors. The snapshots are available on each of the FTP servers listed below, typically in the directory OpenBSD/snapshots. You should also read the general description about OpenBSD snapshots.

NOTE: please do not fetch binaries directly from cvs.openbsd.org but instead use one of the mirror sites.

FTP:

This is a list of currently known ftp servers:

The file structure of each FTP server is as follows:

pub/OpenBSD/snapshots/
pub/OpenBSD/X11/
pub/OpenBSD/src/

If you add a new FTP mirror site, please contact the FTP maintainer.

MAILING LISTS:

Some mailing lists are used for the development and use of OpenBSD. In each case, send mail to majordomo@OpenBSD.org with a message body of "subscribe mailing-list-name". There is a only minimal set of mailing lists intentionally; among other benefits such as more communication it reduces cross-posting. There are no private mailing lists.

These are the mailing lists:

announce
important announcements. Since this is a low volume list it is excellent for people who just want to follow important events.
tech
technical discussions
misc
user questions and answers
source-changes
automated mailout of CVS source tree changes

For further assistance, send a message body of "help" to majordomo@OpenBSD.org and you will receive a reply outlining all your options.

Furthermore, a mailing list archive is available.

BUG TRACKING:

We run GNATS for tracking bugs: Click here to enter the bug tracking system.

SUP:

Sorry, unlike other *BSD projects, the SUP service is not available. We do not believe the SUP service to be a good tool for source code access. But read below for the description of the anoncvs service!

CVS Access:

CVS is used to manage the OpenBSD source tree. This allows developers to work on a local source tree and commit their changes when ready. Also anyone can edit source files on their local machines, and automatically track and merge in any changes made in the OpenBSD CVS repository. Additionally they can easily see the logs of, check out, or "diff" the source files in the OpenBSD source tree.

Most importantly, the anoncvs service does NOT delete the changes you make in your local copy of the source tree -- read on for more details!

The latest version of CVS is available at Cyclic. Versions earlier than 1.6 are not recommended, and may not work. If you already have OpenBSD installed, CVS is included.

There are two levels of source tree access:

Read-write access for developers:
Developers who need to commit changes to the source tree must have an account on the OpenBSD machines. Getting this access will be a natural result of working on the sources with other OpenBSD developers. If someone does some good work and shows they can work with the team, they will get an account.
Read-only access for everyone:
Anyone can access the read-only CVS repositories. These copies of the read-write CVS repository are mirrored often. To use one, set your CVSROOT environment variable to one of the following values:

  • CVSROOT=anoncvs@anoncvs.usa.openbsd.org:/cvs
    Host also known as anoncvs.openbsd.org and eap.ccrc.wustl.edu.
    located at Washington University, St. Louis, mid-west USA.
    maintained by Chuck Cranor.
    protocols: rsh, ssh, ssh port 2022.
    updated every 4 hours.

  • CVSROOT=anoncvs@anoncvs2.usa.openbsd.org:/cvs
    Host also known as hal.heuris.com.
    located in MO, mid-west USA.
    maintained by John Stone.
    protocols: rsh, ssh, ssh port 2022.
    updated every 12 hours.

  • CVSROOT=anoncvs@anoncvs3.usa.openbsd.org:/cvs
    Host also known as freestuff.cs.colorado.edu.
    located at the University of Colorado, Boulder, western USA.
    maintained by Todd Miller.
    protocols: ssh, ssh port 2022.
    updated every 6 hours.

  • CVSROOT=anoncvs@anoncvs.uk.openbsd.org:/cvs
    Host also known as dumpty.wonderland.org.
    located in London, UK.
    maintained by Peter Galbavy.
    protocols: rsh.
    updated every 12 hours.

  • CVSROOT=anoncvs@anoncvs.tw.openbsd.org:/cvs
    Host also known as hercules.secc.fju.edu.tw.
    located in Taipei, Taiwan.
    maintained by Shawn Hsiao.
    protocols: rsh, ssh, ssh port 2022.
    updated every 12 hours.

  • CVSROOT=anoncvs@anoncvs.no.openbsd.org:/cvs
    located in Norway.
    maintained by Michael Shuldman.
    protocols: rsh, ssh, ssh port 2022.
    updated every 4 hours.

You may want to use `traceroute' to find out which server is nearest you.

IMPORTANT NOTE: There are a few issues relating to cryptographic software that everyone should be aware of:

A sample use of an anoncvs CVS server would be:

% setenv CVSROOT anoncvs@anoncvs.usa.openbsd.org:/cvs
% cd /tmp
% cvs get src/sys/arch/sparc
[copies the files from the repository to your machine]
% cvs log src/sys/arch/sparc/sparc/locore.s
[shows the commit log for the chosen file ]
% cvs diff -bc -r1.1 -r1.5 src/sys/arch/sparc/sparc/locore.s
[shows the changes between revisions 1.1 and rev 1.5]

Here is how someone using anoncvs regularily would update his source tree:

# setenv CVSROOT anoncvs@anoncvs.usa.openbsd.org:/cvs
# cd /usr
# cvs -q get -PA src
or similarily later on he might try
# cd /usr/src
# cvs -q up -PAd
Everytime you ran this it would syncronize your /usr/src tree. It would not destroy any of your local changes, rather it would attempt to merge changes in. If you use obj directories (not obj symbolic links) you may wish to append "-I obj" to the cvs command line, this will keep cvs from spitting out a warning about all the obj directories it is going to encounter which are not in the repository.

The CVS man page (included with the CVS sources) has much more information about how CVS can be used.

The anoncvs service gives fledgling developers a chance to learn CVS operation and get thoroughly involved in the development process before getting "commit" access -- as a result of showing useful skills and high quality results they will naturally later be given developer access. As well, people providing patches can create their "diff"s relative to the CVS tree, which will ease integration.

The CVS client uses rsh to talk to the CVS server. If some local security measure like a firewall (or imperfect protocol emulators like slirp) prevents you from using rsh, you may be able to use ssh instead. In this case, one sets the environment variable CVS_RSH to point to ssh (typically /usr/local/bin/ssh). To reduce the performance hit the anoncvs server would take it is recommended (and requested) that you disable encryption. If your local site prevents you from connecting out to port 22 (which ssh defaults to using) use port 2022.

Do not be tempted to turn on compression since CVS already compresses. Use something like the following in your $HOME/.ssh/config file.

	Host anoncvs.usa.openbsd.org
	    Cipher none
	    Port 2022

CVS is a little noisy starting up; to quiet it a bit you may want to do this:

setenv CVS_CLIENT_PORT -1

If you wish to be a new anoncvs mirror site, please contact the anoncvs maintainer. Anoncvs mirrors require about 300MB of disk, and use up to 4MB of swap per anoncvs user (assuming the user does a large operation; while smaller operations use fewer resources, anoncvs still makes much more of an impact than ftp or sup). Such anoncvs machines should have excellent network connectivity for the area they are expected to serve. A document which describes the setup of anoncvs servers is available.


www@openbsd.org
$OpenBSD: index.html,v 1.87 1996/08/29 13:25:26 deraadt Exp $