Annotation of www/stable.html, Revision 1.32
1.22 nick 1: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
1.1 jason 2: <html>
3: <head>
1.23 nick 4: <title>Following -stable</title>
1.1 jason 5: <meta name="resource-type" content="document">
6: <meta name="description" content="stable">
7: <meta name="keywords" content="openbsd,anoncvs,updates,stable">
8: <meta name="distribution" content="global">
1.27 steven 9: <meta name="copyright" content="This document copyright 1996-2009 by OpenBSD.">
1.22 nick 10: <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
1.1 jason 11: </head>
12:
1.22 nick 13: <body bgcolor="#ffffff" text="#000000">
14: <!-- Passes validator.w3.org, please keep it this way;
15: please, use a max of 72 chars per line -->
1.1 jason 16:
1.23 nick 17: <a href="index.html">
18: <img alt="[OpenBSD]" height=30 width=141 src="images/smalltitle.gif" border="0">
19: </a>
20:
1.1 jason 21: <p>
1.23 nick 22: <h1><font color="#e00000">Following <i>-stable</i> (the "Patch
23: branch")</font></h1>
1.22 nick 24: <hr>
1.1 jason 25:
1.23 nick 26: <h3>Table Of Contents</h3>
1.1 jason 27: <p>
1.22 nick 28: <ul>
1.23 nick 29: <li><a href="#whatis">What is the <i>-stable</i> (patch) branch?</a>
30: <li><a href="#getting">Getting <i>-stable</i> source code</a>
31: <li><a href="#building">Building OpenBSD <i>-stable</i></a>
1.1 jason 32: </ul>
33: <hr>
34:
35: <a name="whatis"></a>
1.24 steven 36: <h3><font color="#0000e0">What is the <i>-stable</i> (patch)
37: branch?</font></h3>
1.1 jason 38:
39: <p>
1.19 nick 40: Starting with 2.7, OpenBSD provides a source tree that contains
41: important patches and fixes (i.e. those from the
42: <a href="errata.html">errata</a> plus others which are obvious and simple,
43: but do not deserve an errata entry)
1.23 nick 44: and makes it available via <a href="anoncvs.html">CVS</a>, in addition to the
45: <i>-current</i> source. Thus, users can choose three options :<p>
1.4 deraadt 46: <ul>
1.19 nick 47: <li>Stick with our latest release and apply the patches by hand.
1.25 nick 48: <li>Use the <b>patch branch</b> which has those patches.
1.19 nick 49: <li>Use <b>current source</b> for all of the latest features.
1.4 deraadt 50: </ul>
51: <p>
1.19 nick 52: <!-- The <a href="plus.html">Daily Changelog</a> details (amoung other things)
53: which post-release changes have made it into the patch branch. -->
54: As a general principle, all
1.23 nick 55: <a href="errata.html">errata</a> entries will be merged into the patch
1.19 nick 56: branch within 48 hours of when an errata is published. Other post release
57: patches may be merged in as well, subject to a number of conditions:
1.4 deraadt 58: <ul>
1.19 nick 59: <li>The patches must be simple, short, and obviously 100% correct.
60: <li>Errata entries are made for bugs which affect many people. Other
61: patches may be merged into the patch branch if they affect a few
62: people in drastic ways.
63: <li>Please do not ask for large subsystems or patches to be merged.
64: Maintaining the patch tree takes a lot of effort which could be
65: better spent on making our next release better.
1.23 nick 66: <li>New or changed functionality, hardware support or APIs will
67: <i>not</i> be merged.
68: In general, if it requires a man page change, it will NOT be a
69: candidate for the patch branch.
1.19 nick 70: <li>As an exception to the above rules, OpenSSH release versions will be
71: merged into the patch branch.
1.4 deraadt 72: </ul>
73: <p>
1.1 jason 74:
1.23 nick 75: It is worth pointing out the name <i>-stable</i> refers ONLY to the API
76: and operations of OpenBSD not changing, not the overall reliability of
77: the system.
78: In fact, if things go as desired, the <i>-current</i>
79: <a href="faq/faq5.html#Flavors">flavor</a> of OpenBSD, on its way to
80: becoming the next <i>-release</i>, will be an improvement in
81: reliability, security and overall quality over the previous
82: <i>-release</i> and <i>-stable</i>.
83:
1.1 jason 84: <a name="getting"></a>
1.23 nick 85: <h3><font color="#0000e0">Getting <i>-stable</i> source code</font></h3>
1.1 jason 86:
87: <p>
1.19 nick 88: To obtain the patch branch for a particular release of OpenBSD, you
89: can update on top of a pre-existing source tree
90: (from <a href="ftp.html">FTP</a> or the <a href="orders.html">CD</a>)
91: or you can grab the source tree freshly from
92: an <a href="anoncvs.html">AnonCVS</a> server.
93: Instructions for getting the patch branch and staying up to date are
94: described in the <b>Getting Started</b> section of the
95: <a href="anoncvs.html#starting">AnonCVS documentation</a>.
96: Note that patch branches do not help to upgrade from one release of
1.31 nick 97: OpenBSD to another, e.g. to go from 5.3 to 5.4. They only provide
1.19 nick 98: a means for staying up to date with the patches within a given release.
1.23 nick 99:
100: <p>
101: Do not attempt to go from one release to another via source.
1.31 nick 102: Instead, please visit the <a href="faq/upgrade54.html">upgrade guide</a>.
1.19 nick 103: Also, you cannot go backwards, from -current back to -stable, because of
1.23 nick 104: library versioning problems and other changes.
1.1 jason 105:
106: <a name="building"></a>
1.23 nick 107: <h3><font color="#0000e0">Building OpenBSD <i>-stable</i></font></h3>
108: Full details on building from source are provided in
109: <a href="faq/faq5.html">FAQ 5 - Building the System from Source</a>.
110: This is a simplified summary.
111:
112: <p>
1.19 nick 113: Once you have obtained a source tree via <a href="anoncvs.html">anoncvs</a>,
114: you must rebuild the system. The stages for doing so are:
1.1 jason 115:
116: <ul>
1.19 nick 117: <li>Rebuild the kernel
118: <li>Reboot with the new kernel
119: <li>Rebuild the binaries
1.1 jason 120: </ul>
121:
1.22 nick 122: <h4><font color="#0000e0">Rebuilding the kernel</font></h4>
1.1 jason 123:
124: <p>
1.19 nick 125: To rebuild the default kernel from stable:
1.22 nick 126: <blockquote><pre>
1.3 ericj 127: # <strong>cd /usr/src/sys/arch/i386/conf</strong>
128: # <strong>/usr/sbin/config GENERIC</strong>
129: # <strong>cd /usr/src/sys/arch/i386/compile/GENERIC</strong>
130: # <strong>make clean && make depend && make</strong>
1.22 nick 131: </pre></blockquote>
1.1 jason 132:
133: <p>
1.19 nick 134: Replace <i>i386</i> with your architecture, e.g.
135: <i>sparc</i>, <i>alpha</i>, etc.
1.1 jason 136:
1.22 nick 137: <h4><font color="#0000e0">Rebooting with the new kernel</font></h4>
1.1 jason 138:
139: <p>
1.19 nick 140: To reboot with the newly compiled kernel:
1.22 nick 141: <blockquote><pre>
1.3 ericj 142: # <strong>cd /usr/src/sys/arch/i386/compile/GENERIC</strong>
1.23 nick 143: # <strong>make install</strong> <i>(Safely install new kernel)</i>
1.3 ericj 144: # <strong>reboot</strong>
1.22 nick 145: </pre></blockquote>
1.1 jason 146:
147: <p>
1.19 nick 148: As above, substitute your architecture for <i>i386</i>. If your system has
149: trouble booting the new kernel, you can easily go back and reboot from the
1.23 nick 150: old kernel, now called <i>obsd</i>.
1.1 jason 151:
1.22 nick 152: <h4><font color="#0000e0">Rebuilding the binaries</font></h4>
1.1 jason 153:
1.19 nick 154: <p> To rebuild the system binaries:
1.22 nick 155: <blockquote><pre>
1.16 steven 156: # <strong>rm -rf /usr/obj/*</strong>
1.3 ericj 157: # <strong>cd /usr/src</strong>
1.16 steven 158: # <strong>make obj</strong>
159: # <strong>cd /usr/src/etc && env DESTDIR=/ make distrib-dirs</strong>
160: # <strong>cd /usr/src</strong>
161: # <strong>make build</strong>
1.22 nick 162: </pre></blockquote>
1.1 jason 163:
1.30 nick 164: <p>This will take some time.
165: Depending on the speed of the system, it may take less than an hour to
166: a week or more.
1.23 nick 167:
168: <p>
169: If you have a number of machines to keep at <i>-stable</i>, you may wish to
170: make a <a href="faq/faq5.html#Release">release</a>, creating the
171: standard install <a href="faq/faq4.html#FilesNeeded">file sets</a>,
172: which can then be quickly and easily installed on any machine of the
173: same <a href="plat.html">platform</a>.
174:
1.1 jason 175: </body>
176: </html>
1.19 nick 177: