<html>

<head>
<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8">
<title>Setup Guide</title>

<style type="text/css">
h2 { border: 0 !important; }
#doc-related { background: #ecf2fd; width: 200px; float: right; margin: .8em 0 0 1em; padding: .5em; }
#doc-related p { font-size: .8em; }
#doc-get-tbl { }
#doc-get-tbl td { width: 220px; border-right: 10px solid #ffffff; }
#doc-get-tbl td a:link, #doc-get-tbl td a:visited, #doc-get-tbl td a:hover { font-weight: bold; font-size: 16px; text-decoration: none; background: #ecf2fd; display: block; height: 60px; padding: 10px; }
#doc-cont-tbl { }
#doc-cont-tbl td { background: #ecf2fd; width: 200px; height: 80px; border-right: 10px solid #ffffff; padding: 10px; }
#doc-cont-tbl td span { font-weight: bold; font-size: 16px; }
</style>
</head>

<body>
<h1>Setup Guide</h1>
<p>Select the version that applies to your computer. You are probably looking for the latest guide.</p>

<div id="doc-related">
<p><b>Related documentation</b></p>
<p>The following books provide additional information around the areas provided in this book:<br/>
<br/>
<i><a href="http://documentation.openoffice.org/manuals/userguide3/0100GS3-GettingStartedOOo3.pdf">OpenOffice.org Getting Started Guide</a></i><br/>
<br/>
<i><a href="http://wiki.services.openoffice.org/wiki/Documentation/Administration_Guide">OpenOffice.org Administration Guide</a></i><br/>
<br/>
<i><a href="http://wiki.services.openoffice.org/wiki/Documentation/FAQ/Installation">OpenOffice.org FAQ Installation</a></i><br/>
<br/>
<i><a href="http://installation.openoffice.org/Java_GUI_Installer_Quick_Guide.odt">Java GUI Installer Quick Guide</a></i></p>
</div>

<h2>Setup Guide 3</h2>
<p>The OpenOffice.org 3 Setup Guide describe how to install, uninstall and configure OpenOffice.org on different systems. The guide is written for users and administrators who are familiar with the systems which they are working with.</p>

<table cellspacing="0" cellpadding="0" id="doc-get-tbl">
	<tr>
		<td><a href="3/en/Setup_Guide_A4.pdf" title="PDF version of the Setup Guide.">PDF (A4)</a></td>
		<td><a href="3/en/Setup_Guide.pdf" title="PDF version of the Setup Guide.">PDF (letter)</a></td>
		<td><a href="http://documentation.openoffice.org/source/browse/documentation/www/setup_guide3/en/" title="Source version of the Setup Guide.">The Source</a></td>
	</tr>
</table>

<h2>Setup Guide 2</h2>
<p>This guide covers previous OpenOffice.org versions 2.0 to 2.4.1.</p>

<table cellspacing="0" cellpadding="0" id="doc-get-tbl">
	<tr>
		<td><a href="2.x/en/SETUP_GUIDE.pdf" title="PDF version of the Setup Guide.">PDF (letter)</a></td>
		<td><a href="2.x/en/SETUP_GUIDE_A4.pdf" title="PDF version of the Setup Guide.">PDF (A4)</a></td>
		<td><a href="http://documentation.openoffice.org/source/browse/documentation/www/setup_guide2/2.x/en/" title="Source version of the Setup Guide">The Source</a></td>
	</tr>
</table>

<h2>Contribute</h2>
<table cellspacing="0" cellpadding="0" id="doc-cont-tbl">
	<tr>
		<td><span>Discuss!</span><br/>Check if others agree with your idea on the dev mailing list.</td>
		<td><span>Submit!</span><br/>Submit your changes to the <a href="http://documentation.openoffice.org/issues/show_bug.cgi?id=102393">issue</a>.</td>
		<td><span>Be proud!</span><br/>See how others can benefit from your contribution!</td>
	</tr>
</table>
		
<p>The work for this documentation is discussed on the dev mailing list. See the page about <a href="http://documentation.openoffice.org/servlets/ProjectMailingListList">mailing lists</a> for more information. Check with the others on the list if they agree that the idea wanted. When agreed, get the latest version from the <a href="http://documentation.openoffice.org/issues/show_bug.cgi?id=102393">issue</a>, make the changes, and submit your changes to the issue as an attachment. Afterwards, be proud to have helped the documentation team!</p>

<h2>Translated versions</h2>
<p>See our documentation page at <a href="http://documentation.openoffice.org/">http://documentation.openoffice.org/</a>.</p>

</body>

</html>