summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorHurricanePootis2023-12-02 20:16:04 -0600
committerHurricanePootis2023-12-02 20:16:04 -0600
commit4e4f61cf9774a6d965bd206d9e48d08be61d8014 (patch)
treedb6a72f6288e88da660da3a303101b7a90ea06f8
parentd335a24a0daa9be3b6ca4f865e7ac066fd6b1c20 (diff)
downloadaur-4e4f61cf9774a6d965bd206d9e48d08be61d8014.tar.gz
Update to Godot 4.2, and bring over godot-mono-enhanced to this
-rw-r--r--.SRCINFO56
-rw-r--r--PKGBUILD162
2 files changed, 140 insertions, 78 deletions
diff --git a/.SRCINFO b/.SRCINFO
index d7f29d2e2251..a3c719eff7a3 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,34 +1,48 @@
pkgbase = godot-mono
- pkgdesc = An advanced, feature packed, multi-platform 2D and 3D game engine.
- pkgver = 4.1.3
+ pkgdesc = An advanced, feature packed, multi-platform 2D and 3D game engine
+ pkgver = 4.2
pkgrel = 1
url = https://godotengine.org/
- arch = i686
arch = x86_64
license = MIT
- makedepends = git
- makedepends = scons>=3.0
- makedepends = libxcursor
- makedepends = libxinerama
- makedepends = libxi
- makedepends = libxrandr
- makedepends = mesa
- makedepends = glu
- makedepends = libglvnd
makedepends = alsa-lib
+ makedepends = gcc
makedepends = pulseaudio
+ makedepends = scons
makedepends = yasm
- makedepends = freetype2
- makedepends = gcc
- makedepends = pkg-config
- makedepends = rsync
- makedepends = nuget
makedepends = xorg-server-xvfb
+ makedepends = nuget
+ makedepends = python
+ makedepends = git
+ makedepends = rsync
+ makedepends = gzip
+ makedepends = python
+ depends = embree3
+ depends = freetype2
+ depends = graphite
+ depends = harfbuzz
+ depends = harfbuzz-icu
+ depends = libglvnd
+ depends = libspeechd
+ depends = libsquish
+ depends = libtheora
+ depends = libvorbis
+ depends = libwebp
+ depends = libwslay
+ depends = libxcursor
+ depends = libxi
+ depends = libxinerama
+ depends = libxrandr
+ depends = mbedtls2
+ depends = miniupnpc
+ depends = pcre2
depends = dotnet-sdk
+ depends = hicolor-icon-theme
+ optdepends = pipewire-alsa: for audio support
+ optdepends = pipewire-pulse: for audio support
provides = godot
- provides = godot-mono
- conflicts = godot-mono
- source = godot-mono::git+https://github.com/godotengine/godot.git
- md5sums = SKIP
+ conflicts = godot
+ source = https://github.com/godotengine/godot/releases/download/4.2-stable/godot-4.2-stable.tar.xz
+ sha512sums = ec10126260e939e83dbadb32a3620e79f43249e3f99a1dcfe2ea7b28eaf866040046aea198d42596bac29da02c79a5a0ec0a5c39283b4535923b518530fb64f2
pkgname = godot-mono
diff --git a/PKGBUILD b/PKGBUILD
index e87964633a21..568cc6be0e35 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,83 +1,131 @@
# Maintainer: Marvin Dalheimer <me@marvin-dalheimer.de>
+# Maintainer: HurricanePootis <hurricanepootis@protonmail.com>
+_pkgname=godot-mono
pkgname=godot-mono
-pkgver=4.1.3
+pkgver=4.2
pkgrel=1
-pkgdesc="An advanced, feature packed, multi-platform 2D and 3D game engine."
-arch=('i686' 'x86_64')
+pkgdesc="An advanced, feature packed, multi-platform 2D and 3D game engine"
+arch=('x86_64')
url="https://godotengine.org/"
license=('MIT')
-depends=("dotnet-sdk")
-optdepends=()
-makedepends=(
- 'git'
- 'scons>=3.0'
- 'libxcursor'
- 'libxinerama'
- 'libxi'
- 'libxrandr'
- 'mesa'
- 'glu'
- 'libglvnd'
- 'alsa-lib'
- 'pulseaudio'
- 'yasm'
- 'freetype2'
- 'gcc'
- 'pkg-config'
- 'rsync'
- 'nuget'
- 'xorg-server-xvfb'
-)
-provides=('godot' 'godot-mono')
-conflicts=('godot-mono')
-source=(${pkgname}::git+https://github.com/godotengine/godot.git)
-md5sums=('SKIP')
+depends=(embree3 freetype2 graphite harfbuzz harfbuzz-icu libglvnd libspeechd libsquish
+ libtheora libvorbis libwebp libwslay libxcursor libxi libxinerama libxrandr
+ mbedtls2 miniupnpc pcre2 dotnet-sdk hicolor-icon-theme)
+makedepends=(alsa-lib gcc pulseaudio scons yasm xorg-server-xvfb nuget python git rsync gzip python)
+optdepends=('pipewire-alsa: for audio support'
+ 'pipewire-pulse: for audio support')
+provides=('godot')
+conflicts=('godot')
+source=("https://github.com/godotengine/godot/releases/download/${pkgver}-stable/godot-${pkgver}-stable.tar.xz")
+sha512sums=('ec10126260e939e83dbadb32a3620e79f43249e3f99a1dcfe2ea7b28eaf866040046aea198d42596bac29da02c79a5a0ec0a5c39283b4535923b518530fb64f2')
+
+prepare() {
+ # Update the MIME info, ref FS#77810
+ sed -i 's,xmlns="https://specifications.freedesktop.org/shared-mime-info-spec",xmlns="http://www.freedesktop.org/standards/shared-mime-info",g' \
+ "${srcdir}/godot-${pkgver}-stable"/misc/dist/linux/org.godotengine.Godot.xml
+}
-build() {
- cd "${srcdir}/${pkgname}"
- #Checkout actual version of Godot
- git checkout ${pkgver}-stable
+
+build() {
+ cd "${srcdir}/godot-${pkgver}-stable"
#Build temporary binaries to generate needed files for mono support
- scons -j$(nproc) platform=linuxbsd tools=yes module_mono_enabled=yes mono_glue=no
+ export BUILD_NAME=arch_linux
+ scons -j$(nproc) \
+ CFLAGS="$CFLAGS -fPIC -Wl,-z,relro,-z,now -w -I/usr/include/mbedtls2" \
+ CXXFLAGS="$CXXFLAGS -fPIC -Wl,-z,relro,-z,now -w -I/usr/include/mbedtls2" \
+ LINKFLAGS="$LDFLAGS -L/usr/lib/mbedtls2" \
+ arch=$CARCH \
+ builtin_embree=no \
+ builtin_enet=yes \
+ builtin_freetype=no \
+ builtin_msdfgen=yes \
+ builtin_glslang=yes \
+ builtin_graphite=no \
+ builtin_harfbuzz=no \
+ builtin_icu4c=yes \
+ builtin_libogg=no \
+ builtin_libpng=no \
+ builtin_libtheora=no \
+ builtin_libvorbis=no \
+ builtin_libwebp=no \
+ builtin_wslay=yes \
+ builtin_mbedtls=no \
+ builtin_miniupnpc=no \
+ builtin_pcre2=no \
+ builtin_pcre2_with_jit=no \
+ builtin_recastnavigation=yes \
+ builtin_rvo2=yes \
+ builtin_squish=no \
+ builtin_xatlas=yes \
+ builtin_zlib=no \
+ builtin_zstd=no \
+ colored=yes \
+ platform=linuxbsd \
+ production=yes \
+ pulseaudio=yes \
+ system_certs_path=/etc/ssl/certs/ca-certificates.crt \
+ target=editor \
+ use_llvm=no \
+ werror=no \
+ module_mono_enabled=yes \
+ mono_glue=no
+
xvfb-run -s "-screen 0 1920x1080x24 -nolisten local" bin/godot.linuxbsd.editor.x86_64.mono --generate-mono-glue modules/mono/glue
# Build normal binaries
- #scons -j$(nproc) platform=linuxbsd target=editor tools=yes module_mono_enabled=yes bits=64
modules/mono/build_scripts/build_assemblies.py --godot-output-dir=./bin --godot-platform=linuxbsd
}
package() {
install -d \
- "${pkgdir}/opt/${pkgname}/" \
+ "${pkgdir}/opt/${_pkgname}/" \
"${pkgdir}/usr/bin/" \
"${pkgdir}/usr/share/applications/"
rsync -a \
- "${srcdir}/${pkgname}/bin" "${pkgdir}/opt/${pkgname}"
+ "${srcdir}/godot-${pkgver}-stable/bin" "${pkgdir}/opt/${_pkgname}"
- # I have to use TERM=xterm because of an bug in mono
- cat > "${pkgdir}/usr/bin/${pkgname}" <<-EOF
- #!/usr/bin/env bash
- /opt/godot-mono/bin/godot.linuxbsd.editor.x86_64.mono "\$@"
- EOF
+ ln -s "/opt/${_pkgname}/bin/godot.linuxbsd.editor.x86_64.mono" "${pkgdir}/usr/bin/godot"
- chmod a+x ${pkgdir}/usr/bin/${pkgname}
+ install -Dm644 \
+ "${srcdir}/godot-${pkgver}-stable/icon.svg" \
+ "${pkgdir}/usr/share/icons/hicolor/scalable/apps/${_pkgname}.svg"
install -Dm644 \
- "${srcdir}/${pkgname}/icon.svg" \
- "${pkgdir}/usr/share/icons/hicolor/scalable/apps/${pkgname}.svg"
-
- cat > "${pkgdir}/usr/share/applications/${pkgname}.desktop" <<-EOF
- [Desktop Entry]
- Type=Application
- Name=Godot-Mono
- GenericName=Godot 2D and 3D game engine
- Comment=Godot is an Open-Source game engine for 2D and 3D games
- Keywords=game-dev;development;
- Categories=Development;
- Exec=/usr/bin/${pkgname}
- Icon=${pkgname}
- EOF
+ "${srcdir}/godot-${pkgver}-stable/LICENSE.txt" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+
+ [[ -f "${srcdir}/godot-${pkgver}-stable/misc/dist/linux/godot.6" ]] && gzip -9 "${srcdir}/godot-${pkgver}-stable/misc/dist/linux/godot.6"
+
+ install -Dm644 \
+ "${srcdir}/godot-${pkgver}-stable/misc/dist/linux/godot.6.gz" \
+ "${pkgdir}/usr/share/man/man6/${pkgname}.6.gz"
+
+ install -Dm644 \
+ "${srcdir}/godot-${pkgver}-stable/misc/dist/linux/org.godotengine.Godot.xml" \
+ "${pkgdir}/usr/share/mime/packages/org.godotengine.Godot.xml"
+
+ install -Dm644 \
+ "${srcdir}/godot-${pkgver}-stable/misc/dist/linux/org.godotengine.Godot.desktop"\
+ "${pkgdir}/usr/share/applications/org.godotengine.Godot.desktop"
+
+ mkdir -p "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes"
+ install -Dm644 \
+ "${srcdir}/godot-${pkgver}-stable/misc/dist/document_icons/project.svg" \
+ "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes/x-godot-project.svg"
+ install -Dm644 \
+ "${srcdir}/godot-${pkgver}-stable/misc/dist/document_icons/resource.svg" \
+ "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes/x-godot-resource.svg"
+ install -Dm644 \
+ "${srcdir}/godot-${pkgver}-stable/misc/dist/document_icons/scene.svg" \
+ "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes/x-godot-scene.svg"
+ install -Dm644 \
+ "${srcdir}/godot-${pkgver}-stable/misc/dist/document_icons/shader.svg" \
+ "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes/x-godot-shader.svg"
+ install -Dm644 \
+ "${srcdir}/godot-${pkgver}-stable/misc/dist/document_icons/gdscript.svg" \
+ "${pkgdir}/usr/share/icons/hicolor/scalable/mimetypes/x-gdscript.svg"
+
}