Resolves: #2047161 - import gimp into RHEL9

This commit is contained in:
Josef Řídký 2022-02-24 09:07:47 +01:00
parent 63c39e62df
commit e856194f5b
6 changed files with 119 additions and 92 deletions

1
.gitignore vendored
View File

@ -35,3 +35,4 @@ gimp-2.6.10-1-autoreconf.patch.bz2
/gimp-2.10.18.tar.bz2
/gimp-2.10.20.tar.bz2
/gimp-2.10.22.tar.bz2
/gimp-2.99.8.tar.bz2

6
gating.yaml Normal file
View File

@ -0,0 +1,6 @@
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: desktop-qe.desktop-ci.tier1-gating.functional}

View File

@ -1,11 +0,0 @@
diff -up gimp-2.10.0/etc/gimprc.in.external-help-browser gimp-2.10.0/etc/gimprc.in
--- gimp-2.10.0/etc/gimprc.in.external-help-browser 2018-04-28 17:25:02.483242200 +0200
+++ gimp-2.10.0/etc/gimprc.in 2018-04-28 17:25:28.048193595 +0200
@@ -753,6 +753,7 @@
# web-browser.
#
# (help-browser gimp)
+(help-browser web-browser)
# When enabled, a search of actions will also return inactive actions.
# Possible values are yes and no.

View File

@ -0,0 +1,12 @@
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.

179
gimp.spec
View File

