SUMMARY="Professional FREE and open source painting program" DESCRIPTION="Krita is a free and open-source raster graphics editor designed primarily \ for digital painting and animation purposes. It features a low-distract UI, high-quality \ OpenGL accelerated canvas, color management support, advanced brush engine, non-destructive \ layers and masks, group-based layer management, vector artwork support and switchable customization profiles." HOMEPAGE="https://www.krita.org/" COPYRIGHT="2010-2026 KDE Organisation" LICENSE="GNU LGPL v2" REVISION="1" tarVersion="6.0.1" SOURCE_URI="https://download.kde.org/stable/krita/$tarVersion/krita-$tarVersion.tar.gz" CHECKSUM_SHA256="08e75d14c805261fc8228bec16def4705f6e9cfb0191e71bd04cc4c0e182848a" SOURCE_DIR="krita-$tarVersion" PATCHES="krita-$tarVersion.patchset" ADDITIONAL_FILES=" krita.rdef.in icons.zip " ARCHITECTURES="all !x86_gcc2" SECONDARY_ARCHITECTURES="x86" PROVIDES=" krita$secondaryArchSuffix = $portVersion app:Krita = $portVersion " REQUIRES=" haiku$secondaryArchSuffix lib:libavcodec$secondaryArchSuffix lib:libavdevice$secondaryArchSuffix lib:libavformat$secondaryArchSuffix lib:libavutil$secondaryArchSuffix lib:libboost_filesystem$secondaryArchSuffix lib:libexiv2$secondaryArchSuffix lib:libexpat$secondaryArchSuffix lib:libfftw3$secondaryArchSuffix lib:libfreetype$secondaryArchSuffix lib:libfribidi$secondaryArchSuffix lib:libfontconfig$secondaryArchSuffix lib:libgif$secondaryArchSuffix lib:libgsl$secondaryArchSuffix lib:libharfbuzz$secondaryArchSuffix # lib:libheif$secondaryArchSuffix lib:libiconv$secondaryArchSuffix lib:libIex_3_2$secondaryArchSuffix lib:libIlmThread_3_2$secondaryArchSuffix lib:libImath_3_1$secondaryArchSuffix lib:libintl$secondaryArchSuffix lib:libjpeg$secondaryArchSuffix lib:libjson_c$secondaryArchSuffix lib:libjxl$secondaryArchSuffix lib:libKF5Archive$secondaryArchSuffix lib:libKF5Auth$secondaryArchSuffix lib:libKF5Bookmarks$secondaryArchSuffix lib:libKF5Codecs$secondaryArchSuffix lib:libKF5Completion$secondaryArchSuffix lib:libKF5ConfigCore$secondaryArchSuffix lib:libKF5ConfigGui$secondaryArchSuffix lib:libKF5ConfigWidgets$secondaryArchSuffix lib:libKF5CoreAddons$secondaryArchSuffix lib:libKF5Crash$secondaryArchSuffix lib:libKF5GuiAddons$secondaryArchSuffix lib:libKF5I18n$secondaryArchSuffix lib:libKF5IconThemes$secondaryArchSuffix lib:libKF5ItemModels$secondaryArchSuffix lib:libKF5ItemViews$secondaryArchSuffix lib:libKF5JobWidgets$secondaryArchSuffix lib:libKF5KDcraw$secondaryArchSuffix lib:libKF5KDELibs4Support$secondaryArchSuffix lib:libKF5KIOCore$secondaryArchSuffix lib:libKF5KIOFileWidgets$secondaryArchSuffix lib:libKF5KIOWidgets$secondaryArchSuffix lib:libKF5Notifications$secondaryArchSuffix lib:libKF5Parts$secondaryArchSuffix lib:libKF5Service$secondaryArchSuffix lib:libKF5Solid$secondaryArchSuffix lib:libKF5SonnetUi$secondaryArchSuffix lib:libKF5TextWidgets$secondaryArchSuffix lib:libKF5UnitConversion$secondaryArchSuffix lib:libKF5WidgetsAddons$secondaryArchSuffix lib:libKF5WindowSystem$secondaryArchSuffix lib:libKF5XmlGui$secondaryArchSuffix lib:libKSeExpr$secondaryArchSuffix lib:liblcms2$secondaryArchSuffix lib:libmlt++_7$secondaryArchSuffix lib:libmypaint$secondaryArchSuffix lib:libOpenColorIO$secondaryArchSuffix lib:libOpenEXR_3_2$secondaryArchSuffix lib:libOpenEXRUtil_3_2$secondaryArchSuffix lib:libopenjp2$secondaryArchSuffix lib:libpng16$secondaryArchSuffix lib:libpoppler$secondaryArchSuffix lib:libpoppler_qt5$secondaryArchSuffix lib:libQt5Concurrent$secondaryArchSuffix lib:libQt5Core$secondaryArchSuffix lib:libQt5Gui$secondaryArchSuffix lib:libQt5Multimedia$secondaryArchSuffix lib:libQt5Network$secondaryArchSuffix lib:libQt5PrintSupport$secondaryArchSuffix lib:libQt5Svg$secondaryArchSuffix lib:libQt5Widgets$secondaryArchSuffix lib:libQt5Xml$secondaryArchSuffix lib:libquazip5$secondaryArchSuffix lib:libraw$secondaryArchSuffix lib:libswscale$secondaryArchSuffix lib:libtiff$secondaryArchSuffix lib:libturbojpeg$secondaryArchSuffix lib:libunibreak$secondaryArchSuffix lib:libwebp$secondaryArchSuffix lib:libz$secondaryArchSuffix " BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel extra_cmake_modules$secondaryArchSuffix # pyqt5${secondaryArchSuffix}_python310 devel:eigen$secondaryArchSuffix >= 5 devel:immer$secondaryArchSuffix devel:lager$secondaryArchSuffix devel:zug$secondaryArchSuffix devel:xsimd devel:libavcodec$secondaryArchSuffix devel:libavdevice$secondaryArchSuffix devel:libavformat$secondaryArchSuffix devel:libavutil$secondaryArchSuffix devel:libboost_filesystem$secondaryArchSuffix >= 1.90.0 devel:libexiv2$secondaryArchSuffix devel:libexpat$secondaryArchSuffix devel:libfftw3$secondaryArchSuffix devel:libfreetype$secondaryArchSuffix devel:libfribidi$secondaryArchSuffix devel:libfontconfig$secondaryArchSuffix devel:libgif$secondaryArchSuffix >= 7 devel:libgsl$secondaryArchSuffix devel:libharfbuzz$secondaryArchSuffix # devel:libheif$secondaryArchSuffix devel:libiconv$secondaryArchSuffix devel:libIex_3_2$secondaryArchSuffix devel:libIlmThread_3_2$secondaryArchSuffix devel:libImath_3_1$secondaryArchSuffix devel:libjpeg$secondaryArchSuffix devel:libjson_c$secondaryArchSuffix devel:libjxl$secondaryArchSuffix >= 0.11 devel:libKF5Archive$secondaryArchSuffix devel:libKF5Auth$secondaryArchSuffix devel:libKF5Bookmarks$secondaryArchSuffix devel:libKF5Codecs$secondaryArchSuffix devel:libKF5Completion$secondaryArchSuffix devel:libKF5ConfigCore$secondaryArchSuffix devel:libKF5ConfigGui$secondaryArchSuffix devel:libKF5ConfigWidgets$secondaryArchSuffix devel:libKF5CoreAddons$secondaryArchSuffix devel:libKF5Crash$secondaryArchSuffix devel:libKF5GuiAddons$secondaryArchSuffix devel:libKF5I18n$secondaryArchSuffix devel:libKF5IconThemes$secondaryArchSuffix devel:libKF5ItemModels$secondaryArchSuffix devel:libKF5ItemViews$secondaryArchSuffix devel:libKF5JobWidgets$secondaryArchSuffix devel:libKF5KDcraw$secondaryArchSuffix devel:libKF5KDELibs4Support$secondaryArchSuffix devel:libKF5KIOCore$secondaryArchSuffix devel:libKF5KIOFileWidgets$secondaryArchSuffix devel:libKF5KIOWidgets$secondaryArchSuffix devel:libKF5Notifications$secondaryArchSuffix devel:libKF5Parts$secondaryArchSuffix devel:libKF5Service$secondaryArchSuffix devel:libKF5Solid$secondaryArchSuffix devel:libKF5SonnetUi$secondaryArchSuffix devel:libKF5TextWidgets$secondaryArchSuffix devel:libKF5UnitConversion$secondaryArchSuffix devel:libKF5WidgetsAddons$secondaryArchSuffix devel:libKF5WindowSystem$secondaryArchSuffix devel:libKF5XmlGui$secondaryArchSuffix devel:libKSeExpr$secondaryArchSuffix >= 4 devel:liblcms2$secondaryArchSuffix devel:libmlt_7$secondaryArchSuffix devel:libmypaint$secondaryArchSuffix devel:libOpenColorIO$secondaryArchSuffix devel:libOpenEXR_3_2$secondaryArchSuffix devel:libOpenEXRUtil_3_2$secondaryArchSuffix devel:libopenjp2$secondaryArchSuffix devel:libpng16$secondaryArchSuffix devel:libpoppler$secondaryArchSuffix >= 155 devel:libpoppler_qt5$secondaryArchSuffix >= 1.39 # devel:libpython3.10$secondaryArchSuffix devel:libQt5Core$secondaryArchSuffix devel:libquazip5$secondaryArchSuffix devel:libSDL2_2.0$secondaryArchSuffix devel:libswscale$secondaryArchSuffix devel:libtiff$secondaryArchSuffix devel:libturbojpeg$secondaryArchSuffix devel:libunibreak$secondaryArchSuffix >= 5 devel:libwebp$secondaryArchSuffix devel:libz$secondaryArchSuffix " BUILD_PREREQUIRES=" cmd:cmake cmd:g++$secondaryArchSuffix cmd:lrelease$secondaryArchSuffix >= 5 cmd:make cmd:pkg_config$secondaryArchSuffix # cmd:python3.10 cmd:unzip # sip_python310 " PATCH() { unzip -o $sourceDir/../../additional-files/icons.zip -d $sourceDir/krita/pics } BUILD() { cmake -B build -S . \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=$appsDir/Krita \ -DSHARE_INSTALL_PREFIX=$appsDir/Krita/share \ -DECM_DIR=/system/data/cmake/Modules/ECM/cmake \ -DQML_INSTALL_DIR=$dataDir/Qt5/qml \ -DBUILD_TESTING=FALSE \ -DHIDE_SAFE_ASSERTS=TRUE \ -DUSE_LOCK_FREE_HASH_TABLE=FALSE \ -DCMAKE_AUTOGEN_PARALLEL=1 \ -Wno-dev make -C build $jobArgs } INSTALL() { make -C build install rm -rf $appsDir/Krita/{include,etc} rm -rf $appsDir/Krita/share/{applications,icons,metainfo} mkdir -p $dataDir mv $appsDir/Krita/share/locale $dataDir mv $appsDir/Krita/bin/krita $appsDir/Krita/Krita rm -rf $appsDir/Krita/bin local APP_SIGNATURE="application/x-vnd.qt5-krita" local MAJOR="`echo "$portVersion" | cut -d. -f1`" local MIDDLE="`echo "$portVersion" | cut -d. -f2`" local MINOR="`echo "$portVersion" | cut -d. -f3`" local LONG_INFO="$SUMMARY" sed \ -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ -e "s|@MAJOR@|$MAJOR|" \ -e "s|@MIDDLE@|$MIDDLE|" \ -e "s|@MINOR@|$MINOR|" \ -e "s|@LONG_INFO@|$LONG_INFO|" \ $portDir/additional-files/krita.rdef.in > krita.rdef addResourcesToBinaries krita.rdef $appsDir/Krita/Krita mimeset -f $appsDir/Krita/Krita addAppDeskbarSymlink $appsDir/Krita/Krita }