Compare commits

...

19 Commits

Author SHA1 Message Date
dcd980859f
Increase tests timeout for riscv64
Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
2024-09-25 10:18:27 +03:00
4cc8d9f1b5
Merge remote-tracking branch 'up/main' into main-riscv64
Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
2024-09-25 10:16:27 +03:00
Nils Philippsen
5a78a2d744 Update to a 2024-09-16 git snapshot
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-09-16 11:41:31 +02:00
Nils Philippsen
cf82916baf Update to a 2024-09-12 git snapshot
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-09-12 17:03:43 +02:00
Nils Philippsen
49cbb890c2 Update to a 2024-09-02 git snapshot
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-09-02 10:11:52 +02:00
Nils Philippsen
009fd8c5cb Update to a 2024-08-30 git snapshot
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-30 16:11:32 +02:00
Nils Philippsen
2a0b2622b6 Update to a 2024-08-28 git snapshot
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-28 11:44:48 +02:00
Nils Philippsen
7efc6c0a54 Update to a 2024-08-26 git snapshot
Additionally:

- Skip known problematic tests for now
- Fix skipping tests logic
- Build GObject Introspection documentation

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-26 18:56:31 +02:00
Nils Philippsen
b7877b5d36 Flip the bit for Fedora Linux 41
[skip changelog]

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-26 14:27:58 +02:00
Nils Philippsen
df6c1eaeed Update to a 2024-08-24 git snapshot
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-24 17:34:21 +02:00
Nils Philippsen
9caa47fcac Update to a 2024-08-22 git snapshot
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-22 16:34:47 +02:00
Nils Philippsen
edcc3d0259 Fix license tag to be all SPDX identifiers
[skip changelog]

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-21 11:11:19 +02:00
Benjamin A. Beasley
141d4ee6ad Fix typo in gimp-libs dependency (fix RHBZ#2304761) 2024-08-19 10:55:01 -04:00
Nils Philippsen
98d508a7cb Fix default binary symlinks
[skip changelog]

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-19 16:28:46 +02:00
Nils Philippsen
b6e1175a28 Fix building devel docs
[skip changelog]

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-19 16:26:38 +02:00
Nils Philippsen
563eb21a29 Update to a 2024-08-19 git snapshot
Fix gimp-libs dependency in the main package.

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-19 13:20:00 +02:00
Nils Philippsen
ff107597ed Update to a 2024-08-17 git snapshot
Use a prebuilt splash image on s390x because the build hangs otherwise.

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-18 09:28:35 +02:00
Nils Philippsen
31d023ce71 Fix building TIFF loader on big endian
[skip changelog]

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-15 10:09:44 +02:00
Nils Philippsen
096182ae9c Update to a 2024-08-14 git snapshot
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2024-08-14 23:26:06 +02:00
13 changed files with 488 additions and 311 deletions

12
.gitignore vendored
View File

@ -42,3 +42,15 @@ gimp-2.6.10-1-autoreconf.patch.bz2
/gimp-2.10.34.tar.bz2 /gimp-2.10.34.tar.bz2
/gimp-2.10.36.tar.bz2 /gimp-2.10.36.tar.bz2
/gimp-2.10.38.tar.bz2 /gimp-2.10.38.tar.bz2
/gimp-2.99.19-git256e0ca5a0.tar.xz
/gimp-2.99.19-gitd38362c9a0.tar.xz
/gimp-splash.png
/gimp-2.99.19-git5814d9ed30.tar.xz
/gimp-2.99.19-git4542c0156e.tar.xz
/gimp-2.99.19-git74bbe26918.tar.xz
/gimp-2.99.19-git3ded3c47fe.tar.xz
/gimp-2.99.19-git38c65a4b45.tar.xz
/gimp-2.99.19-git8b57aabed2.tar.xz
/gimp-2.99.19-gitb44687eb2f.tar.xz
/gimp-2.99.19-git8ad744eb1b.tar.xz
/gimp-2.99.19-gitca9d57a417.tar.xz

3
README.md Normal file
View File

@ -0,0 +1,3 @@
# gimp
The gimp package

View File

@ -1,12 +0,0 @@
diff -urNp a/etc/gimprc.in b/etc/gimprc.in
--- a/etc/gimprc.in 2019-08-20 13:03:43.195089141 +0200
+++ b/etc/gimprc.in 2019-08-20 13:04:09.109353485 +0200
@@ -153,7 +153,7 @@
# Where to look for fonts in addition to the system-wide installed fonts.
# This is a colon-separated list of folders to search.
#
-# (font-path "${gimp_dir}/fonts:${gimp_data_dir}/fonts")
+(font-path "${gimp_dir}/fonts")
# Specify a default brush. The brush is searched for in the specified brush
# path. This is a string value.

View File

@ -1,12 +0,0 @@
diff -up gimp-2.10.18/etc/gimprc.in.no-phone-home-default gimp-2.10.18/etc/gimprc.in
--- gimp-2.10.18/etc/gimprc.in.no-phone-home-default 2020-02-23 21:15:47.217777581 +0100
+++ gimp-2.10.18/etc/gimprc.in 2020-02-23 21:22:42.416162110 +0100
@@ -393,7 +393,7 @@
# Check for availability of GIMP updates through background internet queries.
# Possible values are yes and no.
#
-# (check-updates yes)
+(check-updates no)
# Timestamp of the last update check. (null)
#

View File

@ -1,12 +0,0 @@
diff -up gimp-2.10.24/etc/gimprc.in.external-help-browser gimp-2.10.24/etc/gimprc.in
--- gimp-2.10.24/etc/gimprc.in.external-help-browser 2021-04-03 00:02:39.312656132 +0200
+++ gimp-2.10.24/etc/gimprc.in 2021-04-03 00:03:27.360453285 +0200
@@ -836,7 +836,7 @@
# Sets the browser used by the help system. Possible values are gimp and
# web-browser.
#
-# (help-browser web-browser)
+(help-browser web-browser)
# When enabled, a search of actions will also return inactive actions.
# Possible values are yes and no.

View File

@ -1,8 +1,7 @@
diff --git a/etc/gimprc.in b/etc/gimprc.in diff -up gimp-2.99.18/etc/gimprc.in.cm-system-monitor-profile-by-default gimp-2.99.18/etc/gimprc.in
index bdf8f0c..e6757e8 100644 --- gimp-2.99.18/etc/gimprc.in.cm-system-monitor-profile-by-default 2024-02-17 18:01:20.000000000 +0100
--- a/etc/gimprc.in +++ gimp-2.99.18/etc/gimprc.in 2024-05-07 14:39:06.468575598 +0200
+++ b/etc/gimprc.in @@ -316,9 +316,9 @@
@@ -317,9 +317,9 @@
# Defines the color management behavior. This is a parameter list. # Defines the color management behavior. This is a parameter list.
# #
@ -14,14 +13,12 @@ index bdf8f0c..e6757e8 100644
# (display-rendering-intent relative-colorimetric) # (display-rendering-intent relative-colorimetric)
# (display-use-black-point-compensation yes) # (display-use-black-point-compensation yes)
# (display-optimize yes) # (display-optimize yes)
@@ -328,9 +328,8 @@ @@ -326,7 +326,8 @@
# (simulation-use-black-point-compensation no)
# (simulation-optimize yes) # (simulation-optimize yes)
# (simulation-gamut-check no) # (simulation-gamut-check no)
# (out-of-gamut-color (color-rgb 1 0 1)) -# (out-of-gamut-color (color-rgb 1 0 1)))
-# (show-rgb-u8 no) +# (out-of-gamut-color (color-rgb 1 0 1))
-# (show-hsv no)
-# (display-module "CdisplayLcms"))
+# (display-module "CdisplayLcms")
+) +)
# Keep a permanent record of all opened and saved files in the Recent # Keep a permanent record of all opened and saved files in the Recent

