Gimp
gimp.orgWindows, Mac OS, LinuxA free, open source, cross-platform image editor. GIMP is a powerful tool for photo retouching, image composition, and image authoring. It is highly customizable, and supports a wide range of file formats.
- Homepage:gimp.org
- GitHub:github.com/GNOME/gimp
- Web info:web-check.xyz/check/gimp.org
Gimp Source Code
Author
Description
Read-only mirror of https://gitlab.gnome.org/GNOME/gimp
Homepage
https://gitlab.gnome.org/GNOME/gimpRepository
- LicenseOther
- Created03 Jun 12
- Primary languageC
- Size872,981 KB
- Stars6,393
- Forks887
- Watchers6,393
Language Usage
Project Health
- Last commit5 days ago
- Open issuesNone
- Latest releasesoc-2012-unified-transform-before-gsoc
Top Contributors
@mitchfoo (13993)
@ell-gh (1905)
@brunvonlope (1812)
@cmyk-student (1236)
@filmsi (604)
@muks (599)
@Wormnest (578)
@yurchor (571)
@yosh (530)
@piotrdrag (413)
@prokoudine (383)
@haaninjo (375)
@hodefoting (360)
@alexiade (327)
@lumingzh (304)
@EkaterinePapava (247)
@drawoc (247)
@jordimas (247)
@bootchk (240)
@Rodhos (203)
@tml1024 (195)
@rentaclaus (190)
@simon-budig (185)
@nielsdg (169)
@Kolbjoern-cmd (166)
@MichaelMure (149)
@ciampix (131)
@sveinki (131)
@hugok79 (130)
@dmtrs32 (110)
@nphilipp (101)
@alshopov (92)
@martymichal (90)
@novomesk (80)
@schumaml (76)
@dmustieles (75)
@sabriunal (71)
@DanielSabo (62)
@DiGro (60)
@kelemeng (57)
@alikins (55)
@tsabsch (53)
@lukaso (51)
@zerng07 (49)
@urbalazs (49)
@jernejs (48)
@lightningismyname (46)
@jsbueno (45)
@dooteo (45)
@krietvel (43)
@GabryBarbe (43)
@user062 (41)
@gpopac (41)
@khaledhosny (40)
@secarica (39)
@Cedric31 (38)
@takeshi-aihana (38)
@dankor (38)
@YolandaAlvarez (37)
@KristjanESPERANTO (36)
@kargareteli (36)
@urmatej (36)
@claudep (33)
@crayxt (32)
@houz (32)
@prescott66 (31)
@ellelstone (30)
@lb90 (30)
@lewing (30)
@mtelka (29)
@vnwildman (29)
@TiagoSantos81 (28)
@hosiet (27)
@sbdaule5 (27)
@meskobalazs (27)
@nazgul77 (27)
@yeager (26)
@SuborbitalPigeon (25)
@nishbone (24)
@mariobl (24)
@Salamandar (23)
@villesokk (23)
@aurisc4 (23)
@kcozens (23)
@onkelhatti (23)
@emintufan (23)
@luciang (22)
@Alan-Drouzig (21)
@Marv-CZ (21)
@mtrmac (21)
@cheesequake (21)
@balooii (21)
@samm-git (20)
@rupertwh (20)
@Aefgh39622 (20)
@luzpaz (19)
@programmer-ceds (19)
@kostich (18)
@pesder (18)
@askhl (17)
Recent Commits
Bruno Lopes(03 Sept 26)
app/widgets: Fix offset on dockables DnD Closes: #12275
Alx Sa(02 Sept 26)
plug-ins: Export rasterized text correctly in PDF When determining how we should export text layers, we only checked if a layer was a text layer. A rasterized text layer is still considered a text layer, so all raster changes were always discarded unless you enabled the option to export all text layers as rasters, which might not be the desired behavior. This patch adds a check for if the text layer is rasterized before rendering it as a pure text layer. Note: In the future, we'll need to update drawText to also handle text transforms once they're non-destructive.
Ekaterine Papava(02 Sept 26)
po: Update Georgian translation
Bruno Lopes(01 Sept 26)
build/linux: Sync with Flathub manifest
Bruno Lopes(01 Sept 26)
tools: Add support to macOS 11 and earlier SDKs on defcheck Ported from: https://gitlab.gnome.org/GNOME/babl/-/commit/b12c5e85a69f05637dcda84acfbd43bc832801e3
Bruno Lopes(31 Aug 26)
app/display: Fix overwhelming warning about negative dimensions on macOS Attaching lldb showed that [GdkQuartzView updateLayer] is being called before the size is allocated. Let's alocate after that to fix that timing. That may explain/fix #13203, where the glitch disappears after resizing. This code is similar to what we do on GimpOverlay widgets.
Alx Sa(31 Aug 26)
plug-ins: Set PDF export dialog max width We had set the Missing Fonts label to wrap. However, because there was no maximum width set, it didn't actually do it. This patch adds an arbitrary (but common in similar dialogs in GIMP) maximum width of 80 characters to enable the line wrap setting to actually wrap.
Bruno Lopes(31 Aug 26)
app, libgimpwidgets: gtk_drag_set_icon_widget is no-op on macOS This fixes a runtime warning every time we make a DnD.
v4vansh(15 Apr 26)
app: Remove unnecessary Revert Rasterize prompt
Bruno Lopes(30 Aug 26)
app: Add accent color support to System theme on Windows and macOS On Linux, this is unneded since the accent color derives from the theme, which is the one the user can easily change (e.g. on Ubuntu and Linux Mint). On Windows and macOS, however, since the theme is always Adwaita, we need to retrieve the color from the OS then override Adwaita blue. This helps making the theme feel more native, without the baked blue. If some thinkerer change the system theme on Win/Mac, this will not run.
Alx Sa(30 Aug 26)
plug-ins: Simplify Sketchbook TIFF group loading Resolves #16412 The Sketchbook TIFF metadata contains a value that indicates whether the layer is a group or regular raster layer. While this value is marked as being something different in the unofficial documentation, it has been observed in both sample files and files output by a trial version of Sketchbook. Therefore, we can simplify the group layer creation code to just use this value to determine groups. Then, a tattoo value is set so we can use gimp-image-get-layer-by-tattoo to store the layer in the correct group.
Jehan(30 Aug 26)
app: fix a comment after improved controllerrc migration. My previous commit replaced the migration rule for GimpControllerMouse removal as well, added in commit a9dce982a6. The full controller rule will now be cleanly removed at config migration. That makes the preparatory commit 57f8e233f7 not absolutely necessary anymore, since we now have better migration code, so I hesitated reverting it. After further thinking, I decided to keep it, because it still removes a case where one can have GIMP crash. You could fabricate a controllerrc with a (GimpControllerInfo) not containing a (controller) line, which would not fail the parsing, but the controller object would be NULL. This would still cleanly sanitize such a case (and therefore repair the controllerrc too by deleting the bogus module, since the file is rewritten at exit).
Jehan(30 Aug 26)
Issue #16520: ignore ControllerMidi controller at migration on macOS.
Jehan(30 Aug 26)
app: add a selected-drawables-changed signal to GimpImage. Per my previous commit, this is the better fix to #16105. This signal will be automatically emitted when layers or channels change, but also when the "edit-mask-changed" signal of any selected layer is emitted (even if the "selected-layers-changed" of the image is itself not emitted!). And this is now the signal which the tool manager is listening to. As a consequence, it fixes a new bug (so !2747 was not enough), because we could actually reproduce the same crash as #16105, but instead of switching from a layer and its layer mask, by switching from a named channel to another one (all the other steps are the same). Since the old code was looking at selected-layers-changed, when switching from a layer to another or from a layer to a channel (and vice-versa), the signal would be properly triggered. But not from a channel to a channel. With this new code, we look at any kind of drawable selection change (layer, layer mask and channel).
Jehan(30 Aug 26)
app: rename gimp_image_active_drawable_changed() and cleanup. The function was triggering the "selected-layers-changed" signal, so it should be named accordingly. This being said, it is true that what this code was really trying to do was to signal a selected **drawable** change, since the selected layers did not change. The code from MR !2747 is indeed only working thanks to a side effect, because the tool manager is listening to this signal, though in the end, the transform tool checks the actual selected drawables (which may be layers, channels or layer masks). I also take the opportunity of this change to re-align the whole gimpimage.h header.
kaushik_B(28 Jul 26)
app/core: fix crash in transform tools when swapping to layer mask switching from layer to layer masks does not halt already active transform tools and initilizes again, causing segfault. Now after layer mask swap, we emit a image selected_layers_changed signal that treats a mask switch as layer switch and preserves layer switch behaviour. added a new wrapper function, exposed through gimpimage.h and calling it in gimplayer.c on mask switch. Fixes #16105
Jehan(30 Aug 26)
app: better reimplementation of conditions for edit-cut action. I am creating gimp_item_is_writable() which will look recursively not only the content lock recursively, but also if an item is non-raster (and not rasterized), also recursively (since cutting a group will cut all children too which should not be possible with non-raster items, unless rasterized). Now cutting in a group will only work: - If all children (at every level) have no content lock; - If all children are raster. … unless there is no selection! When there is no selection, the full items are indeed taken away (and possibly moved elsewhere on a future paste), yet the content is left untouched.
YOSHIDA Shigeto(30 Aug 26)
po: Update Japanese translation
Bruno Lopes(30 Aug 26)
app/dialogs: Make clear which GTK system theme is being used This is to avoid confusion from old GTK2 users (#10632), mainly Windows and macOS users, who may wrongly think that the "System" theme is draw by Win32 or Cocoa, which is not. This is also to avoid expections from new GTK3 users (#14023). We can not support all kind of GTK3 themes, mainly non-Adwaita. Finally, this helps a lot debugging system theme leaks. Reporters can now easly say which theme they are using.
Bruno Lopes(29 Aug 26)
app/gui: Fix splash screen showing title bar on KDE
Jehan(29 Aug 26)
app: further fixing MR !2340. The patch was wrong in how it was trying to decide if a group layer was content-locked: - First it was only looking 1 level under selected layers, not recursing. - Second the break case was now wrong. - Last the variable should have been renamed. A better implementation is to implement is_content_locked() similarly to is_position_locked() for GimpGroupLayer. Browsing through current usage of gimp_item_is_content_locked(), I think it won't break other uses of this test.
Bruno Lopes(29 Aug 26)
app/widgets: Fix main window losing focus after using Tab on macOS Windows does not need that. Linux/Wayland will be adressed later since it is the hardest one.
Jehan(29 Aug 26)
app: fix copying from group layers when some child is outside selection. Discovered while testing !2340, though it was already happening when copying group layers (and now when cutting them). We should not try to get all layers, but only root-level layers. Clearing and resizing a group layer applies to all its children.
cheesequake(22 Jun 25)
app: refactor code for 'cut' operation, allow cut for layer groups This patch aims to reduce the code for 'cut', while enabling cutting layer groups. Also a change in how 'have_writable' is calculated. Layer group items are checked individually for content lock. If even 1 item has a content lock, the entire layer group cannot be cut. If many items are selected and any 1 has content lock, none of the items can be cut. Issue #14074 is resolved for 'copy', this patch resolves 'cut' as well.
Bruno Lopes(29 Aug 26)
libgimpwidgets: Respect SSD title bar and action buttons order on KDE Closes: #11606 While we are not oblied to respect the UX paradigms of all DEs, KDE is not a random DE, it is the second most used AFAIK. I don't use it as my primary DE, but find pretty reasonable to fix. Tested and confirm it works so now GIMP behaves like on 2.10 for KDE.
Bruno Lopes(29 Aug 26)
app/widgets: Fix wrong/tall minimum height of toolbox Closes: #7454
balooii balooii(14 Mar 26)
app/widgets: Fix GimpPopup leaving stale GDK seat grab on Wayland On Wayland, the GDK seat grab established in gimp_popup_map_event() must be explicitly released with gdk_seat_ungrab() when the popup is closed. Without this, the grab persists even if the popup window got destroyed and therefore blocking all input events so GIMP appears to be frozen. Relates #11977
balooii balooii(14 Mar 26)
app/widgets: Fix GimpPopup close on click for Wayland On Wayland, the routed button event seems to be in the coordiate space of the surface the mouse pointer is currently over not in the popups coord space. Fix by using root/origin/toplevel coordinate space which should work on all gdk backends. Relates #11977
Jehan(29 Aug 26)
NEWS: update.
Harsh Verma(25 Aug 26)
app: format copied version info as markdown the Copy Button now hands the clipboard a markdown bullet list with keys bolded, so pasted bug reports render bullet instead of dumping raw text. the on-screen box still shows plain lines.
Gimp Security
Gimp Website
Website
GIMP - GNU Image Manipulation Program
GIMP - The GNU Image Manipulation Program: The Free and Open Source Image Editor
Redirects
Does not redirect
Security Checks
All 65 security checks passed
Server Details
- IP Address151.101.1.91
- LocationSan Francisco,California,United States of America,NA
- ISPFastly Inc.
- ASNAS54113
Associated Countries
US
NL
DE
Safety Score
Website marked as safe
100%
Blacklist Check
www.gimp.org was found on 0 blacklists
- AntiSocial Blacklist
- Artists Against 419
- Badbitcoin
- Bambenek Consulting
- CERT Polska
- CoinBlockerLists
- CRDF
- CryptoScamDB
- EtherAddressLookup
- EtherScamDB
- Fake Website Buster
- MetaMask EthPhishing
- NABP Not Recommended Sites
- OpenPhish
- PetScams
- PhishFeed
- PhishFort
- Phishing.Database
- PhishStats
- PhishTank
- Phishunt
- RPiList Not Serious
- Scam.Directory
- SecureReload Phishing List
- Spam404
- StopGunScams
- Suspicious Hosting IP
- ThreatFox
- ThreatLog
- TweetFeed
- URLhaus
- ViriBack C2 Tracker
Website Preview
Gimp Docker
Container Info
Gimp
[GIMP](https://www.gimp.org/) is a free and open-source raster graphics editor used for image manipulation (retouching) and image editing, free-form drawing, transcoding between different image file formats, and more specialized tasks. It is extensible by means of plugins, and scriptable.
View on DockerHub
linuxserver/gimp:latestRun Command
docker run -d \
-p 3000:3000/tcp \
-p 3001:3001/tcp \
-e PUID=${PUID} \
-e PGID=${PGID} \
-e TZ=${TZ} \
-v /srv/lsio/gimp/config:/config \
--restart=unless-stopped \
linuxserver/gimp:latestCompose File
version: 3.8
services:
gimp:
image: "linuxserver/gimp:latest"
ports:
- "3000:3000/tcp"
- "3001:3001/tcp"
environment:
PUID: 1000
PGID: 1000
TZ: Etc/UTC
volumes:
- "/srv/lsio/gimp/config:/config"
restart: unless-stoppedEnvironment Variables
- Var NameDefault
- PUID1000
- PGID1000
- TZEtc/UTC
Port List
- 3000:3000/tcp
- 3001:3001/tcp
Volume Mounting
- Container PathHost Bind
- /config/srv/lsio/gimp/config
Gimp Reviews
More Image Editors
A photography workflow application (similar to Adbobe Lightroom) Includes a non-destructive raw developer for raw images and managing digital negatives.
A free, open source, professional vector graphics editor. It is a powerful tool for creating illustrations, icons, logos, diagrams, maps, and web graphics.
Digital painting application. Free and open source (backed by KDE), with cross-platform support, Krita is popular among both professional and amateur artists due to it's comprehensive feature set, and intuitive UI
A more advanced take on Microsoft Paint. Suitable for basic image editing, with support for basic layers, unlimited undo/redo, and extendable via plugins
A free online image editor, for both raster and vector graphics, with a very wide range of supported formats
Not Open SourceA free web-based image editor, with a modern UI. Also offers premium/paid features, such as AI-powered generation, touchup and editing
Not Open SourceA powerful raw photo processing system and editor, for non-destructive editing of raw digital photos
About the Data: Gimp
Change History
- Added #220
- Amended (followWith)
Edit Gimp Data
You can edit Gimp's entry in this section of awesome-privacy.yml by submitting a PR to our GitHub repo.
Note that some of the information shown above has been aggregated from external
sources, a list of these can be found data documentation.
Origin Data
Modify Data
API
You can access Gimp's data programmatically via our API. Simply make a GET request to:
https://api.awesome-privacy.xyz/v1/services/gimpThe REST API is free, no-auth and CORS-enabled. To learn more, view the API Docs or read the API Usage Guide.
Share Gimp
Help your friends compare Image Editors, and pick privacy-respecting software and services.
Share Gimp and Awesome Privacy with your network!
