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

Annotation of www/stable.html, Revision 1.43

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="description" content="stable">
1.40      tj          6: <meta name="copyright" content="This document copyright 1996-2016 by OpenBSD.">
1.22      nick        7: <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
1.43    ! tb          8: <meta name="viewport" content="width=device-width, initial-scale=1">
        !             9: <link rel="stylesheet" type="text/css" href="openbsd.css">
1.37      sthen      10: <link rel="canonical" href="http://www.openbsd.org/stable.html">
1.1       jason      11: </head>
                     12:
1.22      nick       13: <body bgcolor="#ffffff" text="#000000">
1.23      nick       14:
1.43    ! tb         15: <h2>
        !            16: <a href="../index.html">
        !            17: <font color="#0000ff"><i>Open</i></font><font color="#000084">BSD</font></a>
        !            18: <font color="#e00000">-stable</font>
        !            19: </h2>
        !            20: <hr>
1.1       jason      21: <p>
                     22:
                     23: <a name="whatis"></a>
1.24      steven     24: <h3><font color="#0000e0">What is the <i>-stable</i> (patch)
                     25: branch?</font></h3>
1.1       jason      26:
1.40      tj         27: OpenBSD provides a source tree that contains important patches and fixes
                     28: (i.e. those from the <a href="errata.html">errata</a>, plus others which
                     29: are obvious and simple, but do not deserve an errata entry)
                     30: and makes it available via <a href="anoncvs.html">CVS</a>, in addition to the
                     31: <i>-current</i> source.
                     32: Thus, users can choose three options:
                     33:
1.1       jason      34: <p>
1.4       deraadt    35: <ul>
1.19      nick       36: <li>Stick with our latest release and apply the patches by hand.
1.40      tj         37: <li>Use the <i>-stable</i> ("patch") branch, which has those patches.
                     38: <li>Use the <i>-current</i> branch for all of the latest features.
1.4       deraadt    39: </ul>
1.40      tj         40:
1.4       deraadt    41: <p>
1.40      tj         42: As a general principle, all <a href="errata.html">errata</a> entries will
                     43: be merged into the patch branch shortly before/after they are published.
                     44: Other post-release patches may be merged in as well, subject to a number
                     45: of conditions:
                     46:
1.4       deraadt    47: <ul>
1.19      nick       48: <li>The patches must be simple, short, and obviously 100% correct.
1.40      tj         49: <li>Errata entries are made for bugs which affect many people.
                     50:     Other patches may be merged into the patch branch if they affect a few
1.19      nick       51:     people in drastic ways.
1.40      tj         52: <li>New or changed functionality, hardware support or APIs will <i>not</i>
                     53:     be merged.
                     54:     In general, if it requires a man page change, it will NOT be a candidate
                     55:     for the patch branch.
                     56:     Please do not ask for large subsystems or patches to be merged.
                     57:     Maintaining the patch tree takes a lot of effort which could be better
                     58:     spent on making our next release better.
1.4       deraadt    59: </ul>
1.40      tj         60:
1.4       deraadt    61: <p>
1.23      nick       62: It is worth pointing out the name <i>-stable</i> refers ONLY to the API
                     63: and operations of OpenBSD not changing, not the overall reliability of
                     64: the system.
                     65: In fact, if things go as desired, the <i>-current</i>
                     66: <a href="faq/faq5.html#Flavors">flavor</a> of OpenBSD, on its way to
1.40      tj         67: becoming the next <i>-release</i>, will be an improvement in reliability,
                     68: security and overall quality over the previous <i>-release</i> and
                     69: <i>-stable</i>.
1.23      nick       70:
1.1       jason      71: <a name="getting"></a>
1.23      nick       72: <h3><font color="#0000e0">Getting <i>-stable</i> source code</font></h3>
1.1       jason      73:
1.40      tj         74: To obtain the patch branch for a particular release of OpenBSD, you can
                     75: update on top of a pre-existing source tree (from <a href="ftp.html">
                     76: a mirror</a> or the <a href="orders.html">CD</a>), or you can grab a
                     77: fresh source tree from an <a href="anoncvs.html">AnonCVS</a> server.
1.19      nick       78: Instructions for getting the patch branch and staying up to date are
                     79: described in the <b>Getting Started</b> section of the
                     80: <a href="anoncvs.html#starting">AnonCVS documentation</a>.
                     81: Note that patch branches do not help to upgrade from one release of
