%global krita_python 1 %global kf5_ver 5.44.0 %global versiondir %(echo %{version} | cut -d. -f1-3) %global zug_version 0.1.1 %global immer_version 0.8.1 %global lager_version 0.1.1 # Work around for eigen3 trying to enforce power10. # https://bugzilla.redhat.com/show_bug.cgi?id=1996330 %ifarch ppc64 ppc64le %global optflags %(echo %{optflags} -DEIGEN_ALTIVEC_DISABLE_MMA) %endif Name: krita Version: 5.2.2 Release: 6%{?dist} Summary: Krita is a sketching and painting program License: GPL-2.0-or-later URL: https://krita.org Source0: https://download.kde.org/%{?pre:un}stable/krita/%{versiondir}%{?pre:-%{pre}}/krita-%{version}%{?pre:-%{pre}}.tar.xz Source1: https://github.com/arximboldi/zug/archive/v%{zug_version}/zug-%{zug_version}.tar.gz Source2: https://github.com/arximboldi/immer/archive/v%{immer_version}/immer-%{immer_version}.tar.gz Source3: https://github.com/arximboldi/lager/archive/v%{lager_version}/lager-%{lager_version}.tar.gz ## downstream patches #org.kde.krita.appdata.xml: failed to parse org.kde.krita.appdata.xml: Error on line 505 char 110: already set 'Atau' and tried to replace with ' yang aktif' #org.kde.krita.appdata.xml: failed to parse org.kde.krita.appdata.xml: Error on line 514 char 120: already set 'xxOr the active' and tried to replace with 'xx' Patch1: krita-5.2.2-appstream_validate.patch Patch2: krita-5.2.2-ffwt.patch Patch3: krita-5.2.2-libunibreak.patch ## upstream patches %if 0%{?fedora} > 39 # https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} %endif BuildRequires: extra-cmake-modules >= %{kf5_ver} BuildRequires: kf5-rpm-macros BuildRequires: cmake(KF5Archive) BuildRequires: cmake(KF5Completion) BuildRequires: cmake(KF5Config) BuildRequires: cmake(KF5CoreAddons) BuildRequires: cmake(KF5Crash) BuildRequires: cmake(KF5GuiAddons) BuildRequires: cmake(KF5I18n) BuildRequires: cmake(KF5ItemModels) BuildRequires: cmake(KF5ItemViews) BuildRequires: cmake(KF5KIO) BuildRequires: cmake(KF5WidgetsAddons) BuildRequires: cmake(KF5WindowSystem) BuildRequires: cmake(KF5KDcraw) BuildRequires: qt5-qtbase-devel >= 5.12.0 BuildRequires: qt5-qtbase-private-devel >= 5.12.0 BuildRequires: cmake(Qt5Multimedia) BuildRequires: cmake(Qt5Svg) BuildRequires: cmake(Qt5Xml) BuildRequires: cmake(Qt5X11Extras) BuildRequires: boost-devel BuildRequires: giflib-devel >= 5 BuildRequires: libtiff-devel BuildRequires: ninja-build BuildRequires: pkgconfig(fftw3) BuildRequires: pkgconfig(eigen3) BuildRequires: pkgconfig(exiv2) BuildRequires: pkgconfig(gsl) BuildRequires: pkgconfig(kseexpr) BuildRequires: pkgconfig(lcms2) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(libheif) BuildRequires: pkgconfig(libinput) BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(libjxl) BuildRequires: pkgconfig(libopenjp2) BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libraw) BuildRequires: pkgconfig(libturbojpeg) BuildRequires: pkgconfig(libwebp) BuildRequires: pkgconfig(OpenColorIO) BuildRequires: pkgconfig(OpenEXR) BuildRequires: pkgconfig(poppler-qt5) BuildRequires: pkgconfig(xcb) BuildRequires: pkgconfig(xcb-util) BuildRequires: pkgconfig(xi) BuildRequires: quazip-qt5-devel BuildRequires: zlib-devel BuildRequires: desktop-file-utils BuildRequires: libappstream-glib BuildRequires: cmake(Mlt7) BuildRequires: pkgconfig(libmypaint) BuildRequires: pkgconfig(fribidi) >= 1.0.6 BuildRequires: catch2-devel BuildRequires: cmake(sdl2) BuildRequires: pkgconfig(libunibreak) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(harfbuzz) BuildRequires: pkgconfig(libmypaint) BuildRequires: cmake(xsimd) %if 0%{?krita_python} BuildRequires: python3-devel BuildRequires: python3-qt5-devel BuildRequires: python3-sip-devel BuildRequires: sip Requires: python3-qt5-base %{?_sip_api:Requires: python3-pyqt5-sip-api(%{_sip_api_major}) >= %{_sip_api}} %endif Obsoletes: calligra-krita < 3.0 Provides: calligra-krita = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description Krita is a sketching and painting program. It was created with the following types of art in mind: - concept art - texture or matte painting - illustrations and comics %package libs Summary: Shared libraries for %{name} Obsoletes: calligra-krita-libs < 3.0 Provides: calligra-krita-libs = %{version}-%{release} Requires: %{name} = %{version}-%{release} %description libs %{summary}. %package devel Summary: Development files for %{name} Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description devel %{summary}. %prep %setup -q -n %{name}-%{version}%{?pre:-%{pre}} -a 1 -a 2 -a 3 %patch -P1 -p1 %patch -P2 -p1 %patch -P3 -p1 %build # build zug %cmake -Dzug_BUILD_EXAMPLES=FALSE \ -Dzug_BUILD_DOCS:BOOL=FALSE \ -B zug -S zug-%{zug_version}/ DESTDIR=$(pwd) cmake --install zug --prefix / # build immer %cmake -Dimmer_BUILD_DOCS:BOOL=FALSE \ -Dimmer_BUILD_EXAMPLES:BOOL=FALSE \ -Dimmer_BUILD_EXTRAS:BOOL=FALSE \ -DDISABLE_WERROR:BOOL=TRUE \ -B immer -S immer-%{immer_version}/ DESTDIR=$(pwd) cmake --install immer --prefix / # build lager %cmake -Dlager_BUILD_EXAMPLES:BOOL=FALSE \ -Dlager_BUILD_DEBUGGER_EXAMPLES:BOOL=FALSE \ -Dlager_BUILD_DOCS:BOOL=FALSE -DCMAKE_PREFIX_PATH=$(pwd) \ -B lager -S lager-%{lager_version}/ DESTDIR=$(pwd) cmake --install lager --prefix / # build krita %cmake_kf5 -G Ninja \ -DCMAKE_PREFIX_PATH=$(pwd) \ -DBUILD_TESTING:BOOL=OFF %cmake_build %install %cmake_install ## unpackaged files # omit headers, avoid need for -devel subpkg for now rm -fv %{buildroot}%{_includedir}/* %find_lang %{name} --all-name --with-html %check appstream-util validate-relax --nonet %{buildroot}%{_kf5_metainfodir}/org.kde.krita.appdata.xml desktop-file-validate %{buildroot}%{_kf5_datadir}/applications/org.kde.krita.desktop %files -f %{name}.lang %doc README.md %license COPYING* %config(noreplace) %{_sysconfdir}/xdg/kritarc %{_kf5_bindir}/krita %{_kf5_bindir}/krita_version %{_kf5_libdir}/kritaplugins/ %{_kf5_metainfodir}/org.kde.krita.appdata.xml %{_kf5_datadir}/applications/org.kde.krita.desktop %{_kf5_datadir}/applications/krita*.desktop %{_kf5_datadir}/color-schemes/* %{_kf5_datadir}/color/icc/* %{_kf5_datadir}/icons/hicolor/*/*/* %{_kf5_datadir}/krita/ %{_kf5_datadir}/kritaplugins/ # fixme: /org/krita -> /org/kde/krita ? %{_kf5_qmldir}/org/krita/ %if 0%{?krita_python} %{_kf5_bindir}/kritarunner %{_kf5_libdir}/krita-python-libs/ %endif %files libs %{_kf5_libdir}/libkrita*.so.* #files devel %{_kf5_libdir}/libkrita*.so #{_includedir}/*.h* %changelog * Thu Mar 07 2024 Dominik Mierzejewski - 5.2.2-6 - add missing BuildRequires for JPEG-XL support * Wed Feb 14 2024 Sérgio Basto - 5.2.2-5 - Rebuild for jpegxl (libjxl) 0.9.2 with soname bump * Tue Feb 06 2024 František Zatloukal - 5.2.2-4 - Rebuilt for turbojpeg 3.0.2 * Thu Jan 25 2024 Fedora Release Engineering - 5.2.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sun Jan 21 2024 Fedora Release Engineering - 5.2.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Tue Jan 02 2024 Than Ngo - 5.2.2-1 - 5.2.2 * Thu Jul 20 2023 Fedora Release Engineering - 5.1.5-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Mon Jul 03 2023 Python Maint - 5.1.5-4 - Rebuilt for Python 3.12 * Sun Jun 18 2023 Sérgio Basto - 5.1.5-3 - Mass rebuild for jpegxl-0.8.1 * Fri May 05 2023 Nicolas Chauvet - 5.1.5-2 - Rebuilt for quazip 1.4 * Thu Apr 13 2023 Vitaly Zaitsev - 5.1.5-1 - Updated to version 5.1.5. - Enabled libheif support. * Thu Jan 19 2023 Fedora Release Engineering - 5.1.4-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Fri Jan 13 2023 Richard Shaw - 5.1.4-3 - Rebuild for OpenColorIO. * Tue Dec 20 2022 Gwyn Ciesla - 5.1.4-2 - LibRaw rebuild * Sat Dec 17 2022 Vitaly Zaitsev - 5.1.4-1 - Updated to version 5.1.4. * Tue Nov 08 2022 Vitaly Zaitsev - 5.1.3-1 - Updated to version 5.1.3. * Sat Sep 17 2022 Vitaly Zaitsev - 5.1.1-1 - Updated to version 5.1.1. * Tue Sep 06 2022 Rex Dieter - 5.1.0-2 - validate appstream (#2123966) * Fri Aug 26 2022 Vitaly Zaitsev - 5.1.0-1 - Updated to version 5.1.0. * Tue Aug 23 2022 Mamoru TASAKA - 5.0.8-5 - Rebuild for gsl-2.7.1 * Thu Jul 21 2022 Fedora Release Engineering - 5.0.8-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Wed Jul 06 2022 Rex Dieter - 5.0.8-3 - enable G'Mic plugin support - drop heif (not in fedora) * Wed Jul 06 2022 Rex Dieter - 5.0.8-2 - enable heif, openjpeg, webp support * Mon Jun 27 2022 Rex Dieter 5.0.8-1 - 5.0.8 * Mon Jun 27 2022 Rex Dieter 5.0.6-1 - 5.0.6 * Mon Apr 18 2022 Miro Hrončok - 5.0.2-2 - Rebuilt for quazip 1.3 * Sat Jan 22 2022 Vitaly Zaitsev - 5.0.2-1 - Updated to version 5.0.2. * Thu Jan 20 2022 Fedora Release Engineering - 5.0.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Tue Dec 28 2021 Vitaly Zaitsev - 5.0.0-1 - Updated to version 5.0.0. * Fri Nov 12 2021 Rex Dieter - 4.4.8-3 - disable python bindings * Sat Oct 30 2021 Rex Dieter - 4.4.8-2 - -libs: revert part of the "SPEC cleanup", we don't want main pkg pulled in for multilib * Sun Sep 26 2021 Vitaly Zaitsev - 4.4.8-1 - Updated to version 4.4.8. - Performed minor SPEC cleanup. * Mon Aug 23 2021 Richard Shaw - 4.4.5-10 - Rebuild with opencolorio1 compat package. * Sun Aug 22 2021 Richard Shaw - 4.4.5-9 - Rebuild with opencolorio1 compat package. * Sun Aug 22 2021 Richard Shaw - 4.4.5-8 - Rebuild for OpenEXR/Imath 3.1. * Thu Aug 19 2021 Björn Esser - 4.4.5-7 - Rebuild (quazip) * Fri Aug 13 2021 Richard Shaw - 4.4.5-6 - Rebuild with opencolorio1 compat package. * Sun Aug 01 2021 Rex Dieter - 4.4.5-5 - Pull in upstream OpenEXR-3 build fix * Thu Jul 22 2021 Fedora Release Engineering - 4.4.5-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Sat Jul 10 2021 Scott Talbert - 4.4.5-3 - Revert back to building with sip 4 due to no sip 6 support * Sat Jul 03 2021 Scott Talbert - 4.4.5-2 - Update to build with sip5 * Mon Jun 28 2021 Rex Dieter - 4.4.5-1 - 4.4.5 * Fri Jun 04 2021 Python Maint - 4.4.3-0.3.beta1 - Rebuilt for Python 3.10 * Thu Mar 11 2021 Rex Dieter - 4.4.3-0.2.beta1 - rebuild without -gcc11.patch (fixes landed in qt5-qtbase instead) * Mon Mar 08 2021 Rex Dieter - 4.4.3-0.1.beta1 - 4.4.3-beta1 * Mon Mar 08 2021 Rex Dieter - 4.4.2-4 - .spec cleanup - backport crash fix for scaled displays * Tue Jan 26 2021 Fedora Release Engineering - 4.4.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Wed Jan 20 2021 Rex Dieter - 4.4.2-2 - 4.4.2 * Fri Jan 01 2021 Richard Shaw - 4.4.1-2 - Rebuild for OpenEXR 2.5.3. * Tue Nov 03 2020 Rex Dieter - 4.4.1-1 - 4.4.1 * Wed Oct 28 2020 Marie Loise Nolden - 4.4.0-1 - 4.4.0 * Wed Oct 28 2020 Jeff Law - 4.3.0-3 - Fix missing #includes for gcc-11 * Tue Jul 28 2020 Fedora Release Engineering - 4.3.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Mon Jun 29 2020 Rex Dieter - 4.3.0-1 - 5.3.0 * Tue May 26 2020 Miro Hrončok - 4.2.9-4 - Rebuilt for Python 3.9 * Mon May 11 2020 Gwyn Ciesla - 4.2.9-3 - Rebuild for new LibRaw * Mon Mar 30 2020 Rex Dieter - 4.2.9-2 - drop _legacy_common_support FTBFS workaround * Mon Mar 23 2020 Rex Dieter - 4.2.9-1 - 4.2.9 * Wed Jan 29 2020 Fedora Release Engineering - 4.2.8.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Fri Jan 17 2020 Marek Kasik - 4.2.8.2-2 - Rebuild for poppler-0.84.0 * Sat Nov 30 2019 Rex Dieter - 4.2.8.2-1 - 4.2.8.2 * Fri Oct 18 2019 Zbigniew Jędrzejewski-Szmek - 4.2.6-2 - Restore python support (#1735972) * Wed Sep 11 2019 Rex Dieter 4.2.6-1 - 4.2.6 * Wed Aug 21 2019 Rex Dieter - 4.2.5-5 - disable python support on f32+ until FTBFS issues are sorted out * Wed Aug 21 2019 Miro Hrončok - 4.2.5-4 - Rebuilt for Python 3.8 * Tue Aug 20 2019 Susi Lehtola - 4.2.5-3 - Rebuilt for GSL 2.6. * Mon Aug 19 2019 Miro Hrončok - 4.2.5-2 - Rebuilt for Python 3.8 * Sat Aug 17 2019 Rex Dieter - 4.2.5-1 - 4.2.5 * Tue Aug 13 2019 Rex Dieter - 4.2.3-1 - 4.2.3 * Thu Jul 25 2019 Fedora Release Engineering - 4.2.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Mon Jul 01 2019 Rex Dieter - 4.2.2-1 - 4.2.2 * Tue Jun 04 2019 Rex Dieter - 4.2.1-1 - 4.2.1 * Sun May 12 2019 Rex Dieter - 4.1.8-5 - add PyQt5-related runtime dep(s) * Sat May 11 2019 Rex Dieter 4.1.8-4 - enable python support * Thu Apr 11 2019 Richard Shaw - 4.1.8-3 - Rebuild for OpenEXR 2.3.0. * Thu Apr 04 2019 Richard Shaw - 4.1.8-2 - Rebuild for OpenColorIO 1.1.1. * Wed Mar 06 2019 Rex Dieter - 4.1.8-1 - 4.1.8 * Thu Jan 31 2019 Kalev Lember - 4.1.7-6 - Rebuilt for Boost 1.69 * Wed Jan 30 2019 Rex Dieter - 4.1.7-5 - rebuild (exiv2) * Fri Jan 25 2019 Jonathan Wakely - 4.1.7-4 - Rebuilt for Boost 1.69 * Tue Jan 15 2019 Rex Dieter - 4.1.7-3 - rebuild * Mon Dec 17 2018 Rex Dieter - 4.1.7-2 - pull in upstream fixes * Thu Dec 13 2018 Rex Dieter - 4.1.7-1 - 4.1.7 * Sun Oct 14 2018 Rex Dieter - 4.1.5-1 - 4.1.5 * Tue Aug 28 2018 Rex Dieter - 4.1.1-2 - pull in candidate upstream LibRaw-0.19/FTBFS fix * Mon Jul 16 2018 Rex Dieter - 4.1.1-1 - krita-4.1.1 (#1601439) * Fri Jul 13 2018 Fedora Release Engineering - 4.1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Wed Jun 27 2018 Rex Dieter - 4.1.0-1 - krita-4.1.0 (#1595237) * Wed Jun 13 2018 Rex Dieter - 4.0.4-1 - krita-4.0.4 (#1590798) * Sat May 12 2018 Rex Dieter - 4.0.3-1 - krita-4.0.3 * Tue May 08 2018 Rex Dieter - 4.0.2-1 - krita-4.0.2 (#1575789) * Mon Apr 09 2018 Rex Dieter - 4.0.1-1 - krita-4.0.1 (#1557986) * Fri Mar 23 2018 Marek Kasik - 4.0.0-2 - Rebuild for poppler-0.63.0 * Tue Mar 20 2018 Rex Dieter - 4.0.0-1 - krita-4.0.0 (#1557986) * Wed Feb 07 2018 Fedora Release Engineering - 3.3.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Fri Jan 26 2018 Rex Dieter - 3.3.3-1 - krita-3.3.3 (#1532426) * Tue Jan 23 2018 Jonathan Wakely - 3.3.2.1-4 - Rebuilt for Boost 1.66 * Sat Jan 13 2018 Richard Shaw - 3.3.2.1-3 - Rebuild for OpenColorIO 1.1.0. * Thu Jan 11 2018 Igor Gnatenko - 3.3.2.1-2 - Remove obsolete scriptlets * Thu Nov 02 2017 Rex Dieter - 3.3.2.1-1 - krita-3.3.2.1 * Wed Oct 11 2017 Rex Dieter - 3.3.1-1 - krita-3.3.1 * Mon Sep 25 2017 Rex Dieter - 3.3.0-1 - krita-3.3.0 * Fri Aug 25 2017 Rex Dieter - 3.2.1-1 - krita-3.2.1 * Wed Aug 16 2017 Rex Dieter - 3.2.0-1 - krita-3.2.0, clean/update build deps * Mon Jul 31 2017 Rex Dieter - 3.1.4-6 - rebuild (gsl) * Wed Jul 26 2017 Fedora Release Engineering - 3.1.4-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Wed Jul 19 2017 Jonathan Wakely - 3.1.4-4 - Rebuilt for s390x binutils bug * Tue Jul 18 2017 Jonathan Wakely - 3.1.4-3 - Rebuilt for Boost 1.64 * Fri May 26 2017 Rex Dieter - 3.1.4-2 - backport Qt 5.9 FTBFS fix, more robust %%find_lang usage * Fri May 26 2017 Rex Dieter - 3.1.4-1 - 3.1.4 (#1448598) * Mon May 15 2017 Fedora Release Engineering - 3.1.2.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild * Tue May 02 2017 Rex Dieter - 3.1.2.1-2 - rebuild (exiv2) * Mon Mar 20 2017 Rex Dieter - 3.1.2.1-1 - krita-3.1.2.1 * Fri Feb 10 2017 Fedora Release Engineering - 3.1.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Thu Dec 29 2016 Rich Mattes - 3.1.1-3 - Rebuild for eigen3-3.3.1 * Wed Dec 28 2016 Jon Ciesla - 3.1.1-2 - Rebuild for new LibRaw. * Mon Dec 19 2016 Helio Chissini de Castro - 3.1.1-1 - New upstream version * Sun Oct 09 2016 Rex Dieter - 3.0.1-1 - 3.0.1 * Sun Oct 09 2016 Rex Dieter - 3.0-4 - -libs: fix Obsoletes, drop %%exclude * Thu Jun 02 2016 Than Ngo - 3.0-3 - rebuild against new kf5 (workaround for the build failure on arm with gcc6 bz#1342095) * Tue May 31 2016 Helio Chissini de Castro - 3.0-2 - Fixed requested changes to package reviewing - Added official tarball. * Mon May 30 2016 Helio Chissini de Castro - 3.0-1 - Krita 3.0 upstream release * Tue May 24 2016 Helio Chissini de Castro - 2.99.91-1 - New upstream devel release - Krita sketch gone * Mon May 09 2016 Helio Chissini de Castro - 2.99.90-1 - Initial new Krita package