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

Annotation of www/stable.html, Revision 1.40

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