#
# Conditional build:
-%bcond_without aalib # without aa plugin (which requires aalib)
-%bcond_without gnomevfs # without GNOME VFS support
-%bcond_without gnome # convenient alias for gnomevfs
-%bcond_without python # without python plugins
-%bcond_without webkit # without webkit-based help browser
+%bcond_without aalib # aa plugin (which requires aalib)
+%bcond_without python # python plugins
+%bcond_without libunwind # detailed backtraces using libunwind
+%bcond_without webkit # webkit-based help browser
%bcond_with posix_shm # with POSIX SHM (default is SysV SHM)
-#
-%if %{without gnome}
-%undefine with_gnomevfs
-%endif
+
+%define babl_ver 0.1.78
+%define gegl_ver 0.4.30
+
%define mver 2.0
Summary: The GNU Image Manipulation Program
Summary(de.UTF-8): Das GNU-Bildbearbeitungs-Programm
Summary(zh_CN.UTF-8): [图像]GNU图象处理工具
Summary(zh_TW.UTF-8): [圖像]GNU圖象處理工具
Name: gimp
-Version: 2.6.11
-Release: 4
+Version: 2.10.24
+Release: 3
Epoch: 1
-License: GPL v2+
+License: GPL v3+
Group: X11/Applications/Graphics
-Source0: ftp://ftp.gimp.org/pub/gimp/v2.6/%{name}-%{version}.tar.bz2
-# Source0-md5: bb2939fe13e54fc7255cef5d097bb5dd
+Source0: https://download.gimp.org/pub/gimp/v2.10/%{name}-%{version}.tar.bz2
+# Source0-md5: 31e4a055ba34e6841f42a6b2439ca480
Patch0: %{name}-home_etc.patch
-Patch1: %{name}-desktop.patch
-Patch2: %{name}-gcc4.patch
-URL: http://www.gimp.org/
+Patch3: %{name}-no-checks-for-runtime-deps.patch
+URL: https://www.gimp.org/
+BuildRequires: OpenEXR-devel >= 1.6.1
%{?with_aalib:BuildRequires: aalib-devel}
BuildRequires: alsa-lib-devel >= 1.0.11
+BuildRequires: atk-devel >= 1:2.2.0
BuildRequires: autoconf >= 2.54
BuildRequires: automake
-BuildRequires: babl-devel >= 0.0.22
-BuildRequires: curl-devel >= 7.15.1
-BuildRequires: dbus-glib-devel >= 0.70
+BuildRequires: babl-devel >= %{babl_ver}
+BuildRequires: bzip2-devel
+BuildRequires: cairo-devel >= 1.12.2
BuildRequires: docbook-dtd412-xml
-BuildRequires: gegl-devel >= 0.0.18
-BuildRequires: gettext-devel
+BuildRequires: fontconfig-devel >= 2.12.4
+BuildRequires: freetype-devel >= 1:2.1.7
+BuildRequires: gdk-pixbuf2-devel >= 2.30.8
+BuildRequires: gegl-devel >= %{gegl_ver}
+BuildRequires: gettext-tools >= 0.19
+BuildRequires: gexiv2-devel >= 0.10.6
+BuildRequires: ghostscript-devel
BuildRequires: giflib-devel
-BuildRequires: glib2-devel >= 1:2.16.1
-BuildRequires: gtk+2-devel >= 2:2.12.5
+BuildRequires: glib2-devel >= 1:2.56.2
+BuildRequires: glib-networking
+BuildRequires: gtk+2-devel >= 2:2.24.32
+BuildRequires: gtk-update-icon-cache >= 2.24.32
BuildRequires: gtk-doc >= 1.6
-%{?with_webkit:BuildRequires: gtk-webkit-devel >= 1.0}
-BuildRequires: hal-devel >= 0.5.7
-BuildRequires: intltool >= 0.36.3
+%{?with_webkit:BuildRequires: gtk-webkit-devel >= 1.6.1}
+BuildRequires: harfbuzz-devel >= 0.9.19
+BuildRequires: intltool >= 0.40.1
BuildRequires: iso-codes
-BuildRequires: lcms-devel >= 1.16
-BuildRequires: libart_lgpl-devel
-BuildRequires: libexif-devel >= 0.6.15
+BuildRequires: json-glib-devel >= 1.2.6
+BuildRequires: lcms2-devel >= 2.8
+BuildRequires: libheif-devel >= 1.10
BuildRequires: libjpeg-devel
BuildRequires: libmng-devel
-BuildRequires: libpng-devel >= 1.2.12
-BuildRequires: librsvg-devel >= 1:2.15.0
+BuildRequires: libmypaint-devel >= 1.4.0
+BuildRequires: libpng-devel >= 2:1.6.25
+BuildRequires: librsvg-devel >= 1:2.40.6
+BuildRequires: libstdc++-devel >= 6:5
BuildRequires: libtiff-devel
-BuildRequires: libtool >= 1:1.4.2-9
+BuildRequires: libtool >= 2:2.2
+%{?with_libunwind:BuildRequires: libunwind-devel >= 1.1.0}
+BuildRequires: libwebp-devel >= 0.6.0
BuildRequires: libwmf-devel >= 2:0.2.8
-BuildRequires: pango-devel >= 1:1.18.0
+BuildRequires: mypaint-brushes-1-devel >= 1.0
+BuildRequires: openjpeg2-devel >= 2.1.0
+BuildRequires: pango-devel >= 1:1.32.0
+BuildRequires: perl-base >= 1:5.10.0
BuildRequires: pkgconfig >= 1:0.16
-BuildRequires: poppler-glib-devel >= 0.6
+BuildRequires: poppler-glib-devel >= 0.50.0
+%{?with_python:BuildRequires: python >= 1:2.5.0}
+%{?with_python:BuildRequires: python-pycairo-devel >= 1.12.2}
+%{?with_python:BuildRequires: python-pygtk-devel >= 1:2.10.4}
BuildRequires: rpm-pythonprov
BuildRequires: rpmbuild(macros) >= 1.268
+BuildRequires: sed >= 4.0
+BuildRequires: udev-glib-devel >= 1:167
+BuildRequires: xorg-lib-libXcursor-devel
BuildRequires: xorg-lib-libXext-devel
BuildRequires: xorg-lib-libXfixes-devel
BuildRequires: xorg-lib-libXmu-devel
BuildRequires: xorg-lib-libXpm-devel
+BuildRequires: xorg-lib-libXt-devel
+BuildRequires: xz-devel >= 1:5.0.0
BuildRequires: zlib-devel
-%if %{with gnomevfs}
-BuildRequires: gnome-vfs2-devel >= 2.15.91
-BuildRequires: libgnome-keyring-devel >= 0.5.1
-BuildRequires: libgnomeui-devel >= 2.15.91
-%endif
-%if %{with python}
-BuildRequires: python-devel >= 1:2.5
-BuildRequires: python-pygtk-devel >= 2:2.10.4
-%endif
-Requires(post,postun): gtk-update-icon-cache
-Requires(post,postun): hicolor-icon-theme
+Requires(post,postun): gtk+2 >= 2:2.24.32
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
-Requires: curl >= 7.15.1
-Requires: dbus-glib >= 0.70
+Requires: OpenEXR >= 1.6.1
+Requires: alsa-lib >= 1.0.11
+Requires: atk >= 1:2.2.0
+Requires: fontconfig-libs >= 2.12.4
+Requires: freetype >= 1:2.1.7
+Requires: harfbuzz >= 0.9.19
Requires: hicolor-icon-theme
-Requires: lcms >= 1.16
-Requires: libexif >= 0.6.15
+Requires: iso-codes
+Requires: json-glib >= 1.2.6
+Requires: libheif >= 1.10
+Requires: libmypaint >= 1.4.0
+Requires: libpng >= 2:1.6.25
+Requires: libwebp >= 0.6.0
+Requires: libwmf-libs >= 2:0.2.8
+Requires: mypaint-brushes-1 >= 1.0
+Requires: openjpeg2 >= 2.1.0
+Requires: poppler-data >= 0.4.7
+Requires: poppler-glib >= 0.50.0
%{?with_python:Requires: python-pygtk-gtk >= 1:2.10.4}
+Requires: udev-glib >= 1:167
+Requires: xz-libs >= 1:5.0.0
+# for https
+Suggests: glib-networking
Obsoletes: gimp-data-min
Obsoletes: gimp-libgimp
Obsoletes: gimp-print
GIMP включает поддержку создания сценариев (scripting facility),
однако многие из поставляемых с программой сценариев предполагают
наличие шрифтов, которые не могут быть включены в дистрибутив.
-FTP-сайт GIMP содержит пакет шрифтов, которые вы можете поставить
-самостоятельно, включающий все шрифты, необходимые для работы входящих
-в комплект сценариев. Некоторые из шрифтов имеют весьма необычные
-лицензионные требования; все лицензии включены в упомянутый пакет.
-Скачайте ftp://ftp.gimp.org/pub/gimp/fonts/freefonts-0.10.tar.gz и
-ftp://ftp.gimp.org/pub/gimp/fonts/sharefonts-0.10.tar.gz, если хотите
-запускать сценарии без изменений или выберите те шрифты, которые
-установлены у вас в системе, перед запуском сценариев.
%description -l uk.UTF-8
GIMP - це програма для створення та обробки зображень. Її вважають
GIMP має підтримку сценаріїв (scripting facility), проте багато з
включених до поставки сценаріїв припускають наявність шрифтів, які не
-можуть бути включені в дистрибутив. FTP-сайт GIMP містить пакет
-шрифтів, котрі ви можете встановити самостійно, в який входять всі
-шрифти, необхідні для роботи сценаріїв з поставки GIMP. Деякі з
-шрифтів мають вельми незвичайні ліцензійні умови; всі ліцензії
-включено в згаданий пакет. Завантажте
-ftp://ftp.gimp.org/pub/gimp/fonts/freefonts-0.10.tar.gz та
-ftp://ftp.gimp.org/pub/gimp/fonts/sharefonts-0.10.tar.gz. якщо хочете
-запускати сценарії без змін або ж виберіть встановалені у вас в
-системі шрифти перед запуском сценаріїв.
+можуть бути включені в дистрибутив.
%package libs
Summary: GIMP libraries
Summary(pl.UTF-8): Biblioteki GIMP-a
License: LGPL v2+
-Group: Libraries
-Requires: glib2 >= 1:2.16.1
-Requires: gtk+2 >= 2:2.12.5
-Requires: pango >= 1:1.18.0
+Group: X11/Libraries
+Requires: babl >= %{babl_ver}
+Requires: cairo >= 1.12.2
+Requires: gdk-pixbuf2 >= 2.30.8
+Requires: gegl >= %{gegl_ver}
+Requires: gexiv2 >= 0.10.6
+Requires: glib2 >= 1:2.56.2
+Requires: gtk+2 >= 2:2.24.32
+Requires: lcms2 >= 2.8
+Requires: pango >= 1:1.32.0
%description libs
This package contains GIMP libraries.
License: LGPL v2+
Group: X11/Development/Libraries
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
-Requires: glib2-devel >= 1:2.16.1
-Requires: gtk+2-devel >= 2:2.12.5
+Requires: cairo-devel >= 1.12.2
+Requires: gdk-pixbuf2-devel >= 2.30.8
+Requires: gegl-devel >= %{gegl_ver}
+Requires: glib2-devel >= 1:2.56.2
+Requires: gtk+2-devel >= 2:2.24.32
+Requires: pango-devel >= 1:1.32.0
%description devel
Header files for writing GIMP plugins and extensions.
Summary(pl.UTF-8): Dokumentacja API GIMPa
Group: Documentation
Requires: gtk-doc-common
+BuildArch: noarch
%description apidocs
GIMP API documentation.
Summary(pl.UTF-8): Wtyczka SVG dla GIMPa
Group: X11/Applications/Graphics
Requires: %{name} = %{epoch}:%{version}-%{release}
-Requires: librsvg >= 2.15.0
+Requires: librsvg >= 1:2.40.6
%description svg
SVG plugin for GIMP.
%prep
%setup -q
%patch0 -p1
-%patch1 -p1
-%patch2 -p1
+%patch3 -p1
+
+%{__sed} -i -e '1s,/usr/bin/env python,%{__python},' plug-ins/pygimp/plug-ins/gradients-save-as-css.py
%build
-rm acinclude.m4 m4macros/gtk-doc.m4
+%{__rm} acinclude.m4
%{__gtkdocize}
%{__libtoolize}
%{__aclocal} -I m4macros
%{__autoheader}
%{__automake}
%configure \
- %{!?with_gnomevfs:--disable-gnomevfs} \
%{!?with_python:--disable-python} \
+ --disable-silent-rules \
--enable-default-binary \
- --enable-gimp-remote \
--enable-gtk-doc \
--enable-static \
+ --without-appdata-test \
+ --with-bug-report-url="https://www.pld-linux.org/" \
--with-html-dir=%{_gtkdocdir} \
+ --with-lcms=2 \
+ %{!?with_libunwind:--without-libunwind} \
+ --with-sendmail=/usr/lib/sendmail \
%{?with_posix_shm:--with-shm=posix} \
%{!?with_webkit:--without-webkit}
ln -s gimptool-2.0 $RPM_BUILD_ROOT%{_bindir}/gimptool
echo '.so gimptool-2.0.1' > $RPM_BUILD_ROOT%{_mandir}/man1/gimptool.1
-# remove unneeded files
+# obsoleted by pkg-config
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libgimp*.la
+# dynamic modules loaded via gmodule
%{__rm} $RPM_BUILD_ROOT%{_libdir}/gimp/%{mver}/modules/*.{a,la}
+%if %{with python}
%{__rm} $RPM_BUILD_ROOT%{_libdir}/gimp/%{mver}/python/*.{a,la,py}
+%endif
+
+# don't hide {python,python2,python3} behind /usr/bin/env
+%{__sed} -i -e '1s,/usr/bin/env python,/usr/bin/python,' $RPM_BUILD_ROOT%{_libdir}/gimp/%{mver}/plug-ins/*/*.py
%find_lang %{name} --all-name
%post
umask 022
-[ ! -x /usr/bin/update-desktop-database ] || /usr/bin/update-desktop-database >/dev/null 2>&1 ||:
+[ ! -x %{_bindir}/update-desktop-database ] || %{_bindir}/update-desktop-database >/dev/null 2>&1 ||:
%update_icon_cache hicolor
%postun
umask 022
-[ ! -x /usr/bin/update-desktop-database ] || /usr/bin/update-desktop-database >/dev/null 2>&1
+[ ! -x %{_bindir}/update-desktop-database ] || %{_bindir}/update-desktop-database >/dev/null 2>&1
%update_icon_cache hicolor
%post libs -p /sbin/ldconfig
%doc AUTHORS ChangeLog LICENSE NEWS README
%doc docs/Wilber*
-%attr(755,root,root) %{_bindir}/gimp-2.6
+%attr(755,root,root) %{_bindir}/gimp-2.10
%attr(755,root,root) %{_bindir}/gimp
-%attr(755,root,root) %{_bindir}/gimp-console-2.6
+%attr(755,root,root) %{_bindir}/gimp-console-2.10
%attr(755,root,root) %{_bindir}/gimp-console
-%attr(755,root,root) %{_bindir}/gimp-remote-2.6
-%attr(755,root,root) %{_bindir}/gimp-remote
+%attr(755,root,root) %{_bindir}/gimp-test-clipboard-2.0
+%attr(755,root,root) %{_libexecdir}/gimp-debug-tool-2.0
+%{_datadir}/metainfo/gimp-data-extras.metainfo.xml
+%{_datadir}/metainfo/org.gimp.GIMP.appdata.xml
%{_desktopdir}/gimp.desktop
-%{_mandir}/man1/gimp-2.6.1*
+%{_iconsdir}/hicolor/*x*/apps/gimp.png
+%{_mandir}/man1/gimp-2.10.1*
%{_mandir}/man1/gimp.1*
-%{_mandir}/man1/gimp-console-2.6.1*
+%{_mandir}/man1/gimp-console-2.10.1*
%{_mandir}/man1/gimp-console.1*
-%{_mandir}/man1/gimp-remote-2.6.1*
-%{_mandir}/man1/gimp-remote.1*
-%{_mandir}/man5/gimprc-2.6.5*
+%{_mandir}/man5/gimprc-2.10.5*
%{_mandir}/man5/gimprc.5*
%dir %{_libdir}/gimp
%dir %{_datadir}/gimp
%dir %{_datadir}/gimp/%{mver}
+%{_datadir}/gimp/%{mver}/gimp-release
%{_datadir}/gimp/%{mver}/brushes
+%{_datadir}/gimp/%{mver}/dynamics
+%{_datadir}/gimp/%{mver}/file-raw
%{_datadir}/gimp/%{mver}/fractalexplorer
%{_datadir}/gimp/%{mver}/gfig
%{_datadir}/gimp/%{mver}/gflare
%{_datadir}/gimp/%{mver}/gimpressionist
%{_datadir}/gimp/%{mver}/gradients
+%{_datadir}/gimp/%{mver}/icons
%{_datadir}/gimp/%{mver}/images
%{_datadir}/gimp/%{mver}/menus
%{_datadir}/gimp/%{mver}/palettes
%{_datadir}/gimp/%{mver}/patterns
%{_datadir}/gimp/%{mver}/scripts
+%{_datadir}/gimp/%{mver}/tags
%{_datadir}/gimp/%{mver}/themes
%{_datadir}/gimp/%{mver}/tips
+%{_datadir}/gimp/%{mver}/tool-presets
+%{_datadir}/gimp/%{mver}/ui
%dir %{_sysconfdir}/%{name}
%dir %{_sysconfdir}/%{name}/%{mver}
-%config %verify(not md5 mtime) %{_sysconfdir}/%{name}/%{mver}/gimprc*
+%config %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{mver}/gimprc*
%config(noreplace) %{_sysconfdir}/%{name}/%{mver}/templaterc
%config %{_sysconfdir}/%{name}/%{mver}/controllerrc
%config %{_sysconfdir}/%{name}/%{mver}/gtkrc*
%config %{_sysconfdir}/%{name}/%{mver}/menurc
-%config %{_sysconfdir}/%{name}/%{mver}/ps-menurc
%config %{_sysconfdir}/%{name}/%{mver}/sessionrc
+%config %{_sysconfdir}/%{name}/%{mver}/toolrc
%config %{_sysconfdir}/%{name}/%{mver}/unitrc
-%{_iconsdir}/hicolor/*/apps/gimp.*
-
%files libs
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libgimp-2.0.so.*.*.*
%attr(755,root,root) %{_libdir}/libgimpthumb-2.0.so
%attr(755,root,root) %{_libdir}/libgimpui-2.0.so
%attr(755,root,root) %{_libdir}/libgimpwidgets-2.0.so
-%{_libdir}/libgimp-2.0.la
-%{_libdir}/libgimpbase-2.0.la
-%{_libdir}/libgimpcolor-2.0.la
-%{_libdir}/libgimpconfig-2.0.la
-%{_libdir}/libgimpmath-2.0.la
-%{_libdir}/libgimpmodule-2.0.la
-%{_libdir}/libgimpthumb-2.0.la
-%{_libdir}/libgimpui-2.0.la
-%{_libdir}/libgimpwidgets-2.0.la
%{_pkgconfigdir}/gimp-2.0.pc
%{_pkgconfigdir}/gimpthumb-2.0.pc
%{_pkgconfigdir}/gimpui-2.0.pc