1.39      tj         82: OpenBSD to another. They only provide a means for staying up to date
                     83: with the patches within a given release.
1.23      nick       84:
                     85: <p>
                     86: Do not attempt to go from one release to another via source.
1.39      tj         87: Instead, please read the upgrade guide for the release in question.
1.19      nick       88: Also, you cannot go backwards, from -current back to -stable, because of
1.23      nick       89: library versioning problems and other changes.
1.1       jason      90:
                     91: <a name="building"></a>
1.23      nick       92: <h3><font color="#0000e0">Building OpenBSD <i>-stable</i></font></h3>
1.40      tj         93:
1.23      nick       94: Full details on building from source are provided in
                     95: <a href="faq/faq5.html">FAQ 5 - Building the System from Source</a>.
                     96: This is a simplified summary.
                     97:
                     98: <p>
1.40      tj         99: Once you have obtained a source tree via <a href="anoncvs.html">CVS</a>,
                    100: you must rebuild the system.
                    101: The steps for doing so are:
1.1       jason     102:
                    103: <ul>
1.19      nick      104:  <li>Rebuild the kernel
                    105:  <li>Reboot with the new kernel
1.40      tj        106:  <li>Rebuild the userland
1.1       jason     107: </ul>
                    108:
1.22      nick      109: <h4><font color="#0000e0">Rebuilding the kernel</font></h4>
1.1       jason     110:
1.19      nick      111: To rebuild the default kernel from stable:
1.40      tj        112:
1.22      nick      113: <blockquote><pre>
1.40      tj        114: # <b>cd /usr/src/sys/arch/$(uname -m)/conf</b>
                    115: # <b>config GENERIC</b>
                    116: # <b>cd /usr/src/sys/arch/$(uname -m)/compile/GENERIC</b>
                    117: # <b>make clean && make</b>
1.22      nick      118: </pre></blockquote>
1.1       jason     119:
1.40      tj        120: Replace <tt>GENERIC</tt> with <tt>GENERIC.MP</tt> for multiprocessor systems.
1.1       jason     121:
1.22      nick      122: <h4><font color="#0000e0">Rebooting with the new kernel</font></h4>
1.1       jason     123:
1.19      nick      124: To reboot with the newly compiled kernel:
1.40      tj        125:
1.22      nick      126: <blockquote><pre>
1.40      tj        127: # <b>cd /usr/src/sys/arch/$(uname -m)/compile/GENERIC</b>
                    128: # <b>make install</b>
                    129: # <b>reboot</b>
1.22      nick      130: </pre></blockquote>
1.1       jason     131:
1.40      tj        132: If your system has trouble booting the new kernel, you can easily go back
                    133: and reboot from the old kernel, now called <tt>obsd</tt>.
                    134:
                    135: <h4><font color="#0000e0">Rebuilding the userland</font></h4>
1.1       jason     136:
1.40      tj        137: To rebuild the base system binaries:
1.1       jason     138:
1.22      nick      139: <blockquote><pre>
1.40      tj        140: # <b>rm -rf /usr/obj/*</b>
                    141: # <b>cd /usr/src</b>
                    142: # <b>make obj</b>
                    143: # <b>cd /usr/src/etc && env DESTDIR=/ make distrib-dirs</b>
                    144: # <b>cd /usr/src</b>
                    145: # <b>make build</b>
1.22      nick      146: </pre></blockquote>
1.1       jason     147:
1.40      tj        148: This may take some time, depending on the speed of your system.
                    149: Use of the root account can be limited to only the final step if you
                    150: follow the instructions in <a href="faq/faq5.html#BldGetSrc">FAQ 5</a>.
1.23      nick      151:
                    152: <p>
1.40      tj        153: If you have a number of machines to keep on the <i>-stable</i> branch,
                    154: you may wish to make a <a href="faq/faq5.html#Release">release</a> by
                    155: creating <a href="faq/faq4.html#FilesNeeded">file sets</a> that can be
                    156: quickly and easily installed on any machine of the same platform.
1.42      sthen     157: The <a href="http://man.openbsd.org/?query=release">
1.40      tj        158: release(8)</a> man page contains all the relevant information.
1.23      nick      159:
1.1       jason     160: </body>
                    161: </html>