<!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [
<!ENTITY base CDATA "../../">
<!ENTITY date "$FreeBSD$">
<!ENTITY title "FreeBSD GNOME Project: GNOME &gnomever; Upgrading FAQ">
<!ENTITY % navinclude.gnome "INCLUDE">
]>
<html>
  &header;

  <h2>Contents</h2>
    <ol>
    <li> <a href="#q1">What is new in GNOME &gnomever;?</a>
    <li> <a href="#q2">How do I upgrade to GNOME &gnomever;?</a>
    <li> <a href="#q3">Oops!  I ran <tt>portupgrade(1)</tt>!  What do I do?</a>
    <li> <a href="#q4">The upgrade failed; what do I do?</a>
    <li> <a href="#q5">List of known GNOME &gnomever; problems and their solutions</a>
    <li> <a href="#q6">I have found a bug; whom should I alert?</a>
    <li> <a href="#q7">I want the fame and glory of the FreeBSD GNOME team!  What
      can I do to participate?</a>
    </ol>

  <h2>Full Text</h2>
    <ol>
<!-- Q1 -->
      <li style="padding-bottom: 0.5em"><a name="q1"></a>
      <p><b>What is new in GNOME &gnomever;?</b></p>
<!-- A1 -->
      <p>Although the canonical summary of new features can be found at
        <a
	href="http://www.gnome.org/start/2.12/notes/en/">http://www.gnome.org/start/2.12/notes/en/</a>,
	some of the most exciting new features of GNOME &gnomever; are:</p>

      <ul>
	<li>Sexy new default theme, Clearlooks
	<li>More usable and powerful Nautilus file manager
	<li>Desktop-wide clipboard that can save your paste buffer
	  even after you have closed the application from which you
	  copied
	<li>Enhanced multimedia support
	<li>Extensive list of stability and speed increases
      </ul>

      </li>

<!-- Q2 -->
      <li style="padding-bottom: 0.5em"><a name="q2"></a>
      <p><b>How do I upgrade to GNOME &gnomever;?</b></p>
<!-- A2 -->
      <p><b><i>NOTE: Do <u>not</u> run <tt>portupgrade(1)</tt> to upgrade to GNOME &gnomever;!</i></b></p>

      <p>The simple answer is this:</p>

      <ol>
	<li>To build GNOME &gnomever;, you need to obtain the latest
	  ports tree skeleton.  This is most easily accomplished with
	  <tt>portsnap(8)</tt> or <a
	  href="http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/cvsup.html">cvsup</a>CVSup.  Simply obtain the latest ports tree, and you are
	  ready to go.  After you have obtained the latest ports tree,
	  <em>do not</em> run a typical <tt>portupgrade(1)</tt>.
	<li>Download the FreeBSD GNOME Project's <a href="http://www.FreeBSD.org/gnome/gnome_upgrade.sh">upgrade
	  script</a>.
	<li>Run the script as <tt>root</tt>.  Read a good-sized book.
      </ol>

      <p>More detailed instructions are as follows:</p>

      <ol>
        <li>CVSup your ports tree.

	<p>To build GNOME &gnomever;, you need to obtain the &gnomever; ports tree skeleton.  This is
	  most easily accomplished with CVSup.  Simply obtain the latest ports tree, and you are
	  ready to go.  After you have obtained the latest ports tree, <i>do not</i> run a typical
	  <tt>portupgrade(1)</tt>.</p>
	</li>

	<li>Obtain the upgrade script.

	<p>It is not possible to upgrade from GNOME &gnomeoldver; to GNOME &gnomever; by simply running
	  <tt>portupgrade(1)</tt>.  There are new dependencies, and ports will build out-of-order,
	  eventually causing the build to fail.</p>

	<p>To work around these problems, and to provide an update mechanism as simple as
	  <tt>portupgrade(1)</tt>, the FreeBSD GNOME team has produced a comprehensive upgrade script.
	  The script can be downloaded from:</p>

	<blockquote><a
	  href="http://www.FreeBSD.org/gnome/gnome_upgrade.sh">http://www.FreeBSD.org/gnome/gnome_upgrade.sh</a>
	</blockquote>

	<p>Simply download that script, and save it to disk.</p>
	</li>

	<li>Run the script.

	<p>Once you have the script downloaded, run, as <tt>root</tt>:</p>

	<pre>
