Welcome to the GIMP Developer wiki!
What is GIMP?
GIMP is the GNU Image Manipulation Program. It is freely distributed software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
What is this Wiki for?
On this wiki you'll find resources on GIMP development and hacking, and some frequently asked question like how to report bugs. This wiki will also include tutorials about writing extensions for GIMP, and will include useful information on further extending GIMP. Sometimes, developers may use it for design drafts and such things as well.
Whose is it?
This wiki is currently maintained by some GIMP developers, so if you have any comments, feel free to contact LightningIsMyName or Alexia_Death via the the GIMP IRC (irc://irc.gimp.org/#gimp)
How do I get a user account?
Contact LightningIsMyName at the GIMP IRC (irc://irc.gimp.org/#gimp) or by email (LightningIsMyName at gmail dot com). He is available on IRC usually several hours each day :) Only if not possible, try to contact Alexia_Death, mitch, nomis, prokoudine, schumaml or scl on the GIMP IRC.
Currently existing namespaces are
- Hacking for hacking related pages,
- Users for user guides and the like,
- Specs for attempts at writing specs,
- Mindstorm for idea generation and planning.
Lets try to stick to these. What you have in your user space is your own business :)
- Release for release related pages,
Information here is dedicated to all GIMP wiki readers.
- Roadmap — what features are planned in the future
- Documentation:Main – Coordination of the user manual and documentation efforts
- Users:Tips - A collection of useful tips about using GIMP. Some are included in the official tips, and some should be considered for inclusion.
- Glossary - Terms related to GIMP development
- Specifications] Feature specifications by the interaction architect Peter Sikking.
- GIMP UI Redesign]
- GIMP UI Brainstorm
- GIMP UI Blog by Peter Sikking
Hot topics and/or very relevant topics at this time
Currently our main priority is porting as much of GIMP to GEGL as possible. Finalizing the switch is the prerequisite for starting the work on major new features such as non-destructive editing or layer effects.
- Hacking:Porting_filters_to_GEGL — the progress of moving to a new image processing core
- Hacking:Porting file loaders/exporters to GIO - the progress of moving the file loaders/exporters to the GIO library
- Specs:UI Theme - the progress, drafts and discussion about another GIMP UI theme
- Specs:Action Search Dialog — Action Search dialog (aka "TITo")
- Hacking:Merging lisanet.de fork — Let's merge external patches of this release for OSX into GIMP.
Google Summer of Code
We often participate in Google Summer of Code program. It's a great source of new dedicated contributors.
- Hacking:GSoC - Information for potential students
- Hacking:GSoC/2013/Ideas - Ideas for GSoC 2013
- Hacking:GSoC/Future/Ideas - Ideas for future GSoC-s
- Hacking:GSOC/Archive - GIMP and GSoC in the past (projects, ideas, history)
Information here is public and especially meant to assist developers.
Introduction for newly joined developers
Here is a partial list of pages in the wiki (this will be here until the wiki is more organized):
More developer information
- Developer FAQ
- Hacking:API documentation
- Hacking:Problems and solutions
- Hacking:Netbeans - Using the Netbeans IDE for working on GIMP
- Hacking:Patches - Submitting patches to GIMP
- Hacking:Source Tree - Finding your way inside GIMP's source tree
- Hacking:pdbgen - How to use the pdbgen tool, for adding new PDB procedures to GIMP
- Hacking:Building - This page explains common things you should know before compiling GIMP
- Hacking:Plugins - How to write a GIMP plug-in
- Mindstorm:Misc TODO's - Ideas that were raised in the IRC/mailing list for things that can/should be done/improved in gimp
- Hacking:Code Snippets - Root page for various GIMP related code snippets
- Hacking:WarpTool/UI design info - Information for the UI design of the Warp tool
- GIMP and standards
Developer meeting logs, agendas, etc. Meetings are usually arranged by LightningIsMyName, and they take place once in every two weeks, on Monday at 10:00 PM, Central Europe Timezone (usually, CET = GMT+1). A mail should be sent to the mailing list before each meeting to discuss the agenda, and after every meeting with a link to the meeting page.
- GIMPCon 2000
- GIMPCon 2003
- GIMPCon 2004
- GIMPCon 2006
- Hacking:LGM_2007 Libre Graphics Meeting, Montréal, Canada, 2007
- Hacking:LGM_2008 Libre Graphics Meeting, Wrocław, Poland, 2008
- Hacking:LGM_2009 Libre Graphics Meeting, Montréal, Canada, 2009
- Hacking:LGM_2010 Libre Graphics Meeting, Brussels, Belgium, 2010
- Hacking:LGM_2011 Libre Graphics Meeting, Montréal, Canada, 2011
- Hacking:Dev_Meeting_28_Feb_2011 - First developer meeting!
- Hacking:Dev_Meeting_14_Mar_2011 - Done!
- Hacking:Dev_Meeting_28_Mar_2011 - Agenda is up!
- Hacking:LGM_2012 Libre Graphics Meeting, Vienna, Austria, 2012
- Hacking:LGM_2013 Libre Graphics Meeting, Madrid, Spain, 2013
- Hacking:LGM_2014 Libre Graphics Meeting, Leipzig, Germany, 2014
Information here is public and especially meant to assist build maintainers and testers.