- remove cve fixes which are included in this release
- remove the fix for bzip2. meson.build was improved so this is not
required anymore
- inherit bash-completion
This releases contains a lot of bugfixes. The below list is not
exhaustive.
Core:
- Font handling improvements:
* Font loading on start massively sped up.
* As an exception, Skia font family (apparently quite common on macOS)
is special-cased because it behaves weirdly and was not working with
current font handling.
* Various other fixes related to font handling.
* We now wait for fonts to be fully loaded before loading any file.
- Command Line Interface:
* Option -i / --no-interface is not shown anymore on `gimp-console`
binary (it can still be used — it does nothing there anyway —, which
allows to use the same sets of option with the GUI binary, and also
so that existing shell scripts don't break).
* Option --show-debug-menu is not hidden anymore for discoverability.
* The `gimp-3.0` executable can now run with --no-interface even when
no display is available (ex: virtual terminal with no window
manager/compositor, containers, etc.). This used to only work with
`gimp-console-3.0` executable.
- Windows:
* output CLI messages to the parent console like Linux and macOS.
* Ctrl+C signals are now correctly handled in the attached console.
* The attached console supports color too.
* Interpreters are run conditionally if running in console.
- macOS: default to "quartz" Input Method for emoji keyboard support.
- Wayland: wait before we get our first surface before listing input
devices to work around a Wayland limitation and GTK bug.
- Default "Search" feature in GTK3 is now disabled in the component
editor in the Channels dockable.
- Several fixes related to Quick Mask handling.
- Fixed some cases where config migration from GIMP 2 to GIMP 3 was
problematic.
- Several buggy undo cases were fixed.
- Several fixes related to pass-through group layers.
- Export will now be properly triggered even if no drawables are
selected (this is not a requirement anymore with GIMP 3 API).
- Path import and export respectively from and to SVG improved.
- Serialize colors in legacy GimpRGB format into a XCF when the XCF
version is older than GIMP 3 for backward compatibility.
Tools:
- Symmetry: fix initial stroke symmetry when using pixmap brushes.
- Move tool: fixed weird position jumps in some cases.
Graphical User Interface:
- Center buttons in overlay dialogs.
- Headerbar's (when titlebar and menubar are merged) button colors
now match our theme.
- Dialogs' header icon and view will now scale based on custom icon
size.
- Resize dialog: Canvas Size fill combo set to insensitive if layers
won't be resized.
- Navigation and Selection editor will now properly match the theme
(in particular, in dark mode, they won't show large bright area).
- Do not show outlines when hovering the absent "Fx" icon anymore,
which was confusing people into making it look like you could click
and interact with this empty area.
Plug-ins:
- Fixes on: OpenRaster export, TIFF import, Map Object, PDF export,
Gradient Flare, ANI export, Script-Fu, DDS export, Fractal Explorer,
PSP import, ICO import, XWD import, PSD import, WebP export, ICNS
import, Gimpressionist, JPEG 2000 import, Busy Dialog.
- Scale entries have been replaced by spin scale widgets in a bunch of
plug-ins.
- Fixed vulnerabilities: ZDI-CAN-28376, ZDI-CAN-28311, ZDI-CAN-28273,
ZDI-CAN-28158, ZDI-CAN-28232, ZDI-CAN-28265, ZDI-CAN-28530,
ZDI-CAN-28248, PSP issue 15732.
- Script-Fu improved to not initialize UI code unnecessarily (and
therefore make it unusable on systems without a display).
API:
- libgimp:
* Fixes where made in libgimp metadata object.
* Make GExiv2Metadata as parent of GimpMetadata visible to
Gobject-Introspection tools (bindings were missing this
information).
* Fixes made on: gimp_drawable_get_thumbnail(),
gimp_drawable_get_sub_thumbnail(), gimp_drawable_filter_new(),
gimp_proc_view_new(), gimp_procedure_set_sensitivity_mask(),
gimp_procedure_dialog_get_spin_scale().
* Remove thumbnail metadata before writing it on export, to make
sure we don't cary on metadata written by other software in
thumbnails.
- libgimpconfig:
* Improve error messaging on config deserialization.
* Fix gimp_config_serialize_value() when serializing file objects.
* New functions: gimp_config_get_xcf_version() and
gimp_config_set_xcf_version().
- libgimpcolor:
* gimp_color_is_perceptually_identical() docs clarified.
- libgimpbase:
* The host config directory is now shown in MSIX.
* The host config directory is now shown in flatpak.
- libgimpwidgets:
* Fixes made on: GimpLabelEntry, gimp_widget_free_native_handle().
- libgimpcolor:
* New function: gimp_cairo_surface_get_buffer()
* Deprecated function: gimp_cairo_surface_create_buffer() in favor
of gimp_cairo_surface_get_buffer().
The function implementation was also changed so that it does not
necessarily return a linear-memory backed buffer anymore (it
might, but developers should not have any expectation about this).
Build:
- Third-party binary plug-in support in the Snap backported from the
original third-party snap.
- Snap package for release is now created and submitted on a release
pipeline.
- Release URLs added to AppStream metadata.
- We do not build GEGL with Matting Levin for Windows builds anymore
because of crashes.
- Flatpak nightly builds will now show a pseudo-release visible with
`flatpak list`, showing proper version information.
- Windows installer now has a dark mode.
- Update changelog on MS Store (MSIX) releases.
- AppImage now ships with full MIDI support.
- Make it clearer that GExiv2 0.15.0 and over are incompatible
(because of API breakage).
- Improve build to ensure that the language list (shown in
Preferences) is localized during compilation. This also means that a
build machine should be set up for localization at build time when
optional language selection is enabled.
- We now require the generic C++14 standard, and not the GNU variant
anymore.
- MSVC support added.
- Various tweaks which used to be required to make packages work as
relocatable builds were dropped since babl and GEGL now have a
relocatable option working also on Linux.
- The `man` page of GIMP binaries was updated.
- The `gimp-console` binary is now shipped in the Flatpak.
- macOS pipeline added in our Gitlab CI.
- Make sure that harfbuzz is built with libgraphite2 shaper on macOS.
- Generate file associations for macOS automatically.
- A Bash completion file was added for `gimp` and `gimp-console`
binaries.
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Also update the SRC_URI. The original upstream Github repos have been
deleted. Switched to Gnome servers to fetch the sources from.
Changelog:
299.4.0:
- Remove the background-pattern (with the grid) feature.
- Fix some crashes.
- Fix GI annotation warnings.
- Translation updates.
299.3.0:
Style schemes:
- Remove GtkSourceStyleSchemeChooser interface.
- Add light-only and dark-only kinds.
- Mark classic and tango as light-only kind (so they are unsupported with dark
theme variants).
Syntax highlighting:
- New *.lang file: Nix.
For packagers:
- Build: add the 'tests' option.
Misc:
- Documentation updates and improvements.
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Also, update the SRC_URI - the original github repos have been deleted completely.
Fetch it from the Gnome servers instead.
Changelog:
* Adopt new versioning scheme (this version is a stable one).
* Move the project to: https://gitlab.gnome.org/World/gedit/libgedit-amtk
* Use GtkImageMenuItem even if deprecated.
* Build: add the 'tests' option.
* Translation updates.
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
add PACKAGECONFIG for xauth and make it dependent on x11 in DISTRO_FEATURES
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Onboard is an onscreen keyboard useful for everybody that cannot use a
hardware keyboard; for example Tablet-PC users or mobility impaired
users. It has been designed with simplicity in mind and can be used
right away without the need of any configuration, as it can read the
keyboard layout from the X server.
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
PACKAGECONFIG for wayland,nm have been removed upstream
PACKAGECONFIG for x11,xwayland have been added upstream
Add a patch to fix reproducibility in gnome-settings-daemon-src
============
Version 49.1
============
- Translation updates
Power:
- Avoid xext dependency
Xsettings:
- Build only if X11 or Xwayland are enabled
============
Version 49.0
============
- Translation updates
Power:
- Avoid polling light sensor if ambient light setting is disabled
=============
Version 49.rc
=============
- Translation updates
- Update to GNOME Session changes
Power:
- Fix check for shell-managed brightness
- Refactor light sensor enablement
A11y-settings:
- Manage Orca lifetime
===============
Version 49.beta
===============
- Translation updates
- Drop dependency on GTK4
- Add xwayland/x11 build options
Power:
- Do not treat all notifications as critical
- Let backlight auto-dimming in control of GNOME Shell
Housekeeping:
- Add new donation reminder notification
==================
Version 49.alpha.1
==================
Keyboard:
- Drop keyboard bell GSettings schema leftovers
================
Version 49.alpha
================
- Translation updates
- Update to GTK4
Power:
- Use new Mutter backlight D-Bus interface
Wacom:
- Drop support to update per-button OLED screens in Wacom
Intuos 4 model with descriptive actions. This tablet model
will still be functional, but the tiny screens besides the
pad buttons will remain blank.
============
Version 48.1
============
- Translation updates
- Cleanups and fixes
Power:
- Ensure the backlight interface signal gets emitted on startup
- Avoid using uninitialized value when restoring brightness
Sharing:
- Fixes to shutdown of sharing services
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
- update dependencies
- inherit manpages mime
- build x11 depending on DISTRO_FEATURES
- rename packageconfig man->manpages to work with manpages class
============
Version 49.0
============
- Translation updates
- Fixed build with musl libc
- Fixed some memory corruption bugs that led to gnome-session-init-worker
crashing on logout
- Fixed a memory leak in gnome-session-init-worker
- Allowed Qt apps to use the Wayland text-input protocol, instead of forcing
them to use the direct ibus integration plugin
=============
Version 49.rc
=============
- Disabled the org.freedesktop.ScreenSaver proxy service on the login screen
- Separated out the systemd-specific code from the gnome-session leader process
into a dedicated executable. This makes it easier to integrate distributions
that use alternative init systems with gnome-session (though note that this
is still a usecase we don't officially support upstream)
- Translation updates
===============
Version 49.beta
===============
- gnome-session is no longer started via a shell script, and instead all of
the necessary setup is done in C.
- gnome-session's builtin service manager has been completely removed. Service
management will now be handled entirely by the operating system's native
service manager (i.e. systemd). See the following blog post for more information:
https://blogs.gnome.org/adrianvovk/2025/06/10/gnome-systemd-dependencies
- The "fail whale" dialog has been removed
- Various unused APIs and interfaces were removed, including:
- The org.gnome.SessionManager.Client and o.g.SM.App D-Bus interfaces
- Various D-Bus APIs related to the service manager
- Various .desktop and .session file keys that were used only by the
builtin service manager
- Fallback sessions, since there's no way to fall back anymore
- The code was significantly refactored
- gnome-session now provides a gnome-session-basic-services.target, that sessions
like the GDM greeter and gnome-initial-setup can use to avoid listing all of
the basic GNOME session services (like all the gnome-settings-daemon plugins)
- The --autostart command line option was removed, and instead kiosk sessions
should set Kiosk=true in their session definition file.
- Updated GNOME's mimetype defaults to drop Evince (which was replaced with Papers)
- Translation updates
==================
Version 49.alpha.1
==================
Fix POTFILES to stop listing deleted files
Stop requiring the gnome-settings-daemon Wacom plugin, which doesn't exist anymore
Ensure that we start localsearch when starting a GNOME session via systemd
Translation updates
==================
Version 49.alpha.0
==================
Removed XSMP
Removed session restore functionality
X11 sessions are disabled by default
Added a default mimeapps list for GNOME's core apps
gsd-xsettings now starts on demand in Wayland
Dropped gnome-dummy session
Allow Inhibit() with no app ID
Unset all LC_* variables that are bound to REGION
Ported fail whale to gtk4
Dropped session selector GUI
Dropped the hardware acceleration check
gnome-session-inhibit: Propagate parent death
gnome-session-inhibit: Fixup terminal handling
Contributors:
Benjamin Berg, Alessandro Bono, Matthias Clasen, gnome-build-meta-bot,
Neal Gompa, Sophie Herold, Javier Jardón, Chris Mayo, Simon McVittie,
Jordan Petridis, Ray Strode, Joan Torres, Adrian Vovk, Chris Williams
Translators:
Марко Костић [sr], Aefgh Threenine [th], A S Alam [pa], Baxrom Raxmatov [uz],
Ekaterine Papava [ka], Martin [sl], Quentin PAGÈS [oc], Vasil Pupkin [be]
============
Version 48.0
============
The gnome-session script no longer re-runs itself as a subprocess
GNOME OS CI was ported to use a CI template
Integrated new CI-based release process
Fix bugs caused by systemd v257's inhibitor behavior changes
Make `gnome-session --version` print to stdout rather than syslog
Translation updates
README updates
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
- build x11 support depending on DISTRO_FEATURES
- add runtime path for nologin to fix reproducibility
- remove backport patch
- use gtk4
49.2
==========
* Translation updates
* Fixed bug that prevented X11 fallback whenever autologin fails
* Introduced CI tests built around GNOME OS
49.1
==========
* Translation updates
* Hotfixed a bug that leaves gnome-shell in a locked up state
* Fixed implementation of userdb, so we don't list our users when asked about
UID 0 (root)
* Switched safety check that avoids accidentally deleting / and /home from an
assertion to an error, so the check always runs even in production builds
* Fixed bug where gnome-initial-setup's configuration (i.e. input methods)
failed to migrate to the final user session
* Fixed bug where GDM assumed that Wayland is unavailable if Xwayland wasn't
installed on the system
49.0.1
==========
* Follow-up for permissions issue fix, making the fix work in more environments
49.0
==========
* Translation updates
* Fix build failures when built without plymouth support
* Fix permissions issue on the GDM work dir (/var/lib/gdm) that broke settings
persistence
49.rc
==========
* Translation updates
* Fixed a bug in PAM config files, introduced by transition to dynamic users
* Added logic to retry preferred display server (usually Wayland) before falling
back (usually to X11)
* Fixed a bug where Plymouth keeps running if not display is plugged into the
system. This would prevent bootup from completing and would prevent the user
from logging in on a serial console
* Fixed GDM's session file loading logic to search directories in correct
precedence order
* Fix simpledrm device detection to match the kernel's new device naming scheme
* Re-enabled X11 support by default. We found it difficult to cleanly separate
GDM's ability to launch modern X11 sessions (which we intended to keep enabled
in GNOME 49) from the rest of GDM's X11 integration (which we intended to
disable but leave intact for GNOME 49). We still plan to remove GDM's full
X11 integration in a future version, and leave only the ability to launch
modern X11 sessions.
* Worked around a regression introduced by the switch to dynamic users, where
the login screen no longer persists any settings
49.beta
==========
* Translation updates
* Switch to using dynamic users for greeter sessions. This enables systemd-based
session management on the greeter, removes GDM's dependency on dbus-daemon,
and frees us to drop gnome-session's builtin service manager.
* Adapt to changes in gnome-session 49, which dropped the builtin service manager
code and now exclusively relies on systemd for session startup. This means that
GDM now depends on gnome-session 49.
49.alpha.1
==========
* Drop dependency on Wacom g-s-d plugin [Jordan; !301]
* Drop leftover udev rules [Alessandro; !299]
* Fix warning when building without libxdmcp support [Florian; !300]
* Add polkit rules to allow access to smartcards [David, !287]
* Misc [Joan; !298]
Contributors:
Alessandro Astone, David Härdeman, Joan Torres López,
Florian Müllner, Jordan Petridis
Translators:
Takayuki Kusano [ja], Aefgh Threenine [th]
==================
Version 49.alpha.0
==================
- meson: Change x11-support default value to false
- Disable Xorg session by default
- udev: Drop disable_wayland overrides
- Fix build with gcc 15
- Translation updates
Contributors:
Zbigniew Jędrzejewski-Szmek, Florian Müllner, Jordan Petridis,
Ray Strode, Joan Torres, Adrian Vovk, Alynx Zhou
Translators:
Antonio Marin [ro], Baxrom Raxmatov [uz], Cheng-Chia Tseng [zh_TW],
Andi Chandler [en_GB], Peter Mráz [sk], Rūdolfs Mazurs [lv]
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Changelog:
============
- Fix frequent crashes when with gdk-pixbuf 2.44
- Add image/avif to the MimeType list in the .desktop
- appdata: Add missing developer name
- Set prgname to application ID
- data: Rename appdata to metainfo and use rDNS app id
- metadata: Hide unreachable help URL
- desktop: Add more keywords
- content type to mime type conversion
- Official website has been retired
- org.gnome.eog.desktop should list image/heic as MimeType
- Segfault SIGSEGV when switching images
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Source code for gtksourceview will be unpacked to a directory called
'gtksourceview-${PV}'. But as the recipes have added part of PV to the
name of the recipe the default setting of variable S will be wrong.
This is fixed by explicitly setting it.
Fixing issues like:
WARNING: gtksourceview3-3.24.11-r0 do_unpack: gtksourceview3: the directory ${UNPACKDIR}/${BP} (<snip>/gtksourceview3/3.24.11/sources/gtksourceview3-3.24.11) pointed to by the S variable doesn't exist - please set S within the recipe to point to where the source has been unpacked to
WARNING: gtksourceview3-3.24.11-r0 do_populate_lic: Could not copy license file <snip>/gtksourceview3/3.24.11/sources/gtksourceview3-3.24.11/COPYING to <snip>/gtksourceview3/3.24.11/license-destdir/corei7-64/gtksourceview3/COPYING: [Errno 2] No such file or directory: '<snip>/gtksourceview3/3.24.11/sources/gtksourceview3-3.24.11/COPYING'
ERROR: gtksourceview3-3.24.11-r0 do_populate_lic: QA Issue: gtksourceview3: LIC_FILES_CHKSUM points to an invalid file: <snip>/gtksourceview3/3.24.11/sources/gtksourceview3-3.24.11/COPYING [license-checksum]
ERROR: gtksourceview3-3.24.11-r0 do_populate_lic: Fatal QA errors were found, failing task.
WARNING: gtksourceview4-4.8.4-r0 do_unpack: gtksourceview4: the directory ${UNPACKDIR}/${BP} (<snip>/gtksourceview4/sources/gtksourceview4-4.8.4) pointed to by the S variable doesn't exist - please set S within the recipe to point to where the source has been unpacked to
ERROR: gtksourceview4-4.8.4-r0 do_patch: Applying patch '0001-remove-pointless-check.patch' on target directory '<snip>/gtksourceview4/4.8.4/sources/gtksourceview4-4.8.4'
WARNING: gtksourceview5-5.18.0-r0 do_unpack: gtksourceview5: the directory ${UNPACKDIR}/${BP} (<snip>/gtksourceview5/5.18.0/sources/gtksourceview5-5.18.0) pointed to by the S variable doesn't exist - please set S within the recipe to point to where the source has been unpacked to
WARNING: gtksourceview5-5.18.0-r0 do_populate_lic: Could not copy license file <snip>/gtksourceview5/5.18.0/sources/gtksourceview5-5.18.0/COPYING to <snip>/gtksourceview5/5.18.0/license-destdir/corei7-64/gtksourceview5/COPYING: [Errno 2] No such file or directory: '<snip>/gtksourceview5/5.18.0/sources/gtksourceview5-5.18.0/COPYING'
ERROR: gtksourceview5-5.18.0-r0 do_populate_lic: QA Issue: gtksourceview5: LIC_FILES_CHKSUM points to an invalid file: <snip>/gtksourceview5/5.18.0/sources/gtksourceview5-5.18.0/COPYING [license-checksum]
ERROR: gtksourceview5-5.18.0-r0 do_populate_lic: Fatal QA errors were found, failing task.
Signed-off-by: Peter Bergin <peter@berginkonsult.se>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The underscores and hyphens in the product name are used randomly in the CVE
database:
sqlite> select * from PRODUCTs where vendor = 'gnome' and product like '%keyr%';
CVE-2012-3466|gnome|gnome-keyring|3.4.0|=||
CVE-2012-3466|gnome|gnome-keyring|3.4.1|=||
CVE-2012-6111|gnome|gnome_keyring|3.2|=||
CVE-2012-6111|gnome|gnome_keyring|3.4|=||
CVE-2018-19358|gnome|gnome-keyring|||3.28.2|<=
CVE-2018-20781|gnome|gnome_keyring|||3.27.2|<
Set CVE_PRODUCT so that both versions are matched.
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Dont remove libcanberra dependency. Meanwhile it can be built without
pulling in gtk2
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
- inherit pkgconfig
Version 49.2
~~~~~~~~~~~~
Released: 2025-11-20
This is a stable release with the following changes:
* Fixed version history sometimes not showing for flatpak apps
This release also updates translations:
* Bokmål, Norwegian (Brage Fuglseth)
* Catalan (Victor Dargallo)
* Friulian (Fabio Tomat)
* Greek, Modern (1453-) (Efstathios Iosifidis)
* Persian (Danial Behzadi)
* Romanian (Antonio Marin)
* Serbian (Милош Поповић)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
fixes:
../sources/gnome-software-49.1/meson.build:218:32: ERROR: Could not get pkg-config variable and no default provided for <PkgConfigDependency flatpak: True ['>= 1.14.1']>
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Add 0001-gegl-Add-gegl-arm.def-file.patch to fix compile fails on qemuarm.
Problem found in gegl/gegl.def
the following symbols are in the library,
but are not listed in the .def-file:
+ gegl_downscale_2x2_arm_neon
+ gegl_downscale_2x2_get_fun_arm_neon
+ gegl_downscale_2x2_nearest_arm_neon
+ gegl_resample_bilinear_arm_neon
+ gegl_resample_boxfilter_arm_neon
+ gegl_resample_nearest_arm_neon
Signed-off-by: Liu Yiding <liuyd.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The application does use tags and version, but their versioning patterns
are all over the place. I kept the eisting PV declaration due to this (and
because this seems to be the very last upsteam change - the repository
looks abandoned).
Changelog:
* Fix ``keybinder_bind`` and others to not crash on non-X11 displays.
It simply returns FALSE, failing to bind the key.
* Add new API:
gboolean keybinder_supported()
Return TRUE if on key bindings are implemented for this
configuration. (Right now: only TRUE if gtk says there's an X11
display)
* Fix deprecated directives in build system
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Changelog:
- Revert libgxdp updates
The libgxdp updates depend on changes in gsettings-desktop-schemas
that are part of the GNOME 50 cycle. Revert the pinned ref
to the one we had before, until we branch libgxdp for GNOME 49.
Signed-off-by: Liu Yiding <liuyd.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Add a new recipe blueprint-compiler as depend for gnome-control-center 49.2.2.
Signed-off-by: Liu Yiding <liuyd.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Bugfixes:
- Fix handling of unset XDG directories
- Reduce memory usage of thumbnails by correct scaling
- Fix potential rescaling of item when switching to cut icon
- Fix crash on empty file lists in drops
- Correct sorting of loopback devices
- Don't skip the first file from operation progress monitoring
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The gnomebase class has a GNOMEBN variable that does this now, so use
that instead.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Switch back to fetch tarballs instead of the git repository.
The project has switched from appstream-glib to appstream as a dependency,
due to the prior isn't actively developed anymore[1].
This update also contains fixes for CVE-2025-10920, CVE-2025-10921, CVE-2025-10922,
CVE-2025-10923, CVE-2025-10924, CVE-2025-10925 and CVE-2025-10934.
[1]: https://gitlab.gnome.org/GNOME/gimp/-/commit/c27096db9e7f328920b9ed9f23524f373facc480
Release notes:
Core:
- Many false-positive build warnings have been cleaned out (and proper
issues fixed).
- Various crashes fixed.
- When creating a layer mask from the layer's alpha, but the layer has
no alpha, simply fill the mask with complete opacity instead of
a completely transparent layer.
- Various core infrastructure code reviewed, cleaned up, refactored
and improved, in drawable, layer and filter handling code, tree view
code, and more.
- GIMP_ICONS_LIKE_A_BOSS environment variable is not working anymore
(because "gtk-menu-images" and "gtk-button-images" have been
deprecated in GTK3 and removed in GTK4) and was therefore removed.
- Lock Content now shows as an undo step.
- Add alpha channel for certain transforms.
- Add alpha channel on filter merge, when necessary.
- Filters can now be applied non-destructively on channels.
- Improved Photoshop brush support.
- After deleting a palette entry, the next entry is automatically
selected. This allows easily deleting several entries in a row,
among other usage.
- Resize image to layers irrespective to selections.
- Improved in-GUI release notes' demo script language:
* We can now set a button value to click it:
"toolbox:text,
tool-options:outline=1,
tool-options:outline-direction"
* Color selector's module names can be used as identifiers:
"color-editor,color-editor:CMYK=1,color-editor:total-ink-coverage"
- Fixed Alpha to Selection on single layers with no transparency.
- Various code is slowly ported to newer code, preparing for GTK4 port
(in an unplanned future step):
* Using g_set_str() (optionally redefining it in our core code to
avoid bumping the GLib minimum requirement).
* Start using GListModel in various pieces of code, in particular
getting rid of more and more usage of GtkTreeView when possible
(as it will be deprecated with GTK4).
* New GimpRow class for all future row widgets.
* Use more of G_DECLARE_DERIVABLE_TYPE and G_DECLARE_FINAL_TYPE
where relevant.
* New GimpContainerListView using a GtkListBox.
* New GimpRowSeparator, GimpRowSettings, GimpRowFilter and
GimpRowDrawableFilter widgets.
- (Experimental) GEX Format was updated.
- Palette import:
* Set alpha value for image palette imports.
* Fix Lab & CMYK ACB palette import.
* Add palette format filters to import dialog, making it more
apparent what palette formats are supported, and giving the
ability to hide irrelevant files.
- Improved filter actions' sensitivity to make sure they are set
insensitive when relevant. In particular filters which cannot be run
non-destructively (e.g. filters with aux inputs, non-interactive
filters and GEGL Graph) must be insensitive when trying to run them
on group layers.
- Fix bad axis centering on zoom out.
- Export better SVG when exporting paths.
Tools:
- Text tool: make sure the default color is only changed when the user
confirms the color change.
- Foreground Selection tool: do not create a selection when no strokes
has been made. In particular this removes the unnecessary delay
which happened when switching to another tool without actually
stroking anything.
- All Transform tools: transform boundaries for preview is now
multi-layers aware.
- (Experimental) Seamless Clone tool: made to work again, though it is
still too slow to get out of Playground.
Graphical User Interface:
- Various improvements to window management:
* Keep-Above windows are set with the Utility hint.
* Utility windows are not made transient to a parent.
* Transient factory dialogs follow the active display, ensuring that
new image windows would not hide your toolbox and dock windows.
- Various CSS improvements for styling of the interface. Some theme
leaks were also fixed.
- New toggle button in Brushes and Fonts dockable, allowing brush and
font previews to optionally follow the color theme. For instance,
when using a dark theme, the brush and font previews could be drawn
on the theme background, using the theme foreground colors. By
default, these data previews are still drawn as black on white.
- Palette grid is now drawn with the theme's background color.
- Consistent naming patterns on human-facing options (first word only
capitalized).
- About dialog:
* We will now display the date and time of the last
check in a "Up to date as of <date> at <time>" string, differing
from the "Last checked on <date> at <time>" string. The former
will be used to indicate that GIMP is indeed up-to-date whereas
the latter when a new version was released and that you should
update.
* We now respect the system time/date format on macOS and Windows.
- The search popup won't pop up without an image.
- Better zoom step algorithm for data previews in container popup
(e.g. the brush popup in paint Tool Options).
- Disable animation in the Input Controller, Preferences and Welcome
dialogs for stack transition when animation are disabled in system
settings.
- Fixed crosshair hotspot on Windows (crosshair cursor for brushes was
offset with a non-100% display scale factor).
- Debug/CRITICAL dialog:
* Make sure it is non-modal.
* Follow the theme mode under Windows.
- While loading images, all widgets in the file dialog are made
insensitive, except for the Cancel button and the progress bar.
- Both grid and list views can now zoom via scroll and zoom gestures
(it used to only work in list views).
- Pop an error message up on startup when GIO modules to read HTTPS
links are not found and that we therefore fail to load the remote
gimp_versions.json file. With the AppImage package in particular, we
depend on an environment daemon which cannot be shipped in the
package. So the next best thing is to warn people and tell them what
they should install to get version checks.
- Welcome dialog:
* The "Community Tutorials" link is now shown after the
"Documentation" link.
* The "Learn more" link in Release Notes tab leads to the actual
release news for this version.
Plug-ins:
- PDF export: do not draw disabled layer masks.
- Jigsaw: the plug-in can now draw on transparent layers.
- Various file format fixes and improvements: JPEG 2000 import, TIFF
import, DDS import, SVG import, PSP import, FITS export, ICNS
import, Dicom import, WBMP import, Farbfeld import, XWD import, ILBM
import.
- Sphere Designer: use spin scale instead of spin entries (the latter
is unusable with little horizontal space).
- Animation Play: frames are shown again in the playback progress bar.
- Vala Goat Exercise: ignoring C warning in this Vala plug-in as it is
generated code and we cannot control it.
- file-gih: brush pipe selection modes now have nice, translatable
names.
- Metadata viewer: port from GtkTreeView to GtkListBox.
- File Raw Data: reduce Raw Data load dialogue height by moving to a
2-column layout.
- SVG import: it is now possible to break aspect ratio with specific
width/height arguments, when calling the PDB procedure
non-interactively (from other plug-ins).
- Print: when run through a portal print dialog, the "Image Settings"
will be exposed as a secondary dialog, outputted after the portal
dialog, instead of a tab on the main print dialog (because it is not
possible to tweak the print dialog when it is created by a portal).
This will bring back usable workflow of printing with GIMP when run
in a sandbox (e.g. Flatpak or Snap).
- Recompose: fixed for YCbCr decomposed images.
- Fixed vulnerabilities: ZDI-CAN-27684, ZDI-CAN-27863, ZDI-CAN-27878,
ZDI-CAN-27836, ZDI-CAN-27823, ZDI-CAN-27793.
- C Source and HTML export can now be run non-interactively too (e.g.
from other plug-ins).
- Map Object: fix missing spin boxes.
- Small Tiles: fix display lag.
API:
- libgimpui:
* new function: gimp_prop_toggle_new()
* updated widget default for GimpChoice in GimpProcedureDialog: when
the number of choices is below 3, a radio frame is used, and a
combo box otherwise (it used to always be a combo box).
* GimpExportProcedureDialog: comment text area will be made
(in)sensitive depending on the checked state of "Save Comment"
option.
* Use arrows for GimpSpinScale cursors.
* GimpColorScales: no decimal for u8 RGB color selector. This change
will help further distinguish between the 0...100 and 0..255 views
in the Color Selectors.
* Internal color drags now use a "application/x-geglcolor" target
since "application/x-color" is standard and should not be used for
our more powerful color formats.
- libgimp:
* new enum type: GimpTRCType
* gimp_file_save() sets the XCF or exported files accordingly.
* Metadata:
+ Favor existing image comment instead of always loading comment
from metadata.
+ Fix handling of "charset=" in comments.
+ Better heuristic to choose the comment to export, especially
when it has been edited in the export dialog comment field.
+ XMP modification date format fix and Exif.Image.DateTime
metadata has been modernized, also adding the timezone.
- PDB/libgimp:
* Allow nullable sample points and guide types for some
functions.
* GeglParamFilePath can now be passed across the wire.
- macOS: improve dock icon flashing issue.
Build:
- CI scripts synced to latest `master` state.
- Windows file format association list is now generated at build time,
avoiding discrepancies.
- Build scripts are made POSIX-compliant for better portability across
platforms.
- New nightly Snap package.
- New nightly Aarch64 flatpak.
- Core code ported from appstream-glib to libappstream.
- Windows installer now uses the latest InnoSetup again.
- New option -Dwin-debugging=dwarf to generate DWARF symbols on
Windows (defaults to CodeView symbols).
- Compilation should work again fine with older librsvg (before the
Rust port).
- release-stats.sh script updated to generate text directly pastable
into our release news.
- CI:
* Linux builds ported from unmaintained Kaniko to Buildah.
* Colored output and .pdb support for builds of dependency using
CMake.
* Ability to apply remote patches on dependency builds.
* New job "branches-check" to warn about dead branches.
* Our Debian jobs are now built with GCC again (the CLang builds are
switched to weekly scheduled jobs).
- Clean out deprecation warnings on GLib and GTK/GDK based on our
minimum requirement of these dependencies thanks to
GLIB_VERSION_MIN_REQUIRED() and GLIB_VERSION_MAX_ALLOWED() macros
(and equivalent GDK macros).
- We now build Exiv2 ourselves on Windows as a temporary workaround to
issue #12626.
- Improved packages binary caching with ORAS for Flatpak.
- AppImage: we now depend on Debian Trixie.
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Backport a patch to fix the build:
libinput-sources/gf-candidate-popup.c:124:11: error:
too many arguments to function 'ibus_attribute_get_type';
expected 0, have 1
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The python "optimised" .pyc files contain buildpaths. Delete those and
leave the "unoptimised" .pyc files. The difference is very minor, mainly
that optimised bytecode doesn't contain any assert statements.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Commit c466cb9 (https://github.com/openembedded/meta-openembedded/commit/c466cb9)
switched to using ANY_OF_DISTRO_FEATURES, so theoretically users can have either
x11 or wayland in their DISTRO_FEATURES. In the case that only wayland is specified,
this build error is seen:
| In file included from ../sources/network-manager-applet-1.36.0/src/applet.c:25:
| ../sources/network-manager-applet-1.36.0/src/applet.h:14:10: fatal error: gdk/gdkx.h: No such file or directory
| 14 | #include <gdk/gdkx.h>
| | ^~~~~~~~~~~~
| compilation terminated.
gdkx.h is brought in via including x11 in DISTRO_FEATURES - so this patch removes
the incompatible headers in the case of x11 not being specified in DISTRO_FEATURES.
Signed-off-by: Eric Meyers <eric.meyers@arthrex.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Drop patch 0001-Remove-register-storage-class-classifier.patch,
because it is included in this release.
Changelog:
Version 6.3.0 (August 2025)
- Look for gnuchess.ini in XDG_CONFIG_HOME or ~/.config/.
- Dynamically configure gnuchess.ini from gnuchess.ini.in.
- Disable engine book on 'book off'.
- Improve style of some help messages.
- More graceful program termination if book does not exist.
- Bug fix in (epd)load command.
- Fix potential buffer overflows in the pipes read/write.
Version 6.2.10 (April 2025)
- Tempo bonus added in the evaluation function.
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>