-OpenBSD provides a source tree that contains important patches and fixes
-(i.e. those from the errata, plus others which
-are obvious and simple, but do not deserve an errata entry)
-and makes it available via CVS, in addition to the
--current source.
-Thus, users can choose three options:
+The -stable branch is one of OpenBSD's three
+flavors.
+It consists of the release and errata patches.
+More precisely:
-
-
Stick with our latest release and apply the patches by hand.
-
Use the -stable ("patch") branch, which has those patches.
-
Use the -current branch for all of the latest features.
+
Errata entries are made for bugs which affect many people.
+
Other patches may be merged into -stable if they affect a few
+ people in drastic ways.
+
New or changed functionality, hardware support or APIs will not be
+ merged.
-
-As a general principle, all errata entries will
-be merged into the patch branch shortly before/after they are published.
-Other post-release patches may be merged in as well, subject to a number
-of conditions:
+
Getting -stable source code
-
-
The patches must be simple, short, and obviously 100% correct.
-
Errata entries are made for bugs which affect many people.
- Other patches may be merged into the patch branch if they affect a few
- people in drastic ways.
-
New or changed functionality, hardware support or APIs will not
- be merged.
- In general, if it requires a man page change, it will NOT be a candidate
- for the patch branch.
- Please do not ask for large subsystems or patches to be merged.
- Maintaining the patch tree takes a lot of effort which could be better
- spent on making our next release better.
-
+To obtain the -stable tree for a particular release of OpenBSD, you can
+update on top of a pre-existing source tree
+or you can check out a fresh source tree from
+an AnonCVS server.
-It is worth pointing out the name -stable refers ONLY to the API
-and operations of OpenBSD not changing, not the overall reliability of
-the system.
-In fact, if things go as desired, the -current
-flavor of OpenBSD, on its way to
-becoming the next -release, will be an improvement in reliability,
-security and overall quality over the previous -release and
--stable.
-
-
-
Getting -stable source code
-
-To obtain the patch branch for a particular release of OpenBSD, you can
-update on top of a pre-existing source tree (from
-a mirror or the CD), or you can grab a
-fresh source tree from an AnonCVS server.
-Instructions for getting the patch branch and staying up to date are
-described in the Getting Started section of the
-AnonCVS documentation.
-Note that patch branches do not help to upgrade from one release of
-OpenBSD to another. They only provide a means for staying up to date
-with the patches within a given release.
-
-
+
Do not attempt to go from one release to another via source.
-Instead, please read the upgrade guide for the release in question.
-Also, you cannot go backwards, from -current back to -stable, because of
-library versioning problems and other changes.
+Instead, please read the upgrade guide for the
+release in question.
-
-
Building OpenBSD -stable
+
Building OpenBSD -stable
-Full details on building from source are provided
-here.
-This is a simplified summary.
+Details on building OpenBSD from source are provided in steps 2 and 3 of the
+release(8) manual.
+Before you start, you may also want to read the FAQ on
+building the system from source.
-Once you have obtained a source tree via CVS,
-you must rebuild the system.
-The steps for doing so are:
+If you have a number of machines to keep on the -stable branch, you may
+wish to make a release by creating
+file sets that can be quickly and
+easily installed on any machine of the same platform.
+The release(8) man page contains
+all the relevant information.
-
-
Rebuild the kernel
-
Reboot with the new kernel
-
Rebuild the userland
-
+
Rebuild the kernel and reboot
-
Rebuilding the kernel
+Replace GENERIC with GENERIC.MP for multiprocessor systems.
-To rebuild the default kernel from stable:
-
# cd /usr/src/sys/arch/$(uname -m)/conf
# config GENERIC
# cd /usr/src/sys/arch/$(uname -m)/compile/GENERIC
# make clean && make
-
-
-Replace GENERIC with GENERIC.MP for multiprocessor systems.
-
-
Rebooting with the new kernel
-
-To reboot with the newly compiled kernel:
-
-
-# cd /usr/src/sys/arch/$(uname -m)/compile/GENERIC
# make install
# reboot
@@ -131,7 +81,7 @@
If your system has trouble booting the new kernel, you can easily go back
and reboot from the old kernel, now called obsd.
-
Rebuilding the userland
+
Rebuilding the userland
To rebuild the base system binaries:
@@ -143,18 +93,6 @@
# cd /usr/src
# make build
-
-This may take some time, depending on the speed of your system.
-Use of the root account can be limited to only the final step if you
-follow the instructions on this page.
-
-
-If you have a number of machines to keep on the -stable branch,
-you may wish to make a release by
-creating file sets that can be
-quickly and easily installed on any machine of the same platform.
-The
-release(8) man page contains all the relevant information.