Annotation of www/ports.html, Revision 1.30
1.11 deraadt 1: <html>
1.25 deraadt 2: <head>
3: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4: <meta name="resource-type" content="document">
5: <meta name="description" CONTENT="How OpenBSD can make use of the FreeBSD ports">
6: <meta name="keywords" content="openbsd,ports">
7: <meta name="distribution" content="global">
8: <meta name="copyright" content="copyright 1997-1999 by the OpenBSD project">
9:
1.27 brad 10: <title>OpenBSD Ports and Packages</title>
1.25 deraadt 11: <link rev="made" HREF="mailto:www@openbsd.org">
12:
13: <body text="#000000" bgcolor="#FFFFFF" link="#23238E">
14:
15: <img height=30 width=141 src=images/smalltitle.gif alt="[OpenBSD]" >
1.30 ! espie 16: <center><h2><font color=#e00000>OpenBSD ports tree is currently tracking OpenBSD 2.7
! 17: (release)</font></h2></center>
! 18: <hr>
! 19:
1.26 deraadt 20: <h2><font color=#e00000>Ports and Packages</font><hr></h2>
1.25 deraadt 21:
22: <h3><font color=#0000e0>History</font></h3>
23:
24: <p>
25: OpenBSD is a fairly complete system of its own, but still there is a lot
26: of software that one might want see added. However there is the problem
27: on where to draw the line as to what to include, as well as the occasional
28: licensing and export restriction problems. As OpenBSD is supposed to be
29: a small stand-alone UNIX-like operating system, some things just can't be
30: shipped with the system.
31:
32: <p>
33: We wanted to find a way for users to easily get software we don't provide
34: and started to look around. We didn't have to look far, as sibling project
35: <a href="http://www.freebsd.org/">FreeBSD</a> already had an
1.23 espie 36: excellent mechanism
1.25 deraadt 37: for exactly this purpose called
38: <a href="http://www.freebsd.org/ports/">"The ports collection"</a>.
39:
40: <p>
41: At first we tried to use their collection as-is, but due to
42: incompatibility problems between FreeBSD and OpenBSD we decided to branch
43: out and create our very own OpenBSD Ports Project using FreeBSD's as a
44: starting point. This also allows us to tune the ports better to our
45: system.
46:
47: <h3><font color=#0000e0>Short description and setup</font></h3>
48:
49: <p>
50: The ports idea is to have, for each piece of software, a Makefile that
51: controls
52: <ul>
53: <li>where to fetch it,
54: <li>how to do the fetch,
55: <li>what it depends upon (if anything),
56: <li>how to alter the sources (if needed),
57: <li>and how to configure, build and install it.
58: </ul>
59: <p>
60: This information is kept in a directory hierarchy under the
61: /usr/ports directory.
62: <h3><font color=#0000e0>Getting the Ports tree</font></h3>
63: <p>
1.27 brad 64: You can ftp the release version from the pub/OpenBSD/[version] (where
65: [version] is the release number) directory on any of the
66: <a href=ftp.html>ftp mirror sites</a>.
67: The release versions are the ones we ship on our CDROM, and have gone
68: through more testing than any snapshot.
1.30 ! espie 69: <p>
! 70: Further information is available in the
! 71: <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=ports&sektion=7&format=html">ports(7)</a> man page.
! 72:
! 73: <h3><font color=#0000e0>Ports versus packages</font></h3>
! 74:
! 75: <p>
! 76: For common architectures, you don't necessarily have to compile anything
! 77: in the ports tree. With the advent of OpenBSD 2.7, a large set of
! 78: pre-compiled packages will be available:
! 79: <ul>
! 80: <li>On the CD-Rom (that you can pre-order <a href="orders.html">here</a>),
! 81: <li>On the ftp mirrors.
! 82: </ul>
! 83: OpenBSD documentation includes more information on the proper use of
! 84: <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=packages&sektion=7&format=html">packages</a>.
! 85:
! 86: <h3><font color=#0000e0>Ports update for an OpenBSD release</font></h3>
1.27 brad 87:
88: <p>
1.28 brad 89: The ports tree, like the rest of OpenBSD, is constantly changing. While
1.29 espie 90: we try to maintain ports compatibility through the lifetime of a particular
1.28 brad 91: release, sometimes issues beyond our control occur. For example, particular
1.30 ! espie 92: versions of the ported package might no longer be available (But this
! 93: specific problem should be solved now).
! 94:
! 95: <p>
! 96: The normal life cycle of the ports tree is as follows:
! 97: <ul>
! 98: <li>Track the latest release of OpenBSD for a few months after the release
! 99: comes out.
! 100: <li>Switch to tracking OpenBSD-current about two months before the next
! 101: release.
! 102: </ul>
! 103:
! 104: <p>
! 105: The change of status will be widely publicized on the
! 106: <a href=mail.html>Mailing lists</a>.
! 107:
! 108: <p>The ports tree works as a single entity. Updating a single directory is
! 109: not guaranteed to work, as package dependencies may force you to update
! 110: and recompile vast portions of the ports tree.
! 111:
! 112: <p>It is strongly suggested that people don't track ports-current unless
! 113: they're prepared to deal with various problems.
1.29 espie 114: <a href=mail.html>Mailing lists</a> such as source-changes or tech will
115: probably be invaluable.
1.27 brad 116:
117: <p>
1.29 espie 118: The ports-current tree can be retrieved via:
1.25 deraadt 119: <ul>
120: <li><a href=anoncvs.html>Anonymous CVS</a> (see link). The command is
121: essentially <strong>cvs get ports</strong>.
122: <li>Anonymous ftp from
123: <a href="ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/ports.tar.gz">
124: ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/ports.tar.gz</a>.
1.19 marc 125: This archive is updated nightly.
1.25 deraadt 126: <li>Your web browser using the
127: <a href="http://www.openbsd.org/cgi-bin/cvsweb/ports/">CVS
1.20 marc 128: web interface</a>.
1.25 deraadt 129: </ul>
130:
131: <h3><font color=#0000e0>Example use of the Ports tree</font></h3>
132:
133: <p>
134: Let's say you managed to get a ports tree and you want to compile and
135: install the archiving utility <code>unzip</code>. You should be able to
1.23 espie 136: do something like this:
1.11 deraadt 137: <pre>
1.10 deraadt 138: % cd /usr/ports/archivers/unzip
139: % su
1.17 joey 140: # make
1.10 deraadt 141: # make install
142: # exit
1.11 deraadt 143: </pre>
1.25 deraadt 144: Easy, huh?
145:
1.30 ! espie 146: <!--
1.25 deraadt 147: <h3><font color=#0000e0>Port status information</font></h3>
148:
149: <p>
150: The <a href="portstat.html">ports status page</a> is updated as
151: team members add new ports and verify existing ports. Existing
152: ports are continually verified to validate source availability and
1.27 brad 153: proper operation with OpenBSD -current. The page notes the date last
154: checked and the nature of any change. This is a new resource that is not
155: yet complete. If you have any information to add to the status page
156: please send it to
157: <a href="mailto:ports@openbsd.org">ports@openbsd.org</a>.
1.30 ! espie 158: -->
1.25 deraadt 159:
160: <h3><font color=#0000e0>Creating new ports</font></h3>
161:
162: <p>
163: If you are interested in helping to expand the OpenBSD ports tree
164: you should first read <a href="porting.html">porting.html</a>.
165: That page references the porting section of the
166: <a href="http://www.freebsd.org/handbook/">FreeBSD handbook</a>
167: as well as OpenBSD specific policies and hints.
168:
169: <h3><font color=#0000e0>Problems and contacts</font></h3>
170:
171: <p>
172: If you have trouble with ports please send e-mail to the OpenBSD
1.27 brad 173: ports mailing list, <a href="mailto:ports@openbsd.org">ports@openbsd.org</a>.
1.25 deraadt 174: Corrections are always welcome, but in any case do please provide:
175: <ul>
176: <li>The output of <code>uname -a</code>,
177: <li>Your OpenBSD version, including any patches you may have applied,
178: <li>A complete description of the problem.
179:
180: </ul>
181:
182: <hr>
183: <a href="index.html"><img height=24 width=24 src=back.gif border=0 alt=OpenBSD></a>
184: <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.30 ! espie 185: <br><small>$OpenBSD: ports.html,v 1.29 1999/10/25 07:45:55 espie Exp $</small>
1.25 deraadt 186: </body>
1.11 deraadt 187: </html>