163 lines
6.7 KiB
Text
163 lines
6.7 KiB
Text
<!-- $Id: current.sgml,v 1.26 1999-01-29 18:37:28 wosch Exp $ -->
|
|
<!-- The FreeBSD Documentation Project -->
|
|
|
|
|
|
<sect><heading>Staying Current with FreeBSD<label id="current"></heading>
|
|
|
|
<p><em>Contributed by &a.jkh;.</em>
|
|
|
|
<!--
|
|
|
|
THE FREEBSD CURRENT POLICY
|
|
|
|
Last updated: $Date: 1999-01-29 18:37:28 $
|
|
|
|
This document attempts to explain the rationale behind
|
|
FreeBSD-current, what you should expect should you decide to run it,
|
|
and states some prerequisites for making sure the process goes as
|
|
smoothly as possible.
|
|
-->
|
|
|
|
<itemize>
|
|
<item><em>What is FreeBSD-current?</em>
|
|
|
|
<p>FreeBSD-current is, quite literally, nothing more than a daily
|
|
snapshot of the working sources for FreeBSD. These include work in
|
|
progress, experimental changes and transitional mechanisms that may or
|
|
may not be present in the next official release of the software.
|
|
While many of us compile almost daily from FreeBSD-current sources,
|
|
there are periods of time when the sources are literally un-compilable.
|
|
These problems are generally resolved as expeditiously as possible,
|
|
but whether or not FreeBSD-current sources bring disaster or greatly
|
|
desired functionality can literally be a matter of which part of any
|
|
given 24 hour period you grabbed them in!
|
|
|
|
<item><em>Who needs FreeBSD-current?</em>
|
|
|
|
<p>FreeBSD-current is aimed at 3 primary interest groups:
|
|
|
|
<p><enum>
|
|
<item><p>Members of the FreeBSD group who are actively working on some
|
|
part of the source tree and for whom keeping `current' is an
|
|
absolute requirement.
|
|
|
|
<item><p>Members of the FreeBSD group who are active testers,
|
|
willing to spend time working through problems in order to
|
|
ensure that FreeBSD-current remains as sane as possible. These
|
|
are also people who wish to make topical suggestions on changes
|
|
and the general direction of FreeBSD.
|
|
|
|
<item><p>Peripheral members of the FreeBSD (or some other) group who merely
|
|
wish to keep an eye on things and use the current sources for
|
|
reference purposes (e.g. for <em>reading</em>, not running). These
|
|
people also make the occasional comment or contribute code.
|
|
</enum>
|
|
|
|
<item><em>What is FreeBSD-current NOT?</em>
|
|
|
|
<p><enum>
|
|
<item><p>A fast-track to getting pre-release bits because you heard there
|
|
is some cool new feature in there and you want to be the first on
|
|
your block to have it.
|
|
|
|
<item><p>A quick way of getting bug fixes.
|
|
|
|
<item><p>In any way ``officially supported'' by us.
|
|
|
|
We do our best to help people genuinely in one of the 3
|
|
``legitimate'' FreeBSD-current categories, but we simply <em>do not
|
|
have the time</em> to provide tech support for it.
|
|
This is not because we are mean and nasty people who do not like
|
|
helping people out (we would not even be doing FreeBSD if we were),
|
|
it is literally because we cannot answer 400 messages a day
|
|
<em>and</em> actually work on FreeBSD! I am sure that, if given
|
|
the choice between having us answer lots of questions or continuing to
|
|
improve FreeBSD, most of you would vote for us improving it.
|
|
</enum>
|
|
|
|
<item><em>Using FreeBSD-current</em>
|
|
|
|
<p><enum>
|
|
<item><p>Join the &a.current and the &a.cvsall .
|
|
This is not just a good idea, it is <em>essential</em>.
|
|
If you are not on the <em>FreeBSD-current</em> mailing list, you
|
|
will not see the comments that people are making about the
|
|
current state of the system and thus will probably end up stumbling
|
|
over a lot of problems that others have already found and
|
|
solved. Even more importantly, you will miss out on important
|
|
bulletins which may be critical to your system's continued health.
|
|
|
|
The <em>cvs-all</em> mailing list also allows you to see the commit log
|
|
entry for each change as it is made, along with any pertinent
|
|
information on possible side-effects, and is another good mailing list
|
|
to subscribe to.
|
|
|
|
To join these lists, send mail to &a.majordomo and specify:
|
|
<verb>
|
|
subscribe freebsd-current
|
|
subscribe cvs-all
|
|
</verb>
|
|
In the body of your message. Optionally, you can also say `help'
|
|
and Majordomo will send you full help on how to subscribe and
|
|
unsubscribe to the various other mailing lists we support.
|
|
|
|
<item><p>Grab the sources from ftp.FreeBSD.ORG. You can do this in
|
|
one of three ways:
|
|
|
|
<enum>
|
|
<item><p>Use the <ref id="ctm" name="CTM"> facility. Unless you
|
|
have a good TCP/IP connection at a flat rate, this is
|
|
the way to do it.
|
|
|
|
<item><p>Use the <ref id="cvsup" name="cvsup"> program with
|
|
<url url="ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/share/examples/cvsup/standard-supfile" name="this supfile">.
|
|
This is the second most recommended method, since it allows
|
|
you to grab the entire collection once and then only what has
|
|
changed from then on. Many people run cvsup from cron
|
|
to keep their sources up-to-date automatically. For a fairly
|
|
easy interface to this, simply type:
|
|
<verb>
|
|
pkg_add -f ftp://ftp.freebsd.org/pub/FreeBSD/development/CVSup/cvsupit.tgz
|
|
</verb>
|
|
|
|
<item><p>Use ftp. The source tree for FreeBSD-current is always
|
|
"exported" on:
|
|
<htmlurl url="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/FreeBSD-current"
|
|
name="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/FreeBSD-current">
|
|
We also use `wu-ftpd' which allows compressed/tar'd grabbing
|
|
of whole trees. e.g. you see:
|
|
<verb>
|
|
usr.bin/lex
|
|
</verb>
|
|
You can do:
|
|
<verb>
|
|
ftp> cd usr.bin
|
|
ftp> get lex.tar.Z
|
|
</verb>
|
|
and it will get the whole directory for you as a compressed
|
|
tar file.
|
|
</enum>
|
|
|
|
Essentially, if you need rapid on-demand access to the source and
|
|
communications bandwidth is not a consideration, use cvsup or ftp.
|
|
Otherwise, use CTM.
|
|
|
|
If you are grabbing the sources to run, and not just look at,
|
|
then grab <em>all</em> of current, not just selected portions. The
|
|
reason for this is that various parts of the source depend on
|
|
updates elsewhere, and trying to compile just a subset is almost
|
|
guaranteed to get you into trouble.
|
|
|
|
Before compiling current, read the Makefile in /usr/src
|
|
carefully. You should at least run a `<ref id="makeworld"
|
|
name="make world">' the first time through as part of the upgrading
|
|
process. Reading the &a.current will keep you up-to-date on other
|
|
bootstrapping procedures that sometimes become necessary as we move
|
|
towards the next release.
|
|
|
|
<item><p>Be active! If you are running FreeBSD-current, we want to know
|
|
what you have to say about it, especially if you have suggestions
|
|
for enhancements or bug fixes. Suggestions with accompanying code
|
|
are received most enthusiastically!
|
|
</enum>
|
|
</itemize>
|