Eclipse Oomph Installer
What is Oomph?
Eclipse Oomph is an installer and updater for Eclipse development environments. See what The Free Dictionary says.
Non-exhaustive list of features:
- Provisioning correct set of plugins in the Eclipse IDE.
- Binding Git repos (incl. personal Gerrit push URL).
- Checking out projects.
- Setting workspace preferences.
- Configuring dynamic working sets.
- Keeping project preferences files in sync.
The configuration is model driven, with the possibility to customize a lot for each project, each branch, each user…
Authoring Setup Models
Please read Eclipse Oomph Authoring.
Getting in Touch
First browse the FAQ section below.
As a user you should post your questions and comments to the public forum:
- Web: http://www.eclipse.org/forums/eclipse.oomph
- Newsgroup: news://news.eclipse.org:119/eclipse.oomph
You can also monitor the developer mailing list or discuss development topics:
- Archive: https://dev.eclipse.org/mhonarc/lists/oomph-dev
- Mail: mailto:email@example.com
- Newsgroup: news://news.gmane.org:119/gmane.comp.ide.eclipse.oomph.devel
If you encounter trouble or miss a feature please:
- Search for existing bugzillas to avoid duplication.
- You can watch the
firstname.lastname@example.org to be notified about new bugzillas.
- If nothing else helps kindly submit a new bug report or feature request.
- Creating custom installations with Oomph a blog post by Stefan Winkler.
- Shoes for the Shoemaker a blog post by Ed Merks about the setup tool.
- Emf-dev - CDO Releng tools - setup tool?
- Quicker start guide for Oomph a blog post by Philipp Hauer and Alexander Nittka.
- The Oomph project proposal.
- The Oomph Contribution Guide
Frequently Asked Questions
How can I change values I've entered in the prompt dialog (e.g., my "git.user.id") once that dialog is gone?
In your installed IDE there should be button with a blue person in the main toolbar. Please click it to open your setup preferences. All prompted values are stored as VariableTasks in there and you're able to change them. (see Bug 428268)
How can I use a SSH private key with a custom file name (different from "id_dsa,id_rsa")?
In your setup preferences (see above) you have to add an "Eclipse Preferences" task to set the custom file name. The key of this node should be "/instance/org.eclipse.jsch.core/PRIVATEKEY", its value should be the name (not the path) of your private key file (e.g. "eclipse.ppk").
How can I use a custom SSH configuration directory?
In your setup preferences (see above) you have to add an "Eclipse Preferences" task to set the custom file name. The key of this node should be "/bundle_defaults/org.eclipse.jsch.core/SSH2HOME", its value should be the fully qualified path to your SSH configuration directory.
How can I add my own setup files?
In order to get your own setup file included, simply copy the respective *.setup file next to the Setup executable. In the case of OS X one has to manually copy this file into "Setup.app/Contents/Mac OS".
Oomph seems to update my IDE. Should I still use standard "Check For Updates..."?
You can. But consider these differences between Oomph and standard p2:
- p2 does not record a version range for the installed units so it will update to the hihgest available version, which might not be what you want. The "Diagram Editor for Ecore" is an example where the 2.x version is not able to load diagrams created with the 1.x version. Oomph in contrast uses a p2 director that is modified to understand and respect the version ranges as specified in the setup models.
- p2 uses the set of currently enabled p2 repositories for the update, which is often not immediately obvious and can change by just trying out new URLs in the "Install New Software" dialog. Oomph in contrast uses exactly the set of repositories that's specified in the setup models.
- p2 will always ask you to accept licenses, whether you've already accepted them before or not. Oomph in contrast can remember the accepted licenses and won't bother you again. As this happens based on license UUIDs this approach is even safer because it prevents you from accidentally accept licenses with content that's just very similar but different (unintentionally or on purpose) from ones you've already accepted before.