View File

@ -0,0 +1,86 @@
diff --git a/app/tools/gimpoperationtool.c b/app/tools/gimpoperationtool.c
index 82f6096b55..f427ee9019 100644
--- a/app/tools/gimpoperationtool.c
+++ b/app/tools/gimpoperationtool.c
@@ -103,8 +103,7 @@ static void gimp_operation_tool_add_gui (GimpOperationTool *tool)
static AuxInput * gimp_operation_tool_aux_input_new (GimpOperationTool *tool,
GeglNode *operation,
const gchar *input_pad,
- const gchar *label,
- const gchar *description);
+ const gchar *label);
static void gimp_operation_tool_aux_input_detach(AuxInput *input);
static void gimp_operation_tool_aux_input_clear (AuxInput *input);
static void gimp_operation_tool_aux_input_free (AuxInput *input);
@@ -550,20 +549,15 @@ gimp_operation_tool_create_gui (GimpOperationTool *op_tool)
g_return_if_fail (regex != NULL);
- label = g_strdup (gegl_node_get_pad_label (filter_tool->operation, input_pads[i]));
-
- if (label == NULL)
- label = g_regex_replace (regex,
- input_pads[i], -1, 0,
- /* Translators: don't translate "Aux" */
- _("Aux\\1 Input"),
- 0, NULL);
+ /* Translators: don't translate "Aux" */
+ label = g_regex_replace (regex,
+ input_pads[i], -1, 0,
+ _("Aux\\1 Input"),
+ 0, NULL);
input = gimp_operation_tool_aux_input_new (op_tool,
filter_tool->operation,
- input_pads[i], label,
- gegl_node_get_pad_description (filter_tool->operation,
- input_pads[i]));
+ input_pads[i], label);
op_tool->aux_inputs = g_list_prepend (op_tool->aux_inputs, input);
@@ -663,8 +657,7 @@ static AuxInput *
gimp_operation_tool_aux_input_new (GimpOperationTool *op_tool,
GeglNode *operation,
const gchar *input_pad,
- const gchar *label,
- const gchar *description)
+ const gchar *label)
{
AuxInput *input = g_slice_new (AuxInput);
GimpContext *context;
@@ -681,8 +674,6 @@ gimp_operation_tool_aux_input_new (GimpOperationTool *op_tool,
context = GIMP_CONTEXT (GIMP_TOOL_GET_OPTIONS (op_tool));
input->box = gimp_buffer_source_box_new (context, input->node, label);
- if (description)
- gtk_widget_set_tooltip_text (input->box, description);
/* make AuxInput owner of the box */
g_object_ref_sink (input->box);
diff --git a/app/sanity.c b/app/sanity.c
index 80f9537172..cc1c0c7bd8 100644
--- a/app/sanity.c
+++ b/app/sanity.c
@@ -502,7 +502,7 @@ sanity_check_gegl (void)
#define GEGL_REQUIRED_MAJOR 0
#define GEGL_REQUIRED_MINOR 4
-#define GEGL_REQUIRED_MICRO 49
+#define GEGL_REQUIRED_MICRO 48
gegl_get_version (&gegl_major_version,
&gegl_minor_version,
diff --git a/meson.build b/meson.build
index f120965244..2605b17649 100644
--- a/meson.build
+++ b/meson.build
@@ -384,7 +384,7 @@ freetype2_minver = '2.1.7'
freetype2 = dependency('freetype2', version: '>='+freetype2_minver)
gdk_pixbuf_minver = '2.30.8'
gdk_pixbuf = dependency('gdk-pixbuf-2.0', version: '>='+gdk_pixbuf_minver)
-gegl_minver = '0.4.49'
+gegl_minver = '0.4.48'
gegl = dependency('gegl-0.4', version: '>='+gegl_minver)
exiv2_minver = '0.27.4'
exiv2 = dependency('exiv2', version: '>='+exiv2_minver)

View File

@ -0,0 +1,12 @@
diff -up gimp-2.99.18/etc/gimprc.in.external-help-browser gimp-2.99.18/etc/gimprc.in
--- gimp-2.99.18/etc/gimprc.in.external-help-browser 2024-05-07 14:41:40.660506520 +0200
+++ gimp-2.99.18/etc/gimprc.in 2024-05-07 14:46:04.028680986 +0200
@@ -828,7 +828,7 @@
# Sets the browser used by the help system. Possible values are gimp and
# web-browser.
#
-# (help-browser gimp)
+(help-browser web-browser)
# The maximum number of actions saved in history. This is an integer value.
#

View File

@ -0,0 +1,12 @@
diff -up gimp-2.99.18/etc/gimprc.in.no-phone-home-default gimp-2.99.18/etc/gimprc.in
--- gimp-2.99.18/etc/gimprc.in.no-phone-home-default 2024-05-07 14:40:02.746185394 +0200
+++ gimp-2.99.18/etc/gimprc.in 2024-05-07 14:40:49.353862228 +0200
@@ -399,7 +399,7 @@
# Check for availability of GIMP updates through background internet queries.
# Possible values are yes and no.
#
-# (check-updates yes)
+(check-updates no)
# Timestamp of the last update check. This is an integer value.
#

View File

@ -1,56 +0,0 @@
Do not call the undeclared exit function. Implicit function
declarations are likely not going to be supported by future compilers
by default, changing the outcome of this configure probe.
Submitted upstream: <https://gitlab.gnome.org/GNOME/gimp/-/merge_requests/810>
diff --git a/configure b/configure
index 6e62da8e3c164f82..f1c447baf7ff68f7 100755
--- a/configure
+++ b/configure
@@ -28898,17 +28898,17 @@ else $as_nop
char *shmaddr;
id = shmget (IPC_PRIVATE, 4, IPC_CREAT | 0600);
if (id == -1)
- exit (2);
+ return 2;
shmaddr = shmat (id, 0, 0);
shmctl (id, IPC_RMID, 0);
if ((char*) shmat (id, 0, 0) == (char*) -1)
{
shmdt (shmaddr);
- exit (1);
+ return 1;
}
shmdt (shmaddr);
shmdt (shmaddr);
- exit (0);
+ return 0;
}
_ACEOF
diff --git a/configure.ac b/configure.ac
index d73f56228712f59d..32d2a072863ae64f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1284,17 +1284,17 @@ elif test "x$shmtype" = "xsysv"; then
char *shmaddr;
id = shmget (IPC_PRIVATE, 4, IPC_CREAT | 0600);
if (id == -1)
- exit (2);
+ return 2;
shmaddr = shmat (id, 0, 0);
shmctl (id, IPC_RMID, 0);
if ((char*) shmat (id, 0, 0) == (char*) -1)
{
shmdt (shmaddr);
- exit (1);
+ return 1;
}
shmdt (shmaddr);
shmdt (shmaddr);
- exit (0);
+ return 0;
}
]])],
[AC_DEFINE([IPC_RMID_DEFERRED_RELEASE],[1],

1
gimp-splash.sha256sum Normal file
View File

@ -0,0 +1 @@
90ac7f576388aeee0cff4c8f3c05a6b2ee89ffc1f82bd42208db9a5fadc138d3 gimp-data/images/gimp-splash.xcf.xz

559
gimp.spec
View File

@ -1,92 +1,176 @@
#### options: #### options:
# Use the following --with/--without <option> switches to control how the # Use the following --with/--without <option> switches to control how the
# package will be built: # package will be built:
#
# default_binary: install unversioned binary # is_default_version: This is the default GIMP version in a Fedora release
%bcond_without default_binary # label_overlay: Put version label in app icons
# libunwind support (only available on some architectures) %if ! 0%{?fedora} || 0%{?fedora} >= 41
%ifarch %{arm} aarch64 hppa ia64 mips ppc %{power64} %{ix86} x86_64 %bcond is_default_version 1
%bcond_without libunwind %bcond label_overlay 0
%else %else
%bcond_with libunwind %bcond is_default_version 0
%bcond label_overlay 1
%endif %endif
%global build_type_safety_c 0 # libunwind support (only available on some architectures)
%if ! 0%{?fedora}%{?rhel} || 0%{?fedora} >= 40 || 0%{?rhel} >= 11
%global unwind_arches %{arm} aarch64 hppa ia64 mips ppc %{power64} s390x %{ix86} x86_64 riscv64
%else
%global unwind_arches %{arm} aarch64 hppa ia64 mips ppc %{power64} s390x %{ix86} x86_64
%endif
# skip tests known to be problematic in a specific version %ifarch %unwind_arches
#global skip_checks_version X.Y.Z %bcond libunwind 1
#global skip_checks test1 test2 test3 %else
%bcond libunwind 0
%endif
%ifnarch s390x
%bcond tests 1
%bcond prebuilt_splash 0
%else
# Tests hang on s390x, skip them.
%bcond tests 0
%bcond prebuilt_splash 1
%endif
# When building in Koji or mock, networking isnt available.
%bcond skip_networking_tests 1
# Skip known problematic tests
%bcond skip_problematic_tests 1
# Some tests fail under normal user environments, dont skip them by default.
%bcond skip_user_tests 0
# The lists of tests to skip should not have leading or trailing white space,
# this breaks the logic in %%check.
# tests known to fail if networking isnt available
%global skip_tests_networking gimp:desktop / appdata_file
# tests known to fail for being problematic
%global skip_tests_problematic gimp:app / save-and-export
# tests known to fail in a normal user environment
%global skip_tests_user gimp:app / save-and-export\
gimp:app / single-window-mode\
gimp:app / ui
# luajit isnt available on all arches
%global plain_lua_arches riscv64 ppc64 ppc64le
%global prerelease 1
Summary: GNU Image Manipulation Program Summary: GNU Image Manipulation Program
Name: gimp Name: gimp
Epoch: 2 Epoch: 2
Version: 2.10.38 Version: 2.99.19^20240916gitca9d57a417
Release: %autorelease -e rvre0 Release: %autorelease -e 0.riscv64
# Compute some version related macros. # Compute some version related macros.
# Ugly, need to get quoting percent signs straight.
%global major %(ver=%{version}; echo ${ver%%%%.*}) # In the case of a snapshot version (e.g. "Version: 2.99.19^20240814git256e0ca5a0"), this computes
%global minor %(ver=%{version}; ver=${ver#%major.}; echo ${ver%%%%.*}) # the "plain" version (as defined in upstream sources), %%snapshot and %%git_rev macros. In the case
%global micro %(ver=%{version}; ver=${ver#%major.%minor.}; echo ${ver%%%%.*}) # of a normal release, %%plain_version will be the same as %%version.
%global binver 2.10 %global plain_version %{lua:
local plain_version = (string.gsub(macros.version, '^(.*)[%^~].*$', '%1'))
print(plain_version)
if plain_version ~= macros.version then
macros.snapshot = (string.gsub(macros.version, '^.*[%^~](.*)$', '%1'))
macros.git_rev = (string.gsub(macros.snapshot, '^.*git(.*)$', '%1'))
end
}
%global major %{lua:
print((string.gsub(macros.plain_version, '^(%d+)%..*$', '%1')))
}
%global minor %{lua:
print((string.gsub(macros.plain_version, '^%d+%.(%d+)%..*$', '%1')))
}
%global micro %{lua:
print((string.gsub(macros.plain_version, '^%d+%.%d+%.(%d+).*$', '%1')))
}
%global bin_version %{major}.%{minor}
%global interface_age 0 %global interface_age 0
%if %prerelease
%global gettext_version 30
%global api_version 3.0
%global lib_api_version 3.0
%else
%global gettext_version %{major}0 %global gettext_version %{major}0
%global api_version %{major}.0
%global lib_api_version %{major}.0 %global lib_api_version %{major}.0
%global lib_minor %(echo $[%minor * 100]) %endif
%global lib_minor %{lua: print(tonumber(macros.minor) * 100)}
%global lib_micro %micro %global lib_micro %micro
# gimp core app is GPL-3.0-or-later, libgimp and other libraries are LGPL-3.0-or-later # gimp core app is GPL-3.0-or-later, libgimp and other libraries are LGPL-3.0-or-later
# plugin file-dds is GPL-2.0-or-later and plugins script-fu/{ftx,tinyscheme} are BSD-3-Clause # plugin file-dds is GPL-2.0-or-later and plugins script-fu/libscriptfu/{ftx,tinyscheme}
License: LGPL-3.0-or-later AND GPL-2.0-or-later AND GPL-3.0-or-later AND BSD-3-Clause # are BSD-3-Clause, icon themes are CC-BY-SA-{3.0,4.0}, data files such as brushes and
URL: https://www.gimp.org/ # patterns are CC0-1.0
License: LGPL-3.0-or-later AND GPL-2.0-or-later AND GPL-3.0-or-later AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-SA-4.0 AND CC0-1.0
URL: https://www.gimp.org
%if %{with label_overlay}
BuildRequires: ImageMagick
%endif
BuildRequires: aalib-devel BuildRequires: aalib-devel
BuildRequires: appdata-tools BuildRequires: appdata-tools
BuildRequires: chrpath >= 0.13-5 BuildRequires: appstream
BuildRequires: coreutils
BuildRequires: dbus-daemon
BuildRequires: desktop-file-utils
BuildRequires: gcc BuildRequires: gcc
BuildRequires: gegl04-tools BuildRequires: gegl04-tools
BuildRequires: gettext >= 0.19 BuildRequires: gettext >= 0.19.8
BuildRequires: gi-docgen
BuildRequires: gjs
BuildRequires: glib-networking BuildRequires: glib-networking
BuildRequires: gtk-doc >= 1.0
BuildRequires: intltool >= 0.40.1
BuildRequires: libgs-devel BuildRequires: libgs-devel
BuildRequires: make BuildRequires: libxml2
BuildRequires: libxslt
%ifnarch %plain_lua_arches
BuildRequires: lua-lgi-compat
BuildRequires: luajit
%else
BuildRequires: lua >= 5.4
BuildRequires: lua-lgi
%endif
BuildRequires: meson
BuildRequires: perl >= 5.10.0 BuildRequires: perl >= 5.10.0
BuildRequires: pkgconfig(alsa) >= 1.0.0 BuildRequires: pkgconfig(alsa) >= 1.0.0
BuildRequires: pkgconfig(atk) >= 2.2.0 BuildRequires: pkgconfig(appstream-glib) >= 0.7.7
%if ! 0%{?fedora} || 0%{?fedora} >= 39 BuildRequires: pkgconfig(atk) >= 2.4.0
BuildRequires: pkgconfig(babl-0.1) >= 0.1.74 BuildRequires: pkgconfig(babl-0.1) >= 0.1.108
%else
BuildRequires: pkgconfig(babl) >= 0.1.74
%endif
BuildRequires: pkgconfig(bzip2) BuildRequires: pkgconfig(bzip2)
BuildRequires: pkgconfig(cairo) >= 1.12.2 BuildRequires: pkgconfig(cairo) >= 1.14.0
BuildRequires: pkgconfig(cairo-pdf) >= 1.12.2
BuildRequires: pkgconfig(cfitsio)
BuildRequires: pkgconfig(fontconfig) >= 2.12.4 BuildRequires: pkgconfig(fontconfig) >= 2.12.4
BuildRequires: pkgconfig(freetype2) >= 2.1.7 BuildRequires: pkgconfig(freetype2) >= 2.1.7
BuildRequires: pkgconfig(gdk-pixbuf-2.0) >= 2.30.8 BuildRequires: pkgconfig(gdk-pixbuf-2.0) >= 2.30.8
BuildRequires: pkgconfig(gegl-0.4) >= 0.4.32 BuildRequires: pkgconfig(gegl-0.4) >= 0.4.48
BuildRequires: pkgconfig(gexiv2) >= 0.10.6 BuildRequires: pkgconfig(gexiv2) >= 0.14.0
BuildRequires: pkgconfig(gio-2.0) >= 2.56.2 BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.56.2 BuildRequires: pkgconfig(gio-unix-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.56.2 BuildRequires: pkgconfig(glib-2.0) >= 2.70.0
BuildRequires: pkgconfig(gmodule-no-export-2.0) >= 2.56.2 BuildRequires: pkgconfig(gmodule-no-export-2.0)
BuildRequires: pkgconfig(gobject-2.0) >= 2.56.2 BuildRequires: pkgconfig(gobject-2.0) >= 2.70.0
BuildRequires: pkgconfig(gtk+-2.0) >= 2.24.32 BuildRequires: pkgconfig(gobject-introspection-1.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 3.24.0
BuildRequires: pkgconfig(gudev-1.0) >= 167 BuildRequires: pkgconfig(gudev-1.0) >= 167
BuildRequires: pkgconfig(harfbuzz) >= 0.9.19 BuildRequires: pkgconfig(harfbuzz) >= 2.8.2
BuildRequires: pkgconfig(iso-codes) BuildRequires: pkgconfig(iso-codes)
BuildRequires: pkgconfig(jasper) BuildRequires: pkgconfig(json-glib-1.0) >= 1.2.6
BuildRequires: pkgconfig(lcms2) >= 2.8 BuildRequires: pkgconfig(lcms2) >= 2.8
BuildRequires: pkgconfig(libheif) BuildRequires: pkgconfig(libheif) >= 1.15.1
BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(libjpeg)
BuildRequires: pkgconfig(libjxl) >= 0.6.1 BuildRequires: pkgconfig(libjxl) >= 0.7.0
BuildRequires: pkgconfig(libjxl_threads) >= 0.6.1 BuildRequires: pkgconfig(libjxl_threads) >= 0.7.0
BuildRequires: pkgconfig(liblzma) >= 5.0.0 BuildRequires: pkgconfig(liblzma) >= 5.0.0
BuildRequires: pkgconfig(libmng) BuildRequires: pkgconfig(libmng)
BuildRequires: pkgconfig(libmypaint) >= 1.3.0 BuildRequires: pkgconfig(libmypaint) >= 1.3.0
BuildRequires: pkgconfig(libopenjp2) >= 2.1.0 BuildRequires: pkgconfig(libopenjp2) >= 2.1.0
BuildRequires: pkgconfig(libpng) >= 1.6.25 BuildRequires: pkgconfig(libpng) >= 1.6.25
BuildRequires: pkgconfig(librsvg-2.0) >= 2.40.6 BuildRequires: pkgconfig(librsvg-2.0) >= 2.40.6
BuildRequires: pkgconfig(libtiff-4) BuildRequires: pkgconfig(libtiff-4) >= 4.0.0
%if %{with libunwind} %if %{with libunwind}
BuildRequires: pkgconfig(libunwind) >= 1.1.0 BuildRequires: pkgconfig(libunwind) >= 1.1.0
%endif %endif
@ -95,47 +179,66 @@ BuildRequires: pkgconfig(libwebpdemux) >= 0.6.0
BuildRequires: pkgconfig(libwebpmux) >= 0.6.0 BuildRequires: pkgconfig(libwebpmux) >= 0.6.0
BuildRequires: pkgconfig(libwmf) >= 0.2.8 BuildRequires: pkgconfig(libwmf) >= 0.2.8
BuildRequires: pkgconfig(mypaint-brushes-1.0) >= 1.3.0 BuildRequires: pkgconfig(mypaint-brushes-1.0) >= 1.3.0
BuildRequires: pkgconfig(OpenEXR) BuildRequires: pkgconfig(OpenEXR) >= 1.6.1
BuildRequires: pkgconfig(pangocairo) >= 1.29.4 BuildRequires: pkgconfig(pango) >= 1.50.0
BuildRequires: pkgconfig(pangoft2) >= 1.29.4 BuildRequires: pkgconfig(pangocairo) >= 1.50.0
BuildRequires: pkgconfig(poppler-data) >= 0.4.7 BuildRequires: pkgconfig(pangoft2) >= 1.50.0
BuildRequires: pkgconfig(poppler-glib) >= 0.50.0 BuildRequires: pkgconfig(poppler-data) >= 0.4.9
BuildRequires: pkgconfig(pycairo) >= 1.0.2 BuildRequires: pkgconfig(poppler-glib) >= 0.69.0
BuildRequires: pkgconfig(pygobject-2.0) BuildRequires: pkgconfig(python3) >= 3.6.0
BuildRequires: pkgconfig(pygtk-2.0) >= 2.10.4
BuildRequires: pkgconfig(python2) >= 2.5.0
BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xfixes)
BuildRequires: pkgconfig(xmu) BuildRequires: pkgconfig(xmu)
BuildRequires: pkgconfig(xpm) BuildRequires: pkgconfig(xpm)
BuildRequires: pkgconfig(zlib) BuildRequires: pkgconfig(zlib)
BuildRequires: python3dist(pygobject) >= 3.0
BuildRequires: vala
BuildRequires: xorg-x11-server-Xvfb
BuildRequires: yelp-tools
Requires: gjs
Requires: hicolor-icon-theme Requires: hicolor-icon-theme
Recommends: mypaint-brushes %ifnarch %plain_lua_arches
Requires: lua-lgi-compat
Requires: luajit
%else
Requires: lua >= 5.4
Requires: lua-lgi
%endif
Requires: xdg-utils Requires: xdg-utils
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: pygtk2%{?_isa} >= 2.10.4 Requires: python3dist(pygobject) >= 3.0
Obsoletes: %{name}-help-browser < %{epoch}:%{version}-%{release}
Conflicts: %{name}-help-browser < %{epoch}:%{version}-%{release}
#Remove dependency on RPM Fusion repository Recommends: mypaint-brushes
Obsoletes: gimp-heif-plugin < 1.1.0-13
Source0: https://download.gimp.org/pub/gimp/v%{binver}/gimp-%{version}.tar.bz2 Obsoletes: gimp3 < 3.0
Conflicts: gimp3 < 3.0
%if ! %defined snapshot
Source0: https://download.gimp.org/pub/gimp/v%{bin_version}/gimp-%{version}.tar.xz
%else
# Tarball built from git snapshot with `meson dist` and renamed accordingly
Source0: gimp-%{plain_version}-git%{git_rev}.tar.xz
%endif
# Building this from source hangs on s390x 😢. Building on any other arch will convert
# gimp-data/images/gimp-splash.xcf.xz just fine.
Source1: gimp-splash.png
Source2: gimp-splash.sha256sum
# Fedora specific patches:
# Try using the system monitor profile for color management by default. # Try using the system monitor profile for color management by default.
# Fedora specific. Patch1: gimp-2.99.19-cm-system-monitor-profile-by-default.patch
Patch1: gimp-2.10.0-cm-system-monitor-profile-by-default.patch
# bz#1706653
Patch2: gimp-2.10.12-default-font.patch
# don't phone home to check for updates by default # don't phone home to check for updates by default
Patch3: gimp-2.10.18-no-phone-home-default.patch Patch2: gimp-2.99.19-no-phone-home-default.patch
# use external help browser directly if help browser plug-in is not built # use external help browser directly if help browser plug-in is not built
Patch100: gimp-2.10.24-external-help-browser.patch Patch3: gimp-2.99.19-external-help-browser.patch
Patch101: gimp-configure-c99.patch # Dont require an unreleased gegl version
Patch4: gimp-2.99.19-don-t-require-unreleased-gegl-version.patch
%description %description
GIMP (GNU Image Manipulation Program) is a powerful image composition and GIMP (GNU Image Manipulation Program) is a powerful image composition and
@ -149,6 +252,8 @@ with multi-level undo.
%package libs %package libs
Summary: GIMP libraries Summary: GIMP libraries
License: LGPL-3.0-or-later License: LGPL-3.0-or-later
Obsoletes: gimp3-libs < 3.0
Conflicts: gimp3-libs < 3.0
%description libs %description libs
The %{name}-libs package contains shared libraries needed for the GNU Image The %{name}-libs package contains shared libraries needed for the GNU Image
@ -159,6 +264,8 @@ Summary: GIMP plugin and extension development kit
License: LGPL-3.0-or-later License: LGPL-3.0-or-later
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-devel-tools = %{epoch}:%{version}-%{release} Requires: %{name}-devel-tools = %{epoch}:%{version}-%{release}
Obsoletes: gimp3-devel < 3.0
Conflicts: gimp3-devel < 3.0
%description devel %description devel
The %{name}-devel package contains the files needed for writing GNU Image The %{name}-devel package contains the files needed for writing GNU Image
@ -168,6 +275,8 @@ Manipulation Program (GIMP) plug-ins and extensions.
Summary: GIMP plugin and extension development tools Summary: GIMP plugin and extension development tools
License: LGPL-3.0-or-later License: LGPL-3.0-or-later
Requires: %{name}-devel = %{epoch}:%{version}-%{release} Requires: %{name}-devel = %{epoch}:%{version}-%{release}
Obsoletes: gimp3-devel-tools < 3.0
Conflicts: gimp3-devel-tools < 3.0
%description devel-tools %description devel-tools
The %{name}-devel-tools package contains gimptool, a helper program to The %{name}-devel-tools package contains gimptool, a helper program to
@ -176,54 +285,57 @@ build GNU Image Manipulation Program (GIMP) plug-ins and extensions.
%prep %prep
cat << EOF cat << EOF
--- 8< --- Build options --------------------------------------------------- --- 8< --- Build options ---------------------------------------------------
install default binary: %{with default_binary} is default version: %{with is_default_version}
label overlay: %{with label_overlay}
tests: %{with tests}
prebuilt splash: %{with prebuilt_splash}
%if %defined snapshot
snapshot: %{snapshot}
plain_version: %{plain_version}
git_rev: %{git_rev}
%endif
--- >8 --------------------------------------------------------------------- --- >8 ---------------------------------------------------------------------
EOF EOF
%setup -q -n gimp-%{version} %setup -q -n gimp-%{plain_version}
%patch 1 -p1 -b .cm-system-monitor-profile-by-default %patch 1 -p1 -b .cm-system-monitor-profile-by-default
%patch 2 -p1 -b .font-default %patch 2 -p1 -b .no-phone-home-default
%patch 3 -p1 -b .no-phone-home-default %patch 3 -p1 -b .external-help-browser
%patch 4 -p1 -b .don-t-require-unreleased-gegl-version
%patch 100 -p1 -b .external-help-browser # Verify the splash file source hasnt changed
%patch 101 -p1 -b .configure-c99 sha256sum -c %{SOURCE2}
# Avoid re-running autotools.
touch -r aclocal.m4 configure*
%build %build
# allow python2 package for RHEL-8
export RHEL_ALLOW_PYTHON2_FOR_BUILD=1
# Use hardening compiler/linker flags because gimp is likely to deal with files # Use hardening compiler/linker flags because gimp is likely to deal with files
# coming from untrusted sources # coming from untrusted sources
%global _hardened_build 1 %global _hardened_build 1
%configure \
--enable-python \
--enable-mp \
--disable-static \
--with-print \
--enable-gimp-console \
--with-aa \
--with-gudev \
%ifos linux
--with-linux-input \
%endif
--without-webkit \
--with-webp \
%if %{with default_binary}
--enable-default-binary=yes \
%else
--enable-default-binary=no \
%endif
--with-libmng --with-libxpm --with-alsa --with-cairo-pdf --with-libheif \
%if 0%{?flatpak}
--with-icc-directory=/run/host/usr/share/color/icc/ \
%endif
--without-appdata-test
%make_build %meson \
%if %{with is_default_version}
-Denable-default-bin=enabled \
%else
-Denable-default-bin=disabled \
%endif
-Dg-ir-doc=true \
-Dilbm=disabled \
-Dbug-report-url="https://bugzilla.redhat.com/"
%if %{with prebuilt_splash}
# Building this from source hangs on s390x 😢, so prevent attempting to build it …
sed -i -e '/^subdir/!s/^/# /g' gimp-data/images/meson.build
%endif
%meson_build
%install
%meson_install
%if %{with prebuilt_splash}
# … instead, copy the prebuilt file into place.
install -m 644 %{SOURCE1} %{buildroot}%{_datadir}/gimp/%{api_version}/images/gimp-splash.png
%endif
# Generate RPM macros from pkg-config data: # Generate RPM macros from pkg-config data:
# %%_gimp_datadir -- toplevel directory for brushes, gradients, scripts, ... # %%_gimp_datadir -- toplevel directory for brushes, gradients, scripts, ...
@ -233,7 +345,7 @@ export RHEL_ALLOW_PYTHON2_FOR_BUILD=1
# %%_gimp_scriptdir -- script-fu scripts directory # %%_gimp_scriptdir -- script-fu scripts directory
# %%_gimp_plugindir -- plug-in directory # %%_gimp_plugindir -- plug-in directory
gimp_pc_extract_normalize() { gimp_pc_extract_normalize() {
PKG_CONFIG_PATH="$PWD" \ PKG_CONFIG_PATH="%{buildroot}%{_libdir}/pkgconfig" \
pkg-config --variable="$1" gimp-%{lib_api_version} | \ pkg-config --variable="$1" gimp-%{lib_api_version} | \
sed \ sed \
-e 's|^%_mandir|%%{_mandir}|' \ -e 's|^%_mandir|%%{_mandir}|' \
@ -269,31 +381,23 @@ cat << EOF > macros.gimp
%%_gimp_plugindir ${_gimp_plugindir} %%_gimp_plugindir ${_gimp_plugindir}
EOF EOF
%install
%make_install
install -D -m0644 macros.gimp %{buildroot}%{_rpmconfigdir}/macros.d/macros.gimp install -D -m0644 macros.gimp %{buildroot}%{_rpmconfigdir}/macros.d/macros.gimp
# remove rpaths echo "%{__python3}=%{__python3}" >> %{buildroot}%{_libdir}/gimp/%{api_version}/interpreters/pygimp.interp
find %buildroot -type f -print0 | xargs -0 -L 20 chrpath --delete --keepgoing 2>/dev/null || :
# remove .la files
find %buildroot -name \*.la -exec %__rm -f {} \;
# #
# Plugins and modules change often (grab the executeable ones) # Plugins and modules change often (grab the executeable ones)
# #
find %{buildroot}%{_libdir}/gimp/%{lib_api_version} -type f | sed "s@^%{buildroot}@@g" | grep -v '\.a$' > gimp-plugin-files find %{buildroot}%{_libdir}/gimp/%{api_version} -type f | sed "s@^%{buildroot}@@g" | grep -v '\.a$' > gimp-plugin-files
find %{buildroot}%{_libdir}/gimp/%{lib_api_version}/* -type d | sed "s@^%{buildroot}@%%dir @g" >> gimp-plugin-files find %{buildroot}%{_libdir}/gimp/%{api_version}/* -type d | sed "s@^%{buildroot}@%%dir @g" >> gimp-plugin-files
# .pyc and .pyo files don't exist yet grep '\.py$' gimp-plugin-files | \
grep "\.py$" gimp-plugin-files > gimp-plugin-files-py sed 's+/[^/]*\.py$+/__pycache__+g' | \
for file in $(cat gimp-plugin-files-py); do sort -u > gimp-plugin-files-pycache
for newfile in ${file}c ${file}o; do
grep -F -q -x "$newfile" gimp-plugin-files || echo "$newfile"
done
done >> gimp-plugin-files
%py_byte_compile %{__python2} %{buildroot}%{_libdir}/gimp/%{lib_api_version} cat gimp-plugin-files-pycache >> gimp-plugin-files
%py_byte_compile %{__python3} %{buildroot}%{_libdir}/gimp/%{api_version}
# #
# Auto detect the lang files. # Auto detect the lang files.
@ -311,15 +415,15 @@ cat gimp%{gettext_version}.lang gimp%{gettext_version}-std-plug-ins.lang gimp%{g
# #
cat gimp-plugin-files gimp-all.lang > gimp.files cat gimp-plugin-files gimp-all.lang > gimp.files
%if %{with default_binary} %if %{with is_default_version}
# install default binary symlinks # install default binary symlinks
ln -snf gimp-%{binver} %{buildroot}%{_bindir}/gimp ln -snf gimp-%{bin_version} %{buildroot}%{_bindir}/gimp
ln -snf gimp-%{binver}.1 %{buildroot}%{_mandir}/man1/gimp.1 ln -snf gimp-%{bin_version}.1 %{buildroot}%{_mandir}/man1/gimp.1
ln -snf gimp-console-%{binver} %{buildroot}/%{_bindir}/gimp-console ln -snf gimp-console-%{bin_version} %{buildroot}/%{_bindir}/gimp-console
ln -snf gimp-console-%{binver}.1 %{buildroot}/%{_mandir}/man1/gimp-console.1 ln -snf gimp-console-%{bin_version}.1 %{buildroot}/%{_mandir}/man1/gimp-console.1
ln -snf gimptool-%{lib_api_version} %{buildroot}%{_bindir}/gimptool ln -snf gimptool-%{bin_version} %{buildroot}%{_bindir}/gimptool
ln -snf gimptool-%{lib_api_version}.1 %{buildroot}%{_mandir}/man1/gimptool.1 ln -snf gimptool-%{bin_version}.1 %{buildroot}%{_mandir}/man1/gimptool.1
ln -snf gimprc-%{binver}.5 %{buildroot}/%{_mandir}/man5/gimprc.5 ln -snf gimprc-%{bin_version}.5 %{buildroot}/%{_mandir}/man5/gimprc.5
%endif %endif
# Hardcode python interpreter in shipped python plug-ins. This actually has no # Hardcode python interpreter in shipped python plug-ins. This actually has no
@ -327,103 +431,141 @@ ln -snf gimprc-%{binver}.5 %{buildroot}/%{_mandir}/man5/gimprc.5
# to the system python interpreter, but this will avoid false alarms. # to the system python interpreter, but this will avoid false alarms.
grep -E -rl '^#!\s*/usr/bin/env\s+python' --include=\*.py "%{buildroot}" | grep -E -rl '^#!\s*/usr/bin/env\s+python' --include=\*.py "%{buildroot}" |
while read file; do while read file; do
sed -r '1s,^#!\s*/usr/bin/env\s+python$,#!%{__python2},' -i "$file" sed -r '1s,^#!\s*/usr/bin/env\s+python$,#!%{__python3},' -i "$file"
sed -r '1s,^#!\s*/usr/bin/env\s+python2$,#!%{__python2},' -i "$file" sed -r '1s,^#!\s*/usr/bin/env\s+python3$,#!%{__python3},' -i "$file"
done done
echo "%{__python2}=%{__python2}" >> %{buildroot}%{_libdir}/gimp/%{lib_api_version}/interpreters/pygimp.interp rm -rf devel-docs/gimp-%{bin_version}
mv %{buildroot}%{_docdir}/gimp-%{bin_version} devel-docs
rm -r %{buildroot}%{_datadir}/gimp/%{api_version}/tests
%check %if %{without is_default_version}
# skip tests known to be problematic in a specific version rm -rf %{buildroot}%{_datadir}/metainfo
%if "%{version}" == "%{?skip_checks_version}" %endif
pushd app/tests
for problematic in %{?skip_checks}; do %if %{with tests}
rm -f "$problematic" %check
cat << EOF > "$problematic" # Some tests in the gimp:app suite are known to fail when run in a normal desktop environment, but
#!/bin/sh # they work in isolated builds (mock, koji): save-and-export, single-window-mode, ui
echo Skipping test "$problematic"
EOF # skip tests known to fail
chmod +x "$problematic" skip_tests=""
done
popd %if %{with skip_networking_tests}
skip_tests="$skip_tests
%skip_tests_networking"
%endif
%if %{with skip_problematic_tests}
skip_tests="$skip_tests
%skip_tests_problematic"
%endif
%if %{with skip_user_tests}
skip_tests="$skip_tests
%skip_tests_user"
%endif
all_tests="$(%meson_test --list 2>/dev/null)"
suites="$(echo "$all_tests" | while read suite ignore; do echo "${suite%+*}"; done | sort -u)"
for suite in $suites; do
suite_tests="$(
echo "$all_tests" | grep "^$suite\(+\S\+\)\?" | while read ignore ignore test; do
if ! echo "$skip_tests" | grep -qFx "$suite / $test"; then echo "$test"; fi
done | sort -u
)"
if [ -n "$suite_tests" ]; then
%ifnarch riscv64
%meson_test --suite "$suite" $suite_tests
%else
%meson_test --timeout-multiplier 10 --suite "$suite" $suite_tests
%endif
fi
done
%endif %endif
make check %{?_smp_mflags}
%ldconfig_scriptlets libs %ldconfig_scriptlets libs
%files -f gimp.files %files -f gimp.files
%license COPYING %license LICENSE COPYING
%doc AUTHORS ChangeLog NEWS README %doc AUTHORS NEWS README
%doc docs/*.xcf* %doc docs/*.xcf*
%{_datadir}/applications/*.desktop %{_datadir}/applications/*.desktop
%if %{with is_default_version}
%{_datadir}/metainfo/*.appdata.xml %{_datadir}/metainfo/*.appdata.xml
%{_datadir}/metainfo/*.metainfo.xml %endif
%dir %{_datadir}/gimp %dir %{_datadir}/gimp
%dir %{_datadir}/gimp/%{lib_api_version} %dir %{_datadir}/gimp/%{api_version}
%{_datadir}/gimp/%{lib_api_version}/dynamics/ %{_datadir}/gimp/%{api_version}/dynamics/
%{_datadir}/gimp/%{lib_api_version}/file-raw/ %{_datadir}/gimp/%{api_version}/file-raw/
%{_datadir}/gimp/%{lib_api_version}/menus/ %{_datadir}/gimp/%{api_version}/menus/
%{_datadir}/gimp/%{lib_api_version}/tags/ %{_datadir}/gimp/%{api_version}/tags/
%{_datadir}/gimp/%{lib_api_version}/tips/ %{_datadir}/gimp/%{api_version}/tips/
%{_datadir}/gimp/%{lib_api_version}/tool-presets/ %{_datadir}/gimp/%{api_version}/tool-presets/
%{_datadir}/gimp/%{lib_api_version}/ui/
%dir %{_libdir}/gimp %dir %{_libdir}/gimp
%dir %{_libdir}/gimp/%{lib_api_version} %dir %{_libdir}/gimp/%{api_version}
%{_datadir}/gimp/%{lib_api_version}/brushes/ %{_datadir}/gimp/%{api_version}/brushes/
%{_datadir}/gimp/%{lib_api_version}/fractalexplorer/ %{_datadir}/gimp/%{api_version}/fractalexplorer/
%{_datadir}/gimp/%{lib_api_version}/gfig/ %{_datadir}/gimp/%{api_version}/gfig/
%{_datadir}/gimp/%{lib_api_version}/gflare/ %{_datadir}/gimp/%{api_version}/gflare/
%{_datadir}/gimp/%{lib_api_version}/gimpressionist/ %{_datadir}/gimp/%{api_version}/gimpressionist/
%{_datadir}/gimp/%{lib_api_version}/gradients/ %{_datadir}/gimp/%{api_version}/gradients/
%{_datadir}/gimp/%{lib_api_version}/icons/ %{_datadir}/gimp/%{api_version}/icons/
%{_datadir}/gimp/%{lib_api_version}/images/ %{_datadir}/gimp/%{api_version}/images/
%{_datadir}/gimp/%{lib_api_version}/palettes/ %{_datadir}/gimp/%{api_version}/palettes/
%{_datadir}/gimp/%{lib_api_version}/patterns/ %{_datadir}/gimp/%{api_version}/patterns/
%{_datadir}/gimp/%{lib_api_version}/scripts/ %{_datadir}/gimp/%{api_version}/scripts/
%{_datadir}/gimp/%{lib_api_version}/themes/ %{_datadir}/gimp/%{api_version}/themes/
%{_datadir}/gimp/%{lib_api_version}/gimp-release %{_datadir}/gimp/%{api_version}/gimp-release
%dir %{_sysconfdir}/gimp %dir %{_sysconfdir}/gimp
%dir %{_sysconfdir}/gimp/%{lib_api_version} %dir %{_sysconfdir}/gimp/%{api_version}
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/controllerrc %config(noreplace) %{_sysconfdir}/gimp/%{api_version}/controllerrc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/gimprc %config(noreplace) %{_sysconfdir}/gimp/%{api_version}/gimp.css
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/gtkrc %config(noreplace) %{_sysconfdir}/gimp/%{api_version}/gimprc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/unitrc %config(noreplace) %{_sysconfdir}/gimp/%{api_version}/unitrc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/sessionrc %config(noreplace) %{_sysconfdir}/gimp/%{api_version}/sessionrc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/templaterc %config(noreplace) %{_sysconfdir}/gimp/%{api_version}/templaterc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/menurc %config(noreplace) %{_sysconfdir}/gimp/%{api_version}/toolrc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/toolrc
%{_bindir}/gimp-%{binver} %{_bindir}/gimp-%{bin_version}
%{_bindir}/gimp-console-%{binver} %{_bindir}/gimp-console-%{bin_version}
%{_bindir}/gimp-script-fu-interpreter-%{lib_api_version}
%if %{with default_binary} %if %{with is_default_version}
%{_bindir}/gimp %{_bindir}/gimp
%{_bindir}/gimp-console %{_bindir}/gimp-console
%endif %endif
%{_bindir}/gimp-test-clipboard-%{lib_api_version} %{_bindir}/gimp-test-clipboard-%{bin_version}
%{_libexecdir}/gimp-debug-tool-%{lib_api_version} %{_libexecdir}/gimp-debug-tool-%{bin_version}
%{_mandir}/man1/gimp-%{binver}.1* %if %{with is_default_version}
%{_mandir}/man1/gimp-console-%{binver}.1* %{_bindir}/gimp-test-clipboard
%{_mandir}/man5/gimprc-%{binver}.5* %{_libexecdir}/gimp-debug-tool
%endif
%if %{with default_binary} %{_mandir}/man1/gimp-%{bin_version}.1*
%{_mandir}/man1/gimp-console-%{bin_version}.1*
%{_mandir}/man5/gimprc-%{bin_version}.5*
%if %{with is_default_version}
%{_mandir}/man1/gimp.1* %{_mandir}/man1/gimp.1*
%{_mandir}/man1/gimp-console.1* %{_mandir}/man1/gimp-console.1*
%{_mandir}/man5/gimprc.5* %{_mandir}/man5/gimprc.5*
%endif %endif
%{_datadir}/icons/hicolor/*/apps/gimp.png %{_datadir}/icons/hicolor/*/apps/gimp*
%files libs %files libs
%license COPYING %license LICENSE COPYING
%doc AUTHORS ChangeLog NEWS README %doc AUTHORS NEWS README
%{_libdir}/libgimp-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro} %{_libdir}/libgimp-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimp-%{lib_api_version}.so.%{interface_age} %{_libdir}/libgimp-%{lib_api_version}.so.%{interface_age}
%{_libdir}/libgimp-scriptfu-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimp-scriptfu-%{lib_api_version}.so.%{interface_age}
%{_libdir}/libgimpbase-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro} %{_libdir}/libgimpbase-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpbase-%{lib_api_version}.so.%{interface_age} %{_libdir}/libgimpbase-%{lib_api_version}.so.%{interface_age}
%{_libdir}/libgimpcolor-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro} %{_libdir}/libgimpcolor-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
@ -440,26 +582,29 @@ make check %{?_smp_mflags}
%{_libdir}/libgimpui-%{lib_api_version}.so.%{interface_age} %{_libdir}/libgimpui-%{lib_api_version}.so.%{interface_age}
%{_libdir}/libgimpwidgets-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro} %{_libdir}/libgimpwidgets-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpwidgets-%{lib_api_version}.so.%{interface_age} %{_libdir}/libgimpwidgets-%{lib_api_version}.so.%{interface_age}
%dir %{_libdir}/girepository-1.0
%{_libdir}/girepository-1.0/*.typelib
%files devel %files devel
%doc HACKING README.i18n %doc README.i18n
%doc %{_datadir}/gtk-doc %doc devel-docs/*
%{_libdir}/*.so %{_libdir}/*.so
%ifnos linux
%{_libdir}/*.la
%{_libdir}/gimp/%{lib_api_version}/modules/*.la
%endif
%{_datadir}/aclocal/*.m4
%{_includedir}/gimp-%{lib_api_version} %{_includedir}/gimp-%{lib_api_version}
%{_libdir}/pkgconfig/* %{_libdir}/pkgconfig/*
%{_rpmconfigdir}/macros.d/macros.gimp %{_rpmconfigdir}/macros.d/macros.gimp
%dir %{_datadir}/gir-1.0
%{_datadir}/gir-1.0/Gimp*.gir
%dir %{_datadir}/vala
%dir %{_datadir}/vala/vapi
%{_datadir}/vala/vapi/gimp*.deps
%{_datadir}/vala/vapi/gimp*.vapi
%files devel-tools %files devel-tools
%{_bindir}/gimptool-%{lib_api_version} %{_bindir}/gimptool-%{bin_version}
%{_mandir}/man1/gimptool-%{lib_api_version}.1* %{_mandir}/man1/gimptool-%{bin_version}.1*
%if %{with default_binary} %if %{with is_default_version}
%{_bindir}/gimptool %{_bindir}/gimptool
%{_mandir}/man1/gimptool.1* %{_mandir}/man1/gimptool.1*
%endif %endif

View File

@ -1 +1,2 @@
SHA512 (gimp-2.10.38.tar.bz2) = 343bf1c3bd14bf8e7c7af79c05920faca213da68549127c1d8af53e2e872e55aeaf39a3cfcf578183a34fdc4f98e1c859be63956b0611067186eefd1fdee2aaa SHA512 (gimp-2.99.19-gitca9d57a417.tar.xz) = 77b744ec7480f267be3ad3d081d6f5a3c62ef49eefdb4cd6b78f6daae47fdf2b78d97322c0809f710fc829859ff8c3d53e7839d6d284b98bccec63bb0060e6c7
SHA512 (gimp-splash.png) = e4443fa1c4eaf50ce4a89681d436d9c23ccae7e3a6cac1e853bba05d851c815c59c53d52c9f3e159460d52e03b492cc48f366f6e194b7ca8c740692eb0c2d963