# Maintainer: Imperator Storm # Maintainer: Eldred Habert # Contributor: Fredrick Brennan # Contributor: Andrew Bueide # Contributor: rouhannb # Contributor: Wilson E. Alvarez # Contributor: Benoit Favre # Contributor: Alexander Rødseth # Contributor: Kamil Biduś # Contributor: Jomar Milan pkgname=aseprite pkgver=1.3.14.2 _skiaver=m124 _skiahash=08a5439a6b pkgrel=2 pkgdesc='Create animated sprites and pixel art' arch=('x86_64') url="https://www.aseprite.org/" license=('LicenseRef-Aseprite-EULA') depends=(# ~ Aseprite's direct dependencies ~ # pixman is not linked to because we use Skia instead # harfbuzz is linked statically because Aseprite expects an older version cmark libcurl.so libgif.so libjpeg.so zlib libpng 'tinyxml2>=11.0.0' libfreetype.so libarchive.so libfmt.so libwebp.so libwebpmux.so libwebpdemux.so libjpeg.so hicolor-icon-theme # For installing Aseprite's icons # ~ Skia deps ~ # (Skia links dynamically to HarfBuzz, only Aseprite itself doesn't. >_<) libexpat.so=1-64 libharfbuzz.so=0-64 libgl # Already required by Aseprite: libjpeg-turbo libpng zlib freetype2 # These two are only reported by Namcap, but don't seem to be direct dependencies? libfontconfig.so libxcursor) makedepends=(# "Meta" dependencies cmake ninja git python # Aseprite (including e.g. LAF) libxi # Skia gn harfbuzz-icu # TODO: Benchmark clang v gcc # Fuck it, compiling with GCC>=13 is broken and I'm not gonna write a patch to fix it clang ) source=("https://github.com/aseprite/aseprite/releases/download/v$pkgver/Aseprite-v$pkgver-Source.zip" # Which branch a given build of Aseprite requires is noted in its `INSTALL.md` "skia-$_skiaver.tar.gz::https://github.com/aseprite/skia/archive/refs/tags/$_skiaver-$_skiahash.tar.gz" # forgive me, I couldn't figure out linker errors. skia-$_skiaver-icu::git+https://chromium.googlesource.com/chromium/deps/icu.git#commit=a0718d4f121727e30b8d52c7a189ebf5ab52421f aseprite-strings::git+https://github.com/aseprite/strings.git#commit=5660117490fe3eaf57774023b8152d42e828165f desktop.patch shared-fmt.patch # Based on https://patch-diff.githubusercontent.com/raw/aseprite/aseprite/pull/2535.patch shared-libarchive.patch # Based on https://patch-diff.githubusercontent.com/raw/aseprite/aseprite/pull/2523.patch shared-libwebp.patch shared-skia-deps.patch optional-pixman.patch fix-shared-tinyxml2.patch shared-libwebp-found.patch include_cstdint.patch shared_libjpeg-turbo.patch) noextract=("Aseprite-v$pkgver-Source.zip" "skia-$_skiaver.tar.gz" "aseprite-skia-$_skiaver-flutter.tar.gz") # Don't extract Aseprite or skia sources at the root sha256sums=('191ca47bc1b483a529ac9dc4826f53b9363bdd46feaa1f3638acac20096fed40' 'c2a567d6b8bb933a92615cbdee0de268d02c3a06863337ee8822eedab9ed66ba' 'b52f179a687ef2f91a52b696ab6581f4a37df5e88cb22040fa1ec6567cf0ebb1' 'ad46a79be08d94809fe007f39a0708e15012cb85bed9fb467e6b9a6d1c4853f8' '8b14e36939e930de581e95abf0591645aa0fcfd47161cf88b062917dbaaef7f9' 'c3591d376180d99ff8001c3d549c0bd18ef5e4d95f1755ccaa8e2fd65dd5d2b3' '96d75ecc951712e80734f476511658fcc3c91fc1655fe9a01453c3fc8c2a9274' '0f8adb959d7000697af453d6cf5aaf9984b74868008382aad541d2c29871c751' 'eb9f544e68b41b5cb1a9ab7a6648db51587e67e94f1a452cb5a84f3d224bf5d0' 'c2d14f9738a96a9db3695c00ac3d14b1312b6a595b151bd56e19422c86517654' 'ba02fc060dc930cfd66a8903a5d8a59f981753bdf416e91cc77a48c56c86aea3' '72605d6760c29eb98f2d8d8cf2cc9f9f7d7655bcf7cfc944f6a46b0957adbb14' '3381038fc5209600428801fa0b2b05ddee031b0926eaa75c114172e503916cd5' '0fa67d34f63cb4ed472b620ebad0656aeca646cb7f1069b7066ee91e6902fe6c') _debug="true" prepare() { # Extract Aseprite's sources mkdir -p aseprite bsdtar -xf "${noextract[0]}" -C aseprite # Extract Skia's sources mkdir -p skia bsdtar xf skia-$_skiaver.tar.gz --strip-components=1 -C skia # link to skia's icu mkdir -p skia/third_party/externals/ ln -s $srcdir/skia-$_skiaver-icu skia/third_party/externals/icu # Fix up Aseprite's desktop integration [[ -n $_debug ]] && echo desktop.patch env -C aseprite patch -tp1