# Catalog Index Manager Dialog

Oomph manages the catalog indices that are available for use in the Eclipse installer and in Eclipse applications. A catalog index is a container for product and project catalogs. You are likely familiar with the default index which is the so-called setup archive located at https://www.eclipse.org/setups/setups.zip. If you use an index authored by a third party and hosted at a different location, this index location will also be managed by Oomph. The Catalog Index Manager dialog provides access to every index you've ever used on this machine. You can use it to assign your own label to an index in order to tailor what is displayed in menus and drop-downs displaying that index.

Indices are managed as XMI resources, namely as `indices.xmi`. There is a global `indices.xmi` stored in the home folder, i.e., in `~/.eclipse/org.eclipse.oomph.setup/indices.xmi`. Each Eclipse application, including the Eclipse Installer, also maintains a local `indices.xmi` in the configuration folder of that application's installation folder, i.e., in `configuration/org.eclipse.oomph.setup/indices.xmi`. This flexible design allows each application to control which indices are locally available as well as the labels used for them.

The Catalog Index Manager dialog provides a scope selection drop-down to manage the indices available in both the local and the global scope. By default, only the indices in the local scope of the application are displayed, but via the drop-down, you can choose to see both those and the ones in global scope, or only the ones in the global scope. Any index displayed that is not currently in the local index will be shown with gray text. The currently active index is displayed with bold font. In the background, every index is checked for availability, i.e., whether the resource is currently accessible; any index that is not currently available is displayed with italic font.

The Catalog Index Manager dialog displays a list of indices available for the selected scope. The label can be modified via cell editing: you can either double click the index item or select it and enter F2 to activate the cell editor. In addition, you can remove an index by selecting it and clicking the Remove button. To make the changes permanent, click OK. Depending on which scope you have selected, the changes will be applied either to just the local `indices.xmi`, both the local and the global `indices.xmi`, or to just the global `indices.xmi`

The Catalog Index Manager dialog does not provide the ability to add a new index. This can be easily accomplished by dragging and dropping to the title area of the setup wizard a setup archive file, a link to a setup archive, a link to an index, i.e., to an `org.eclipse.setup` or an index file. Alternatively, you can copy any of these to the system clipboard, and apply it to the setup wizard. In the simple mode, when the system clipboard contains a setup index, the Eclipse installer's menu will display a SWITCH CATALOG INDEX item. In the advanced mode, the Product or Project page tool bar will display an additional control to apply the catalog index. That being said, if your global `indices.xmi` contains an index not yet available in your local `indices.xmi`, you can select the Local and Global scope to see those additional indices — it will be displayed with gray text — and if you hit OK at this point, it will be added to your local `indices.xmi` to make it available in your application. This is a simple way to gain access to an index added by some other application.