<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
<title>Overview (Oomph Utilities Documentation)</title>

<link rel="stylesheet" href="book.css">

<noscript></noscript>
<script type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="Overview (Oomph Utilities Documentation)";
    }
}
</script>
</head>

<body bgcolor="white" onload="windowTitle();">
<!-- <div class="help_breadcrumbs breadcrumbs_top"><a href="" title="Oomph Utilities Documentation">Oomph Utilities Documentation</a></div> -->

<table border="0">
	<tr>
		<td width="100%"><h1>Overview</h1></td>
		<td align="right" valign="middle" nowrap>&nbsp;<a href="reference/index.html" title="Forward to Reference"><img src="../images/forward.png" border="0"></a></td>
	</tr>
</table>
<p>
 Oomph Utilities provide support for installing Eclipse applications and for provisioning Eclipse workspaces.
 </p>
 <p>
 <p>
<table border="0">
<tr><td><img src="../images/article.gif">&nbsp;</td><td class="te" colspan="4"><a href="" title="Article in Oomph Utilities Documentation">Overview</a></td></tr>
<tr><td><img src="../images/category.gif">&nbsp;</td><td class="te" colspan="4"><a href="reference/index.html" title="Category in Oomph Utilities Documentation">Reference</a></td></tr>
<tr><td></td><td><img src="../images/category.gif">&nbsp;</td><td class="te" colspan="3"><a href="../javadoc/overview-summary.html" title="Category in Oomph Utilities Documentation">API Reference</a></td></tr>
<tr><td></td><td><img src="../images/category.gif">&nbsp;</td><td class="te" colspan="3"><a href="reference/schema/index.html" title="Category in Oomph Utilities Documentation">Extension Point Reference</a></td></tr>
<tr><td><img src="../images/category.gif">&nbsp;</td><td class="te" colspan="4"><a href="online/index.html" title="Category in Oomph Utilities Documentation">Online Docs</a></td></tr>
<tr><td></td><td><img src="../images/article.gif">&nbsp;</td><td class="te" colspan="3"><a href="http://www.eclipse.org/oomph" title="Article in Oomph Utilities Documentation">Homepage</a></td></tr>
<tr><td></td><td><img src="../images/article.gif">&nbsp;</td><td class="te" colspan="3"><a href="http://wiki.eclipse.org/Eclipse_Installer" title="Article in Oomph Utilities Documentation">Wiki</a></td></tr>
<tr><td><img src="../images/article.gif">&nbsp;</td><td class="te" colspan="4"><a href="../about.html" title="Article in Oomph Utilities Documentation">Legal</a></td></tr>
</table>
</p>

 </p>

<p align="right">
&nbsp;<a href="reference/index.html" title="Forward to Reference"><img src="../images/forward.png" border="0"></a></p>
<!-- <div class="help_breadcrumbs breadcrumbs_bottom"><a href="" title="Oomph Utilities Documentation">Oomph Utilities Documentation</a></div> -->

<div class="copyright">Copyright (c) 2014 Eike Stepper (Loehne, Germany) and others.<br>All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v2.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v20.html</div>
</body>
</html>
