commit:     0699ef2a6074227bfdf81c14be0f9c47a20f22b8
Author:     dsaf <ghostyn678+git <AT> gmail <DOT> com>
AuthorDate: Fri Oct 17 05:52:19 2025 +0000
Commit:     dsaf <ghostyn678+git <AT> gmail <DOT> com>
CommitDate: Fri Oct 17 05:54:19 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=0699ef2a

dev-games/godot-dotnet: add 4.5.1, fix QA

Signed-off-by: dsaf <ghostyn678+git <AT> gmail.com>

 dev-games/godot-dotnet/Manifest                    |  1 +
 ...otnet-4.4-scons.patch => godot-4.4-scons.patch} |  0
 ...otnet-4.5-scons.patch => godot-4.5-scons.patch} |  0
 ....4.1-r1.ebuild => godot-dotnet-4.4.1-r2.ebuild} | 43 ++++++++++--------
 ...otnet-4.5.ebuild => godot-dotnet-4.5-r1.ebuild} | 42 ++++++++++--------
 ...dotnet-4.5.ebuild => godot-dotnet-4.5.1.ebuild} | 51 ++++++++++++----------
 6 files changed, 79 insertions(+), 58 deletions(-)

diff --git a/dev-games/godot-dotnet/Manifest b/dev-games/godot-dotnet/Manifest
index 6d449a71f8..ba5877a3f3 100644
--- a/dev-games/godot-dotnet/Manifest
+++ b/dev-games/godot-dotnet/Manifest
@@ -223,6 +223,7 @@ DIST coverlet.collector.3.2.0.nupkg 2209480 BLAKE2B 
175bcfcb9d6e5177d44f2d607f24
 DIST envdte.17.8.37221.nupkg 158612 BLAKE2B 
01ce699e809c684d957f92822a5a5e0740e7d98f905f9d6b2c24bd6571d469c37265fc874acb1a32206964a0414b97641df04bac22af055ba61a5ba4d4842fdc
 SHA512 
68a892707d5637a4170e14d89d7039349c32b3722723b63ea396681c6ed07a6e8ba626ebce393eb03c7034b94e1a21fdf80dbcb18fe0224d55192779d6ee63fe
 DIST godot-4.4.1-stable.tar.xz 37561040 BLAKE2B 
6c424f1faa28b43a9835ea80a75de273f81877e180c0664b39080a7fa57d4d580a9b9fc6bed50a308f3a15a429c9b93d63cee99a347d6cf1cbe87b870a76f284
 SHA512 
f67882a70dc9e2d2efbbc9cda657f292ba05bb4c8341809c56fe054979032a93b04f9125815865efeaa269cf404010eb74f075a37faebb2a8f28be5abb706480
 DIST godot-4.5-stable.tar.xz 42771064 BLAKE2B 
3a3e816f124bf26a20d6ecb256e49ce8939687c2b21ac527e7e4b6543ef54137ef11df31e1c5bcbbb061d9b426d58d22ef37256965870fd2c9bfe06d6315736f
 SHA512 
046428d8c336747d1853e4a2cdab82e3d6605d25c64dc85efdaa600cbca7436e59e32b401e89b92bcef42059afb2b9156bbce85c34a658cf76957830bd829d50
+DIST godot-4.5.1-stable.tar.xz 43180564 BLAKE2B 
bdaa2f7ee4a075ee296b6eda29d2bf9ceaebe0047d9c480a351fd53aaf693059237de8e2f6079e4da9df43d64af195a4641c4cf659e474a48d1bdc2589c40f4c
 SHA512 
963d811f29fc01b8bf95d11a521f0759fffb8d0e8d2eb4bb64f95be3408a18f4e020211913dba7f1dd39c7ec2c535f4bbfbde65c65b5af48323c5feb91685af2
 DIST 
runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl.4.3.0.nupkg
 44390 BLAKE2B 
