Go to file
Jehan 36cc6c6e8a configure, libgimp: disable introspection when building libgimp with sanitizer.
The initial issue was that 3 leaks were detected when running the "DumpCompiler"
during g-ir-scanner phase. The failing command was apparently about running some
temp binary, which looks like would be called the DumpCompiler in g-ir-scanner
code:

> libgimp/tmp-introspectn8jg64to/Gimp-3.0 --introspect-dump=libgimp/tmp-introspectn8jg64to/functions.txt,libgimp/tmp-introspectn8jg64to/dump.xml

My first fix attempt was to try and play with build/link FLAGS so that this temp
binary is built without sanitizer. But the problem when I did this was that
libgimp itself is sanitized, so we are mixing a sanitized lib with a
non-sanitized binary:

> ASan runtime does not come first in initial library list; you should either link runtime to your application or manually preload it with LD_PRELOAD.

So it looks like I could still solve this with tweaking LD_PRELOAD, cf. this
sanitizer FAQ: https://github.com/google/sanitizers/wiki/AddressSanitizer#faq

Nevertheless it proved complex to do it right while not interfering with other
parts of the build and I found out that I risk encountering more issues down the
road with GIR + sanitizer:
https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/375

So I've decided that I didn't want to waste too much time on this and simply
disable introspection when sanitizing, as I guess what we care the most to
diagnose when sanitizing is core code anyway.
2023-02-22 12:23:26 +01:00
.gitlab .gitlab: search common git ancestor with `mr-origin` remote. 2022-01-19 22:22:40 +01:00
app app: don't draw the drop zone, just nothing when converting. 2023-02-19 18:54:46 +01:00
app-tools Cleanup meson symlinks 2022-08-31 13:10:13 +00:00
build flatpak: upgrade libjxl, highway, libde265 2023-02-13 17:59:14 +00:00
cursors cursors: make the "single dot" cursor actually slightly bigger and B&W. 2022-03-13 16:04:40 +01:00
data data, devel-docs, gitlab-ci: improve the docs tarball. 2022-09-09 20:32:27 +02:00
desktop app, desktop: prepare AppData <release/> item for upcoming GIMP 2.99.14. 2022-11-09 15:31:39 +01:00
devel-docs devel-docs: move debug-plug-ins.txt to gimp-web-devel. 2023-01-26 17:08:56 +01:00
docs Issue #8546: Meson options fixes 2022-08-29 13:41:08 +00:00
etc app, docs, etc: "Default" is (as the name implies) the new default theme. 2022-08-21 01:03:30 +02:00
extensions goat-exercise: fix ability to load js 2022-10-04 18:02:38 +01:00
icons app, icons, libgimpwidgets: add "distribute with evenly gaps" options. 2022-11-08 23:48:32 +01:00
libgimp libgimp: fix a memory leak. 2023-02-16 20:59:33 +01:00
libgimpbase libgimpbase: fix annotations. 2023-01-24 19:59:40 +01:00
libgimpcolor core: Add simulation intent and BPC to GimpImage 2022-08-13 19:39:47 +00:00
libgimpconfig libgimp: API refactor GUI for GimpResource 2023-01-14 16:38:40 +00:00
libgimpmath libgimpmath: Fix some vector gi-docgen annotations 2021-12-28 23:54:31 +01:00
libgimpmodule docs: Migrate some gtk-doc comments to gi-docgen 2021-12-29 11:21:19 +01:00
libgimpthumb Issue #8145: meson: generation of '*-enums.c' files. 2022-08-01 19:59:53 +02:00
libgimpwidgets Issue #9147: freeze when switching from multi-window to single window mode. 2023-02-16 22:26:17 +01:00
m4macros Migrate from intltool to gettext 2022-06-25 10:25:49 +02:00
menus app, menus, pdb: new "Paste as Single Layer( in Place)?" actions. 2022-11-12 22:34:51 +01:00
modules Use GetModuleHandleW () 2023-01-24 14:48:44 +00:00
pdb app, libgimp, pdb: minor fixes. 2023-02-14 17:18:38 +01:00
plug-ins plug-ins: Port ImageMap to GAction/GMenuModel 2023-02-16 04:16:11 +00:00
po Update Bulgarian translation 2023-02-21 10:27:03 +00:00
po-libgimp Update Greek translation 2023-02-22 10:01:06 +02:00
po-plug-ins Update Greek translation 2023-02-21 12:21:53 +02:00
po-python Update Turkish translation 2023-02-02 12:28:22 +00:00
po-script-fu po-script-fu: remove predator.scm from POTFILES.in. 2023-01-24 22:29:51 +01:00
po-tags Migrate from intltool to gettext 2022-06-25 10:25:49 +02:00
po-tips Update Danish translation 2023-01-03 15:13:40 +00:00
po-windows-installer Updated Greek translation 2023-02-18 21:12:47 +02:00
themes themes: Set smaller Compact theme separator width... 2023-02-14 16:50:38 +06:00
tools tools: do not sanitize build tools. It's OK if they leak a bit. 2023-02-22 10:57:36 +01:00
.clang-format clang-format: update. 2022-03-14 18:16:14 +01:00
.dir-locals.el .dir-locals.el: configure emacs to show trailing whitespace 2016-08-24 17:46:57 +02:00
.gitignore gitignore: hide various files copied by the autogen.sh step. 2022-07-07 15:39:54 +02:00
.gitlab-ci.yml build, gitlab-ci: using non-ambiguous `meson setup` syntax. 2023-01-24 15:35:30 +01:00
.kateconfig Add .kateconfig with modelines for Kate 2016-08-23 14:53:38 +02:00
AUTHORS AUTHORS: update. 2022-02-25 21:06:17 +01:00
COPYING Change a bazillion URLs to https:// 2018-07-14 14:19:27 +02:00
ChangeLog.pre-1-0 changelog split up 1998-06-07 13:54:00 +00:00
ChangeLog.pre-1-2 converted to utf-8 2004-05-10 17:45:17 +00:00
ChangeLog.pre-2-0 vte sucks 2004-05-20 02:36:11 +00:00
ChangeLog.pre-2-2 Copied current ChangeLog away and truncated it. 2004-12-19 02:55:34 +00:00
ChangeLog.pre-2-4 renamed the pre-2.4 ChangeLog 2007-10-23 23:36:17 +00:00
ChangeLog.pre-2-6 Applied changes based on official version of TinyScheme (CVS commit dated 2009-08-04 14:23:55 -04:00
ChangeLog.pre-git Applied changes based on official version of TinyScheme (CVS commit dated 2009-08-04 14:23:55 -04:00
INSTALL.in Issue #9151: link to the "Building GIMP" page of dev website in INSTALL. 2023-02-15 12:13:24 +01:00
LICENSE icons: add COPYING files for icon themes. 2022-02-09 16:31:22 +01:00
MAINTAINERS MAINTAINERS: update. 2021-04-04 16:01:48 +02:00
Makefile.am Remove old outdated data. 2022-08-02 16:33:09 +02:00
NEWS NEWS: update. 2023-02-09 14:44:36 +01:00
NEWS.pre-2-0 Misc. typos 2018-10-19 15:30:27 +00:00
NEWS.pre-2-2 Misc. typos 2018-10-19 15:30:27 +00:00
NEWS.pre-2-4 Misc. typos 2018-10-19 15:30:27 +00:00
NEWS.pre-2-6 Misc. typos 2018-10-19 15:30:27 +00:00
NEWS.pre-2-8 NEWS.pre-2-8: new file preserving the history that lead to 2.8 2015-11-22 17:30:15 +01:00
NEWS.pre-2-10 Misc. typos 2018-10-19 15:30:27 +00:00
README README: add a "Contributing" section in README. 2022-11-18 23:47:46 +01:00
README.i18n Change a bazillion URLs to https:// 2018-07-14 14:19:27 +02:00
acinclude.m4 Allow building vala plugins 2020-05-26 17:52:52 +00:00
authors.dtd authors.dtd: Update 2011-01-28 07:55:55 +01:00
authors.xml authors: update. 2022-08-21 12:24:20 +02:00
authors.xsl Also put maintainers separately in AUTHORS 2011-01-27 22:04:05 +01:00
authors4gimp-web.xsl Bug 734981 - Update maintainers and authors. 2017-10-23 23:55:22 +02:00
autogen.sh Migrate from intltool to gettext 2022-06-25 10:25:49 +02:00
configure.ac configure, libgimp: disable introspection when building libgimp with sanitizer. 2023-02-22 12:23:26 +01:00
gimp.doap gimp.doap: adding myself as maintainer in the doap file. 2021-03-28 23:46:04 +02:00
gimp.pc.in configure, gimp.pc: do no hardcode the major.minor version of GEGL. 2018-04-28 01:30:19 +02:00
gimpthumb.pc.in use GCheckSum instead of the MD5 routine from libgimpmath. 2008-03-28 16:47:38 +00:00
gimpui.pc.in Require gtk+-3.0 in gimpui-3.0.pc 2018-05-25 21:55:45 +02:00
meson.build Use ExcHndlSetLogFileNameW () 2023-01-24 14:48:44 +00:00
meson.make meson.make: Don't use backend-specific calls 2021-09-30 16:13:35 +02:00
meson_dist_script.sh meson: remove autotools-related data from the meson tarball. 2022-08-02 17:04:32 +02:00
meson_options.txt meson: improve/fix previous commit from MR !725. 2022-08-29 15:43:25 +02:00

README

                   ------------------------------
                   GNU Image Manipulation Program
                      2.99 Development Branch
                   ------------------------------

This is an unstable development release, an intermediate state on the
way to the next stable release: GIMP 3.0. GIMP 2.99 may or may not do
what you expect. Save your work early and often. If you want a stable
version, please use GIMP 2.10 instead.

If you think you found a bug in this version, please make sure that it
hasn't been reported earlier and that it is not just new stuff that is
still being worked on and obviously not quite finished yet.

If you want to hack on GIMP, please read the file devel-docs/README.md.
For detailed installation instructions, see the file INSTALL.


1. Web Resources
================

GIMP's home page is at:

	https://www.gimp.org/

Please be sure to visit this site for information, documentation,
tutorials, news, etc.  All things GIMP-ish are available from there.

The latest version of GIMP can be found at:

	https://www.gimp.org/downloads/


2. Contributing
===============

GIMP source code can be found at:

	https://gitlab.gnome.org/GNOME/gimp/

Resources for contributors:

        https://developer.gimp.org/

In particular, you may want to look in the "Core Development" section. Some
articles of particular interest for newcomers could be:

* Setting up your developer environment: https://developer.gimp.org/core/setup/
* GIMP Coding Style: https://developer.gimp.org/core/coding_style/
* Submit your first patch: https://developer.gimp.org/core/submit-patch/


3. Discussion Channels
======================

We have several discussion channels dedicated to GIMP user and
development discussion. There is more info at:

        https://www.gimp.org/discuss.html

Links to several archives of the mailing lists are included in that page.

Gimp-user-list is a mailing list dedicated to user problems, hints and
tips, discussion of cool effects, etc.  Gimp-developer-list is oriented
to GIMP core and plug-in developers.  Gimp-gui-list is for discussing
about GIMP interface to improve user experience. Most people will only
want to be subscribed to gimp-user-list. If you want to help develop
GIMP, the gimp-developer mailing list is a good starting point; if you
want to help with GUI design, the gimp-gui list is where you want to
subscribe.

Other discussion channels can be listed on this page when they are
moderated by a team member, such as forums.

Finally, for the real junkies, there are IRC channels devoted to GIMP.
On GIMPNet (a private free software oriented network) there is #gimp.
Many of the developers hang out there. Some of the GIMPNet servers are:

	irc.gimp.org:6667
	irc.us.gimp.org:6667
	irc.eu.gimp.org:6667


4. Customizing
==============

The look of GIMP's interface can be customized like any other GTK+ app
by editing files in `${XDG_CONFIG_HOME}/gtk-3.0/` (settings.ini and
gtk.css in particular) or by using "themes" (ready-made customizations).
Additionally, GIMP reads `${XDG_CONFIG_HOME}/GIMP/2.99/gimp.css` so you
can have settings that only apply to GIMP.

You can also manually change the keybindings to any of your choice by
editing: `${XDG_CONFIG_HOME}/GIMP/2.99/menurc`.


Have fun,

  Spencer Kimball
  Peter Mattis
  Federico Mena
  Manish Singh
  Sven Neumann
  Michael Natterer
  Dave Neary
  Martin Nordholts
  Jehan