@ -87,19 +87,20 @@ find $bytecode_compilation_path -type f -a -name "*.py" -print0 | xargs -0 $pyth
Summary: GNU Image Manipulation Program
Name: gimp
Epoch: 2
Version: 2.10.22
%global rel 2
Release: %{?prerelprefix}%{rel}%{dotprerel}%{dotgitrev}%{?dist}.1
Version: 2.99.8
%global rel 1
Release: %{?prerelprefix}%{rel}%{dotprerel}%{dotgitrev}%{?dist}
# Compute some version related macros.
# Ugly, need to get quoting percent signs straight.
%global major %(ver=%{version}; echo ${ver%%%%.*})
%global minor %(ver=%{version}; ver=${ver#%major.}; echo ${ver%%%%.*})
%global micro %(ver=%{version}; ver=${ver#%major.%minor.}; echo ${ver%%%%.*})
%global binver 2.10
%global binver 2.99
%global interface_age 0
%global gettext_version %{major}0
%global lib_api_version %{major}.0
%global gettext_version 30
%global lib_api_version %{major}.99
%global unstable_so_version 3.0
%if ! %unstable
%global lib_minor %(echo $[%minor * 100])
%global lib_micro %micro
@ -128,22 +129,23 @@ BuildRequires: alsa-lib-devel >= 1.0.0
BuildRequires: atk-devel >= 2.2.0
BuildRequires: babl-devel >= 0.1.74
BuildRequires: bzip2-devel
BuildRequires: cairo-devel >= 1.12.2
BuildRequires: cairo-devel >= 1.14.0
BuildRequires: fontconfig-devel >= 2.12.4
BuildRequires: freetype-devel >= 2.1.7
BuildRequires: gcc
BuildRequires: gdk-pixbuf2-devel >= 2.30.8
BuildRequires: gegl04-tools
BuildRequires: gegl04-devel >= 0.4.22
BuildRequires: gegl04-devel >= 0.4.32
BuildRequires: libgs-devel
BuildRequires: glib2-devel >= 2.54.2
BuildRequires: gtk2-devel >= 2.24.32
BuildRequires: glib2-devel >= 2.68.0
BuildRequires: gtk3-devel >= 3.22.29
BuildRequires: gtk-doc >= 1.0
BuildRequires: harfbuzz-devel >= 0.9.19
BuildRequires: harfbuzz-devel >= 1.0.5
BuildRequires: iso-codes-devel
BuildRequires: jasper-devel
BuildRequires: lcms2-devel >= 2.8
BuildRequires: libappstream-glib
BuildRequires: libappstream-glib, libappstream-glib-devel
BuildRequires: libarchive
BuildRequires: libgexiv2-devel >= 0.10.6
BuildRequires: libgudev1-devel >= 167
BuildRequires: libjpeg-devel
@ -151,9 +153,9 @@ BuildRequires: libmng-devel
BuildRequires: libpng-devel >= 1.6.25
BuildRequires: librsvg2-devel >= 2.40.6
BuildRequires: libtiff-devel
%if %{with libunwind}
BuildRequires: libunwind-devel >= 1.1.0
%endif
#%if %{with libunwind}
#BuildRequires: libunwind-devel >= 1.1.0
#%endif
%if %{with webp}
BuildRequires: libwebp-devel >= 0.6.0
%endif
@ -166,10 +168,10 @@ BuildRequires: pango-devel >= 1.29.4
BuildRequires: perl >= 5.10.0
BuildRequires: poppler-glib-devel >= 0.50.0
BuildRequires: poppler-data-devel >= 0.4.7
BuildRequires: pycairo-devel >= 1.0.2
BuildRequires: pygtk2-devel >= 2.10.4
BuildRequires: pygobject2-devel
BuildRequires: python2-devel >= 2.5.0
BuildRequires: python3-cairo-devel >= 1.0.2
#BuildRequires: pygtk2-devel >= 2.10.4
BuildRequires: python3-gobject-devel
BuildRequires: python3-devel >= 3.6.0
%if %{with helpbrowser}
BuildRequires: webkitgtk-devel >= 1.6.1
%endif
@ -182,27 +184,29 @@ BuildRequires: libXpm-devel
BuildRequires: chrpath >= 0.13-5
BuildRequires: intltool >= 0.40.1
BuildRequires: gettext >= 0.19
BuildRequires: make
BuildRequires: pkgconfig
BuildRequires: vala
%if %unstable
BuildRequires: desktop-file-utils
BuildRequires: ImageMagick
%endif
Requires: babl%{?_isa} >= 0.1.78
Requires: gegl04%{?_isa} >= 0.4.24
Requires: babl%{?_isa} >= 0.1.74
Requires: gegl04%{?_isa} >= 0.4.32
Requires: fontconfig >= 2.12.4
Requires: freetype >= 2.1.7
Requires: glib2 >= 2.54.2
Requires: gtk2 >= 2.24.32
Requires: glib2 >= 2.68.0
Requires: gtk3 >= 3.22.29
Requires: hicolor-icon-theme
%if %{with libunwind}
Requires: libunwind%{?_isa} >= 1.1.0
%endif
#%if %{with libunwind}
#Requires: libunwind%{?_isa} >= 1.1.0
#%endif
Requires: lcms2 >= 2.8
Recommends: mypaint-brushes
Requires: pango >= 1.29.4
Requires: pygtk2 >= 2.10.4
#Requires: pygtk2 >= 2.10.4
Requires: xdg-utils
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
%if %{with helpbrowser}
@ -237,7 +241,7 @@ Patch2: gimp-2.10.12-default-font.patch
Patch3: gimp-2.10.18-no-phone-home-default.patch
# use external help browser directly if help browser plug-in is not built
Patch100: gimp-2.10.0-external-help-browser.patch
Patch100: gimp-2.10.24-external-help-browser.patch
%description
GIMP (GNU Image Manipulation Program) is a powerful image composition and
@ -337,23 +341,20 @@ EOF
%patch0 -p1 -b .git%{gitrev}
%endif
%patch1 -p1 -b .cm-system-monitor-profile-by-default
#%patch1 -p1 -b .cm-system-monitor-profile-by-default
%patch2 -p1 -b .font-default
%patch3 -p1 -b .no-phone-home-default
#%patch3 -p1 -b .no-phone-home-default
%if ! %{with helpbrowser}
%patch100 -p1 -b .external-help-browser
#%patch100 -p1 -b .external-help-browser
%endif
%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
# coming from untrusted sources
%global _hardened_build 1
%configure \
--enable-python \
--with-python \
%if %{with mp}
--enable-mp \
%else
@ -456,6 +457,14 @@ find %buildroot -type f -print0 | xargs -0 -L 20 chrpath --delete --keepgoing 2>
# remove .la files
find %buildroot -name \*.la -exec %__rm -f {} \;
%if %{with python_separately_bytecompile}
%py_byte_compile %{__python3} %{buildroot}%{_libdir}/gimp/%{lib_api_version}
%endif
%if %{with static}
find %{buildroot}%{_libdir}/gimp/%{lib_api_version} -type f | sed "s@^%{buildroot}@@g" | grep '\.a$' > gimp-static-files
%endif
#
# Plugins and modules change often (grab the executeable ones)
#
@ -463,20 +472,12 @@ find %{buildroot}%{_libdir}/gimp/%{lib_api_version} -type f | sed "s@^%{buildroo
find %{buildroot}%{_libdir}/gimp/%{lib_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 > gimp-plugin-files-py
for file in $(cat gimp-plugin-files-py); do
for newfile in ${file}c ${file}o; do
grep -F -q -x "$newfile" gimp-plugin-files || echo "$newfile"
done
done >> gimp-plugin-files
%if %{with python_separately_bytecompile}
%py_byte_compile %{__python2} %{buildroot}%{_libdir}/gimp/%{lib_api_version}
%endif
%if %{with static}
find %{buildroot}%{_libdir}/gimp/%{lib_api_version} -type f | sed "s@^%{buildroot}@@g" | grep '\.a$' > gimp-static-files
%endif
#grep "\.py$" gimp-plugin-files > gimp-plugin-files-py
#for file in $(cat gimp-plugin-files-py); do
# for newfile in ${file}c ${file}o; do
# grep -F -q -x "$newfile" gimp-plugin-files || echo "$newfile"
# done
#done >> gimp-plugin-files
#
# Auto detect the lang files.
@ -485,10 +486,10 @@ find %{buildroot}%{_libdir}/gimp/%{lib_api_version} -type f | sed "s@^%{buildroo
%find_lang gimp%{gettext_version}-std-plug-ins
%find_lang gimp%{gettext_version}-script-fu
%find_lang gimp%{gettext_version}-libgimp
%find_lang gimp%{gettext_version}-tips
#%find_lang gimp%{gettext_version}-tips
%find_lang gimp%{gettext_version}-python
cat gimp%{gettext_version}.lang gimp%{gettext_version}-std-plug-ins.lang gimp%{gettext_version}-script-fu.lang gimp%{gettext_version}-libgimp.lang gimp%{gettext_version}-tips.lang gimp%{gettext_version}-python.lang > gimp-all.lang
cat gimp%{gettext_version}.lang gimp%{gettext_version}-std-plug-ins.lang gimp%{gettext_version}-script-fu.lang gimp%{gettext_version}-libgimp.lang gimp%{gettext_version}-python.lang > gimp-all.lang
#
# Build the master filelists generated from the above mess.
@ -512,11 +513,11 @@ ln -snf gimprc-%{binver}.5 %{buildroot}/%{_mandir}/man5/gimprc.5
# to the system python interpreter, but this will avoid false alarms.
grep -E -rl '^#!\s*/usr/bin/env\s+python' --include=\*.py "%{buildroot}" |
while read file; do
sed -r '1s,^#!\s*/usr/bin/env\s+python$,#!%{__python2},' -i "$file"
sed -r '1s,^#!\s*/usr/bin/env\s+python2$,#!%{__python2},' -i "$file"
sed -r '1s,^#!\s*/usr/bin/env\s+python$,#!%{__python3},' -i "$file"
sed -r '1s,^#!\s*/usr/bin/env\s+python3$,#!%{__python3},' -i "$file"
done
echo "%{__python2}=%{__python2}" >> %{buildroot}%{_libdir}/gimp/%{lib_api_version}/interpreters/pygimp.interp
echo "%{__python3}=%{__python3}" >> %{buildroot}%{_libdir}/gimp/%{lib_api_version}/interpreters/pygimp.interp
%endif
%if %unstable
@ -600,11 +601,11 @@ make check %{?_smp_mflags}
%{_datadir}/gimp/%{lib_api_version}/ui/
%dir %{_libdir}/gimp
%dir %{_libdir}/gimp/%{lib_api_version}
%dir %{_libdir}/gimp/%{lib_api_version}/environ
%dir %{_libdir}/gimp/%{lib_api_version}/interpreters
%dir %{_libdir}/gimp/%{lib_api_version}/modules
%dir %{_libdir}/gimp/%{lib_api_version}/plug-ins
%dir %{_libdir}/gimp/%{lib_api_version}/python
#%dir %%{_libdir}/gimp/%%{lib_api_version}/environ
#%dir %%{_libdir}/gimp/%%{lib_api_version}/interpreters
#%dir %%{_libdir}/gimp/%%{lib_api_version}/modules
#%dir %%{_libdir}/gimp/%%{lib_api_version}/plug-ins
#%dir %%{_libdir}/gimp/%%{lib_api_version}/python
%if %{with helpbrowser}
%exclude %{_libdir}/gimp/%{lib_api_version}/plug-ins/help-browser
%endif
@ -627,13 +628,15 @@ make check %{?_smp_mflags}
%dir %{_sysconfdir}/gimp/%{lib_api_version}
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/controllerrc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/gimprc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/gtkrc
#%config(noreplace) %%{_sysconfdir}/gimp/%%{lib_api_version}/gtkrc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/unitrc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/sessionrc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/templaterc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/menurc
%config(noreplace) %{_sysconfdir}/gimp/%{lib_api_version}/toolrc
%{_sysconfdir}/gimp/%{lib_api_version}/gimp.css
%{_bindir}/gimp-%{binver}
%{_bindir}/gimp-console-%{binver}
@ -655,7 +658,7 @@ make check %{?_smp_mflags}
%{_mandir}/man5/gimprc.5*
%endif
%{_datadir}/icons/hicolor/*/apps/gimp.png
%{_datadir}/icons/hicolor/*/apps/gimp.*
%if %unstable
%{os_bindir}/*-%{major}.%{minor}
%{os_datadir}/applications/gimp-%{major}.%{minor}.desktop
@ -665,24 +668,24 @@ make check %{?_smp_mflags}
%files libs
%license COPYING
%doc AUTHORS ChangeLog NEWS README
%{_libdir}/libgimp-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimp-%{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}
%{_libdir}/libgimpcolor-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpcolor-%{lib_api_version}.so.%{interface_age}
%{_libdir}/libgimpconfig-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpconfig-%{lib_api_version}.so.%{interface_age}
%{_libdir}/libgimpmath-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpmath-%{lib_api_version}.so.%{interface_age}
%{_libdir}/libgimpmodule-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpmodule-%{lib_api_version}.so.%{interface_age}
%{_libdir}/libgimpthumb-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpthumb-%{lib_api_version}.so.%{interface_age}
%{_libdir}/libgimpui-%{lib_api_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_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}
%{_libdir}/libgimp-%{unstable_so_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimp-%{unstable_so_version}.so.%{interface_age}
%{_libdir}/libgimpbase-%{unstable_so_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpbase-%{unstable_so_version}.so.%{interface_age}
%{_libdir}/libgimpcolor-%{unstable_so_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpcolor-%{unstable_so_version}.so.%{interface_age}
%{_libdir}/libgimpconfig-%{unstable_so_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpconfig-%{unstable_so_version}.so.%{interface_age}
%{_libdir}/libgimpmath-%{unstable_so_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpmath-%{unstable_so_version}.so.%{interface_age}
%{_libdir}/libgimpmodule-%{unstable_so_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpmodule-%{unstable_so_version}.so.%{interface_age}
%{_libdir}/libgimpthumb-%{unstable_so_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpthumb-%{unstable_so_version}.so.%{interface_age}
%{_libdir}/libgimpui-%{unstable_so_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpui-%{unstable_so_version}.so.%{interface_age}
%{_libdir}/libgimpwidgets-%{unstable_so_version}.so.%{interface_age}.%{lib_minor}.%{lib_micro}
%{_libdir}/libgimpwidgets-%{unstable_so_version}.so.%{interface_age}
%if %{with static}
%files devel -f gimp-static-files
@ -698,8 +701,12 @@ make check %{?_smp_mflags}
%{_libdir}/gimp/%{lib_api_version}/modules/*.la
%endif
%{_datadir}/aclocal/*.m4
%{_includedir}/gimp-%{lib_api_version}
%{_includedir}/gimp-%{unstable_so_version}
%{_libdir}/pkgconfig/*
%{_libdir}/girepository-1.0/*
%{_datadir}/vala/*
%{_datadir}/gir-1.0/*
%if ! %unstable
%{_rpmconfigdir}/macros.d/macros.gimp
%endif
@ -719,6 +726,18 @@ make check %{?_smp_mflags}
%endif
%changelog
* Tue Feb 01 2022 Josef Ridky <jridky@redhat.com> - 2:2.99.8-1
- Tech Preview import into RHEL-9
* Fri Apr 02 2021 Kalev Lember <klember@redhat.com> - 2:2.10.24-1
- Update to 2.10.24
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2:2.10.22-2.3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Fri Jan 08 2021 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2:2.10.22-2.2
- rebuild against new openexr
* Fri Jan 01 2021 Richard Shaw <hobbes1069@gmail.com> - 2:2.10.22-2.1
- Rebuild for OpenEXR 2.5.3.

View File

@ -1 +1 @@
SHA512 (gimp-2.10.22.tar.bz2) = 13841ac4a186df47e4155095ca888a903b2db9e25a73fbb834fe981ccf915cb67a3e08506e5c13b6c5f35e27b1de24befbccf871e438b1a35f67f069bebd8fd0
SHA512 (gimp-2.99.8.tar.bz2) = c603d9a315c21c9da716cc1d8c0c784061e7d0eac4b3d28467aabc3c63c950da0a52649e498049e0b8475933ef93d721a2b8423811b47b00c9490485d316345e