summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD90
1 files changed, 43 insertions, 47 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 5e36a97bbe1e..d9a8bc7a6070 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -10,54 +10,52 @@
_lua=luajit
pkgname=powder-toy
-pkgver=96.2.350
+_appexe="${pkgname}"
+_appid=uk.co.powdertoy.tpt
+_appvendor=powdertoy
+pkgver=97.0.352
pkgrel=1
pkgdesc="Desktop version of the classic falling sand physics sandbox, simulates air pressure, velocity & heat!"
arch=(x86_64 i686)
-depends=('glibc' 'libx11' 'sdl2' "$_lua" 'fftw' 'zlib' 'curl' 'hicolor-icon-theme')
-makedepends=('meson' 'ninja' 'libicns')
+depends=('glibc' 'libx11' 'sdl2' "$_lua" 'fftw' 'zlib' 'libpng' 'curl' 'jsoncpp' 'hicolor-icon-theme')
+makedepends=('meson' 'ninja')
url="https://powdertoy.co.uk/"
license=('GPL3')
install="${pkgname}.install"
-source=("${pkgname}-${pkgver}.tar.gz::https://github.com/The-Powder-Toy/The-Powder-Toy/archive/refs/tags/v${pkgver}.tar.gz"
- "${pkgname}.sh"
- "${pkgname}.desktop"
- "${pkgname}-open.desktop"
- "${pkgname}-ptsave.desktop")
-sha256sums=('d95cbadee22632687661e8fc488bd64405d81c0dca737e16420f26e93ea5bf58'
- 'b5d181c3141715b7dced8813cae6d07d2adc03bca2a7efe527592740de2d45e2'
- '265f530be7597fcc7bbaf2690fd517fe4f8f18372c808a90ddef49a604c8d455'
- '398f6d068dd37e12989f4132ea5966886b14036bac07a589991b283d242b4ca5'
- 'fcbf035d286d805dced55f147d649aa0bc74d3be873d5430de92d175d9f59431')
+source=("${pkgname}-${pkgver}.tar.gz::https://github.com/The-Powder-Toy/The-Powder-Toy/archive/refs/tags/v${pkgver}.tar.gz")
+sha256sums=('3ab27e1b9a84db1da7342e61232ad5be981ca1ddf001c4924fd08b61cc8d287a')
build() {
cd "The-Powder-Toy-${pkgver}"
- # extract document icons from macOS .icns files
- pushd >/dev/null resources
- icns2png -x document.icns
- popd >/dev/null
+ local opt_lua opt_sse
- local extra_flags=()
-
- extra_flags+=(-Dignore_updates=true)
- extra_flags+=(-Dinstall_check=false)
+ case "$_lua" in
+ luajit) opt_lua=luajit ;;
+ lua51) opt_lua=lua5.1 ;;
+ lua52) opt_lua=lua5.2 ;;
+ *) opt_lua=none ;;
+ esac
if grep -q -i pni /proc/cpuinfo; then
- extra_flags+=(-Dx86_sse=sse3)
+ opt_sse=sse3
elif grep -q -i sse2 /proc/cpuinfo; then
- extra_flags+=(-Dx86_sse=sse2)
+ opt_sse=sse2
elif grep -q -i sse /proc/cpuinfo; then
- extra_flags+=(-Dx86_sse=sse)
+ opt_sse=sse
else
- extra_flags+=(-Dx86_sse=none)
+ opt_sse=none
fi
- case "$_lua" in
- luajit) extra_flags+=(-Dlua=luajit) ;;
- lua51) extra_flags+=(-Dlua=lua5.1) ;;
- lua52) extra_flags+=(-Dlua=lua5.2) ;;
- esac
+ local extra_flags=(
+ -Dignore_updates=true
+ -Dinstall_check=false
+ -Dapp_exe="${_appexe}"
+ -Dapp_id="${_appid}"
+ -Dapp_vendor="${_appvendor}"
+ -Dlua="${opt_lua}"
+ -Dx86_sse="${opt_sse}"
+ )
msg2 "building ${pkgname} with the following extra flags: ${extra_flags[*]}"
arch-meson --buildtype=release build "${extra_flags[@]}"
@@ -70,25 +68,23 @@ check() {
}
package() {
- install -Dm755 "${pkgname}.sh" "${pkgdir}/usr/bin/${pkgname}"
- install -Dm644 "${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
- install -Dm644 "${pkgname}-open.desktop" "${pkgdir}/usr/share/applications/${pkgname}-open.desktop"
- install -Dm644 "${pkgname}-ptsave.desktop" "${pkgdir}/usr/share/applications/${pkgname}-ptsave.desktop"
-
cd "The-Powder-Toy-${pkgver}"
- install -Dm755 "build/powder" "${pkgdir}/usr/lib/${pkgname}/${pkgname}"
- install -Dm644 "resources/powdertoy-save.xml" "${pkgdir}/usr/share/mime/packages/${pkgname}-save.xml"
- install -Dm644 "resources/powder.appdata.xml" "${pkgdir}/usr/share/metainfo/${pkgname}.appdata.xml"
- install -Dm644 "resources/powder.man" "${pkgdir}/usr/share/man/man6/${pkgname}.6"
+ install -Dm755 "build/${_appexe}" "${pkgdir}/usr/bin/${_appexe}"
+ install -Dm644 "build/resources/powder.desktop" "${pkgdir}/usr/share/applications/${_appid}.desktop"
+ install -Dm644 "build/resources/appdata.xml" "${pkgdir}/usr/share/metainfo/${_appid}.appdata.xml"
+ install -Dm644 "resources/save.xml" "${pkgdir}/usr/share/mime/packages/${_appvendor}-save.xml"
+ install -Dm644 "resources/powder.man" "${pkgdir}/usr/share/man/man6/${_appexe}.6"
- local icon_size
- for icon_size in 16 24 32 48 128 256; do
- install -Dm644 "resources/icon/powder-${icon_size}.png" \
- "${pkgdir}/usr/share/icons/hicolor/${icon_size}x${icon_size}/apps/${pkgname}.png"
- done
- for icon_size in 16 32 128 256 512; do
- install -Dm644 "resources/document_${icon_size}x${icon_size}x32.png" \
- "${pkgdir}/usr/share/icons/hicolor/${icon_size}x${icon_size}/mimetypes/application-vnd.${pkgname}.save.png"
+ local theme_dir="${pkgdir}/usr/share/icons/hicolor" mimetype="application-vnd.powdertoy.save"
+ install -Dm644 "resources/icon_exe.svg" "${theme_dir}/scalable/apps/${_appvendor}-${_appexe}.svg"
+ install -Dm644 "resources/icon_cps.svg" "${theme_dir}/scalable/mimetypes/${mimetype}.svg"
+ install -Dm644 "resources/generated_icons/icon_exe.png" "${theme_dir}/256x256/apps/${_appvendor}-${_appexe}.png"
+ install -Dm644 "resources/generated_icons/icon_cps.png" "${theme_dir}/256x256/mimetypes/${mimetype}.png"
+ local icon_size; for icon_size in 16 32 48; do
+ install -Dm644 "resources/generated_icons/icon_exe_${icon_size}.png" \
+ "${theme_dir}/${icon_size}x${icon_size}/apps/${_appvendor}-${_appexe}.png"
+ install -Dm644 "resources/generated_icons/icon_cps_${icon_size}.png" \
+ "${theme_dir}/${icon_size}x${icon_size}/mimetypes/${mimetype}.png"
done
}