diff --git a/handbook/current.sgml b/handbook/current.sgml index 4fbcfae241..a00fb22776 100644 --- a/handbook/current.sgml +++ b/handbook/current.sgml @@ -1,156 +1,163 @@ - + Staying Current with FreeBSD

Contributed by &a.jkh;. -What is FreeBSD-current? + +What is FreeBSD-current?

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! -Who needs FreeBSD-current? +Who needs FreeBSD-current? -

FreeBSD-current is made generally available for 3 primary interest groups: - - Members of the FreeBSD group who are actively working on some +

FreeBSD-current is aimed at 3 primary interest groups: + +

+

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. - Members of the FreeBSD group who are active testers, +

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. - Peripheral members of the FreeBSD (or some other) group who merely +

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 reading, not running). These people also make the occasional comment or contribute code. -What is FreeBSD-current NOT? +What is FreeBSD-current NOT?

- 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 +

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. - A quick way of getting bug fixes. +

A quick way of getting bug fixes. - In any way ``officially supported'' by us. +

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 do not - have the time 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 - and 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. + We do our best to help people genuinely in one of the 3 + ``legitimate'' FreeBSD-current categories, but we simply do not + have the time 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 + and 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. -Using FreeBSD-current +Using FreeBSD-current -

Join the &a.current and the &a.cvsall . +

+

Join the &a.current and the &a.cvsall . This is not just a good idea, it is essential. - If you are not on the FreeBSD-current mailing list you + If you are not on the FreeBSD-current 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 - potentially critical information (e.g. ``Yo, Everybody! - Before you rebuild /usr/src, you must - rebuild the kernel or your system will crash horribly!"). + solved. Even more importantly, you will miss out on important + bulletins which may be critical to your system's continued health. - The cvs-all mailing list will allow you to see the commit log - entry for each change as it is made along with any pertinent - information on possible side-effects. + The cvs-all 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: + To join these lists, send mail to &a.majordomo and specify: subscribe freebsd-current subscribe cvs-all - 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. + 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. - Grab the sources from ftp.FreeBSD.ORG. You can do this in - three ways: +

Grab the sources from ftp.FreeBSD.ORG. You can do this in + one of three ways: - Use the facility. Unless you +

Use the facility. Unless you have a good TCP/IP connection at a flat rate, this is the way to do it. - Use the program with +

Use the program with . 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 - and keep their sources up-to-date automatically. + to keep their sources up-to-date automatically. For a fairly + easy interface to this, simply type: + + pkg_add -f ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupit.tgz + - Use ftp. The source tree for FreeBSD-current is always +

Use ftp. The source tree for FreeBSD-current is always "exported" on: We also use `wu-ftpd' which allows compressed/tar'd grabbing of whole trees. e.g. you see: usr.bin/lex You can do: ftp> cd usr.bin ftp> get lex.tar.Z - And it will get the whole directory for you as a compressed + and it will get the whole directory for you as a compressed tar file. - Essentially, if you need rapid on-demand access to the source and + 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, + If you are grabbing the sources to run, and not just look at, then grab all 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 `' 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. + Before compiling current, read the Makefile in /usr/src + carefully. You should at least run a `' 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. - Be active! If you are running FreeBSD-current, we want to know +

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! + are received most enthusiastically! + diff --git a/handbook/stable.sgml b/handbook/stable.sgml index 50386d00b3..af4670215c 100644 --- a/handbook/stable.sgml +++ b/handbook/stable.sgml @@ -1,122 +1,128 @@ - + Staying Stable with FreeBSD

Contributed by &a.jkh;. What is FreeBSD-stable?

FreeBSD-stable is our development branch for a more low-key and conservative set of changes intended for our next mainstream release. Changes of an experimental or untested nature do not go into this branch (see ). Who needs FreeBSD-stable?

If you are a commercial user or someone who puts maximum stability of their FreeBSD system before all other concerns, you should consider tracking stable. This is especially true if you have installed the most recent release ( at the time of this writing) since the stable branch is effectively a bug-fix stream relative to the previous release.

Please note that the stable tree endeavors, above all, to be fully compilable and stable at all times, but we do occasionally make mistakes (these are still active sources with quickly-transmitted updates, after all). We also do our best to thoroughly test fixes in current before bringing them into stable, but sometimes our tests fail to catch every case. If something breaks for you in stable, please let us know immediately! (see next section). Getting FreeBSD-stable

Join the &a.stable . This will keep you informed of build-dependencies that may appear in stable or any other issues requiring special attention. Developers will also make announcements in this mailing list when they are contemplating some controversial fix or update, giving the users a chance to respond if they have any issues to raise concerning the proposed change. -

To join this list, send mail to &a.majordomo and say: + The cvs-all 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: - subscribe freebsd-stable + subscribe freebsd-stable + subscribe cvs-all -

In the body of your message. Optionally, you can also say `help' + 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. -

If you're installing a new system and want it to be as -stable +

If you're installing a new system and want it to be as -stable as possible, you can simply grab the latest dated branch snapshot from and install it like any other release. -

If you're already running a previous release of 2.2 and +

If you're already running a previous release of 2.2 and wish to upgrade via sources then you can easily do so from ftp.FreeBSD.ORG. This can be done in one of three ways: -

Use the facility. Unless you +

Use the facility. Unless you have a good TCP/IP connection at a flat rate, this is the way to do it. -

Use the program with +

Use the program with . 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: pkg_add -f ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupit.tgz -

Use ftp. The source tree for FreeBSD-stable is always +

Use ftp. The source tree for FreeBSD-stable is always "exported" on:

We also use `wu-ftpd' which allows compressed/tar'd grabbing of whole trees. e.g. you see: usr.bin/lex You can do: ftp> cd usr.bin ftp> get lex.tar.Z - And it will get the whole directory for you as a compressed + and it will get the whole directory for you as a compressed tar file.

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.

Before compiling stable, read the Makefile in /usr/src carefully. You should at least run a `' the first time through as part of the upgrading process. Reading the &a.stable will keep you up-to-date on other bootstrapping procedures that sometimes become necessary as we move towards the next release.