# sh ./gnome_upgrade.sh
	</pre>
	<p>Hit <tt>ENTER</tt> to begin, answer any questions that pop up, and go watch an
	  <i>entire</i> Monty Python anthology.  Right after hitting <tt>ENTER</tt> at the beginning,
	  you will be given the path to a logfile.  By running:</p>

	  <pre>
$ tail -f /path/to/logfile
	  </pre>
	<p>you can watch the entire upgrade process as it unfolds.  It is hypnotic!</p>
	</li>
      </ol>
      </li>

<!-- Q3 -->
      <li style="padding-bottom: 0.5em"><a name="q3"></a>
      <p><b>Oops!  I ran <tt>portupgrade(1)</tt>!  What do I do?</b></p>
<!-- A3 -->
      <p>Do not worry; hope is not lost.  Running <tt>portupgrade(1)</tt> will cause the build
        to fail, but it will not cause any lasting damage to your ports tree, unless you have
	done something exceptionally creative.  Simply download the <tt>gnome_upgrade.sh</tt>
	script and run it, and pretend that you ran it in the first place.  Nobody needs to know
	that you did not read the directions first!</p>
      </li>

<!-- Q4 -->
      <li style="padding-bottom: 0.5em"><a name="q4"></a>
      <p><b>The upgrade failed; what do I do?</b></p>
<!-- A4 -->
      <p>Unfortunately, this is not only possible, it is highly probable.  There are many possible
        valid GNOME configurations, and even more invalid starting points.  If the script fails,
	follow the instructions in the error message to let the FreeBSD GNOME team know about the
	failure.</p>

      <p>The majority of build failures will be dependency-related issues.  One simple way to resolve
        the problem is to remove the offending port, re-run <tt>gnome_upgrade.sh</tt>, and then
	reinstall the port when the upgrade process is complete.  In
	order to avoid having to build everything again, you can pass
	the <tt>-restart</tt> flag to <tt>gnome_upgrade.sh</tt> to
	resume a failed build.</p>
      </li>

<!-- Q5 -->
      <li style="padding-bottom: 0.5em"><a name="q5"></a>
      <p><b>List of GNOME &gnomever; problems and their solutions</b></p>
<!-- A5 -->
      <p>Although GNOME &gnomever; is certainly the best release to date (of course), there are
	    a couple regressions that slipped in, both in the GNOME code and in its implementation
		within FreeBSD.  Some of the more visible issues are:</p>

      <p>There are currently no known FreeBSD-specific issues with
	&gnomever;.  See <a
	href="http://www.gnome.org/start/2.12/notes/en/rnknownissues.html">
	http://www.gnome.org/start/2.12/notes/en/rnknownissues.html</a>
	for the general list of GNOME &gnomever; known issues.</p>

      </li>

<!-- Q6 -->
      <li style="padding-bottom: 0.5em"><a name="q6"></a>
      <p><b>I have found a bug; whom should I alert?</b></p>
<!-- A6 -->
      <p>Please read the FreeBSD GNOME Project's
        <a href="http://www.FreeBSD.org/gnome/docs/bugging.html">documentation on reporting bugs</a>.
      </p>
      </li>

<!-- Q7 -->
      <li style="padding-bottom: 0.5em"><a name="q7"></a>
      <p><b>I want the fame and glory of being part of the FreeBSD GNOME team!
	    What can I do to participate?</b></p>
<!-- A7 -->
      <p>Please read our list of <a href="http://www.FreeBSD.org/gnome/docs/volunteer.html">ways
        to get involved</a>!
      </p>
      </li>
    </ol>

  &footer;
</body>
</html>
