[BACK]Return to stable.html CVS log [TXT][DIR] Up to [local] / www

File: [local] / www / stable.html (download) (as text)

Revision 1.38, Thu Jul 2 05:49:04 2015 UTC (8 years, 10 months ago) by bentley
Branch: MAIN
Changes since 1.37: +0 -3 lines

Clean up meta tags.

name=distribution, name=keywords, and name=resource-type have no effect
in modern search engines and just clutter up the page source.

From Pavel Plamenov.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Following -stable</title>
<meta name="description" content="stable">
<meta name="copyright" content="This document copyright 1996-2014 by OpenBSD.">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<link rel="canonical" href="http://www.openbsd.org/stable.html">
</head>

<body bgcolor="#ffffff" text="#000000">
<!-- Passes validator.w3.org, please keep it this way;
please, use a max of 72 chars per line -->

<a href="index.html">
<img alt="[OpenBSD]" height=30 width=141 src="images/smalltitle.gif" border="0">
</a>

<p>
<h2><font color="#e00000">Following <i>-stable</i> (the "Patch
branch")</font></h2>
<hr>

<a name="whatis"></a>
<h3><font color="#0000e0">What is the <i>-stable</i> (patch)
branch?</font></h3>

<p>
OpenBSD provides a source tree that contains
important patches and fixes (i.e. those from the
<a href="errata.html">errata</a> plus others which are obvious and simple,
but do not deserve an errata entry)
and makes it available via <a href="anoncvs.html">CVS</a>, in addition to the
<i>-current</i> source.  Thus, users can choose three options :<p>
<ul>
<li>Stick with our latest release and apply the patches by hand.
<li>Use the <b>patch branch</b> which has those patches.
<li>Use <b>current source</b> for all of the latest features.
</ul>
<p>
<!-- The <a href="plus.html">Daily Changelog</a> details (amoung other things)
which post-release changes have made it into the patch branch. -->
As a general principle, all
<a href="errata.html">errata</a> entries will be merged into the patch
branch within 48 hours of when an errata is published.  Other post release
patches may be merged in as well, subject to a number of conditions:
<ul>
<li>The patches must be simple, short, and obviously 100% correct.
<li>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.
<li>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. 
<li>New or changed functionality, hardware support or APIs will
    <i>not</i> be merged.
    In general, if it requires a man page change, it will NOT be a
    candidate for the patch branch.
<li>As an exception to the above rules, OpenSSH release versions will be
    merged into the patch branch.
</ul>
<p>

It is worth pointing out the name <i>-stable</i> 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 <i>-current</i> 
<a href="faq/faq5.html#Flavors">flavor</a> of OpenBSD, on its way to
becoming the next <i>-release</i>, will be an improvement in
reliability, security and overall quality over the previous
<i>-release</i> and <i>-stable</i>.

<a name="getting"></a>
<h3><font color="#0000e0">Getting <i>-stable</i> source code</font></h3>

<p>
To obtain the patch branch for a particular release of OpenBSD, you
can update on top of a pre-existing source tree
(from <a href="ftp.html">FTP</a> or the <a href="orders.html">CD</a>)
or you can grab the source tree freshly from
an <a href="anoncvs.html">AnonCVS</a> server.
Instructions for getting the patch branch and staying up to date are
described in the <b>Getting Started</b> section of the
<a href="anoncvs.html#starting">AnonCVS documentation</a>.
Note that patch branches do not help to upgrade from one release of
OpenBSD to another, e.g. to go from 5.4 to 5.5.  They only provide
a means for staying up to date with the patches within a given release.

<p>
Do not attempt to go from one release to another via source.
Instead, please visit the <a href="faq/upgrade55.html">upgrade guide</a>.
Also, you cannot go backwards, from -current back to -stable, because of
library versioning problems and other changes.

<a name="building"></a>
<h3><font color="#0000e0">Building OpenBSD <i>-stable</i></font></h3>
Full details on building from source are provided in 
<a href="faq/faq5.html">FAQ 5 - Building the System from Source</a>.
This is a simplified summary.

<p>
Once you have obtained a source tree via <a href="anoncvs.html">anoncvs</a>,
you must rebuild the system.  The stages for doing so are:

<ul>
 <li>Rebuild the kernel
 <li>Reboot with the new kernel
 <li>Rebuild the binaries
</ul>

<h4><font color="#0000e0">Rebuilding the kernel</font></h4>

<p>
To rebuild the default kernel from stable:
<blockquote><pre>
# <strong>cd /usr/src/sys/arch/i386/conf</strong>
# <strong>/usr/sbin/config GENERIC</strong>
# <strong>cd /usr/src/sys/arch/i386/compile/GENERIC</strong>
# <strong>make clean &amp;&amp; make</strong>
</pre></blockquote>

<p>
Replace <i>i386</i> with your architecture, e.g.
<i>sparc</i>, <i>alpha</i>, etc. Replace <i>GENERIC</i> with
<i>GENERIC.MP</i> for multiprocessor systems.

<h4><font color="#0000e0">Rebooting with the new kernel</font></h4>

<p>
To reboot with the newly compiled kernel:
<blockquote><pre>
# <strong>cd /usr/src/sys/arch/i386/compile/GENERIC</strong>
# <strong>make install</strong>          <i>(Safely install new kernel)</i>
# <strong>reboot</strong>
</pre></blockquote>

<p>
As above, substitute your architecture for <i>i386</i>.  If your system has
trouble booting the new kernel, you can easily go back and reboot from the
old kernel, now called <i>obsd</i>.

<h4><font color="#0000e0">Rebuilding the binaries</font></h4>

<p> To rebuild the system binaries:
<blockquote><pre>
# <strong>rm -rf /usr/obj/*</strong>
# <strong>cd /usr/src</strong>
# <strong>make obj</strong>
# <strong>cd /usr/src/etc &amp;&amp; env DESTDIR=/ make distrib-dirs</strong>
# <strong>cd /usr/src</strong>
# <strong>make build</strong>
</pre></blockquote>

<p>This will take some time.
Depending on the speed of the system, it may take less than an hour to
a week or more.

<p>
If you have a number of machines to keep at <i>-stable</i>, you may wish to 
make a <a href="faq/faq5.html#Release">release</a>, creating the
standard install <a href="faq/faq4.html#FilesNeeded">file sets</a>,
which can then be quickly and easily installed on any machine of the
same <a href="plat.html">platform</a>.

</body>
</html>