60483871cb9b81514f5b63f1f9ab9cf1c7a6ddb1d33a2a65608b47a2cf8cc3b7eee8e087250a1c49eb2893f36f29410e897387346fa4c3fc5c71e41046f13673
 SHA512 
b2cf809fe50c4b46bd6f2372265cd3059622550123afceb5dbb2410906c07a7f47bae4273584d29253d5e7a63a17c68c7ba0434608bbc8fd4d00e479b2f128ff
 DIST 
runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl.4.3.0.nupkg
 42827 BLAKE2B 
d2b79a9b83e0bdf569a5c333ba4f86ccb1d5b532d2e1cff3ba7bb597688ac78268a515be4c35a025c66727070100634a4bc946e02ae7b93061be968fab241bed
 SHA512 
fd8e32d7d3e9a465202e391b0ab8b95e212900879bc4d8ac22954fd2d0f98fa579e9d25f88885ac2a4bf1eba755db940f8d131250a3ffec34dbe77431a379cab
 DIST 
runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl.4.3.0.nupkg
 42833 BLAKE2B 
be9197f3008b3dda19a45e5b5df2ce3604f58a98045a122aa77f082708de67ad953fba761c39ec419e945155ad74d5800638feb581e5d84424ba104f32541640
 SHA512 
4afac5cc1734330a6103880e790d639e825bfb1b34dbd42083762c47db5e5dab6c03efd16049ac03861d7d87746caed09c7534241d51b7341d47ba6af7e8dd31

diff --git a/dev-games/godot-dotnet/files/godot-dotnet-4.4-scons.patch 
b/dev-games/godot-dotnet/files/godot-4.4-scons.patch
similarity index 100%
rename from dev-games/godot-dotnet/files/godot-dotnet-4.4-scons.patch
rename to dev-games/godot-dotnet/files/godot-4.4-scons.patch

diff --git a/dev-games/godot-dotnet/files/godot-dotnet-4.5-scons.patch 
b/dev-games/godot-dotnet/files/godot-4.5-scons.patch
similarity index 100%
rename from dev-games/godot-dotnet/files/godot-dotnet-4.5-scons.patch
rename to dev-games/godot-dotnet/files/godot-4.5-scons.patch

diff --git a/dev-games/godot-dotnet/godot-dotnet-4.4.1-r1.ebuild 
b/dev-games/godot-dotnet/godot-dotnet-4.4.1-r2.ebuild
similarity index 97%
rename from dev-games/godot-dotnet/godot-dotnet-4.4.1-r1.ebuild
rename to dev-games/godot-dotnet/godot-dotnet-4.4.1-r2.ebuild
index 79ae2997c0..0e9f3997bc 100644
--- a/dev-games/godot-dotnet/godot-dotnet-4.4.1-r1.ebuild
+++ b/dev-games/godot-dotnet/godot-dotnet-4.4.1-r2.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{11..13} )
+PYTHON_COMPAT=( python3_{11..14} )
 DOTNET_PKG_COMPAT="8.0"
 NUGETS="
 [email protected]
@@ -253,15 +253,19 @@ [email protected]
 
 inherit desktop dotnet-pkg python-any-r1 flag-o-matic scons-utils
 inherit shell-completion toolchain-funcs xdg
+
+MY_PN=godot
+MY_P=${MY_PN}-${PV}
+
 DESCRIPTION="Multi-platform 2D and 3D game engine with a feature-rich editor"
 HOMEPAGE="https://godotengine.org/";
 SRC_URI="
-       
https://github.com/godotengine/godot/releases/download/${PV}-stable/godot-${PV}-stable.tar.xz
+       
https://github.com/godotengine/godot/releases/download/${PV}-stable/${MY_P}-stable.tar.xz
 "
 
 SRC_URI+=" ${NUGET_URIS} "
 
-S=${WORKDIR}/godot-${PV}-stable
+S=${WORKDIR}/${MY_P}-stable
 LICENSE="
        MIT
        Apache-2.0 BSD Boost-1.0 CC0-1.0 Unlicense ZLIB
@@ -336,7 +340,7 @@ BDEPEND="
 "
 
 PATCHES=(
-       "${FILESDIR}"/${PN}-4.4-scons.patch
+       "${FILESDIR}"/${MY_PN}-4.4-scons.patch
 )
 
 src_unpack() {
@@ -452,23 +456,16 @@ src_compile() {
        )
 
        escons "${esconsargs[@]}"
-}
-
-src_test() {
-       xdg_environment_reset
-
-       bin/godot* --headless --test || die
-}
-
-src_install() {
-       dotnet-pkg_src_prepare # called in this phase due to conflicting
 
        # godot requires access to input devices?
        addwrite /dev/input
+       addwrite /dev/bus/usb
 
        # generate mono glue
        bin/godot* --headless --generate-mono-glue modules/mono/glue || die 
"Failed to generate mono glue"
 
+       dotnet-pkg_src_prepare # called here, conflicts with python eclass
+
        local MSBUILDTERMINALLOGER=off # required for msbuild to succeed?
 
        # build the C# assemblies; pass flags so assemblies match how engine 
was built
@@ -479,14 +476,24 @@ src_install() {
                $(usex deprecated "" --no-deprecated) \
                --push-nupkgs-local="${T}/.nuget/packages" \
                || die "Failed to build mono assemblies"
+}
+
+src_test() {
+       xdg_environment_reset
 
-       # install...
-       insinto /opt/godot
+       bin/godot* --headless --test || die
+}
+
+src_install() {
+       insinto "/usr/$(get_libdir)/godot"
        doins -r bin/.
 
-       fperms +x "/opt/godot/$(basename bin/godot*)"
+       # find once
+       gd_bin="${ESYSROOT}/usr/$(get_libdir)/godot/$(basename bin/godot*)"
+
+       fperms +x "${gd_bin}"
 
-       dosym "../../opt/godot/$(basename bin/godot*)" /usr/bin/godot
+       dosym "${gd_bin}" /usr/bin/godot
 
        doman misc/dist/linux/godot.6
        dodoc AUTHORS.md CHANGELOG.md DONORS.md README.md

diff --git a/dev-games/godot-dotnet/godot-dotnet-4.5.ebuild 
b/dev-games/godot-dotnet/godot-dotnet-4.5-r1.ebuild
similarity index 97%
copy from dev-games/godot-dotnet/godot-dotnet-4.5.ebuild
copy to dev-games/godot-dotnet/godot-dotnet-4.5-r1.ebuild
index a6f32865a5..0954ffd691 100644
--- a/dev-games/godot-dotnet/godot-dotnet-4.5.ebuild
+++ b/dev-games/godot-dotnet/godot-dotnet-4.5-r1.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{11..13} )
+PYTHON_COMPAT=( python3_{11..14} )
 DOTNET_PKG_COMPAT="8.0"
 NUGETS="
 [email protected]
@@ -256,15 +256,19 @@ [email protected]
 
 inherit desktop dotnet-pkg python-any-r1 flag-o-matic scons-utils
 inherit shell-completion toolchain-funcs xdg
+
+MY_PN=godot
+MY_P=${MY_PN}-${PV}
+
 DESCRIPTION="Multi-platform 2D and 3D game engine with a feature-rich editor"
 HOMEPAGE="https://godotengine.org/";
 SRC_URI="
-       
https://github.com/godotengine/godot/releases/download/${PV}-stable/godot-${PV}-stable.tar.xz
+       
https://github.com/godotengine/godot/releases/download/${PV}-stable/${MY_P}-stable.tar.xz
 "
 
 SRC_URI+=" ${NUGET_URIS} "
 
-S=${WORKDIR}/godot-${PV}-stable
+S=${WORKDIR}/${MY_P}-stable
 LICENSE="
        MIT
        Apache-2.0 BSD Boost-1.0 CC0-1.0 IJG Unlicense ZLIB
@@ -343,7 +347,7 @@ BDEPEND="
 "
 
 PATCHES=(
-       "${FILESDIR}"/${PN}-4.5-scons.patch
+       "${FILESDIR}"/${MY_PN}-4.5-scons.patch
 )
 
 src_unpack() {
@@ -466,16 +470,6 @@ src_compile() {
        )
 
        escons "${esconsargs[@]}"
-}
-
-src_test() {
-       xdg_environment_reset
-
-       bin/godot* --headless --test || die
-}
-
-src_install() {
-       dotnet-pkg_src_prepare # called in this phase due to conflicting
 
        # godot requires access to input devices?
        addwrite /dev/input
@@ -484,6 +478,8 @@ src_install() {
        # generate mono glue
        bin/godot* --headless --generate-mono-glue modules/mono/glue || die 
"Failed to generate mono glue"
 
+       dotnet-pkg_src_prepare # called here, conflicts with python eclass
+
        local MSBUILDTERMINALLOGER=off # required for msbuild to succeed?
 
        # build the C# assemblies; pass flags so assemblies match how engine 
was built
@@ -494,14 +490,24 @@ src_install() {
                $(usex deprecated "" --no-deprecated) \
                --push-nupkgs-local="${T}/.nuget/packages" \
                || die "Failed to build mono assemblies"
+}
+
+src_test() {
+       xdg_environment_reset
 
-       # install...
-       insinto /opt/godot
+       bin/godot* --headless --test || die
+}
+
+src_install() {
+       insinto "/usr/$(get_libdir)/godot"
        doins -r bin/.
 
-       fperms +x "/opt/godot/$(basename bin/godot*)"
+       # find once
+       gd_bin="${ESYSROOT}/usr/$(get_libdir)/godot/$(basename bin/godot*)"
+
+       fperms +x "${gd_bin}"
 
-       dosym "../../opt/godot/$(basename bin/godot*)" /usr/bin/godot
+       dosym "${gd_bin}" /usr/bin/godot
 
        doman misc/dist/linux/godot.6
        dodoc AUTHORS.md CHANGELOG.md DONORS.md README.md

diff --git a/dev-games/godot-dotnet/godot-dotnet-4.5.ebuild 
b/dev-games/godot-dotnet/godot-dotnet-4.5.1.ebuild
similarity index 96%
rename from dev-games/godot-dotnet/godot-dotnet-4.5.ebuild
rename to dev-games/godot-dotnet/godot-dotnet-4.5.1.ebuild
index a6f32865a5..d28fb09538 100644
--- a/dev-games/godot-dotnet/godot-dotnet-4.5.ebuild
+++ b/dev-games/godot-dotnet/godot-dotnet-4.5.1.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{11..13} )
+PYTHON_COMPAT=( python3_{11..14} )
 DOTNET_PKG_COMPAT="8.0"
 NUGETS="
 [email protected]
@@ -256,18 +256,22 @@ [email protected]
 
 inherit desktop dotnet-pkg python-any-r1 flag-o-matic scons-utils
 inherit shell-completion toolchain-funcs xdg
+
+MY_PN=godot
+MY_P=${MY_PN}-${PV}
+
 DESCRIPTION="Multi-platform 2D and 3D game engine with a feature-rich editor"
 HOMEPAGE="https://godotengine.org/";
 SRC_URI="
-       
https://github.com/godotengine/godot/releases/download/${PV}-stable/godot-${PV}-stable.tar.xz
+       
https://github.com/godotengine/godot/releases/download/${PV}-stable/${MY_P}-stable.tar.xz
 "
 
 SRC_URI+=" ${NUGET_URIS} "
 
-S=${WORKDIR}/godot-${PV}-stable
+S=${WORKDIR}/${MY_P}-stable
 LICENSE="
        MIT
-       Apache-2.0 BSD Boost-1.0 CC0-1.0 IJG Unlicense ZLIB
+       Apache-2.0 BSD Boost-1.0 CC0-1.0 Unlicense ZLIB
        gui? ( CC-BY-4.0 ) tools? ( OFL-1.1 )
 "
 SLOT="0"
@@ -293,6 +297,7 @@ RDEPEND="
        dev-libs/libpcre2:=[pcre32]
        media-libs/freetype[brotli,harfbuzz]
        media-libs/harfbuzz:=[icu]
+       media-libs/libjpeg-turbo:=
        media-libs/libogg
        media-libs/libpng:=
        media-libs/libvorbis
@@ -343,7 +348,7 @@ BDEPEND="
 "
 
 PATCHES=(
-       "${FILESDIR}"/${PN}-4.5-scons.patch
+       "${FILESDIR}"/${MY_PN}-4.5-scons.patch
 )
 
 src_unpack() {
@@ -363,8 +368,8 @@ src_prepare() {
 
        # use of builtin_ switches can be messy (see below), delete to be sure
        local unbundle=(
-               brotli doctest embree freetype graphite harfbuzz icu4c libogg
-               libpng libtheora libvorbis libwebp linuxbsd_headers mbedtls
+               brotli doctest embree freetype graphite harfbuzz icu4c 
libjpeg-turbo
+               libogg libpng libtheora libvorbis libwebp linuxbsd_headers 
mbedtls
                miniupnpc pcre2 recastnavigation sdl volk wslay zlib zstd
                # certs: unused by generated header, but scons panics if not 
found
        )
@@ -426,7 +431,7 @@ src_compile() {
                builtin_icu4c=no
                # TODO: keep an eye on 
https://github.com/godotengine/godot/pull/110540
                # (reminder: drop IJG and add libjpeg-turbo to unbundle array)
-               builtin_libjpeg_turbo=yes
+               builtin_libjpeg_turbo=no
                builtin_libogg=no
                builtin_libpng=no
                builtin_libtheora=$(usex !theora)
@@ -466,16 +471,6 @@ src_compile() {
        )
 
        escons "${esconsargs[@]}"
-}
-
-src_test() {
-       xdg_environment_reset
-
-       bin/godot* --headless --test || die
-}
-
-src_install() {
-       dotnet-pkg_src_prepare # called in this phase due to conflicting
 
        # godot requires access to input devices?
        addwrite /dev/input
@@ -484,6 +479,8 @@ src_install() {
        # generate mono glue
        bin/godot* --headless --generate-mono-glue modules/mono/glue || die 
"Failed to generate mono glue"
 
+       dotnet-pkg_src_prepare # called here, conflicts with python eclass
+
        local MSBUILDTERMINALLOGER=off # required for msbuild to succeed?
 
        # build the C# assemblies; pass flags so assemblies match how engine 
was built
@@ -494,14 +491,24 @@ src_install() {
                $(usex deprecated "" --no-deprecated) \
                --push-nupkgs-local="${T}/.nuget/packages" \
                || die "Failed to build mono assemblies"
+}
+
+src_test() {
+       xdg_environment_reset
 
-       # install...
-       insinto /opt/godot
+       bin/godot* --headless --test || die
+}
+
+src_install() {
+       insinto "/usr/$(get_libdir)/godot"
        doins -r bin/.
 
-       fperms +x "/opt/godot/$(basename bin/godot*)"
+       # find once
+       gd_bin="${ESYSROOT}/usr/$(get_libdir)/godot/$(basename bin/godot*)"
+
+       fperms +x "${gd_bin}"
 
-       dosym "../../opt/godot/$(basename bin/godot*)" /usr/bin/godot
+       dosym "${gd_bin}" /usr/bin/godot
 
        doman misc/dist/linux/godot.6
        dodoc AUTHORS.md CHANGELOG.md DONORS.md README.md

Reply via email to