diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-12 19:09:37 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-12 19:09:37 -0500 |
| commit | b590c8d7572b727d565cc0b8ff660d43569845de (patch) | |
| tree | 06f7a4102ea4e845df8b66660f252920d52952f9 /games-util | |
| parent | 24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff) | |
| download | baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip | |
Adding metadata
Diffstat (limited to 'games-util')
196 files changed, 6437 insertions, 0 deletions
diff --git a/games-util/acc/Manifest b/games-util/acc/Manifest new file mode 100644 index 000000000000..bd1cd2726385 --- /dev/null +++ b/games-util/acc/Manifest @@ -0,0 +1 @@ +DIST acc-1.60.tar.gz 70750 BLAKE2B 57ab6ae8f3a818f4bd3bfb97554e6e04df246f7cfb3f1dc59c7a817cb15000325aa4e4769830d4a1caefa7aa557c803ea1535e58e754adb4438d6858cbf79b99 SHA512 9d44fccd092226ed1c89abf7e13e74a91b05355ea11914768946f81ff74999152cf535ee59eb4c4f9b876100f48cc1d8853daa59add1af59f538bf6b5da84499 diff --git a/games-util/acc/acc-1.60.ebuild b/games-util/acc/acc-1.60.ebuild new file mode 100644 index 000000000000..ffd9e41b2747 --- /dev/null +++ b/games-util/acc/acc-1.60.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="ACS script compiler for use with ZDoom and Hexen" +HOMEPAGE="https://zdoom.org/wiki/ACC" +SRC_URI="https://github.com/ZDoom/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Activision" +SLOT="0" +KEYWORDS="~amd64" + +# The Activision EULA is inappropriate but this was never resolved. :( +# https://doomwiki.org/wiki/Raven_source_code_licensing +RESTRICT="bindist mirror" + +PATCHES=( "${FILESDIR}/${P}-cmake.patch" ) + +src_install() { + dobin "${BUILD_DIR}"/${PN} + dodoc readme.md + + insinto /usr/share/${PN} + doins *.acs +} diff --git a/games-util/acc/files/acc-1.60-cmake.patch b/games-util/acc/files/acc-1.60-cmake.patch new file mode 100644 index 000000000000..4245ddf0df69 --- /dev/null +++ b/games-util/acc/files/acc-1.60-cmake.patch @@ -0,0 +1,19 @@ +From df6a2735acccad9131ce73fa07506445cfe69ec2 Mon Sep 17 00:00:00 2001 +From: Rachael Alexanderson <madame-rachelle@users.noreply.github.com> +Date: Wed, 26 Mar 2025 05:24:13 -0400 +Subject: [PATCH] - use cmake range syntax + +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9dc54c3..d83a8ae 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required(VERSION 2.4) ++cmake_minimum_required(VERSION 3.5...4.0) + + project(acc) + diff --git a/games-util/acc/metadata.xml b/games-util/acc/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/acc/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/antimicrox/Manifest b/games-util/antimicrox/Manifest new file mode 100644 index 000000000000..6c947650afb6 --- /dev/null +++ b/games-util/antimicrox/Manifest @@ -0,0 +1,3 @@ +DIST antimicrox-3.5.1.tar.gz 2479077 BLAKE2B c86e76996a3d3b7a87c6f01d967f7807cdb2c2bab256493816f8a32a6539f44e73346a2fbc3f715fa793546e139b71201d401b355768985dd56b858dc0c63324 SHA512 c2363b7c8a33b413e5d92b0e8cf9781ab4aa27fd13850ac4374b5fe0ae2b3d6b6396d8dc3a84277cacf4a5c0c8b982d37d10a729babdd3ffca0d9e169ef34cff +DIST antimicrox-3.6.0.gh.tar.gz 2656744 BLAKE2B 5cf2c54745c016d8b503bd64a9da906b61afd3c9ac94e1664eada10081445c1b469998530d681216521d215d63b210baed92e22bfb53288919be8e9b094b3065 SHA512 ac2b8f5ddc49898b71298d3373c4a7529c84c058ac90d9ce3f4196f53b9d91994747a6e737ed0e3602c817fc90db4282d530a29f144666fb8c43a0f2c8b53056 +DIST antimicrox-3.6.1.gh.tar.gz 2655618 BLAKE2B 98a1642d6c62002c081fe4dff1a6801f5a33d6ee934265dc9ad1605df7769d8d586769b43c47f5548d4ffb02892d750646f887c6f2f5ce1a8b5976ffead3e746 SHA512 d15ec1bac68f7626129041f6289b5183f8438d86b248054c422ee6c12d779083d328b015e0b15cb747da93048ac7c5340f848f2fcec354050cf36b7e2630b47f diff --git a/games-util/antimicrox/antimicrox-3.5.1.ebuild b/games-util/antimicrox/antimicrox-3.5.1.ebuild new file mode 100644 index 000000000000..ef44665a7b31 --- /dev/null +++ b/games-util/antimicrox/antimicrox-3.5.1.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit udev xdg cmake + +DESCRIPTION="Graphical program used to map keyboard buttons and mouse controls to a gamepad" +HOMEPAGE="https://github.com/AntiMicroX/antimicrox/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/AntiMicroX/${PN}.git" +else + SRC_URI="https://github.com/AntiMicroX/${PN}/archive/${PV}.tar.gz + -> ${P}.tar.gz" + + KEYWORDS="amd64 ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="doc" + +# Tests fail to build. +# https://github.com/AntiMicroX/antimicrox/issues/530 +RESTRICT="test" + +RDEPEND=" + dev-qt/qtbase:6[concurrent,gui,network,widgets] + media-libs/libsdl2[X,joystick] + virtual/udev + x11-libs/libX11 + x11-libs/libXi + x11-libs/libXtst +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + dev-qt/qttools:6[linguist] + kde-frameworks/extra-cmake-modules + doc? ( + app-text/doxygen[dot] + ) +" + +PATCHES=( + "${FILESDIR}/antimicrox-man_gz.patch" + "${FILESDIR}/antimicrox-3.5.1-cmake_minimum_required.patch" +) + +DOCS=( CHANGELOG.md README.md ) + +src_configure() { + local -a mycmakeargs=( + -DAPPDATA="OFF" + -DCHECK_FOR_UPDATES="OFF" + -DINSTALL_UINPUT_UDEV_RULES="OFF" # Install in "src_install". + -DUSE_QT6_BY_DEFAULT="ON" + -DWITH_TESTS="OFF" + -DWITH_UINPUT="ON" + -DWITH_X11="ON" + -DWITH_XTEST="ON" + + -DBUILD_DOCS="$(usex doc ON OFF)" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + udev_dorules "${S}/other/60-${PN}-uinput.rules" + + if use doc ; then + dodoc -r "${S}/docs"/{html,latex} + fi + + rm -r "${ED}/usr/share/doc/${PN}" || die +} + +pkg_postinst() { + udev_reload + xdg_pkg_postinst +} + +pkg_postrm() { + udev_reload + xdg_pkg_postrm +} diff --git a/games-util/antimicrox/antimicrox-3.6.0.ebuild b/games-util/antimicrox/antimicrox-3.6.0.ebuild new file mode 100644 index 000000000000..1b5f1fcd7ca2 --- /dev/null +++ b/games-util/antimicrox/antimicrox-3.6.0.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit udev xdg cmake + +DESCRIPTION="Graphical program used to map keyboard buttons and mouse controls to a gamepad" +HOMEPAGE="https://github.com/AntiMicroX/antimicrox/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/AntiMicroX/${PN}" +else + SRC_URI="https://github.com/AntiMicroX/${PN}/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="doc" + +# Tests fail to build. +# https://github.com/AntiMicroX/antimicrox/issues/530 +RESTRICT="test" + +RDEPEND=" + dev-qt/qtbase:6[concurrent,gui,network,widgets] + media-libs/libsdl2[X,joystick] + virtual/udev + x11-libs/libX11 + x11-libs/libXi + x11-libs/libXtst +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + dev-qt/qttools:6[linguist] + kde-frameworks/extra-cmake-modules + doc? ( + app-text/doxygen[dot] + ) +" + +PATCHES=( + "${FILESDIR}/antimicrox-man_gz.patch" + "${FILESDIR}/antimicrox-3.5.1-cmake_minimum_required.patch" +) + +DOCS=( CHANGELOG.md README.md ) + +src_configure() { + local -a mycmakeargs=( + -DAPPDATA="OFF" + -DCHECK_FOR_UPDATES="OFF" + -DINSTALL_UINPUT_UDEV_RULES="OFF" # Install in "src_install". + -DUSE_QT6_BY_DEFAULT="ON" + -DWITH_TESTS="OFF" + -DWITH_UINPUT="ON" + -DWITH_X11="ON" + -DWITH_XTEST="ON" + + -DBUILD_DOCS="$(usex doc ON OFF)" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + udev_dorules "${S}/other/60-${PN}-uinput.rules" + + if use doc ; then + dodoc -r "${S}/docs"/{html,latex} + fi + + rm -f -r "${ED}/usr/share/doc/${PN}" || die +} + +pkg_postinst() { + udev_reload + xdg_pkg_postinst +} + +pkg_postrm() { + udev_reload + xdg_pkg_postrm +} diff --git a/games-util/antimicrox/antimicrox-3.6.1.ebuild b/games-util/antimicrox/antimicrox-3.6.1.ebuild new file mode 100644 index 000000000000..1b5f1fcd7ca2 --- /dev/null +++ b/games-util/antimicrox/antimicrox-3.6.1.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit udev xdg cmake + +DESCRIPTION="Graphical program used to map keyboard buttons and mouse controls to a gamepad" +HOMEPAGE="https://github.com/AntiMicroX/antimicrox/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/AntiMicroX/${PN}" +else + SRC_URI="https://github.com/AntiMicroX/${PN}/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="doc" + +# Tests fail to build. +# https://github.com/AntiMicroX/antimicrox/issues/530 +RESTRICT="test" + +RDEPEND=" + dev-qt/qtbase:6[concurrent,gui,network,widgets] + media-libs/libsdl2[X,joystick] + virtual/udev + x11-libs/libX11 + x11-libs/libXi + x11-libs/libXtst +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + dev-qt/qttools:6[linguist] + kde-frameworks/extra-cmake-modules + doc? ( + app-text/doxygen[dot] + ) +" + +PATCHES=( + "${FILESDIR}/antimicrox-man_gz.patch" + "${FILESDIR}/antimicrox-3.5.1-cmake_minimum_required.patch" +) + +DOCS=( CHANGELOG.md README.md ) + +src_configure() { + local -a mycmakeargs=( + -DAPPDATA="OFF" + -DCHECK_FOR_UPDATES="OFF" + -DINSTALL_UINPUT_UDEV_RULES="OFF" # Install in "src_install". + -DUSE_QT6_BY_DEFAULT="ON" + -DWITH_TESTS="OFF" + -DWITH_UINPUT="ON" + -DWITH_X11="ON" + -DWITH_XTEST="ON" + + -DBUILD_DOCS="$(usex doc ON OFF)" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + udev_dorules "${S}/other/60-${PN}-uinput.rules" + + if use doc ; then + dodoc -r "${S}/docs"/{html,latex} + fi + + rm -f -r "${ED}/usr/share/doc/${PN}" || die +} + +pkg_postinst() { + udev_reload + xdg_pkg_postinst +} + +pkg_postrm() { + udev_reload + xdg_pkg_postrm +} diff --git a/games-util/antimicrox/files/antimicrox-3.5.1-cmake_minimum_required.patch b/games-util/antimicrox/files/antimicrox-3.5.1-cmake_minimum_required.patch new file mode 100644 index 000000000000..97368ebf6732 --- /dev/null +++ b/games-util/antimicrox/files/antimicrox-3.5.1-cmake_minimum_required.patch @@ -0,0 +1,8 @@ +--- a/tests/CMakeLists.txt ++++ b/tests/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required(VERSION 2.8.11) ++cmake_minimum_required(VERSION 3.20) + project(aboutdialogClass) + + # Tell CMake to run moc when necessary: diff --git a/games-util/antimicrox/files/antimicrox-man_gz.patch b/games-util/antimicrox/files/antimicrox-man_gz.patch new file mode 100644 index 000000000000..0a6bb9cae71c --- /dev/null +++ b/games-util/antimicrox/files/antimicrox-man_gz.patch @@ -0,0 +1,13 @@ +diff --git a/other/CMakeLists.txt b/other/CMakeLists.txt +index 22b10574..66f2e483 100644 +--- a/other/CMakeLists.txt ++++ b/other/CMakeLists.txt +@@ -1,7 +1,3 @@ + add_subdirectory(appdata) + +-add_custom_target(manpage) +-add_custom_command(TARGET manpage PRE_BUILD +- COMMAND gzip -c -9 -n "${PROJECT_SOURCE_DIR}/other/antimicrox.1" > "antimicrox.1.gz" VERBATIM +- ) +-install(FILES "${CMAKE_CURRENT_BINARY_DIR}/antimicrox.1.gz" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/man/man1") ++install(FILES "${PROJECT_SOURCE_DIR}/other/antimicrox.1" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/man/man1") diff --git a/games-util/antimicrox/metadata.xml b/games-util/antimicrox/metadata.xml new file mode 100644 index 000000000000..6db1fdada7f4 --- /dev/null +++ b/games-util/antimicrox/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>xgqt@gentoo.org</email> + <name>Maciej Barć</name> + </maintainer> + <upstream> + <bugs-to>https://github.com/AntiMicroX/antimicrox/issues</bugs-to> + </upstream> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/atlas/Manifest b/games-util/atlas/Manifest new file mode 100644 index 000000000000..223651df098b --- /dev/null +++ b/games-util/atlas/Manifest @@ -0,0 +1 @@ +DIST atlas-hgcode-d4e5360f8273823205d9dc066547f5077ffc13e2.zip 795465 BLAKE2B 2e3afa478bf791bd96233bfcf8cfbbc9ecb41458591bbf8262c4c720bc4393b8f3b0c023fdf7a5f98a9e68ae89bc478660521eb79fe7a2b8f9c0b156917754c2 SHA512 fbad07ee7f416506bff6c338bb53f05b3c59759df23eeb732c8e525f2a4d7622941d018871357c3367ce8dea81d6b38d8811f65b0678e8e0bf572d5757f4221d diff --git a/games-util/atlas/atlas-0.6.1_beta_pre20181202.ebuild b/games-util/atlas/atlas-0.6.1_beta_pre20181202.ebuild new file mode 100644 index 000000000000..7cc5f6bdb9ae --- /dev/null +++ b/games-util/atlas/atlas-0.6.1_beta_pre20181202.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools + +MY_PN=atlas-hgcode +MY_PV=d4e5360f8273823205d9dc066547f5077ffc13e2 +MY_P="${MY_PN}-${MY_PV}" + +DESCRIPTION="Chart Program to use with Flightgear Flight Simulator" +HOMEPAGE="https://atlas.sourceforge.net/" +SRC_URI="https://dev.gentoo.org/~reavertm/${MY_P}.zip" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +COMMON_DEPEND=" + media-libs/freeglut + media-libs/glew:0= + media-libs/libpng:0= + media-libs/plib + net-misc/curl + virtual/zlib:= + virtual/glu + virtual/jpeg:0 + virtual/opengl +" +DEPEND="${COMMON_DEPEND} + >=dev-games/simgear-3.0.0 +" +RDEPEND="${COMMON_DEPEND} + >=games-simulation/flightgear-3.0.0 +" +BDEPEND="app-arch/unzip" + +S=${WORKDIR}/${MY_P} + +src_prepare() { + default + eautoreconf +} + +src_configure() { + econf \ + --datadir="${EPREFIX}"/usr/share/flightgear \ + --enable-simgear-shared \ + --with-fgbase="${EPREFIX}"/usr/share/flightgear +} + +pkg_postinst() { + elog "To run Atlas concurrently with FlightGear use the following:" + elog "Atlas --path=[path of map images] --udp=[port number]" + elog "and start fgfs with the following switch (or in .fgfsrc):" + elog "--nmea=socket,out,0.5,[host that you run Atlas on],[port number],udp" +} diff --git a/games-util/atlas/metadata.xml b/games-util/atlas/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/atlas/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/basis_universal/Manifest b/games-util/basis_universal/Manifest new file mode 100644 index 000000000000..e7c1a030df36 --- /dev/null +++ b/games-util/basis_universal/Manifest @@ -0,0 +1 @@ +DIST basis_universal-1.16.4.tar.gz 29156236 BLAKE2B 7beb64406a849e052e74a360803ddf197daaf74f6682f372535645f4e148b28da45c93607b54b81e82a70d44e878489c54cb5054155c5837fecef951e3fd9a2a SHA512 7f7dd62741b4a3e13050233a2ed751e6108cde9eab7b05ea5882ded6ab49fe181cc30e795cf73f8fa625a71e77ae891fda5ea84e20b632b1397844d6539715b3 diff --git a/games-util/basis_universal/basis_universal-1.16.4.ebuild b/games-util/basis_universal/basis_universal-1.16.4.ebuild new file mode 100644 index 000000000000..d5ffebc5b256 --- /dev/null +++ b/games-util/basis_universal/basis_universal-1.16.4.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake toolchain-funcs + +DESCRIPTION="Basis Universal GPU Texture Codec" +HOMEPAGE="https://github.com/BinomialLLC/basis_universal" +# dist .zip is just a exe for windows +SRC_URI="https://github.com/BinomialLLC/basis_universal/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0 zstd? ( BSD )" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="cpu_flags_x86_sse4_1 opencl zstd" + +# zstd is bundled, see https://github.com/BinomialLLC/basis_universal/pull/228 +DEPEND=" + opencl? ( virtual/opencl ) +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.16.3-respect-CFLAGS.patch + "${FILESDIR}"/${PN}-1.16.3-fix-RPATH.patch + "${FILESDIR}"/${PN}-1.16.3-SSE4.1-AVX-checks.patch +) + +src_configure() { + local x64=ON + if $(tc-getCC) -dM -E -x c - < <(echo 'int main() { }') | grep -qi "#define __PTRDIFF_WIDTH__ 32" ; then + x64=OFF + fi + + local mycmakeargs=( + -DBUILD_X64=${x64} + -DOPENCL=$(usex opencl) + -DSSE=$(usex cpu_flags_x86_sse4_1) + -DZSTD=$(usex zstd) + ) + + cmake_src_configure +} diff --git a/games-util/basis_universal/files/basis_universal-1.16.3-SSE4.1-AVX-checks.patch b/games-util/basis_universal/files/basis_universal-1.16.3-SSE4.1-AVX-checks.patch new file mode 100644 index 000000000000..89be7b13482e --- /dev/null +++ b/games-util/basis_universal/files/basis_universal-1.16.3-SSE4.1-AVX-checks.patch @@ -0,0 +1,40 @@ +https://bugs.gentoo.org/892727 +https://github.com/BinomialLLC/basis_universal/issues/342 +https://github.com/BinomialLLC/basis_universal/pull/343 + +From e61fe1e4ff66decbb14f86a1bf8ec4ea40d23bbf Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= <stefantalpalaru@yahoo.com> +Date: Tue, 31 Jan 2023 14:39:17 +0100 +Subject: [PATCH] SIMD: disable compile time checks + +SSE4.1 support is checked at runtime, so compile time checks are +redundant at best and harmful when compiling for a different machine. + +Further more, a logic error prevented the use of SSE4.1 on systems with +any version of AVX available. This is fixed now. +--- a/encoder/basisu_kernels_sse.cpp ++++ b/encoder/basisu_kernels_sse.cpp +@@ -22,22 +22,6 @@ + #include <intrin.h> + #endif + +-#if !defined(_MSC_VER) +- #if __AVX__ || __AVX2__ || __AVX512F__ +- #error Please check your compiler options +- #endif +- +- #if CPPSPMD_SSE2 +- #if __SSE4_1__ || __SSE3__ || __SSE4_2__ || __SSSE3__ +- #error SSE4.1/SSE3/SSE4.2/SSSE3 cannot be enabled to use this file +- #endif +- #else +- #if !__SSE4_1__ || !__SSE3__ || !__SSSE3__ +- #error Please check your compiler options +- #endif +- #endif +-#endif +- + #include "cppspmd_sse.h" + + #include "cppspmd_type_aliases.h" + diff --git a/games-util/basis_universal/files/basis_universal-1.16.3-fix-RPATH.patch b/games-util/basis_universal/files/basis_universal-1.16.3-fix-RPATH.patch new file mode 100644 index 000000000000..d15ba0d4ddfb --- /dev/null +++ b/games-util/basis_universal/files/basis_universal-1.16.3-fix-RPATH.patch @@ -0,0 +1,10 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -103,7 +103,6 @@ if (NOT MSVC) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DBASISU_SUPPORT_SSE=0") + endif() + +- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${GCC_LINK_FLAGS} -Wl,-rpath .") + endif() + + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${GCC_COMPILE_FLAGS}") diff --git a/games-util/basis_universal/files/basis_universal-1.16.3-respect-CFLAGS.patch b/games-util/basis_universal/files/basis_universal-1.16.3-respect-CFLAGS.patch new file mode 100644 index 000000000000..e7c1db7ea2bf --- /dev/null +++ b/games-util/basis_universal/files/basis_universal-1.16.3-respect-CFLAGS.patch @@ -0,0 +1,11 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -72,7 +72,7 @@ if (NOT MSVC) + set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -fsanitize=address -fno-omit-frame-pointer -fsanitize=undefined") + endif() + +- set(CMAKE_CXX_FLAGS -std=c++11) ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") + set(GCC_COMPILE_FLAGS "-fvisibility=hidden -fPIC -fno-strict-aliasing -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -Wall -Wextra -Wno-unused-local-typedefs -Wno-unused-value -Wno-unused-parameter -Wno-unused-variable") + + if (NOT BUILD_X64) diff --git a/games-util/basis_universal/metadata.xml b/games-util/basis_universal/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/basis_universal/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/biounzip/Manifest b/games-util/biounzip/Manifest new file mode 100644 index 000000000000..ed157bdadfa3 --- /dev/null +++ b/games-util/biounzip/Manifest @@ -0,0 +1 @@ +DIST biounzip-1.1a.tar.bz2 9894 BLAKE2B 950216a1b0b994b2ec271d836c7cf86471a2eca5ac0c259885e21a4df7b20425b74ae2ffb08610ed0841caced5d8b6783c448857df3a2a9030c788ee9b88db3b SHA512 4eaea5459cf6edaf289951f9048123496a4eb83fcfc39b3efcd2a81894f877d5db843d7448e2c0e3b797b09a70f6f3c133c53525d4f83408306089bd37796a8c diff --git a/games-util/biounzip/biounzip-1.1a.ebuild b/games-util/biounzip/biounzip-1.1a.ebuild new file mode 100644 index 000000000000..9358fd939d6f --- /dev/null +++ b/games-util/biounzip/biounzip-1.1a.ebuild @@ -0,0 +1,31 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +DESCRIPTION="Unpacks BioZip archives" +HOMEPAGE="https://biounzip.sourceforge.net/" +SRC_URI="https://downloads.sourceforge.net/biounzip/${P}.tar.bz2" +S="${WORKDIR}"/${P/a/} + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +DEPEND="virtual/zlib:=" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-64bit.patch +) + +src_compile() { + $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -o ${PN} *.c -lz || die +} + +src_install() { + dobin ${PN} + dodoc biozip.txt +} diff --git a/games-util/biounzip/files/biounzip-1.1a-64bit.patch b/games-util/biounzip/files/biounzip-1.1a-64bit.patch new file mode 100644 index 000000000000..860261641ed4 --- /dev/null +++ b/games-util/biounzip/files/biounzip-1.1a-64bit.patch @@ -0,0 +1,11 @@ +--- a/biounzip.c ++++ b/biounzip.c +@@ -127,7 +127,7 @@ + void writefile(bzfile *ptr, FILE *fp, char *destdir) + { + int startpos,returnval,n,debug=0; +- unsigned long size_uncompressed,size_compressed; ++ unsigned long size_uncompressed = 0, size_compressed = 0; + char *fname,*dirname,*fullname,*fullpath; + unsigned char *srcbuffer,*dstbuffer; + FILE *outfile; diff --git a/games-util/biounzip/metadata.xml b/games-util/biounzip/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/biounzip/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/cartridges/Manifest b/games-util/cartridges/Manifest new file mode 100644 index 000000000000..1fb2abd92702 --- /dev/null +++ b/games-util/cartridges/Manifest @@ -0,0 +1,2 @@ +DIST cartridges-2.12.1.tar.gz 2305598 BLAKE2B 2d7a23f2a42780de8fba6641ff2a1249c0e5b8b2a80f8794894e2417f0bfe4babcec511a3b54efe7dd5c85dd1ea7c0cbb86df898499b39032f241aeff1c6efc9 SHA512 2aa9ed2a59acbbf9f371d9f57ed5237a5b8832edbd8271a7dabc151ad3a68a2c573c677aa6942324a1cbe6ebbbd05f48c29c34f713de7ee53986fa9816029628 +DIST cartridges-2.13.1.tar.gz 2306857 BLAKE2B 3369263dc75627c4c4c89cc8ae30e9038dd8312f94064d76b0c3afc79f4bcac04fc1398075e2728e4458d66ce993c69dff97414d69792b2a1520a9fa07397f6d SHA512 269083236b88ec4d8fb547af482389ff608f0e994850bf222ef3993a0eefe863b54073a74b7943c9445e56c137c7e88443d5bddd8b443f2f82846c16e0c806be diff --git a/games-util/cartridges/cartridges-2.12.1-r1.ebuild b/games-util/cartridges/cartridges-2.12.1-r1.ebuild new file mode 100644 index 000000000000..262095e536eb --- /dev/null +++ b/games-util/cartridges/cartridges-2.12.1-r1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit gnome2-utils python-single-r1 meson ninja-utils xdg + +DESCRIPTION="Simple game launcher written in Python using GTK4 and Libadwaita" +HOMEPAGE="https://github.com/kra-mo/cartridges/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/kra-mo/${PN}" +else + SRC_URI="https://github.com/kra-mo/${PN}/archive/v${PV}.tar.gz + -> ${P}.tar.gz" + + KEYWORDS="amd64 ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" +RESTRICT="test" # Just appstream file validation that uses network. +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + >=gui-libs/gtk-4.16.12:4[introspection] + >=gui-libs/libadwaita-1.6.2:1[introspection] + media-libs/tiff[webp] + $(python_gen_cond_dep ' + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + ') +" +BDEPEND=" + ${RDEPEND} + dev-libs/appstream-glib + dev-util/blueprint-compiler + dev-util/desktop-file-utils +" + +src_compile() { + cd "${BUILD_DIR}" || die + + eninja data/page.kramo.Cartridges.metainfo.xml + meson_src_compile +} + +src_install() { + meson_src_install + + python_fix_shebang "${ED}/usr/bin" + python_optimize "${ED}/usr" +} + +pkg_postinst() { + gnome2_schemas_update + xdg_pkg_postinst +} + +pkg_postrm() { + gnome2_schemas_update + xdg_pkg_postrm +} diff --git a/games-util/cartridges/cartridges-2.13.1-r1.ebuild b/games-util/cartridges/cartridges-2.13.1-r1.ebuild new file mode 100644 index 000000000000..300ac80d94b3 --- /dev/null +++ b/games-util/cartridges/cartridges-2.13.1-r1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit gnome2-utils python-single-r1 meson ninja-utils xdg + +DESCRIPTION="Simple game launcher written in Python using GTK4 and Libadwaita" +HOMEPAGE="https://github.com/kra-mo/cartridges/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/kra-mo/${PN}" +else + SRC_URI="https://github.com/kra-mo/${PN}/archive/v${PV}.tar.gz + -> ${P}.tar.gz" + + KEYWORDS="~amd64" +fi + +LICENSE="GPL-3+" +SLOT="0" +RESTRICT="test" # Just appstream file validation that uses network. +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + >=gui-libs/gtk-4.19:4[introspection] + >=gui-libs/libadwaita-1.8.2:1[introspection] + media-libs/tiff[webp] + $(python_gen_cond_dep ' + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + ') +" +BDEPEND=" + ${RDEPEND} + dev-libs/appstream-glib + dev-util/blueprint-compiler + dev-util/desktop-file-utils +" + +src_compile() { + cd "${BUILD_DIR}" || die + + eninja data/page.kramo.Cartridges.metainfo.xml + meson_src_compile +} + +src_install() { + meson_src_install + + python_fix_shebang "${ED}/usr/bin" + python_optimize "${ED}/usr" +} + +pkg_postinst() { + gnome2_schemas_update + xdg_pkg_postinst +} + +pkg_postrm() { + gnome2_schemas_update + xdg_pkg_postrm +} diff --git a/games-util/cartridges/cartridges-9999.ebuild b/games-util/cartridges/cartridges-9999.ebuild new file mode 100644 index 000000000000..6698ae73d4ad --- /dev/null +++ b/games-util/cartridges/cartridges-9999.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit gnome2-utils python-single-r1 meson ninja-utils xdg + +DESCRIPTION="Simple game launcher written in Python using GTK4 and Libadwaita" +HOMEPAGE="https://github.com/kra-mo/cartridges/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/kra-mo/${PN}" +else + SRC_URI="https://github.com/kra-mo/${PN}/archive/v${PV}.tar.gz + -> ${P}.tar.gz" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" +RESTRICT="test" # Just appstream file validation that uses network. +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + >=gui-libs/gtk-4.16.12:4[introspection] + >=gui-libs/libadwaita-1.6.2:1[introspection] + media-libs/tiff[webp] + $(python_gen_cond_dep ' + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + ') +" +BDEPEND=" + ${RDEPEND} + dev-libs/appstream-glib + dev-util/blueprint-compiler + dev-util/desktop-file-utils +" + +src_compile() { + cd "${BUILD_DIR}" || die + + eninja data/page.kramo.Cartridges.metainfo.xml + meson_src_compile +} + +src_install() { + meson_src_install + + python_fix_shebang "${ED}/usr/bin" + python_optimize "${ED}/usr" +} + +pkg_postinst() { + gnome2_schemas_update + xdg_pkg_postinst +} + +pkg_postrm() { + gnome2_schemas_update + xdg_pkg_postrm +} diff --git a/games-util/cartridges/metadata.xml b/games-util/cartridges/metadata.xml new file mode 100644 index 000000000000..07b080022b47 --- /dev/null +++ b/games-util/cartridges/metadata.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>xgqt@gentoo.org</email> + <name>Maciej Barć</name> + </maintainer> + <longdescription> + Cartridges is a simple game launcher for all of your games. It has support + for importing games from Steam, Lutris, Heroic and more with no login + necessary. You can sort and hide games or download cover art from + SteamGridDB. + </longdescription> + <upstream> + <changelog>https://github.com/kra-mo/cartridges/releases/</changelog> + <bugs-to>https://github.com/kra-mo/cartridges/issues/</bugs-to> + </upstream> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/catcodec/Manifest b/games-util/catcodec/Manifest new file mode 100644 index 000000000000..3c33f4d8cdf9 --- /dev/null +++ b/games-util/catcodec/Manifest @@ -0,0 +1 @@ +DIST catcodec-1.0.5-source.tar.xz 17952 BLAKE2B e828e52426b26c0021365bb961d16028a52a8c8cedac06db6b825947562e6eb513d0c9f7b455710f05dc20b88a86b0cdab3123ede38c2f785709c1b76964e1b4 SHA512 e6e17da17f2449ff5d3a18c34ba3125d475a481ef1dc73ba03dac32fc8523a8929d2cbdfda5f647a0226aa007a217fc90c85ec4cc46937f75e15a596277e0db5 diff --git a/games-util/catcodec/catcodec-1.0.5.ebuild b/games-util/catcodec/catcodec-1.0.5.ebuild new file mode 100644 index 000000000000..f951d8d9f712 --- /dev/null +++ b/games-util/catcodec/catcodec-1.0.5.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +DESCRIPTION="Decodes and encodes sample catalogues for OpenTTD" +HOMEPAGE="https://www.openttd.org/en/download-catcodec" +SRC_URI="https://binaries.openttd.org/extra/catcodec/${PV}/${P}-source.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +src_prepare() { + default + tc-export CXX +} + +src_compile() { + emake VERBOSE=1 +} + +src_install() { + dobin catcodec + dodoc changelog.txt docs/readme.txt + doman docs/catcodec.1 +} diff --git a/games-util/catcodec/metadata.xml b/games-util/catcodec/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/catcodec/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/datutil/Manifest b/games-util/datutil/Manifest new file mode 100644 index 000000000000..1e4359a529f7 --- /dev/null +++ b/games-util/datutil/Manifest @@ -0,0 +1,2 @@ +DIST datlib236.zip 109484 BLAKE2B 63dbaf4c70b5cd4259fbbe77a36e8608edb62d4a3663d836f237cb23ba85e2128cdb5ec055cd48913a7316c6334689e898fbd37c54a3eaae3428f6b2d54d7544 SHA512 0c601fe243c8ea4186abb6181cf70e749226a5eed871d7391b3686e7eb58195d1aab40305d498d1419c6fa49bf56c59fb74d032642822045cc7e36f8a5fe96b4 +DIST dutil246.zip 209577 BLAKE2B bd806974780bf03d89353a93dfc240dcec00aada4ffa7a3848d2b4e07cc8cb317834115b55b5074ee104db3df975bfc4c5ebbb2591cb9fda6a716bc49f2bb454 SHA512 f9e55eac41894681caaee7d6e3247d4e4d053ac6985d42708623fad415afeb8ece588dd728edc31cbd31bf6df1d9a06ec80f1b45979b0f77763c12e6627434b2 diff --git a/games-util/datutil/datutil-2.46.ebuild b/games-util/datutil/datutil-2.46.ebuild new file mode 100644 index 000000000000..01efdab6239f --- /dev/null +++ b/games-util/datutil/datutil-2.46.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +DL_PV=2.36 +DESCRIPTION="Converter for dat files for Rom Managers" +HOMEPAGE="http://www.logiqx.com/Tools/DatUtil/" +SRC_URI="http://www.logiqx.com/Tools/DatUtil/dutil${PV//.}.zip + http://www.logiqx.com/Tools/DatLib/datlib${DL_PV//.}.zip" +S="${WORKDIR}" + +LICENSE="all-rights-reserved" +SLOT="0" +KEYWORDS="~amd64 ~x86" +RESTRICT="mirror bindist" + +BDEPEND="app-arch/unzip" + +src_unpack() { + unpack dutil${PV//.}.zip + + cd "${S}" || die + mkdir -p dev/datlib || die + cd dev/datlib || die + + unpack datlib${DL_PV//.}.zip +} + +src_compile() { + # Parallel make issue, see bug #244879 (so make the dirs first) + emake -j1 \ + CC="$(tc-getCC)" \ + LD="$(tc-getCC) ${CFLAGS} ${LDFLAGS}" \ + CFLAGS="${CFLAGS} -Idev" \ + LOGIQX=. \ + EXT= \ + UPX=@# \ + dlmaketree maketree || die "emake failed" + + emake \ + CC="$(tc-getCC)" \ + LD="$(tc-getCC) ${CFLAGS} ${LDFLAGS}" \ + CFLAGS="${CFLAGS} -Idev" \ + LOGIQX=. \ + EXT= \ + UPX=@# \ + || die "emake failed" +} + +src_install() { + dobin datutil + dodoc readme.txt whatsnew.txt +} diff --git a/games-util/datutil/metadata.xml b/games-util/datutil/metadata.xml new file mode 100644 index 000000000000..2ca6ad6c5489 --- /dev/null +++ b/games-util/datutil/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <longdescription lang="en"> +DatUtil was created to aid in the creation of dat files for Rom Managers such as +ClrMamePro and RomCenter (Roman Scherzer / Eric Bole-Feysot). It can convert +between formats, extract individual games (and optionally their clones) and +cleanse dats. It supports a variety of formats +</longdescription> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/deutex/Manifest b/games-util/deutex/Manifest new file mode 100644 index 000000000000..2ec5d7dffd4d --- /dev/null +++ b/games-util/deutex/Manifest @@ -0,0 +1 @@ +DIST deutex-5.2.2.tar.zst 172022 BLAKE2B ad290ce6792425ba7f643cfe6c09c1a3f040ad0a4c95822f9368592dde6d489d28e892a26d78f2ebfefa086c910c948ef37eb3a3047429605653b273f9b567a8 SHA512 5f3c3d3ecad3a7949270a10c3c7e3a8be938389d4846dcac171526a9fd0485e056889323d303f61630e8735e5735edc91df7ad4efaba3d0b2b66a9d719017ebc diff --git a/games-util/deutex/deutex-5.2.2.ebuild b/games-util/deutex/deutex-5.2.2.ebuild new file mode 100644 index 000000000000..e26455054782 --- /dev/null +++ b/games-util/deutex/deutex-5.2.2.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit unpacker + +DESCRIPTION="WAD composer for Doom, Heretic, Hexen, and Strife" +HOMEPAGE="https://github.com/Doom-Utils/deutex" +SRC_URI="https://github.com/Doom-Utils/${PN}/releases/download/v${PV}/${P}.tar.zst" + +LICENSE="GPL-2+ LGPL-2+ HPND" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" +IUSE="man +png" + +DEPEND="png? ( media-libs/libpng:0= )" +RDEPEND="${DEPEND}" +BDEPEND="$(unpacker_src_uri_depends) + man? ( app-text/asciidoc )" + +src_configure() { + econf \ + $(use_enable man) \ + $(use_with png libpng) +} diff --git a/games-util/deutex/metadata.xml b/games-util/deutex/metadata.xml new file mode 100644 index 000000000000..a2efc4c1afbb --- /dev/null +++ b/games-util/deutex/metadata.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <longdescription lang="en"> + DeuTex can do many things with Doom, Freedoom, Heretic, Hexen, + and Strife “WAD” files, such as extracting and inserting + graphics, sounds, levels, and other resources. It can be used + for creating and modifying IWAD (“Internal WAD”) and PWAD + (“Patch WAD”) files both. + + It is a command-line driven program and as such, is suitable for + scripting such as from a shell script or Makefile. + </longdescription> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <upstream> + <bugs-to>https://github.com/Doom-Utils/deutex/issues</bugs-to> + <doc lang="en">https://github.com/Doom-Utils/deutex</doc> + </upstream> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/dfarc/Manifest b/games-util/dfarc/Manifest new file mode 100644 index 000000000000..c361167527a0 --- /dev/null +++ b/games-util/dfarc/Manifest @@ -0,0 +1 @@ +DIST dfarc-3.14.tar.gz 336910 BLAKE2B 50f0ad1af2d91a562ba6a7b1e0e5e1821c900fe8ab3cf48f3585ca10ea12d9f7e3125ae85bc2e31c1539bf13d5a950e30a467b05259a7df6e2bda35544820933 SHA512 536c1cb5d1c8bf7012920e39d69fafbb790da78acb89a18f8ab1a3ad985220c74da61adda238e39395b4d7fd8fc62894fb5579691b744fe17600a8fccabc3c13 diff --git a/games-util/dfarc/dfarc-3.14-r2.ebuild b/games-util/dfarc/dfarc-3.14-r2.ebuild new file mode 100644 index 000000000000..784740eea5e3 --- /dev/null +++ b/games-util/dfarc/dfarc-3.14-r2.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +WX_GTK_VER="3.2-gtk3" +inherit wxwidgets xdg + +DESCRIPTION="Frontend and .dmod installer for GNU FreeDink" +HOMEPAGE="http://www.gnu.org/software/freedink/" +SRC_URI="mirror://gnu/freedink/${P}.tar.gz" + +LICENSE="GPL-3 BZIP2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="nls" + +RDEPEND=" + app-arch/bzip2 + x11-misc/xdg-utils + x11-libs/wxGTK:${WX_GTK_VER}=[X] +" +DEPEND="${RDEPEND}" +BDEPEND="nls? ( dev-util/intltool )" + +PATCHES=( + "${FILESDIR}"/${PN}-3.12-nowindres.patch + # From OpenSuSE + "${FILESDIR}"/${P}-wxString.patch +) + +src_configure() { + setup-wxwidgets + econf \ + $(use_enable nls) \ + --disable-desktopfiles \ + --with-wx-config="${WX_CONFIG}" +} + +src_install() { + default + dodoc TRANSLATIONS.txt +} diff --git a/games-util/dfarc/files/dfarc-3.12-nowindres.patch b/games-util/dfarc/files/dfarc-3.12-nowindres.patch new file mode 100644 index 000000000000..9c4a74e52592 --- /dev/null +++ b/games-util/dfarc/files/dfarc-3.12-nowindres.patch @@ -0,0 +1,18 @@ +--- a/src/Makefile.in ++++ b/src/Makefile.in +@@ -100,7 +100,6 @@ + Package.$(OBJEXT) RecursiveDelete.$(OBJEXT) Tar.$(OBJEXT) \ + DFArcFrame_Base.$(OBJEXT) Options_Base.$(OBJEXT) \ + Package_Base.$(OBJEXT) InstallVerifyFrame_Base.$(OBJEXT) +-@HAVE_WINDRES_TRUE@nodist_dfarc_OBJECTS = woeres.$(OBJEXT) + dfarc_OBJECTS = $(am_dfarc_OBJECTS) $(nodist_dfarc_OBJECTS) + dfarc_LDADD = $(LDADD) + AM_V_P = $(am__v_P_@AM_V@) +@@ -346,7 +345,6 @@ + InstallVerifyFrame_Base.wxg dink.ico + + # How do we handle resources embedded in the executable binary? +-@HAVE_WINDRES_TRUE@nodist_dfarc_SOURCES = woeres.rc + all: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) all-am + diff --git a/games-util/dfarc/files/dfarc-3.14-wxString.patch b/games-util/dfarc/files/dfarc-3.14-wxString.patch new file mode 100644 index 000000000000..9eb7bd3ddffe --- /dev/null +++ b/games-util/dfarc/files/dfarc-3.14-wxString.patch @@ -0,0 +1,12 @@ +diff -Nur dfarc-3.14/src/Tar.cpp new/src/Tar.cpp +--- dfarc-3.14/src/Tar.cpp 2018-06-05 23:18:34.000000000 +0200 ++++ new/src/Tar.cpp 2019-02-02 02:41:40.128841786 +0100 +@@ -610,7 +610,7 @@ + if (lLastCharacter != '\\' && lLastCharacter != '/') + { + // Open the file. +- std::ostream* lStreamOut = ostream_open_unicode(lCurrentFilePath); ++ std::ostream* lStreamOut = ostream_open_unicode(lCurrentFilePath.mb_str()); + if (!lStreamOut->good()) + { + wxLogError(_("Error: Improperly archived file '%s'. Skipping."), lCurrentFilePath); diff --git a/games-util/dfarc/metadata.xml b/games-util/dfarc/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/dfarc/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/dzip/Manifest b/games-util/dzip/Manifest new file mode 100644 index 000000000000..c433e3bc1ea5 --- /dev/null +++ b/games-util/dzip/Manifest @@ -0,0 +1 @@ +DIST dz29src.zip 100354 BLAKE2B 1b0ab969daa030c135dab049f9950079f0337ca64636765298316e699614dfe3c139b0b88321c29278aadbe6b93ca75f2d656e82ae2dbf54b98f19d9fd3053d9 SHA512 3e1071da6ae5c9064b7222f1bb553b787ded4acbfe8463a7a94f17e60748b68cdfc17672ef7220deddd394c6709efe632e53e61508fd48bfa9001e43a37e788f diff --git a/games-util/dzip/dzip-2.9-r5.ebuild b/games-util/dzip/dzip-2.9-r5.ebuild new file mode 100644 index 000000000000..fe029d1ee3e7 --- /dev/null +++ b/games-util/dzip/dzip-2.9-r5.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="compressor/uncompressor for demo recordings from id's Quake" +HOMEPAGE="https://speeddemosarchive.com/dzip/" +SRC_URI="https://speeddemosarchive.com/dzip/dz${PV/./}src.zip" +S="${WORKDIR}" + +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND="virtual/zlib:=" +DEPEND="${RDEPEND}" +BDEPEND="app-arch/unzip" + +PATCHES=( + "${FILESDIR}"/${P}-system-zlib-r2.patch + "${FILESDIR}"/${P}-scrub-names.patch #93079 + "${FILESDIR}"/dzip-amd64.diff + "${FILESDIR}"/${PN}-clang16-build-fix.patch +) + +src_prepare() { + default + + mv -f Makefile{.linux,} || die +} + +src_configure() { + tc-export CC +} + +src_install() { + dobin dzip + dodoc Readme +} diff --git a/games-util/dzip/files/dzip-2.9-scrub-names.patch b/games-util/dzip/files/dzip-2.9-scrub-names.patch new file mode 100644 index 000000000000..01fbc53ec26c --- /dev/null +++ b/games-util/dzip/files/dzip-2.9-scrub-names.patch @@ -0,0 +1,88 @@ +Fix directory traversals issues. + +Since .dz files normally just have relative directory trees: +pak/ +pak/file +pak/subdir/file + +we strip out all the components which ascend in the directory tree + +http://bugs.gentoo.org/93079 + +--- a/main.c ++++ b/main.c +@@ -77,6 +77,48 @@ int dzRead (int inlen) + return 1;
+ } +
++#define IS_SEP(c) (c == '/' || c == ':' || c == '\\') ++void scrub_name(char *smee) ++{ ++ char *paths[] = { "../", "..\\", "..:", NULL}; ++ size_t p, i, len; ++ char scrubit, scrubbed; ++ ++ scrubbed = 0; ++ len = strlen(smee); ++ i = 0; ++ scrubit = 1; ++ ++ /* search the path and scrub out all relative paths */ ++ while (i + 3 < len) { ++ for (p = 0; paths[p]; ++p) { ++ if (scrubit && !strncmp(paths[p], smee+i, 3)) { ++ scrubbed = 1; ++ memset(smee+i, '\0', 3); ++ i += 2; ++ break; ++ } ++ } ++ scrubit = IS_SEP(smee[i]) || smee[i] == '\0'; ++ ++i; ++ } ++ ++ if (!scrubbed) ++ return; ++ ++ /* condense the string over all the scrubbed bits */ ++ p = 0; ++ for (i = 0; i < len; ++i) { ++ while (p < len && smee[p] == '\0') ++ ++p; ++ if (p == len) { ++ smee[i] = '\0'; ++ break; ++ } ++ smee[i] = smee[p++]; ++ } ++} ++
+ int dzReadDirectoryEntry (direntry_t *de) + { + char *s; +@@ -102,6 +144,7 @@ int dzReadDirectoryEntry (direntry_t *de + s = Dzip_malloc(de->len);
+ dzFile_Read(s, de->len);
+ de->name = s; ++ scrub_name(de->name); + if (de->pak && de->type != TYPE_PAK) + return 1; /* dont mess with dirchar inside pakfiles */ + do +--- a/v1code.c ++++ b/v1code.c +@@ -201,6 +201,7 @@ void demv1_dxentities(void) + + } +
++extern void scrub_name(char *smee); + void dzUncompressV1 (int testing)
+ {
+ int i, inlen = 0;
+@@ -221,6 +222,7 @@ void dzUncompressV1 (int testing)
+ {
+ de = directory + i;
+ crcval = INITCRC;
++ scrub_name(de->name); + printf("%s %s",action,de->name);
+ fflush(stdout);
+
diff --git a/games-util/dzip/files/dzip-2.9-system-zlib-r2.patch b/games-util/dzip/files/dzip-2.9-system-zlib-r2.patch new file mode 100644 index 000000000000..668ef369dfe0 --- /dev/null +++ b/games-util/dzip/files/dzip-2.9-system-zlib-r2.patch @@ -0,0 +1,72 @@ +--- a/dzip.h ++++ b/dzip.h +@@ -2,7 +2,7 @@ + #include <stdlib.h>
+ #include <string.h>
+
+-#include "zlib/zlib.h"
++#include <zlib.h>
+
+ typedef unsigned char uchar;
+
+@@ -177,4 +177,4 @@ + #else
+ #define DIRCHAR '/'
+ #define WRONGCHAR '\\'
+-#endif +\ No newline at end of file ++#endif
+--- a/Makefile.linux ++++ b/Makefile.linux +@@ -1,18 +1,17 @@ + # Makefile for linux
+
+-CC = gcc
+-CFLAGS = -Wall -O3
++CC ?= gcc
++CFLAGS ?= -O3
++CFLAGS += -Wall
+ TARGET = dzip
+ OBJECTS = main.o compress.o uncompress.o list.o crc32.o \
+- encode.o decode.o v1code.o conmain.o delete.o \
+- zlib/adler32.o zlib/deflate.o zlib/trees.o \
+- zlib/inflate.o zlib/infblock.o zlib/inftrees.o zlib/infcodes.o \
+- zlib/infutil.o zlib/inffast.o
++ encode.o decode.o v1code.o conmain.o delete.o
++LIBS = -lz
+
+ TMPFILES = gmon.out frag*
+
+ $(TARGET): $(OBJECTS)
+- $(CC) $(CFLAGS) $(OBJECTS) -o $(TARGET) $(LDFLAGS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $(TARGET) $(OBJECTS) $(LIBS)
+
+ clean:
+ rm -f $(TARGET) $(OBJECTS) $(TMPFILES)
+@@ -24,4 +23,4 @@ + encode.o: encode.c dzip.h
+ list.o: list.c dzip.h dzipcon.h
+ decode.o: decode.c dzip.h dzipcon.h
+-v1code.o: v1code.c dzip.h dzipcon.h +\ No newline at end of file ++v1code.o: v1code.c dzip.h dzipcon.h
+--- a/conmain.c ++++ b/conmain.c +@@ -507,8 +507,8 @@ + if (!strcmp(argv[i],"-o")) i++;
+ }
+
+- zs.zalloc = Dzip_calloc;
+- zs.zfree = free;
++ zs.zalloc = Z_NULL; // Dzip_calloc; <- wrong number of arguments, reverting to default
++ zs.zfree = Z_NULL; // free; <- wrong number of arguments, reverting to default
+
+ if (flag[SW_LIST] || flag[SW_EXTRACT] || flag[SW_VERIFY])
+ {
+@@ -618,4 +618,4 @@ + dzDeleteFiles_MakeList(files + 1, fileargs - 1);
+ free(files);
+ exit(0);
+-} +\ No newline at end of file ++}
diff --git a/games-util/dzip/files/dzip-amd64.diff b/games-util/dzip/files/dzip-amd64.diff new file mode 100644 index 000000000000..60d4a524b001 --- /dev/null +++ b/games-util/dzip/files/dzip-amd64.diff @@ -0,0 +1,30 @@ +--- a/crc32.c ++++ b/crc32.c +@@ -1,10 +1,12 @@ ++#include <stdint.h> ++ + unsigned long crcval; + unsigned long crctable[256]; + +-unsigned long crc_reflect(unsigned long x, int bits) +-{
+- int i; +- unsigned long v = 0, b = 1 << (bits - 1); ++unsigned long crc_reflect(uint32_t x, int bits) ++{ ++ uint32_t i; ++ uint32_t v = 0, b = 1 << (bits - 1); + + for (i = 0; i < bits; i++) + { +@@ -16,8 +18,8 @@ + + void crc_init(void) + { +- unsigned long crcpol = 0x04c11db7; +- unsigned long i, j, k; ++ uint32_t crcpol = 0x04c11db7; ++ uint32_t i, j, k; + + for (i = 0; i < 256; i++) + { diff --git a/games-util/dzip/files/dzip-clang16-build-fix.patch b/games-util/dzip/files/dzip-clang16-build-fix.patch new file mode 100644 index 000000000000..d16c6beb182c --- /dev/null +++ b/games-util/dzip/files/dzip-clang16-build-fix.patch @@ -0,0 +1,14 @@ +Bug: https://bugs.gentoo.org/884923 +--- a/delete.c ++++ b/delete.c +@@ -1,8 +1,8 @@ + #include "dzip.h"
+
+-int intcmp (const uInt *arg1, const uInt *arg2)
++int intcmp (const void *arg1, const void *arg2)
+ {
+- if (*arg1 < *arg2) return -1;
++ if (*(uInt *)arg1 < *(uInt *)arg2) return -1;
+ return 1;
+ }
+
diff --git a/games-util/dzip/metadata.xml b/games-util/dzip/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/dzip/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/eureka/Manifest b/games-util/eureka/Manifest new file mode 100644 index 000000000000..958451c501be --- /dev/null +++ b/games-util/eureka/Manifest @@ -0,0 +1 @@ +DIST eureka-1.27b-source.tar.gz 1159366 BLAKE2B 00410b0cd53c907983241bf94c631c3068015e29ac947d092048a5701a4e0102d66d99134731b152a1310473dd30513e1fdc89bde82a5ede47185419575c9dd2 SHA512 4b2ce44a99acbe1b9dd2cf31ee5c3307f5f667422ba18bee8c3f9858e9244ee05c48e96b5afa4cdf65dfd079bca19a5693b6d123b5563549d1f84ca03137eb5e diff --git a/games-util/eureka/eureka-1.27b-r1.ebuild b/games-util/eureka/eureka-1.27b-r1.ebuild new file mode 100644 index 000000000000..1ef5ea4ef295 --- /dev/null +++ b/games-util/eureka/eureka-1.27b-r1.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit desktop toolchain-funcs xdg + +DESCRIPTION="Graphical map editor for games using the DOOM engine" +HOMEPAGE="https://eureka-editor.sourceforge.net/" +SRC_URI="https://downloads.sourceforge.net/${PN}-editor/Eureka/${PV%[a-z]}/${P}-source.tar.gz" +S="${WORKDIR}/${P}-source" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+opengl" + +DEPEND=" + virtual/zlib:= + x11-libs/fltk:1=[opengl?] + opengl? ( + media-libs/glu + virtual/opengl + ) +" + +RDEPEND=" + ${DEPEND} +" + +PATCHES=( + "${FILESDIR}"/${PN}-Makefile.patch +) + +DOCS=( + AUTHORS.txt + CHANGES.txt + README.txt + TODO.txt +) + +src_compile() { + emake \ + CXX="$(tc-getCXX)" \ + OPENGL="$(usex opengl 1 0)" +} + +src_install() { + emake install PREFIX="${ED}/usr" + einstalldocs + + doicon -s 32 misc/${PN}.xpm + domenu misc/${PN}.desktop +} diff --git a/games-util/eureka/files/eureka-Makefile.patch b/games-util/eureka/files/eureka-Makefile.patch new file mode 100644 index 000000000000..567f5476c037 --- /dev/null +++ b/games-util/eureka/files/eureka-Makefile.patch @@ -0,0 +1,74 @@ +From faf9c604becc44135d6c5a7c8427982e203a327f Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Fri, 8 May 2020 11:26:18 +0100 +Subject: [PATCH 1/2] Allow software rendering to be easily chosen over OpenGL + with OPENGL=0 + +--- + Makefile | 17 ++++++++++++----- + 1 file changed, 12 insertions(+), 5 deletions(-) + +diff --git a/Makefile b/Makefile +index ebbd53a4..adabaa92 100644 +--- a/Makefile ++++ b/Makefile +@@ -26,19 +26,26 @@ CPPFLAGS ?= + LDFLAGS ?= $(OPTIMISE) + LIBS ?= + ++# set this to 0 to use software rendering instead of OpenGL ++OPENGL = 1 ++ + # general things needed by Eureka + CXXFLAGS += $(CXX_DIALECT) +-LIBS += -lGLU -lGL + LIBS += -lz -lm ++FLTK_CONFIG_FLAGS = + +-# add this for software rendering, remove '--use-gl' below, remove -lGL and -lGLU from LIBS +-# CXXFLAGS += -DNO_OPENGL ++ifeq ($(OPENGL),1) ++LIBS += -lGLU -lGL ++FLTK_CONFIG_FLAGS += --use-gl ++else ++CXXFLAGS += -DNO_OPENGL ++endif + + # FLTK flags (this assumes a system-wide FLTK installation) + FLTK_CONFIG ?= fltk-config + +-CXXFLAGS += $(shell $(FLTK_CONFIG) --use-images --use-gl --cxxflags) +-LDFLAGS += $(shell $(FLTK_CONFIG) --use-images --use-gl --ldflags) ++CXXFLAGS += $(shell $(FLTK_CONFIG) --use-images --cxxflags $(FLTK_CONFIG_FLAGS)) ++LDFLAGS += $(shell $(FLTK_CONFIG) --use-images --ldflags $(FLTK_CONFIG_FLAGS)) + + # NOTE: the following is commented out since it does not work as expected. + # the --libs option gives us static libraries, but --ldflags option +-- +2.26.2 + +From decee12e317e58128420771392b77c44a7c81122 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Fri, 8 May 2020 11:27:49 +0100 +Subject: [PATCH 2/2] Ensure bin directory is present before installing binary + +It might not be when using DESTDIR. +--- + Makefile | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Makefile b/Makefile +index adabaa92..424ad4b5 100644 +--- a/Makefile ++++ b/Makefile +@@ -158,6 +158,7 @@ stripped: all + INSTALL_DIR=$(DESTDIR)$(PREFIX)/share/eureka + + install: all ++ install -d $(DESTDIR)$(PREFIX)/bin + install -m 755 $(PROGRAM) $(DESTDIR)$(PREFIX)/bin/ + install -d $(INSTALL_DIR)/games + install -d $(INSTALL_DIR)/common +-- +2.26.2 + diff --git a/games-util/eureka/metadata.xml b/games-util/eureka/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/eureka/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/fteqcc/Manifest b/games-util/fteqcc/Manifest new file mode 100644 index 000000000000..b0d114003c34 --- /dev/null +++ b/games-util/fteqcc/Manifest @@ -0,0 +1 @@ +DIST fteqcc-20250126.tar.gz 7360931 BLAKE2B 24466184e0115fd471098fceaf26b0af22b9d0c4d8335a7ce7cd0ada6bd40c014b818bec65d46833ba75844874f329f4032413751d656d3ee9a94096910d6710 SHA512 6c2ae44fabc44987891063d87f237236eea76b65899c049d93a532b1159e6a3d9086bacf085bdd45f1077d7e60fb9be52d07093053a261cbcedab335804cc1ae diff --git a/games-util/fteqcc/files/fteqcc-20250126-Makefile.patch b/games-util/fteqcc/files/fteqcc-20250126-Makefile.patch new file mode 100644 index 000000000000..92c108952964 --- /dev/null +++ b/games-util/fteqcc/files/fteqcc-20250126-Makefile.patch @@ -0,0 +1,67 @@ +--- a/Makefile ++++ b/Makefile +@@ -21,12 +21,8 @@ USEGUI_CFLAGS= + WARNING_CFLAGS=-Wno-pointer-sign + BASE_CFLAGS+=$(WARNING_CFLAGS) + BASE_CFLAGS+=$(USEGUI_CFLAGS) ++BASE_LDFLAGS+=$(LDFLAGS) + +-ifneq ($(DEBUG),) +- BASE_CFLAGS+=-ggdb +-else +- BASE_LDFLAGS+=-s +-endif + BASE_LDFLAGS+=-lz + # set to "" for debugging + +@@ -35,11 +31,11 @@ DO_CC?=$(CC) $(BASE_CFLAGS) -o $@ -c $< $(CFLAGS) + lib: + + R_win_nocyg: $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) +- $(CC) $(BASE_CFLAGS) -o fteqcc.exe -O3 $(BASE_LDFLAGS) $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) -mno-cygwin -mwindows -lcomctl32 -lole32 -lshlwapi ++ $(CC) $(BASE_CFLAGS) -o fteqcc.exe $(BASE_LDFLAGS) $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) -mno-cygwin -mwindows -lcomctl32 -lole32 -lshlwapi + R_nocyg: $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) +- $(CC) $(BASE_CFLAGS) -o fteqcc.exe -O3 $(BASE_LDFLAGS) $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) -mno-cygwin -lcomctl32 -lole32 -lshlwapi ++ $(CC) $(BASE_CFLAGS) -o fteqcc.exe $(BASE_LDFLAGS) $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) -mno-cygwin -lcomctl32 -lole32 -lshlwapi + R_win: $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) +- $(CC) $(BASE_CFLAGS) -o fteqcc.exe -O3 $(BASE_LDFLAGS) $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) -mwindows -lcomctl32 -lole32 -lshlwapi ++ $(CC) $(BASE_CFLAGS) -o fteqcc.exe $(BASE_LDFLAGS) $(QCC_OBJS) $(COMMON_OBJS) $(WIN32GUI_OBJS) -mwindows -lcomctl32 -lole32 -lshlwapi + + win_nocyg: + $(MAKE) USEGUI_CFLAGS="-DUSEGUI -DQCCONLY" R_win_nocyg +@@ -49,7 +45,7 @@ win: + $(MAKE) USEGUI_CFLAGS="-DUSEGUI -DQCCONLY" R_win + + R_qcc: $(QCC_OBJS) $(COMMON_OBJS) $(TUI_OBJS) +- $(CC) $(BASE_CFLAGS) -o fteqcc.bin -O3 $(QCC_OBJS) $(TUI_OBJS) $(COMMON_OBJS) $(BASE_LDFLAGS) -lm ++ $(CC) $(BASE_CFLAGS) -o fteqcc.bin $(QCC_OBJS) $(TUI_OBJS) $(COMMON_OBJS) $(BASE_LDFLAGS) -lm -lz + qcc: + $(MAKE) USEGUI_CFLAGS="" R_qcc + +@@ -87,7 +83,7 @@ qcc_gtk.o: qcc_gtk.c qcc.h + $(DO_CC) `pkg-config --cflags gtk+-2.0` + + R_gtkgui: $(QCC_OBJS) $(COMMON_OBJS) $(GTKGUI_OBJS) +- $(CC) $(BASE_CFLAGS) $(USEGUI_CFLAGS) -o fteqccgui.bin -O3 $(GTKGUI_OBJS) $(QCC_OBJS) $(COMMON_OBJS) `pkg-config --libs gtk+-2.0` ++ $(CC) $(BASE_CFLAGS) $(USEGUI_CFLAGS) -o fteqccgui.bin $(GTKGUI_OBJS) $(QCC_OBJS) $(COMMON_OBJS) `pkg-config --libs gtk+-2.0` + gtkgui: + $(MAKE) USEGUI_CFLAGS="-DUSEGUI -DQCCONLY" R_gtkgui + +@@ -95,7 +91,7 @@ clean: + $(RM) fteqcc.bin fteqcc.exe $(QCC_OBJS) $(COMMON_OBJS) $(VM_OBJS) $(GTKGUI_OBJS) $(WIN32GUI_OBJS) $(TUI_OBJS) + + qcvm.so: $(QCC_OBJS) $(VM_OBJS) $(COMMON_OBJS) +- $(CC) $(BASE_CFLAGS) -o $@ -O3 $(BASE_LDFLAGS) $(QCC_OBJS) $(VM_OBJS) $(COMMON_OBJS) -shared ++ $(CC) $(BASE_CFLAGS) -o $@ $(BASE_LDFLAGS) $(QCC_OBJS) $(VM_OBJS) $(COMMON_OBJS) -shared + qcvm.a: $(QCC_OBJS) $(VM_OBJS) $(COMMON_OBJS) + ar r $@ $^ + +@@ -103,7 +99,7 @@ test.o: test.c + $(DO_CC) + + qcvm: test.o qcvm.a +- $(CC) $(BASE_CFLAGS) $(CFLAGS) -o qcvm -O3 $(BASE_LDFLAGS) $^ -lm -lz -ggdb ++ $(CC) $(BASE_CFLAGS) $(CFLAGS) -o qcvm $(BASE_LDFLAGS) $^ -lm -lz + + tests: qcvm + @echo Running Tests... diff --git a/games-util/fteqcc/fteqcc-20250126.ebuild b/games-util/fteqcc/fteqcc-20250126.ebuild new file mode 100644 index 000000000000..fe0dbdb0eee6 --- /dev/null +++ b/games-util/fteqcc/fteqcc-20250126.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="Quake-C compiler" +HOMEPAGE="https://www.fteqcc.org/" +MY_COMMIT="f767d952e3ad8bbcb52f1cd6e2e36a47e3dbaa87" +SRC_URI="https://github.com/fte-team/fteqw/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/fteqw-${MY_COMMIT}/engine/qclib" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +RESTRICT="test" + +RDEPEND="virtual/zlib:=" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-Makefile.patch +) + +src_configure() { + tc-export CC +} + +src_install() { + newbin fteqcc.bin fteqcc + dodoc readme.txt +} diff --git a/games-util/fteqcc/metadata.xml b/games-util/fteqcc/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/fteqcc/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/game-device-udev-rules/Manifest b/games-util/game-device-udev-rules/Manifest new file mode 100644 index 000000000000..c9b2a0a59394 --- /dev/null +++ b/games-util/game-device-udev-rules/Manifest @@ -0,0 +1 @@ +DIST steam-devices-e2971e45063f6b327ccedbf18e168bda6749155c.tar.gz 2401 BLAKE2B 0660eec36dbff1d140a991debd2a88c7e2d95abafbf070e8bfb68dbff2fbf005fe2dc59a9a18bb0da3057b2b36db91a4f588d40c6639f5a7a841378354900077 SHA512 6b83e466902eb0baae866da3639724f04f2e1e4d054c97f79f8c750c0836e5c3b8a7e8f6840ec67a22b4bb40f21958de6cb72df2235af8df34f02645d0765c0f diff --git a/games-util/game-device-udev-rules/files/60-game-input-20220311.rules b/games-util/game-device-udev-rules/files/60-game-input-20220311.rules new file mode 100644 index 000000000000..be2c499891a7 --- /dev/null +++ b/games-util/game-device-udev-rules/files/60-game-input-20220311.rules @@ -0,0 +1,6 @@ + +# Thrustmaster T-Wireless +KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="d007", TAG+="uaccess" + +# Google Stadia Controller +KERNEL=="hidraw*", ATTRS{idVendor}=="18d1", ATTRS{idProduct}=="9400", TAG+="uaccess" diff --git a/games-util/game-device-udev-rules/game-device-udev-rules-20240523.ebuild b/games-util/game-device-udev-rules/game-device-udev-rules-20240523.ebuild new file mode 100644 index 000000000000..0ed9ac1f92c1 --- /dev/null +++ b/games-util/game-device-udev-rules/game-device-udev-rules-20240523.ebuild @@ -0,0 +1,87 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-info udev + +# Although this is mainly a tweaked version of Steam's udev rules, it +# also has its own rules and more may be added later so we version it +# independently. + +STEAM_COMMIT="e2971e45063f6b327ccedbf18e168bda6749155c" +MY_P="steam-devices-${STEAM_COMMIT}" + +DESCRIPTION="udev rules for various game hardware devices" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Games + https://github.com/ValveSoftware/steam-devices/" +SRC_URI="https://github.com/ValveSoftware/steam-devices/archive/${STEAM_COMMIT}.tar.gz -> ${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" +IUSE="+acl elogind systemd" +REQUIRED_USE="acl? ( || ( elogind systemd ) )" + +RDEPEND=" + acl? ( + elogind? ( sys-auth/elogind[acl] ) + systemd? ( sys-apps/systemd[acl] ) + ) + !acl? ( + acct-group/input + ) + virtual/udev +" + +pkg_setup() { + CONFIG_CHECK="~HIDRAW" + linux-info_pkg_setup + + if ! use acl; then + elog "Users of game hardware devices must be added to the input group." + + if use elogind || use systemd; then + ewarn "It is highly recommended that you enable USE=acl on this package instead" + ewarn "when using elogind or systemd as this is more secure and just works." + fi + fi +} + +src_prepare() { + default + + local SRC DEST EXTRA + for SRC in 60-steam-{input,vr}.rules; do + DEST=${SRC//steam/game} + EXTRA=${FILESDIR}/${DEST/./-20220311.} + + # Make changes in a copy. + cp -v "${SRC}" "${DEST}" || die + + # Append our additional rules. + if [[ -f ${EXTRA} ]]; then + cat "${EXTRA}" >> "${DEST}" || die + fi + + # Clear any existing mode settings. + sed -i 's/, *MODE="[0-9]*"//' "${DEST}" || die + + if ! use acl; then + # Replace uaccess tag with our group+mode if not using ACL. + sed -i 's/, *TAG+="uaccess"/, GROUP="input", MODE="0660"/' "${DEST}" || die + fi + done +} + +src_install() { + udev_dorules 60-game-{input,vr}.rules +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/games-util/game-device-udev-rules/metadata.xml b/games-util/game-device-udev-rules/metadata.xml new file mode 100644 index 000000000000..afd84227430b --- /dev/null +++ b/games-util/game-device-udev-rules/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>chewi@gentoo.org</email> + <name>James Le Cuirot</name> + </maintainer> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/gamemode/Manifest b/games-util/gamemode/Manifest new file mode 100644 index 000000000000..9e677943b4ab --- /dev/null +++ b/games-util/gamemode/Manifest @@ -0,0 +1,2 @@ +DIST gamemode-1.8.1.tar.xz 78284 BLAKE2B de78c97b61cebd1f4cc29f0ab5c353e8db668eca3d6d8c65fa0cdbc167b1b172d3371e85bcb4cb193c043f0917127bc3a76ebd7de158555af6d145b1e8eb93d7 SHA512 7bfe7d34b422a87c2f53e69b44649a1aca7eba9fb08daa52e7e2f521fea0744e8f03b666c4dd684ad85ccadde20bc2edfb716d67a103629baa690051b8836554 +DIST gamemode-1.8.2.tar.xz 78724 BLAKE2B e7c0ed0b76231721f851048f77c7148b08cce098ea15232c3e91916a4b3cbe3925186b14e0110ab5773f5db3f4e017fe6930d62169892b048e1d15ae60b0e05a SHA512 eb33f3b7a2d6811aeb13370b0c5ba60fc7630d2f2e59beea059f7d301c57f23b492541c9a128f0e357820ffe5370731d78031df4e392682acba4b232b7778450 diff --git a/games-util/gamemode/gamemode-1.8.1.ebuild b/games-util/gamemode/gamemode-1.8.1.ebuild new file mode 100644 index 000000000000..746c7b5239eb --- /dev/null +++ b/games-util/gamemode/gamemode-1.8.1.ebuild @@ -0,0 +1,96 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +inherit meson-multilib systemd + +DESCRIPTION="Optimise Linux system performance on demand" +HOMEPAGE="https://github.com/FeralInteractive/gamemode" + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="https://github.com/FeralInteractive/gamemode.git" + GAMEMODE_GIT_PTR="master" + inherit git-r3 +else + GAMEMODE_GIT_PTR="${PV}" + SRC_URI="https://github.com/FeralInteractive/gamemode/releases/download/${GAMEMODE_GIT_PTR}/${P}.tar.xz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="systemd elogind" + +REQUIRED_USE="^^ ( systemd elogind )" + +RDEPEND=" + acct-group/gamemode + >=dev-libs/inih-54 + sys-apps/dbus[${MULTILIB_USEDEP},systemd(+)=,elogind(-)=] + sys-auth/polkit + sys-libs/libcap +" +DEPEND="${RDEPEND}" + +DOCS=( + CHANGELOG.md + LICENSE.txt + README.md + example/gamemode.ini +) + +multilib_src_configure() { + local emesonargs=( + -Dwith-examples=false + -Dwith-pam-limits-dir="${EPREFIX}"/etc/security/limits.d + -Dwith-pam-renicing=true + -Dwith-privileged-group=gamemode + -Dwith-systemd-user-unit-dir="$(systemd_get_userunitdir)" + ) + if multilib_is_native_abi; then + emesonargs+=( + -Dwith-sd-bus-provider=$(usex systemd systemd elogind) + -Dwith-util=true + ) + else + emesonargs+=( + -Dwith-sd-bus-provider=no-daemon + -Dwith-util=false + ) + fi + + meson_src_configure +} + +pkg_postinst() { + elog + elog "GameMode requires permissions to adjust your PAM limits and change system" + elog "performance settings (overclocking, scheduling, L2 cache usage, mitigations" + elog "etc). This permission is granted via the gamemode group." + elog + elog "Run the following command as root to add your user:" + elog "# gpasswd -a USER gamemode # with USER = your user name" + elog + elog "You can run the following command to test your settings:" + elog + elog "# gamemoded -t" + elog + elog "GameMode supports GPU optimizations. It defaults to OFF. Any damage" + elog "resulting from usage of this is your own responsibility. For safety" + elog "reasons, GPU settings are not allowed from \$HOME but only from" + elog "administrative directories." + elog + elog "systemd user sessions will automatically run the daemon on demand, it does" + elog "not need to be enabled explicitly. Games not supporting GameMode natively" + elog "can still make use of it, just add" + elog + elog "gamemoderun %command%" + elog + elog "to the start options of any Steam game to enable optimizations automatically" + elog "as you start the game. Similar options exist for other launchers like" + elog "Bottles or Lutris." + elog +} diff --git a/games-util/gamemode/gamemode-1.8.2.ebuild b/games-util/gamemode/gamemode-1.8.2.ebuild new file mode 100644 index 000000000000..945403cbc6bb --- /dev/null +++ b/games-util/gamemode/gamemode-1.8.2.ebuild @@ -0,0 +1,94 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson-multilib systemd + +DESCRIPTION="Optimise Linux system performance on demand" +HOMEPAGE="https://github.com/FeralInteractive/gamemode" + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="https://github.com/FeralInteractive/gamemode.git" + GAMEMODE_GIT_PTR="master" + inherit git-r3 +else + GAMEMODE_GIT_PTR="${PV}" + SRC_URI="https://github.com/FeralInteractive/gamemode/releases/download/${GAMEMODE_GIT_PTR}/${P}.tar.xz" + KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="systemd elogind" + +REQUIRED_USE="^^ ( systemd elogind )" + +RDEPEND=" + acct-group/gamemode + >=dev-libs/inih-54 + sys-apps/dbus[${MULTILIB_USEDEP},systemd(+)=,elogind(-)=] + sys-auth/polkit + sys-libs/libcap +" +DEPEND="${RDEPEND}" + +DOCS=( + CHANGELOG.md + LICENSE.txt + README.md + example/gamemode.ini +) + +multilib_src_configure() { + local emesonargs=( + -Dwith-examples=false + -Dwith-pam-limits-dir="${EPREFIX}"/etc/security/limits.d + -Dwith-pam-renicing=true + -Dwith-privileged-group=gamemode + -Dwith-systemd-user-unit-dir="$(systemd_get_userunitdir)" + ) + if multilib_is_native_abi; then + emesonargs+=( + -Dwith-sd-bus-provider=$(usex systemd systemd elogind) + -Dwith-util=true + ) + else + emesonargs+=( + -Dwith-sd-bus-provider=no-daemon + -Dwith-util=false + ) + fi + + meson_src_configure +} + +pkg_postinst() { + elog + elog "GameMode requires permissions to adjust your PAM limits and change system" + elog "performance settings (overclocking, scheduling, L3 cache usage, mitigations" + elog "etc). This permission is granted via the gamemode group." + elog + elog "Run the following command as root to add your user:" + elog "# gpasswd -a USER gamemode # with USER = your user name" + elog + elog "You can run the following command to test your settings:" + elog + elog "# gamemoded -t" + elog + elog "GameMode supports GPU optimizations. It defaults to OFF. Any damage" + elog "resulting from usage of this is your own responsibility. For safety" + elog "reasons, GPU settings are not allowed from \$HOME but only from" + elog "administrative directories." + elog + elog "systemd user sessions will automatically run the daemon on demand, it does" + elog "not need to be enabled explicitly. Games not supporting GameMode natively" + elog "can still make use of it, just add" + elog + elog "gamemoderun %command%" + elog + elog "to the start options of any Steam game to enable optimizations automatically" + elog "as you start the game. Similar options exist for other launchers like" + elog "Bottles or Lutris." + elog +} diff --git a/games-util/gamemode/gamemode-9999.ebuild b/games-util/gamemode/gamemode-9999.ebuild new file mode 100644 index 000000000000..928c60992abc --- /dev/null +++ b/games-util/gamemode/gamemode-9999.ebuild @@ -0,0 +1,94 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson-multilib systemd + +DESCRIPTION="Optimise Linux system performance on demand" +HOMEPAGE="https://github.com/FeralInteractive/gamemode" + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="https://github.com/FeralInteractive/gamemode.git" + GAMEMODE_GIT_PTR="master" + inherit git-r3 +else + GAMEMODE_GIT_PTR="${PV}" + SRC_URI="https://github.com/FeralInteractive/gamemode/releases/download/${GAMEMODE_GIT_PTR}/${P}.tar.xz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="systemd elogind" + +REQUIRED_USE="^^ ( systemd elogind )" + +RDEPEND=" + acct-group/gamemode + >=dev-libs/inih-54 + sys-apps/dbus[${MULTILIB_USEDEP},systemd(+)=,elogind(-)=] + sys-auth/polkit + sys-libs/libcap +" +DEPEND="${RDEPEND}" + +DOCS=( + CHANGELOG.md + LICENSE.txt + README.md + example/gamemode.ini +) + +multilib_src_configure() { + local emesonargs=( + -Dwith-examples=false + -Dwith-pam-limits-dir="${EPREFIX}"/etc/security/limits.d + -Dwith-pam-renicing=true + -Dwith-privileged-group=gamemode + -Dwith-systemd-user-unit-dir="$(systemd_get_userunitdir)" + ) + if multilib_is_native_abi; then + emesonargs+=( + -Dwith-sd-bus-provider=$(usex systemd systemd elogind) + -Dwith-util=true + ) + else + emesonargs+=( + -Dwith-sd-bus-provider=no-daemon + -Dwith-util=false + ) + fi + + meson_src_configure +} + +pkg_postinst() { + elog + elog "GameMode requires permissions to adjust your PAM limits and change system" + elog "performance settings (overclocking, scheduling, L3 cache usage, mitigations" + elog "etc). This permission is granted via the gamemode group." + elog + elog "Run the following command as root to add your user:" + elog "# gpasswd -a USER gamemode # with USER = your user name" + elog + elog "You can run the following command to test your settings:" + elog + elog "# gamemoded -t" + elog + elog "GameMode supports GPU optimizations. It defaults to OFF. Any damage" + elog "resulting from usage of this is your own responsibility. For safety" + elog "reasons, GPU settings are not allowed from \$HOME but only from" + elog "administrative directories." + elog + elog "systemd user sessions will automatically run the daemon on demand, it does" + elog "not need to be enabled explicitly. Games not supporting GameMode natively" + elog "can still make use of it, just add" + elog + elog "gamemoderun %command%" + elog + elog "to the start options of any Steam game to enable optimizations automatically" + elog "as you start the game. Similar options exist for other launchers like" + elog "Bottles or Lutris." + elog +} diff --git a/games-util/gamemode/metadata.xml b/games-util/gamemode/metadata.xml new file mode 100644 index 000000000000..f5476937d056 --- /dev/null +++ b/games-util/gamemode/metadata.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>hurikhan77+bgo@gmail.com</email> + <name>Kai Krakow</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <upstream> + <bugs-to>https://github.com/FeralInteractive/gamemode/issues</bugs-to> + </upstream> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/gamepick/Manifest b/games-util/gamepick/Manifest new file mode 100644 index 000000000000..f286a4927ac6 --- /dev/null +++ b/games-util/gamepick/Manifest @@ -0,0 +1 @@ +DIST gamepick-0.35.tar.gz 156725 BLAKE2B e761fead9528397d0819ff00ca0153d63ee7fcc7ecf2d8bd39c3f63e937d13a72be23758a53e415d8020466c3500abc64ae10c09384682f4e8bd2dea3305fdda SHA512 bd77d6584cb9bb5c358179226d20a1995badd7603332bde6692ecca6c30f26fe06e6ea202e04bd40c006e9f43ae8fcd885a09bcb696227be3da823dd68d5053c diff --git a/games-util/gamepick/gamepick-0.35-r2.ebuild b/games-util/gamepick/gamepick-0.35-r2.ebuild new file mode 100644 index 000000000000..5c150da179cb --- /dev/null +++ b/games-util/gamepick/gamepick-0.35-r2.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools desktop + +DESCRIPTION="Launch opengl games with custom graphic settings" +HOMEPAGE="http://www.rillion.net/gamepick/index.html" +SRC_URI="http://www.rillion.net/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND="x11-libs/gtk+:2" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +src_prepare() { + default + + sed -i \ + -e 's/-O2//' \ + src/Makefile.in || die + + # Clang 16, bug #898998 + eautoreconf +} + +src_install() { + default + newicon ${PN}-48x48.xpm ${PN}.xpm + make_desktop_entry ${PN} ${PN} +} diff --git a/games-util/gamepick/metadata.xml b/games-util/gamepick/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/gamepick/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/glbsp/Manifest b/games-util/glbsp/Manifest new file mode 100644 index 000000000000..478621d5bae3 --- /dev/null +++ b/games-util/glbsp/Manifest @@ -0,0 +1 @@ +DIST glbsp_src_224.tar.gz 230977 BLAKE2B a8fce559e2d37e0662dd773f94d781a63bbce66d7fca87b785b7ba095670844fe441093d721eba95eb679457d6217327e93002e54848ed919cf34e552e152030 SHA512 562201093b69ae1db113479f8dd71e474d2d4ea7798b5e156dc096660e0b725a16ba44e8d2bfd332eba89b66d07ac2a1ddd803e75802c8fb3739a420701b2e1a diff --git a/games-util/glbsp/files/glbsp-2.24-ldflags.patch b/games-util/glbsp/files/glbsp-2.24-ldflags.patch new file mode 100644 index 000000000000..56c9a4abcd8a --- /dev/null +++ b/games-util/glbsp/files/glbsp-2.24-ldflags.patch @@ -0,0 +1,22 @@ +--- a/Makefile.unx ++++ b/Makefile.unx +@@ -79,8 +79,7 @@ + $(CC) $(CMD_FLAGS) -c $^ -o $@ + + $(CMD_NAME): $(LIB_NAME) $(CMD_OBJS) +- $(CC) $(CMD_FLAGS) $(CMD_OBJS) -o $@ $(LIB_NAME) $(CMD_LIBS) +- $(STRIP) $@ ++ $(CC) $(CMD_FLAGS) $(LDFLAGS) $(CMD_OBJS) -o $@ $(LIB_NAME) $(CMD_LIBS) + + install: $(CMD_NAME) + cp $(CMD_NAME) $(INSTALL_PREFIX)/bin/ +--- a/Makefile.unx ++++ b/Makefile.unx +@@ -125,7 +125,6 @@ + + $(GUI_NAME): $(LIB_NAME) $(GUI_OBJS) + $(CXX) $(GUI_FLAGS) $(GUI_OBJS) -o $@ $(LIB_NAME) $(GUI_LIBS) +- $(STRIP) $@ + + + # ----- DOCUMENTATION --------------------------------------------- diff --git a/games-util/glbsp/files/glbsp-2.24-return-type.patch b/games-util/glbsp/files/glbsp-2.24-return-type.patch new file mode 100644 index 000000000000..c1ae57cec8d1 --- /dev/null +++ b/games-util/glbsp/files/glbsp-2.24-return-type.patch @@ -0,0 +1,9 @@ +Fix build failure with USE=fltk due to wrong return type. +https://bugs.gentoo.org/627412 +--- a/nodeview/path.cc ++++ b/nodeview/path.cc +@@ -47,3 +47,3 @@ + PrintWarn("Unable to open path file: %s\n", strerror(errno)); +- return false; ++ return NULL; + } diff --git a/games-util/glbsp/glbsp-2.24-r1.ebuild b/games-util/glbsp/glbsp-2.24-r1.ebuild new file mode 100644 index 000000000000..f2accf2462e3 --- /dev/null +++ b/games-util/glbsp/glbsp-2.24-r1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit desktop toolchain-funcs + +MY_PV=$(ver_rs 1 '') +DESCRIPTION="Node builder specially designed for OpenGL ports of the DOOM game engine" +HOMEPAGE="https://glbsp.sourceforge.net/" +SRC_URI="https://downloads.sourceforge.net/glbsp/${PN}_src_${MY_PV}.tar.gz" +S="${WORKDIR}"/${P}-source + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="fltk" + +DEPEND="fltk? ( x11-libs/fltk:1= )" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-ldflags.patch + "${FILESDIR}"/${P}-return-type.patch +) + +src_prepare() { + default + + sed -i \ + -e "/^CC=/s:=.*:=$(tc-getCC):" \ + -e "/^CXX=/s:=.*:=$(tc-getCXX):" \ + -e "/^AR=/s:ar:$(tc-getAR):" \ + -e "/^RANLIB=/s:=.*:=$(tc-getRANLIB):" \ + -e "s:-O2:${CFLAGS}:" \ + -e "s:-O -g3:${CFLAGS}:" \ + Makefile.unx \ + nodeview/Makefile.unx || die +} + +src_compile() { + emake -f Makefile.unx + if use fltk ; then + emake -f Makefile.unx glBSPX \ + FLTK_FLAGS="$(fltk-config --cflags)" \ + FLTK_LIBS="$(fltk-config --use-images --ldflags)" + emake -f Makefile.unx -C nodeview \ + FLTK_CFLAGS="$(fltk-config --cflags)" \ + FLTK_LIBS="$(fltk-config --use-images --ldflags)" + fi +} + +src_install() { + dobin glbsp + dolib.a libglbsp.a + doman glbsp.1 + dodoc AUTHORS.txt glbsp.txt + insinto "/usr/include" + doins "src/glbsp.h" + + if use fltk ; then + newbin glBSPX glbspx + newicon gui/icon.xpm glbspx.xpm + make_desktop_entry glbspx glBSPX glbspx + + dobin nodeview/nodeview + docinto nodeview + dodoc nodeview/{README,TODO}.txt + fi +} diff --git a/games-util/glbsp/glbsp-2.24-r2.ebuild b/games-util/glbsp/glbsp-2.24-r2.ebuild new file mode 100644 index 000000000000..bce5511daf0d --- /dev/null +++ b/games-util/glbsp/glbsp-2.24-r2.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop dot-a toolchain-funcs + +MY_PV=$(ver_rs 1 '') +DESCRIPTION="Node builder specially designed for OpenGL ports of the DOOM game engine" +HOMEPAGE="https://glbsp.sourceforge.net/" +SRC_URI="https://downloads.sourceforge.net/glbsp/${PN}_src_${MY_PV}.tar.gz" +S="${WORKDIR}"/${P}-source + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="fltk" + +DEPEND="fltk? ( x11-libs/fltk:1= )" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-ldflags.patch + "${FILESDIR}"/${P}-return-type.patch +) + +src_prepare() { + default + + lto-guarantee-fat + + sed -i \ + -e "/^CC=/s:=.*:=$(tc-getCC):" \ + -e "/^CXX=/s:=.*:=$(tc-getCXX):" \ + -e "/^AR=/s:ar:$(tc-getAR):" \ + -e "/^RANLIB=/s:=.*:=$(tc-getRANLIB):" \ + -e "s:-O2:${CFLAGS}:" \ + -e "s:-O -g3:${CFLAGS}:" \ + Makefile.unx \ + nodeview/Makefile.unx || die +} + +src_compile() { + emake -f Makefile.unx + if use fltk ; then + emake -f Makefile.unx glBSPX \ + FLTK_FLAGS="$(fltk-config --cflags)" \ + FLTK_LIBS="$(fltk-config --use-images --ldflags)" + emake -f Makefile.unx -C nodeview \ + FLTK_CFLAGS="$(fltk-config --cflags)" \ + FLTK_LIBS="$(fltk-config --use-images --ldflags)" + fi +} + +src_install() { + dobin glbsp + dolib.a libglbsp.a + doman glbsp.1 + dodoc AUTHORS.txt glbsp.txt + insinto "/usr/include" + doins "src/glbsp.h" + + if use fltk ; then + newbin glBSPX glbspx + newicon gui/icon.xpm glbspx.xpm + make_desktop_entry glbspx glBSPX glbspx + + dobin nodeview/nodeview + docinto nodeview + dodoc nodeview/{README,TODO}.txt + fi + + strip-lto-bytecode +} diff --git a/games-util/glbsp/metadata.xml b/games-util/glbsp/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/glbsp/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/grfcodec/Manifest b/games-util/grfcodec/Manifest new file mode 100644 index 000000000000..4d4c483c3536 --- /dev/null +++ b/games-util/grfcodec/Manifest @@ -0,0 +1 @@ +DIST grfcodec-6.1.0-source.tar.xz 170688 BLAKE2B e9ce6ca4984e319abd5c1fd53473b1257b2b98b0948b5bef5e6275e29b50243981bf7fc837b190b37b2bb12d2ac9aecbb8595150eedb029f1d7ae64053668475 SHA512 9129e0f38b151e11c90585e0fe966e042ad08ec90f800ee80f749865aed6c72c733639b8d02ecd613409f2a0ae6d1f72fa1d3524f7c450a0f06ff42ee170f16f diff --git a/games-util/grfcodec/files/grfcodec-6.0.6_p20230811-no-fortify-source.patch b/games-util/grfcodec/files/grfcodec-6.0.6_p20230811-no-fortify-source.patch new file mode 100644 index 000000000000..ce71610a0cad --- /dev/null +++ b/games-util/grfcodec/files/grfcodec-6.0.6_p20230811-no-fortify-source.patch @@ -0,0 +1,19 @@ +From a6e90d5121cfd312df535d90d1b939d9f9c616a1 Mon Sep 17 00:00:00 2001 +From: Matthew Smith <matthew@gentoo.org> +Date: Fri, 11 Aug 2023 07:59:54 +0100 +Subject: [PATCH] build: Remove -D_FORTIFY_SOURCE=2 + +Bug: https://bugs.gentoo.org/894648 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -47,7 +47,6 @@ endif() + # it does not appear to support the $<> tags. + add_compile_options( + "$<$<CONFIG:Debug>:-D_DEBUG>" +- "$<$<NOT:$<CONFIG:Debug>>:-D_FORTIFY_SOURCE=2>" # FORTIFY_SOURCE should only be used in non-debug builds (requires -O1+) + ) + if(MINGW) + add_link_options( +-- +2.41.0 + diff --git a/games-util/grfcodec/files/grfcodec-6.1.0-cmake-install.patch b/games-util/grfcodec/files/grfcodec-6.1.0-cmake-install.patch new file mode 100644 index 000000000000..f3524d3b6179 --- /dev/null +++ b/games-util/grfcodec/files/grfcodec-6.1.0-cmake-install.patch @@ -0,0 +1,21 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -158,7 +158,6 @@ + + install(FILES + ${CMAKE_CURRENT_SOURCE_DIR}/changelog.txt +- ${CMAKE_CURRENT_SOURCE_DIR}/COPYING + DESTINATION ${CMAKE_INSTALL_DOCDIR} + ) + +--- a/docs/CMakeLists.txt ++++ b/docs/CMakeLists.txt +@@ -5,7 +5,7 @@ + ${CMAKE_CURRENT_SOURCE_DIR}/grfid.1 + ${CMAKE_CURRENT_SOURCE_DIR}/grfstrip.1 + ${CMAKE_CURRENT_SOURCE_DIR}/nforenum.1 +- DESTINATION ${CMAKE_INSTALL_MANDIR} ++ DESTINATION ${CMAKE_INSTALL_MANDIR}/man1 + ) + + install(FILES diff --git a/games-util/grfcodec/grfcodec-6.1.0-r1.ebuild b/games-util/grfcodec/grfcodec-6.1.0-r1.ebuild new file mode 100644 index 000000000000..a84ac889ed7d --- /dev/null +++ b/games-util/grfcodec/grfcodec-6.1.0-r1.ebuild @@ -0,0 +1,34 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Suite of programs to modify openttd/Transport Tycoon Deluxe's GRF files" +HOMEPAGE="https://github.com/OpenTTD/grfcodec" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/OpenTTD/grfcodec" + inherit git-r3 +else + SRC_URI="https://github.com/OpenTTD/grfcodec/releases/download/${PV}/${P}-source.tar.xz" + + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +fi + +LICENSE="GPL-2+" +SLOT="0" + +RDEPEND="media-libs/libpng:=" +DEPEND=" + ${RDEPEND} + dev-libs/boost +" + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.0-cmake-install.patch + + # Bug #894648 + "${FILESDIR}"/${PN}-6.0.6_p20230811-no-fortify-source.patch +) diff --git a/games-util/grfcodec/grfcodec-9999.ebuild b/games-util/grfcodec/grfcodec-9999.ebuild new file mode 100644 index 000000000000..fec48e34967f --- /dev/null +++ b/games-util/grfcodec/grfcodec-9999.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Suite of programs to modify openttd/Transport Tycoon Deluxe's GRF files" +HOMEPAGE="https://github.com/OpenTTD/grfcodec" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/OpenTTD/grfcodec" + inherit git-r3 +else + SRC_URI="https://github.com/OpenTTD/grfcodec/releases/download/${PV}/${P}-source.tar.xz" + + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +fi + +LICENSE="GPL-2+" +SLOT="0" + +RDEPEND="media-libs/libpng:=" +DEPEND=" + ${RDEPEND} + dev-libs/boost +" + +PATCHES=( + # Bug #894648 + "${FILESDIR}"/${PN}-6.0.6_p20230811-no-fortify-source.patch +) + +src_install() { + cmake_src_install + + rm "${ED}"/usr/share/doc/${PF}/COPYING || die +} diff --git a/games-util/grfcodec/metadata.xml b/games-util/grfcodec/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/grfcodec/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/gslist/Manifest b/games-util/gslist/Manifest new file mode 100644 index 000000000000..aabcfe9fb71e --- /dev/null +++ b/games-util/gslist/Manifest @@ -0,0 +1 @@ +DIST gslist-0.8.11a.zip 2599227 BLAKE2B ff469f74d2cb5436adc0ad95d18fe7806eb726c3856b7e87e97233dc5fca3433a6aa12e94b38ba531ca5296c9c0ffca036cd2056f7dd3e1e611cd7f5e6b1c2da SHA512 082cda97bf82ba4763236ce142d65a90b3372a430436cdc9fdccd1101feb5a2741807dff5a00e81fc833048e81468473d90851d23574167e78166beef08d0734 diff --git a/games-util/gslist/files/gslist-0.8.11a-build.patch b/games-util/gslist/files/gslist-0.8.11a-build.patch new file mode 100644 index 000000000000..e13309c02c6b --- /dev/null +++ b/games-util/gslist/files/gslist-0.8.11a-build.patch @@ -0,0 +1,41 @@ +--- a/Makefile ++++ b/Makefile +@@ -1,26 +1,30 @@ +-CFLAGS += -O2 -s -fstack-protector-all ++CFLAGS += -Wall -D_GNU_SOURCE + PREFIX = /usr/local + BINDIR = $(PREFIX)/bin + SRC = src/gslist.c src/enctype1_decoder.c src/enctype2_decoder.c src/enctype_shared.c src/mydownlib.c + #LIBS = -lpthread /usr/lib/libGeoIP.a /usr/lib/i386-linux-gnu/libz.a + #SQLIBS = /usr/lib/i386-linux-gnu/libmysqlclient.a /usr/lib/i386-linux-gnu/libm.a -ldl + LIBS = -lpthread -lGeoIP -lz +-SQLIBS = -lmysqlclient + O = $(SRC:.c=.o) + +-all: gslist gslistsql ++ifneq ($(GSWEB),0) ++CFLAGS += -DGSWEB ++endif + +-gslist: +- $(CC) $(SRC) $(CFLAGS) -o gslist $(LIBS) -DGSWEB +- $(CC) $(SRC) $(CFLAGS) -o gslistsql $(SQLIBS) $(LIBS) -DGSWEB -DSQL ++ifneq ($(SQL),0) ++CFLAGS += -DSQL ++LIBS += -lmysqlclient ++endif ++ ++gslist: $(O) ++ $(CC) $(CFLAGS) $(LDFLAGS) -o gslist $(O) $(LIBS) + + clean: +- rm -f gslist gslistsql src/gslist.o src/enctype1_decoder.o src/enctype2_decoder.o src/enctype_shared.o src/enctypex_decoder.o src/mydownlib.o ++ rm -f gslist $(O) + + install: + install -m 755 -d $(BINDIR) + install -m 755 gslist $(BINDIR)/gslist +- install -m 755 gslistsql $(BINDIR)/gslistsql + + .PHONY: + clean install diff --git a/games-util/gslist/gslist-0.8.11a-r1.ebuild b/games-util/gslist/gslist-0.8.11a-r1.ebuild new file mode 100644 index 000000000000..07bacb2fdebd --- /dev/null +++ b/games-util/gslist/gslist-0.8.11a-r1.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +DESCRIPTION="A GameSpy server browser" +HOMEPAGE="http://aluigi.altervista.org/papers.htm#gslist" +SRC_URI="mirror://gentoo/${P}.zip" +S="${WORKDIR}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~hppa ~x86" +IUSE="web" + +RDEPEND="dev-libs/geoip" +DEPEND="${RDEPEND}" +BDEPEND="app-arch/unzip" + +PATCHES=( + "${FILESDIR}"/${P}-build.patch +) + +src_prepare() { + default + rm -f gslist gslistsql *.exe *.dll || die +} + +src_compile() { + tc-export CC + + emake \ + SQL=0 \ + $(use web || echo GSWEB=0) +} + +src_install() { + dobin ${PN} + dodoc ${PN}.txt +} diff --git a/games-util/gslist/metadata.xml b/games-util/gslist/metadata.xml new file mode 100644 index 000000000000..a65e92231fdc --- /dev/null +++ b/games-util/gslist/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <use> + <flag name="web">Enable the web interface</flag> + </use> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/heroic-bin/Manifest b/games-util/heroic-bin/Manifest new file mode 100644 index 000000000000..45308eeffd08 --- /dev/null +++ b/games-util/heroic-bin/Manifest @@ -0,0 +1,9 @@ +DIST com.heroicgameslauncher.hgl.2.20.1.desktop 529 BLAKE2B effd9f5d89cb8453e616650cd128fea795c65c2c2d2f6073f2d137fcb270aa02554a19e6e627ccc7aaf0c927f42cd86ca56beeba6478929eeb28b2dafcd572aa SHA512 e7af610d21013943c43539224a5dd2ea3994726ecc7ed14e9db3513543ab5c6796d66394eb63d90f90148259ef2928739cd346eb7c8fe7a73273984fe9b8e6a5 +DIST com.heroicgameslauncher.hgl.2.20.1.png 9797 BLAKE2B c6f76df4ec2fd25323f5c37e03605647ede8f8c2ed48cfbb8af11aad22ae90182d3678b943633b46a2d8dfb0c1cbd1a275b6c62dde238b9b0f68cbafb4bf3697 SHA512 68e9881fb4f123008398409825aa8cf70cec34365a23adb1234f7c054a14f40d159e7d8912cfedac0bb2b12f1d3c3c980469c2fca9735d4bc06bd4074aecc7e3 +DIST com.heroicgameslauncher.hgl.2.21.0.desktop 502 BLAKE2B b3f22921bde1c26b9cd97fa6f3bfadf225e0a011f2ba569d1caf2fcc81b21ecb80e0f61e01e56305de3ca8060860e0291149b4148a744dc55cca574530221f7b SHA512 76b7ba92f473cd55013f89e81e34a53e8ec85a9a6792f0f2e6a31ec1e305d96fba8e54a32606d460095cfa211cb763ab0fda55b6679fe17c36f26a4ff78bd368 +DIST com.heroicgameslauncher.hgl.2.21.0.png 9797 BLAKE2B c6f76df4ec2fd25323f5c37e03605647ede8f8c2ed48cfbb8af11aad22ae90182d3678b943633b46a2d8dfb0c1cbd1a275b6c62dde238b9b0f68cbafb4bf3697 SHA512 68e9881fb4f123008398409825aa8cf70cec34365a23adb1234f7c054a14f40d159e7d8912cfedac0bb2b12f1d3c3c980469c2fca9735d4bc06bd4074aecc7e3 +DIST com.heroicgameslauncher.hgl.2.22.0.desktop 502 BLAKE2B b3f22921bde1c26b9cd97fa6f3bfadf225e0a011f2ba569d1caf2fcc81b21ecb80e0f61e01e56305de3ca8060860e0291149b4148a744dc55cca574530221f7b SHA512 76b7ba92f473cd55013f89e81e34a53e8ec85a9a6792f0f2e6a31ec1e305d96fba8e54a32606d460095cfa211cb763ab0fda55b6679fe17c36f26a4ff78bd368 +DIST com.heroicgameslauncher.hgl.2.22.0.png 9797 BLAKE2B c6f76df4ec2fd25323f5c37e03605647ede8f8c2ed48cfbb8af11aad22ae90182d3678b943633b46a2d8dfb0c1cbd1a275b6c62dde238b9b0f68cbafb4bf3697 SHA512 68e9881fb4f123008398409825aa8cf70cec34365a23adb1234f7c054a14f40d159e7d8912cfedac0bb2b12f1d3c3c980469c2fca9735d4bc06bd4074aecc7e3 +DIST heroic-bin-2.20.1.tar.xz 122450760 BLAKE2B 4c7f8140d937ca483ee3e788b8cbde64b24aacd6c0776daf75a5d9eb237a512849be5cb8c9ef1da0fedadc9855cedf00c38ac8a0ee98c37a2e8f3731c86a6843 SHA512 f4bd6f1cf388d4049ce018054a96bf9499d42c8a4966833315513bb81c04c3dfe1216221d5ba4b2e1b5610a8948ed6a77097aeb12d5b458b8ac7f72085d213ce +DIST heroic-bin-2.21.0.tar.xz 128111552 BLAKE2B c9ece954e756351db59d9177902522a397036f957d7f7f580edbb802932b99ae467c626f2bc75d9d7956e2e383b34727d498c1035fac79596da242f57099d70c SHA512 a173d65df9f4732db9512b2f2a98593f9eb6f1a5f87b0a5559c64e778e70c5a693ef81c24a2e68652781c88993c4c613e46ed750f7600aeae897e4ff0205cb27 +DIST heroic-bin-2.22.0.tar.xz 128256032 BLAKE2B e9afda53545aedb81cc449161f71b73965ad25254570606d227e29440596d146076063665bbd81966e25e1c517a9738b68675a8531c66dca7b6a74b7feeaf5df SHA512 648505146cb46fc8963a01fd1aa72461ed585c79a3de1e2842f8d3f138475b90886eb90f05b0da02df384c1b07cdd690c5140ec96e53f76a17b10750c403e1c0 diff --git a/games-util/heroic-bin/heroic-bin-2.20.1.ebuild b/games-util/heroic-bin/heroic-bin-2.20.1.ebuild new file mode 100644 index 000000000000..941267ca6a40 --- /dev/null +++ b/games-util/heroic-bin/heroic-bin-2.20.1.ebuild @@ -0,0 +1,141 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CHROMIUM_LANGS=" + af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi + hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv + sw ta te th tr uk ur vi zh-CN zh-TW +" +PYTHON_COMPAT=( python3_{13..14} ) + +inherit chromium-2 desktop python-single-r1 xdg + +DESCRIPTION="GOG and Epic Games Launcher for Linux" +HOMEPAGE="https://heroicgameslauncher.com/ + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/" +SRC_URI=" + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases/download/v${PV}/heroic-${PV}-linux-x64.tar.xz + -> ${P}.tar.xz + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/raw/v${PV}/flatpak/com.heroicgameslauncher.hgl.desktop + -> com.heroicgameslauncher.hgl.${PV}.desktop + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/raw/v${PV}/flatpak/com.heroicgameslauncher.hgl.png + -> com.heroicgameslauncher.hgl.${PV}.png +" +S="${WORKDIR}/Heroic-${PV}-linux-x64" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="gamescope" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + app-accessibility/at-spi2-core + app-arch/brotli + app-arch/bzip2 + dev-libs/expat + dev-libs/fribidi + dev-libs/glib + dev-libs/gmp + dev-libs/libffi + dev-libs/libpcre2 + dev-libs/libtasn1 + dev-libs/nettle + dev-libs/nspr + dev-libs/nss + dev-libs/wayland + media-fonts/freefont + media-gfx/graphite2 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + media-libs/harfbuzz + media-libs/libepoxy + media-libs/libjpeg-turbo + media-libs/libpng + media-libs/mesa + media-video/ffmpeg + net-dns/libidn2 + net-libs/gnutls + net-print/cups + sys-apps/dbus + sys-libs/glibc + virtual/zlib:= + x11-libs/cairo + x11-libs/gdk-pixbuf + x11-libs/gtk+:3 + x11-libs/libX11 + x11-libs/libXau + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXdmcp + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libdrm + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/pango + x11-libs/pixman + gamescope? ( gui-wm/gamescope ) +" + +QA_PREBUILT=".*" + +src_configure() { + default + + chromium_suid_sandbox_check_kernel_config +} + +src_prepare() { + default + + cd locales || die + chromium_remove_language_paks + + # Create gamescope desktop file + if use gamescope; then + cp "${DISTDIR}"/com.heroicgameslauncher.hgl.${PV}.desktop \ + "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop || die + + sed -i 's/Name=Heroic Games Launcher/Name=Heroic Games Launcher (Gamescope)/g' \ + "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop || die + sed -i 's/Exec=heroic-run %u/Exec=env GDK_BACKEND=wayland gamescope -f -R --RT --force-grab-cursor --prefer-vk-device --adaptive-sync --nested-unfocused-refresh 30 -- heroic-run --ozone-platform=x11 --enable-features=UseOzonePlatform,WaylandWindowDecorations/g' \ + "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop || die + fi +} + +src_install() { + local app_root=/opt/${P/-bin} + local app_dest="${ED}"/${app_root} + + dodoc LICENSE.* + rm LICENSE.* || die + + dodir "${app_root%/*}" + cp -r "${S}" "${app_dest}" || die + + dosym -r "${PYTHON}" \ + "${app_root}"/resources/app.asar.unpacked/node_modules/register-scheme/build/node_gyp_bins/python3 + + find "${app_dest}" -type f -name "*.a" -exec rm {} + || die + + dosym -r "${app_root}"/heroic /usr/bin/heroic-run + + # Install resources: desktop file and icon. + newmenu "${DISTDIR}"/com.heroicgameslauncher.hgl.${PV}.desktop \ + com.heroicgameslauncher.hgl.desktop + if use gamescope; then + newmenu "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop \ + com.heroicgameslauncher.hgl.gamescope.desktop + fi + newicon "${DISTDIR}"/com.heroicgameslauncher.hgl.${PV}.png \ + com.heroicgameslauncher.hgl.png +} diff --git a/games-util/heroic-bin/heroic-bin-2.21.0.ebuild b/games-util/heroic-bin/heroic-bin-2.21.0.ebuild new file mode 100644 index 000000000000..941267ca6a40 --- /dev/null +++ b/games-util/heroic-bin/heroic-bin-2.21.0.ebuild @@ -0,0 +1,141 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CHROMIUM_LANGS=" + af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi + hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv + sw ta te th tr uk ur vi zh-CN zh-TW +" +PYTHON_COMPAT=( python3_{13..14} ) + +inherit chromium-2 desktop python-single-r1 xdg + +DESCRIPTION="GOG and Epic Games Launcher for Linux" +HOMEPAGE="https://heroicgameslauncher.com/ + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/" +SRC_URI=" + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases/download/v${PV}/heroic-${PV}-linux-x64.tar.xz + -> ${P}.tar.xz + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/raw/v${PV}/flatpak/com.heroicgameslauncher.hgl.desktop + -> com.heroicgameslauncher.hgl.${PV}.desktop + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/raw/v${PV}/flatpak/com.heroicgameslauncher.hgl.png + -> com.heroicgameslauncher.hgl.${PV}.png +" +S="${WORKDIR}/Heroic-${PV}-linux-x64" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="gamescope" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + app-accessibility/at-spi2-core + app-arch/brotli + app-arch/bzip2 + dev-libs/expat + dev-libs/fribidi + dev-libs/glib + dev-libs/gmp + dev-libs/libffi + dev-libs/libpcre2 + dev-libs/libtasn1 + dev-libs/nettle + dev-libs/nspr + dev-libs/nss + dev-libs/wayland + media-fonts/freefont + media-gfx/graphite2 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + media-libs/harfbuzz + media-libs/libepoxy + media-libs/libjpeg-turbo + media-libs/libpng + media-libs/mesa + media-video/ffmpeg + net-dns/libidn2 + net-libs/gnutls + net-print/cups + sys-apps/dbus + sys-libs/glibc + virtual/zlib:= + x11-libs/cairo + x11-libs/gdk-pixbuf + x11-libs/gtk+:3 + x11-libs/libX11 + x11-libs/libXau + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXdmcp + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libdrm + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/pango + x11-libs/pixman + gamescope? ( gui-wm/gamescope ) +" + +QA_PREBUILT=".*" + +src_configure() { + default + + chromium_suid_sandbox_check_kernel_config +} + +src_prepare() { + default + + cd locales || die + chromium_remove_language_paks + + # Create gamescope desktop file + if use gamescope; then + cp "${DISTDIR}"/com.heroicgameslauncher.hgl.${PV}.desktop \ + "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop || die + + sed -i 's/Name=Heroic Games Launcher/Name=Heroic Games Launcher (Gamescope)/g' \ + "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop || die + sed -i 's/Exec=heroic-run %u/Exec=env GDK_BACKEND=wayland gamescope -f -R --RT --force-grab-cursor --prefer-vk-device --adaptive-sync --nested-unfocused-refresh 30 -- heroic-run --ozone-platform=x11 --enable-features=UseOzonePlatform,WaylandWindowDecorations/g' \ + "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop || die + fi +} + +src_install() { + local app_root=/opt/${P/-bin} + local app_dest="${ED}"/${app_root} + + dodoc LICENSE.* + rm LICENSE.* || die + + dodir "${app_root%/*}" + cp -r "${S}" "${app_dest}" || die + + dosym -r "${PYTHON}" \ + "${app_root}"/resources/app.asar.unpacked/node_modules/register-scheme/build/node_gyp_bins/python3 + + find "${app_dest}" -type f -name "*.a" -exec rm {} + || die + + dosym -r "${app_root}"/heroic /usr/bin/heroic-run + + # Install resources: desktop file and icon. + newmenu "${DISTDIR}"/com.heroicgameslauncher.hgl.${PV}.desktop \ + com.heroicgameslauncher.hgl.desktop + if use gamescope; then + newmenu "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop \ + com.heroicgameslauncher.hgl.gamescope.desktop + fi + newicon "${DISTDIR}"/com.heroicgameslauncher.hgl.${PV}.png \ + com.heroicgameslauncher.hgl.png +} diff --git a/games-util/heroic-bin/heroic-bin-2.22.0.ebuild b/games-util/heroic-bin/heroic-bin-2.22.0.ebuild new file mode 100644 index 000000000000..941267ca6a40 --- /dev/null +++ b/games-util/heroic-bin/heroic-bin-2.22.0.ebuild @@ -0,0 +1,141 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CHROMIUM_LANGS=" + af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi + hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv + sw ta te th tr uk ur vi zh-CN zh-TW +" +PYTHON_COMPAT=( python3_{13..14} ) + +inherit chromium-2 desktop python-single-r1 xdg + +DESCRIPTION="GOG and Epic Games Launcher for Linux" +HOMEPAGE="https://heroicgameslauncher.com/ + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/" +SRC_URI=" + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases/download/v${PV}/heroic-${PV}-linux-x64.tar.xz + -> ${P}.tar.xz + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/raw/v${PV}/flatpak/com.heroicgameslauncher.hgl.desktop + -> com.heroicgameslauncher.hgl.${PV}.desktop + https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/raw/v${PV}/flatpak/com.heroicgameslauncher.hgl.png + -> com.heroicgameslauncher.hgl.${PV}.png +" +S="${WORKDIR}/Heroic-${PV}-linux-x64" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="gamescope" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + app-accessibility/at-spi2-core + app-arch/brotli + app-arch/bzip2 + dev-libs/expat + dev-libs/fribidi + dev-libs/glib + dev-libs/gmp + dev-libs/libffi + dev-libs/libpcre2 + dev-libs/libtasn1 + dev-libs/nettle + dev-libs/nspr + dev-libs/nss + dev-libs/wayland + media-fonts/freefont + media-gfx/graphite2 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + media-libs/harfbuzz + media-libs/libepoxy + media-libs/libjpeg-turbo + media-libs/libpng + media-libs/mesa + media-video/ffmpeg + net-dns/libidn2 + net-libs/gnutls + net-print/cups + sys-apps/dbus + sys-libs/glibc + virtual/zlib:= + x11-libs/cairo + x11-libs/gdk-pixbuf + x11-libs/gtk+:3 + x11-libs/libX11 + x11-libs/libXau + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXdmcp + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libdrm + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/pango + x11-libs/pixman + gamescope? ( gui-wm/gamescope ) +" + +QA_PREBUILT=".*" + +src_configure() { + default + + chromium_suid_sandbox_check_kernel_config +} + +src_prepare() { + default + + cd locales || die + chromium_remove_language_paks + + # Create gamescope desktop file + if use gamescope; then + cp "${DISTDIR}"/com.heroicgameslauncher.hgl.${PV}.desktop \ + "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop || die + + sed -i 's/Name=Heroic Games Launcher/Name=Heroic Games Launcher (Gamescope)/g' \ + "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop || die + sed -i 's/Exec=heroic-run %u/Exec=env GDK_BACKEND=wayland gamescope -f -R --RT --force-grab-cursor --prefer-vk-device --adaptive-sync --nested-unfocused-refresh 30 -- heroic-run --ozone-platform=x11 --enable-features=UseOzonePlatform,WaylandWindowDecorations/g' \ + "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop || die + fi +} + +src_install() { + local app_root=/opt/${P/-bin} + local app_dest="${ED}"/${app_root} + + dodoc LICENSE.* + rm LICENSE.* || die + + dodir "${app_root%/*}" + cp -r "${S}" "${app_dest}" || die + + dosym -r "${PYTHON}" \ + "${app_root}"/resources/app.asar.unpacked/node_modules/register-scheme/build/node_gyp_bins/python3 + + find "${app_dest}" -type f -name "*.a" -exec rm {} + || die + + dosym -r "${app_root}"/heroic /usr/bin/heroic-run + + # Install resources: desktop file and icon. + newmenu "${DISTDIR}"/com.heroicgameslauncher.hgl.${PV}.desktop \ + com.heroicgameslauncher.hgl.desktop + if use gamescope; then + newmenu "${WORKDIR}"/com.heroicgameslauncher.hgl.gamescope.${PV}.desktop \ + com.heroicgameslauncher.hgl.gamescope.desktop + fi + newicon "${DISTDIR}"/com.heroicgameslauncher.hgl.${PV}.png \ + com.heroicgameslauncher.hgl.png +} diff --git a/games-util/heroic-bin/metadata.xml b/games-util/heroic-bin/metadata.xml new file mode 100644 index 000000000000..a37c0ab1615b --- /dev/null +++ b/games-util/heroic-bin/metadata.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>voyageur@gentoo.org</email> + <name>Bernard Cafarelli</name> + </maintainer> + <maintainer type="person"> + <email>gonegrier.duarte@gmail.com</email> + <name>Gonçalo Negrier Duarte</name> + </maintainer> + <maintainer type="project"> + <email>proxy-maint@gentoo.org</email> + <name>Gentoo Proxy Maintainers</name> + </maintainer> + <use> + <flag name="gamescope">Run Heroic Launcher inside gamescope</flag> + </use> + <longdescription> + Heroic is an Open Source Game Launcher for Linux, Windows and macOS. Right + now it supports launching games from the Epic Games Store using Legendary + and GOG Games using our custom implementation with gogdl. + </longdescription> + <upstream> + <bugs-to>https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/issues/</bugs-to> + </upstream> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/joycond/Manifest b/games-util/joycond/Manifest new file mode 100644 index 000000000000..c6fb1a0cc904 --- /dev/null +++ b/games-util/joycond/Manifest @@ -0,0 +1,2 @@ +DIST joycond-0.1.0_p20220720.tar.gz 30009 BLAKE2B b3963a6d3e8047708d2aa258cb11a8018e263d91c4e1c5491b70eef9d22b4256002780adf897b809f87b101e2876086528389ce9649f34125b3fa226695b5e8f SHA512 b32be26a2d7184910d2d8c1e3ac356885f301d5a443b0d9c91431e37108bc77feb369e93db3c3f0a20a81c2287fd54baed785e5744a787a0bff9763815ffe655 +DIST joycond-0.1.0_p20250412.tar.gz 30530 BLAKE2B e2ff97784ac55e72762952f313b95c80bf21540db8c1a6679165691502e1c21e89495e720665220bf105ce40565d4b8cdfc378a590a9e1e98851d1a58dfb9a27 SHA512 628bfc132ae50d40866965c757dd812ef75caead9630e5f3e59296bc29cb797b9d3000fe1d1f158d31ca7ab879683fa4e4ce649bd25f13301c4319ef08d5abd8 diff --git a/games-util/joycond/files/joycond-dynamic-paths.patch b/games-util/joycond/files/joycond-dynamic-paths.patch new file mode 100644 index 000000000000..234cbaa195b5 --- /dev/null +++ b/games-util/joycond/files/joycond-dynamic-paths.patch @@ -0,0 +1,72 @@ +From b68e1c3a40aa116f0c6236114be79bd79f472258 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Fri, 17 Oct 2025 22:08:50 +0100 +Subject: [PATCH] cmake: Determine installation paths dynamically + +Use pkg-config data, then systemd-path, then respect GNUInstallDirs. +CMAKE_INSTALL_LIBDIR is not used because that is the +architecture-specific directory (e.g. lib64). + +Signed-off-by: James Le Cuirot <chewi@gentoo.org> +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,6 +1,8 @@ + cmake_minimum_required(VERSION 3.13) + project(joycond) + ++include(GNUInstallDirs) ++ + set(CMAKE_CXX_STANDARD 17) + + # Generate compile_commands.json +@@ -25,19 +27,41 @@ target_link_libraries( + + add_subdirectory(src) + +-install(TARGETS joycond DESTINATION /usr/bin/ ++install(TARGETS joycond DESTINATION "${CMAKE_INSTALL_BINDIR}" + PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) +-install(FILES udev/89-joycond.rules udev/72-joycond.rules DESTINATION /usr/lib/udev/rules.d/ +- PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ ++ ++pkg_get_variable(UDEV_RULES_PATH udev udev_dir) ++if(NOT UDEV_RULES_PATH) ++ set(UDEV_RULES_PATH "${CMAKE_INSTALL_PREFIX}/lib/udev") ++endif() ++install(FILES udev/89-joycond.rules udev/72-joycond.rules DESTINATION "${UDEV_RULES_PATH}/rules.d/" ++ PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ + ) +-install(FILES systemd/joycond.service DESTINATION /usr/lib/systemd/system ++ ++pkg_get_variable(SYSTEMD_SYSTEM_UNIT_PATH systemd systemd_system_unit_dir) ++if(NOT SYSTEMD_SYSTEM_UNIT_PATH) ++ execute_process(COMMAND systemd-path systemd-system-unit OUTPUT_VARIABLE SYSTEMD_SYSTEM_UNIT_PATH OUTPUT_STRIP_TRAILING_WHITESPACE RESULT_VARIABLE UNIT_RETVAL) ++ if(NOT UNIT_RETVAL EQUAL 0) ++ set(SYSTEMD_SYSTEM_UNIT_PATH "${CMAKE_INSTALL_PREFIX}/lib/systemd/system") ++ endif() ++endif() ++install(FILES systemd/joycond.service DESTINATION "${SYSTEMD_SYSTEM_UNIT_PATH}" + PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ + ) +-install(FILES systemd/joycond.conf DESTINATION /etc/modules-load.d ++ ++pkg_get_variable(SYSTEMD_MODULES_LOAD_PATH systemd modules_load_dir) ++if(NOT SYSTEMD_MODULES_LOAD_PATH) ++ execute_process(COMMAND systemd-path modules-load OUTPUT_VARIABLE SYSTEMD_MODULES_LOAD_PATH OUTPUT_STRIP_TRAILING_WHITESPACE RESULT_VARIABLE MODULES_RETVAL) ++ if(NOT MODULES_RETVAL EQUAL 0) ++ set(SYSTEMD_MODULES_LOAD_PATH "${CMAKE_INSTALL_PREFIX}/lib/modules-load.d") ++ endif() ++endif() ++install(FILES systemd/joycond.conf DESTINATION "${SYSTEMD_MODULES_LOAD_PATH}" + PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ + ) ++ + install(FILES data/com.github.DanielOgorchock.joycond.metainfo.xml +- DESTINATION /usr/share/metainfo ++ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo" + PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ + ) +-- +2.51.0 + diff --git a/games-util/joycond/files/joycond-gcc16.patch b/games-util/joycond/files/joycond-gcc16.patch new file mode 100644 index 000000000000..c42e7da509d5 --- /dev/null +++ b/games-util/joycond/files/joycond-gcc16.patch @@ -0,0 +1,26 @@ +From c43e5b13d0bd8f3f5fa1d44d92824ea2ca60c315 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Sun, 26 Oct 2025 22:28:19 +0000 +Subject: [PATCH] Fix -Warray-bounds warnings raised by GCC 16 + +Signed-off-by: James Le Cuirot <chewi@gentoo.org> +--- + src/ctlr_mgr.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/ctlr_mgr.cpp b/src/ctlr_mgr.cpp +index 2f6fbc4..9a2c20e 100644 +--- a/src/ctlr_mgr.cpp ++++ b/src/ctlr_mgr.cpp +@@ -164,7 +164,7 @@ void ctlr_mgr::add_ctlr(const std::string& devpath, const std::string& devname) + + if (!unpaired_controllers.count(devpath)) { + std::cout << "Creating new phys_ctlr for " << devname << std::endl; +- phys.reset(new phys_ctlr(devpath, devname)); ++ phys = std::make_shared<phys_ctlr>(devpath, devname); + unpaired_controllers[devpath] = phys; + phys->blink_player_leds(); + subscribers[devpath] = std::make_shared<epoll_subscriber>(std::vector({phys->get_fd()}), +-- +2.51.0 + diff --git a/games-util/joycond/files/joycond-systemd-paranoia.patch b/games-util/joycond/files/joycond-systemd-paranoia.patch new file mode 100644 index 000000000000..314b4824cda8 --- /dev/null +++ b/games-util/joycond/files/joycond-systemd-paranoia.patch @@ -0,0 +1,46 @@ +From d39ce9de9420560494d92519f4e29a40d685a5b4 Mon Sep 17 00:00:00 2001 +From: Andrew Udvare <audvare@gmail.com> +Date: Sun, 12 Dec 2021 22:02:00 -0500 +Subject: [PATCH] systemd service: paranoia mode + +--- + systemd/joycond.service | 24 +++++++++++++++++++----- + 1 file changed, 19 insertions(+), 5 deletions(-) + +diff --git a/systemd/joycond.service b/systemd/joycond.service +index cc8e408..5a8b045 100644 +--- a/systemd/joycond.service ++++ b/systemd/joycond.service +@@ -4,12 +4,27 @@ After=network.target + + [Service] + ExecStart=/usr/bin/joycond +-WorkingDirectory=/root +-StandardOutput=inherit +-StandardError=inherit + Restart=always +-User=root ++ ++DeviceAllow=/dev/uinput ++DeviceAllow=char-input ++DevicePolicy=closed ++LockPersonality=yes ++MemoryDenyWriteExecute=yes ++NoNewPrivileges=yes ++ProtectClock=yes ++PrivateTmp=yes ++ProtectHome=yes ++ProtectHostname=yes ++ProtectControlGroups=yes ++ProtectKernelModules=yes ++ProtectProc=noaccess ++ProtectSystem=strict ++RestrictAddressFamilies=AF_NETLINK ++RestrictNetworkInterfaces= ++RestrictRealtime=yes ++RestrictSUIDSGID=yes ++SocketBindDeny=any + + [Install] + WantedBy=multi-user.target +- diff --git a/games-util/joycond/files/joycond-systemd-paths.patch b/games-util/joycond/files/joycond-systemd-paths.patch new file mode 100644 index 000000000000..8b8288350a3e --- /dev/null +++ b/games-util/joycond/files/joycond-systemd-paths.patch @@ -0,0 +1,32 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index f9d6e93..4e05976 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -28,12 +28,24 @@ add_subdirectory(src) + install(TARGETS joycond DESTINATION /usr/bin/ + PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) +-install(FILES udev/89-joycond.rules udev/72-joycond.rules DESTINATION /lib/udev/rules.d/ ++ ++pkg_get_variable(UDEV_RULES_PATH udev udevdir) ++install(FILES udev/89-joycond.rules udev/72-joycond.rules DESTINATION ${UDEV_RULES_PATH}/rules.d/ + PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ + ) +-install(FILES systemd/joycond.service DESTINATION /etc/systemd/system ++ ++execute_process(COMMAND systemd-path systemd-system-unit OUTPUT_VARIABLE SYSTEMD_SYSTEM_UNIT_PATH OUTPUT_STRIP_TRAILING_WHITESPACE RESULT_VARIABLE UNIT_RETVAL) ++if(NOT "${UNIT_RETVAL}" EQUAL 0) ++ set(SYSTEMD_SYSTEM_UNIT_PATH "/usr/lib/systemd/system") ++endif() ++install(FILES systemd/joycond.service DESTINATION ${SYSTEMD_SYSTEM_UNIT_PATH} + PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ + ) +-install(FILES systemd/joycond.conf DESTINATION /etc/modules-load.d ++ ++execute_process(COMMAND systemd-path modules-load OUTPUT_VARIABLE SYSTEMD_MODULES_LOAD_PATH OUTPUT_STRIP_TRAILING_WHITESPACE RESULT_VARIABLE MODULES_RETVAL) ++if(NOT "${MODULES_RETVAL}" EQUAL 0) ++ set(SYSTEMD_MODULES_LOAD_PATH "/usr/lib/modules-load.d") ++endif() ++install(FILES systemd/joycond.conf DESTINATION ${SYSTEMD_MODULES_LOAD_PATH} + PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ + ) diff --git a/games-util/joycond/files/joycond-werror.patch b/games-util/joycond/files/joycond-werror.patch new file mode 100644 index 000000000000..240a623e1cc3 --- /dev/null +++ b/games-util/joycond/files/joycond-werror.patch @@ -0,0 +1,23 @@ +From 5c58b2b44982e6e4958444888bc5e5f8d1634887 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Fri, 17 Oct 2025 22:32:15 +0100 +Subject: [PATCH] cmake: Only apply -Werror to debug builds + +It is really unhelpful for end users and distributions who might not be +using the same toolchain version as you. + +Signed-off-by: James Le Cuirot <chewi@gentoo.org> +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -11,7 +11,7 @@ pkg_check_modules(LIBEVDEV REQUIRED libevdev) + pkg_check_modules(LIBUDEV REQUIRED libudev) + + add_executable(joycond "") +-target_compile_options(joycond PRIVATE -Wall -Werror) ++target_compile_options(joycond PRIVATE -Wall $<$<CONFIG:Debug>:-Werror>) + include_directories( + include/ + ${LIBEVDEV_INCLUDE_DIRS} +-- +2.51.0 + diff --git a/games-util/joycond/files/joycond.initd b/games-util/joycond/files/joycond.initd new file mode 100644 index 000000000000..f23e1131e753 --- /dev/null +++ b/games-util/joycond/files/joycond.initd @@ -0,0 +1,7 @@ +#!/sbin/openrc-run +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +pidfile="/var/run/${RC_SVCNAME}.pid" +command_background="true" +command="joycond" diff --git a/games-util/joycond/joycond-0.1.0_p20220720-r1.ebuild b/games-util/joycond/joycond-0.1.0_p20220720-r1.ebuild new file mode 100644 index 000000000000..293bbf3b3ce6 --- /dev/null +++ b/games-util/joycond/joycond-0.1.0_p20220720-r1.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake linux-info udev + +COMMIT="5b590ecc9bca181d8bc21377e752126bc9180319" +DESCRIPTION="Daemon that uses hid-nintendo evdev devices to implement joycon pairing" +HOMEPAGE="https://github.com/DanielOgorchock/joycond" +SRC_URI="https://github.com/DanielOgorchock/joycond/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm64" + +DEPEND=" + dev-libs/libevdev + virtual/udev +" + +RDEPEND=" + ${DEPEND} +" + +CONFIG_CHECK=" + ~HID + ~HID_NINTENDO + ~HIDRAW +" + +S="${WORKDIR}/${PN}-${COMMIT}" + +PATCHES=( + "${FILESDIR}"/${PN}-systemd-paths.patch + "${FILESDIR}"/${PN}-systemd-paranoia.patch +) + +src_install() { + cmake_src_install + newinitd "${FILESDIR}"/${PN}.initd ${PN} + doman doc/${PN}.1 +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/games-util/joycond/joycond-0.1.0_p20250412.ebuild b/games-util/joycond/joycond-0.1.0_p20250412.ebuild new file mode 100644 index 000000000000..19d19b6c4019 --- /dev/null +++ b/games-util/joycond/joycond-0.1.0_p20250412.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake linux-info udev + +COMMIT="39d5728d41b70840342ddc116a59125b337fbde2" +DESCRIPTION="Daemon that uses hid-nintendo evdev devices to implement joycon pairing" +HOMEPAGE="https://github.com/DanielOgorchock/joycond" +SRC_URI="https://github.com/DanielOgorchock/joycond/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-${COMMIT}" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm64" + +DEPEND=" + dev-libs/libevdev + virtual/udev +" + +RDEPEND=" + ${DEPEND} +" + +CONFIG_CHECK=" + ~HID + ~HID_NINTENDO + ~HIDRAW +" + +PATCHES=( + "${FILESDIR}"/${PN}-dynamic-paths.patch + "${FILESDIR}"/${PN}-systemd-paranoia.patch + "${FILESDIR}"/${PN}-werror.patch + "${FILESDIR}"/${PN}-gcc16.patch +) + +src_install() { + cmake_src_install + newinitd "${FILESDIR}"/${PN}.initd ${PN} + doman doc/${PN}.1 +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/games-util/joycond/metadata.xml b/games-util/joycond/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/joycond/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/joystick/Manifest b/games-util/joystick/Manifest new file mode 100644 index 000000000000..52205e499f85 --- /dev/null +++ b/games-util/joystick/Manifest @@ -0,0 +1 @@ +DIST linuxconsoletools-1.8.1.tar.bz2 53715 BLAKE2B a0fab44762d9f4edcc1e85037efada2dac617873548579a83c3e7791e5a047e1c88243978fee562992f363102a0cb415c75d1286a3eb46a42dfe6afc7e9a0594 SHA512 407fcba552a3e45c60fb4f08217fe17106bedd6fde2fbce84aa6f4fa68ffc032f1683c6154f79daacaf1dcaf484fe943dd7391e787f0290d5bf42c7089c7c20c diff --git a/games-util/joystick/files/joystick-1.8.1-optional-ffmvforce.patch b/games-util/joystick/files/joystick-1.8.1-optional-ffmvforce.patch new file mode 100644 index 000000000000..62f85aea6054 --- /dev/null +++ b/games-util/joystick/files/joystick-1.8.1-optional-ffmvforce.patch @@ -0,0 +1,22 @@ +Keep ffmvforce separately optional given it's the only one +with an additional dependency (sdl) +--- a/docs/Makefile ++++ b/docs/Makefile +@@ -31,3 +31,6 @@ + ifndef DISABLE_FORCEFEEDBACK +-MANPAGES += fftest.1 ffmvforce.1 ffset.1 ffcfstress.1 ++MANPAGES += fftest.1 ffset.1 ffcfstress.1 ++ifndef DISABLE_FFMVFORCE ++MANPAGES += ffmvforce.1 ++endif + endif +--- a/utils/Makefile ++++ b/utils/Makefile +@@ -39,3 +39,6 @@ + ifndef DISABLE_FORCEFEEDBACK +-PROGRAMS += fftest ffmvforce ffset ffcfstress ++PROGRAMS += fftest ffset ffcfstress ++ifndef DISABLE_FFMVFORCE ++PROGRAMS += ffmvforce ++endif + endif diff --git a/games-util/joystick/joystick-1.8.1.ebuild b/games-util/joystick/joystick-1.8.1.ebuild new file mode 100644 index 000000000000..60523e7f301e --- /dev/null +++ b/games-util/joystick/joystick-1.8.1.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs udev + +MY_P="linuxconsoletools-${PV}" + +DESCRIPTION="Joystick testing utilities" +HOMEPAGE="https://sourceforge.net/projects/linuxconsole/" +SRC_URI="https://downloads.sourceforge.net/linuxconsole/files/${MY_P}.tar.bz2" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="sdl" + +RDEPEND="sdl? ( media-libs/libsdl2[video] )" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${PN}-1.8.1-optional-ffmvforce.patch +) + +src_configure() { + tc-export CC PKG_CONFIG + export PREFIX="${EPREFIX}"/usr + use sdl || export DISABLE_FFMVFORCE=1 +} + +src_install() { + default + + [[ ! ${EPREFIX} ]] || mv {"${D}","${ED}"}/lib || die +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/games-util/joystick/metadata.xml b/games-util/joystick/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/joystick/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/libstrangle/Manifest b/games-util/libstrangle/Manifest new file mode 100644 index 000000000000..71dbb766b33d --- /dev/null +++ b/games-util/libstrangle/Manifest @@ -0,0 +1 @@ +DIST libstrangle-0.1.1_p20220222.tar.bz2 834715 BLAKE2B e849bf5da7a58ef081059471915d7488de5da4c805a42ff9d96fa477fcf6aada4769683020b0233215804e93e280c8b424e3fc56e2939714cc4c2ecc2794831d SHA512 a0b8a741d45e8bdda71a3b1a5ff905925d8b178253c0ac05e01e86c339aa15a207c9b514b17ae2c9810118fe749abf089c8d8efeef23b67a5718da85db264b68 diff --git a/games-util/libstrangle/files/libstrangle-0.1.1_p20220222-gcc13.patch b/games-util/libstrangle/files/libstrangle-0.1.1_p20220222-gcc13.patch new file mode 100644 index 000000000000..03fc215b2e46 --- /dev/null +++ b/games-util/libstrangle/files/libstrangle-0.1.1_p20220222-gcc13.patch @@ -0,0 +1,7 @@ +https://bugs.gentoo.org/899038 +--- a/src/vulkan/overlay.cpp ++++ b/src/vulkan/overlay.cpp +@@ -28,2 +28,3 @@ + ++#include <cstdio> + #include <mutex> diff --git a/games-util/libstrangle/libstrangle-0.1.1_p20220222-r1.ebuild b/games-util/libstrangle/libstrangle-0.1.1_p20220222-r1.ebuild new file mode 100644 index 000000000000..6c2922519587 --- /dev/null +++ b/games-util/libstrangle/libstrangle-0.1.1_p20220222-r1.ebuild @@ -0,0 +1,65 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib-minimal toolchain-funcs + +STRANGLE_COMMIT="0273e318e3b0cc759155db8729ad74266b74cb9b" + +DESCRIPTION="Frame rate limiter for OpenGL/Vulkan" +HOMEPAGE="https://gitlab.com/torkel104/libstrangle/" +SRC_URI="https://gitlab.com/torkel104/libstrangle/-/archive/${STRANGLE_COMMIT}/${P}.tar.bz2" +S="${WORKDIR}/${PN}-${STRANGLE_COMMIT}" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+abi_x86_32" + +RDEPEND=" + sys-apps/grep[pcre] + elibc_glibc? ( + || ( + >=sys-libs/glibc-2.36-r3[hash-sysv-compat] + <sys-libs/glibc-2.36 + ) + )" +DEPEND=" + dev-util/vulkan-headers + media-libs/libglvnd + x11-base/xorg-proto + x11-libs/libX11" + +QA_SONAME="usr/lib.*/libstrangle.*" # intended for dlopen() + +PATCHES=( + "${FILESDIR}"/${P}-gcc13.patch +) + +src_prepare() { + default + + sed -ri '/^C(XX)?FLAGS=/s|=|+=$(CPPFLAGS) |' makefile || die + + multilib_copy_sources +} + +multilib_src_compile() { + emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD{,XX}FLAGS="${LDFLAGS}" native +} + +multilib_src_install() { + local emakeargs=( + DESTDIR="${D}" + prefix="${EPREFIX}"/usr + libdir="${EPREFIX}"/usr/$(get_libdir) + ) + + emake "${emakeargs[@]}" install-native +} + +multilib_src_install_all() { + emake DESTDIR="${D}" prefix="${EPREFIX}"/usr install-common + einstalldocs +} diff --git a/games-util/libstrangle/metadata.xml b/games-util/libstrangle/metadata.xml new file mode 100644 index 000000000000..83a427082c82 --- /dev/null +++ b/games-util/libstrangle/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>ionen@gentoo.org</email> + <name>Ionen Wolkens</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/loki_patch/Manifest b/games-util/loki_patch/Manifest new file mode 100644 index 000000000000..d6777d541eda --- /dev/null +++ b/games-util/loki_patch/Manifest @@ -0,0 +1,2 @@ +DIST loki_patch-20091105.tar.bz2 331725 BLAKE2B a3fa2e1c594d3484830527276ebd24f6e1c56f924b815fd3e2a12f802bccfd556017084a094508c531badd568158eb68fa3d608c30a55110de24410088fc5275 SHA512 9db40b1746ecf5603c09be3ddf01bf92cfc6b3d1c35ac7153751e1871840175c538af98c22f458658bcbebac65ccddccc1aee92a88300a243b8e68bda13ca323 +DIST loki_setupdb-20091105.tar.bz2 60725 BLAKE2B d3bed3d6b9123093b307f9c735f14c630f8ebfd2b228d6268cf97e8016ec83fa18b3b390e84facd42afe5d3f707bfb63a48e21a6b002a7d0583fdbde907567dc SHA512 ba55b24a6e2b2b6268dec9df8ec0581d852461b5c07ca97a24ebee3e55fe5764dffbbcfdb6b18a80677f2fae1e7701df4fbca0f6af8ef8050c662f5a39daf25d diff --git a/games-util/loki_patch/files/loki_patch-20091105-build.patch b/games-util/loki_patch/files/loki_patch-20091105-build.patch new file mode 100644 index 000000000000..e17007e57a75 --- /dev/null +++ b/games-util/loki_patch/files/loki_patch-20091105-build.patch @@ -0,0 +1,180 @@ +--- a/loki_patch/configure.in ++++ b/loki_patch/configure.in +@@ -1,4 +1,4 @@ +-AC_INIT(README) ++AC_INIT(loki_patch, 1.0.2) + + dnl Define the release numbers here + +@@ -10,13 +10,14 @@ + AC_CANONICAL_HOST + AC_CANONICAL_TARGET + ++AM_INIT_AUTOMAKE(foreign no-dependencies) + AC_PROG_CC + AC_PROG_MAKE_SET + AC_PROG_INSTALL + + AC_CHECK_HEADERS(unistd.h) + +-CFLAGS="-fsigned-char -funroll-loops -Wall -g -O2" ++CFLAGS="$CFLAGS -fsigned-char -Wall" + + case "$target" in + *i?86*) +@@ -32,17 +33,12 @@ + OS=`uname -s` + + dnl Look for the XML libraries ++PKG_CHECK_MODULES(XML, libxml-2.0) ++AC_SUBST(XML_LIBS) + +-AC_PATH_PROG(HAVEXML, xml-config, $PATH) +-if test ! -z "$HAVEXML"; then +- XML_CFLAGS=`$HAVEXML --cflags` +- XML_PREFIX=`$HAVEXML --prefix` +- +- CFLAGS="$CFLAGS $XML_CFLAGS" +- LIBS="$LIBS $XML_PREFIX/lib/libxml.a" +-else +- AC_MSG_ERROR([*** xml-config not found. You need a working libxml installation.]) +-fi ++PKG_CHECK_MODULES(XDELTA, xdelta) ++AC_SUBST(XDELTA_CFLAGS) ++AC_SUBST(XDELTA_LIBS) + + SETUPDB_VERSION=1.0.0 + SETUPDB="`pwd`/../loki_setupdb-$SETUPDB_VERSION" +@@ -57,14 +53,6 @@ + SETUPDB=$with_setupdb + fi + +-dnl Check for correct setupdb installation +- +-if test -f $SETUPDB/$ARCH/libsetupdb.a; then +- AC_MSG_RESULT([SetupDB library found in $SETUPDB/$ARCH]) +-else +- AC_MSG_ERROR([*** Please compile setupdb first!]) +-fi +- + CFLAGS="$CFLAGS -I$SETUPDB" + + AC_SUBST(SETUPDB) +--- a/loki_patch/loki_xdelta.c ++++ b/loki_patch/loki_xdelta.c +@@ -49,7 +49,7 @@ + + #define LOKI_PATCH + +-#include "xdelta_inc/xdelta.h" ++#include <xdelta.h> + + static HandleFuncTable xd_handle_table; + +--- a/dev/null ++++ b/loki_patch/Makefile.am +@@ -0,0 +1,12 @@ ++COMMONSRC = load_patch.c size_patch.c print_patch.c \ ++ loki_xdelta.c mkdirhier.c log_output.c ++ ++bin_PROGRAMS = make_patch loki_patch ++ ++make_patch_SOURCES = $(COMMONSRC) make_patch.c tree_patch.c save_patch.c ++ ++loki_patch_SOURCES = $(COMMONSRC) loki_patch.c apply_patch.c registry.c ++ ++AM_CPPFLAGS = $(XDELTA_CFLAGS) ++ ++LDADD = $(top_builddir)/../loki_setupdb/libsetupdb.a $(XDELTA_LIBS) $(XML_LIBS) -lz +--- a/loki_setupdb/configure.in ++++ b/loki_setupdb/configure.in +@@ -1,4 +1,4 @@ +-AC_INIT ++AC_INIT(setupdb, 1.6.5) + AC_CONFIG_HEADER(config.h) + + dnl Define the release numbers here +@@ -12,8 +12,7 @@ + PACKAGE_VERSION="$SETUPDB_VERSION_MAJOR.$SETUPDB_VERSION_MINOR.$SETUPDB_VERSION_RELEASE" + PACKAGE_STRING="$PACKAGE_NAME v$PACKAGE_VERSION" + +-test "x$CFLAGS" = x && CFLAGS="-O2" +-CFLAGS="$CFLAGS -fsigned-char -Wall -g -I." ++CFLAGS="$CFLAGS -fsigned-char -Wall" + REENTRANT="-D_REENTRANT" + + if test -d /usr/codehost/lib; then +@@ -33,9 +32,11 @@ + AC_CANONICAL_HOST + AC_CANONICAL_TARGET + ++AM_INIT_AUTOMAKE(foreign no-dependencies) + AC_PROG_CC + AC_PROG_MAKE_SET +-AC_PATH_PROGS(AR, [ar gar]) ++AM_PROG_AR ++AC_PROG_RANLIB + + AC_CHECK_HEADERS(unistd.h) + AC_CHECK_HEADERS(strings.h) +@@ -128,7 +129,7 @@ + + AC_CHECK_FUNCS(getopt, , GETOPT_C="getopt.c") + AC_CHECK_FUNCS(getopt_long, , GETOPT_C="getopt.c") +-AC_CHECK_LIB(gnugetopt, getopt_long, LIBS="$LIBS $BSTATIC -lgnugetopt"; GETOPT_C="") ++AC_CHECK_LIB(gnugetopt, getopt_long, LIBS="$LIBS -lgnugetopt"; GETOPT_C="") + + AC_SUBST(ARCH) + AC_SUBST(STATIC) +@@ -139,37 +140,8 @@ + + dnl Look for the XML libraries + +-XMLVER="" +-AC_ARG_WITH(libxml2, +-[ --with-libxml2 use libxml2 [default=libxml1]], +- , with_libxml2=no) +-if test x$with_libxml2 != xno; then +- XMLVER="2" +-fi +- +-AC_PATH_PROG(HAVEXML, xml${XMLVER}-config, $PATH) +-if test ! -z "$HAVEXML"; then +- XML_CFLAGS=`$HAVEXML --cflags` +- XML_PREFIX=`$HAVEXML --prefix` +- +- if "$HAVEXML" --help|grep libtool-libs > /dev/null; then +- XML_LIBTOOL=`$HAVEXML --libtool-libs` +- if test -f "$XML_LIBTOOL"; then +- . "$XML_LIBTOOL" +- XML_LIBS="$dependency_libs" +- else +- XML_LIBS="-lm" +- fi +- elif "$HAVEXML" --libs | grep thread > /dev/null; then +- XML_LIBS="$PTHREAD -lm" +- fi +- EXTRA_LIBS="$EXTRA_LIBS $XML_LIBS" +- +- CFLAGS="$CFLAGS $XML_CFLAGS" +- LIBS="$LIBS $XML_PREFIX/lib$LIBSUFFIX/libxml${XMLVER}.a $BSTATIC $ZLIB $BDYNAMIC $EXTRA_LIBS" +-else +- AC_MSG_ERROR([*** xml-config not found. You need a working libxml installation.]) +-fi ++PKG_CHECK_MODULES(XML, libxml-2.0) ++AC_SUBST(XML_CFLAGS) + + AC_ARG_WITH(vendor, + [ --with-vendor with specified vendor prefix [default=loki]], +--- a/dev/null ++++ b/loki_setupdb/Makefile.am +@@ -0,0 +1,9 @@ ++noinst_LIBRARIES = libsetupdb.a ++ ++libsetupdb_a_SOURCES = \ ++ arch.c brandelf.c convert.c md5.c register.c setupdb.c ++ ++libsetupdb_a_CPPFLAGS = \ ++ -DSETUPDB_VERSION_MAJOR=$(SETUPDB_VERSION_MAJOR) \ ++ -DSETUPDB_VERSION_MINOR=$(SETUPDB_VERSION_MINOR) \ ++ $(XML_CFLAGS) diff --git a/games-util/loki_patch/files/loki_patch-20091105-patchdata.patch b/games-util/loki_patch/files/loki_patch-20091105-patchdata.patch new file mode 100644 index 000000000000..403c24ed79f9 --- /dev/null +++ b/games-util/loki_patch/files/loki_patch-20091105-patchdata.patch @@ -0,0 +1,11 @@ +--- a/loki_patch/load_patch.c ++++ b/loki_patch/load_patch.c +@@ -8,7 +8,7 @@ + #include "load_patch.h" + #include "log_output.h" + +-#define BASE "patchdata" ++#define BASE "data" + + + int load_add_file(FILE *file, int *line_num, const char *dst, loki_patch *patch) diff --git a/games-util/loki_patch/files/loki_patch-20091105-xdelta-gzip.patch b/games-util/loki_patch/files/loki_patch-20091105-xdelta-gzip.patch new file mode 100644 index 000000000000..ec4eeb758a3a --- /dev/null +++ b/games-util/loki_patch/files/loki_patch-20091105-xdelta-gzip.patch @@ -0,0 +1,44 @@ +--- a/loki_patch/loki_xdelta.c ++++ b/loki_patch/loki_xdelta.c +@@ -179,6 +179,7 @@ struct _XdFileHandle + guint narrow_high; + guint current_pos; + FILE* in; ++ gzFile zin; + gboolean (* in_read) (XdFileHandle* handle, void* buf, gint nbyte); + gboolean (* in_close) (XdFileHandle* handle); + gboolean in_compressed; +@@ -520,7 +521,7 @@ xd_gzwrite (XdFileHandle* fh, const void* buf, gint nbyte) + static gboolean + xd_gzread (XdFileHandle* fh, void* buf, gint nbyte) + { +- return gzread (fh->in, buf, nbyte) == nbyte; ++ return gzread (fh->zin, buf, nbyte) == nbyte; + } + + static gboolean +@@ -532,7 +533,7 @@ xd_gzclose (XdFileHandle* fh) + static gboolean + xd_gzrclose (XdFileHandle* fh) + { +- return gzclose (fh->in) == Z_OK; ++ return gzclose (fh->zin) == Z_OK; + } + + static void +@@ -1022,13 +1023,13 @@ xd_handle_narrow (XdFileHandle* fh, guint low, guint high, gboolean compressed) + } + + g_assert (fh->fd >= 0); +- fh->in = gzdopen (dup (fh->fd), "rb"); ++ fh->zin = gzdopen (dup (fh->fd), "rb"); + fh->in_read = &xd_gzread; + fh->in_close = &xd_gzrclose; + fh->in_compressed = TRUE; + fh->current_pos = 0; + +- if (! fh->in) ++ if (! fh->zin) + { + xd_error ("gzdopen failed: %s\n", g_strerror (errno)); + return -1; diff --git a/games-util/loki_patch/loki_patch-20091105-r2.ebuild b/games-util/loki_patch/loki_patch-20091105-r2.ebuild new file mode 100644 index 000000000000..ac184adcdbd1 --- /dev/null +++ b/games-util/loki_patch/loki_patch-20091105-r2.ebuild @@ -0,0 +1,61 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Loki Software binary patch tool" +HOMEPAGE="https://github.com/icculus/loki_patch" +SRC_URI=" + mirror://gentoo/${P}.tar.bz2 + mirror://gentoo/loki_setupdb-${PV}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + dev-util/xdelta:0 + dev-libs/libxml2:= + dev-libs/glib:2" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +S="${WORKDIR}" + +PATCHES=( + "${FILESDIR}"/${P}-build.patch + "${FILESDIR}"/${P}-patchdata.patch + "${FILESDIR}"/${P}-xdelta-gzip.patch +) + +src_prepare() { + default + + cd loki_setupdb || die + mv configure.{in,ac} || die + eautoreconf + + cd "${S}"/${PN} || die + mv configure.{in,ac} || die + eautoreconf +} + +src_configure() { + cd loki_setupdb || die + econf + cd "${S}"/${PN} || die + econf +} + +src_compile() { + emake -C loki_setupdb + emake -C loki_patch +} + +src_install() { + cd ${PN} || die + dobin loki_patch make_patch + dodoc CHANGES NOTES README TODO +} diff --git a/games-util/loki_patch/metadata.xml b/games-util/loki_patch/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/loki_patch/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/lutris/Manifest b/games-util/lutris/Manifest new file mode 100644 index 000000000000..132085cea32a --- /dev/null +++ b/games-util/lutris/Manifest @@ -0,0 +1,3 @@ +DIST lutris-0.5.19.gh.tar.gz 1846842 BLAKE2B 6415a7bf6fe2f548e695a5f7a7298f91b15ba8efb7b78ce963366ffe8fc2c4749f2f7d90fc7e24a8470562d776efbd2a7a04bb1d2d40cfbaae0f39b9cbf64170 SHA512 43459c1eaa138c4c33cd306d072779c44be418492df7f9083c690fb3c6e01a7a41ea349e5ff0f85359345e6cc1573b8b4875b79241c77ea099bb485d523d2fdf +DIST lutris-0.5.20.gh.tar.gz 2134348 BLAKE2B ca5df3f7a2127ce132d80b198061cf25136062538477e244ffc362af6ae3bff6a721fd42c6ef7042718190807d9538d28630a815580a0e5e008f5e282112f9d6 SHA512 2dcd30a059ce7ec800174d864c6f06975b0657b274a1985d65e809d6ee5a523546a763561bb4c2a078ba13567d73e92437b9e4f1faa38631a29dce80c820cf42 +DIST lutris-0.5.22.gh.tar.gz 2208777 BLAKE2B 8f47e6035631b6a3756d6a2c7adeaec36327594ffd3c4a1e71a1d1419f4c72ae28872377fa91165ce7f58a593577c3184c5777af761ef75a163211f8be5ca9d1 SHA512 eef9dbe8d246e17b3a3f62bde02d0af889daeb8d1c1fbaa53e09ab6fc21893d002ad9954024e7d4cb2279885768819a77acfa516107b527c5038702eb799b23a diff --git a/games-util/lutris/lutris-0.5.19-r1.ebuild b/games-util/lutris/lutris-0.5.19-r1.ebuild new file mode 100644 index 000000000000..32292d7c1e8b --- /dev/null +++ b/games-util/lutris/lutris-0.5.19-r1.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="sqlite,threads(+)" + +inherit meson python-single-r1 optfeature virtualx xdg + +DESCRIPTION="An open source gaming platform for GNU/Linux" +HOMEPAGE="https://lutris.net/" + +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://github.com/lutris/lutris.git" + inherit git-r3 +else + SRC_URI="https://github.com/lutris/lutris/archive/refs/tags/v${PV/_/-}.tar.gz -> ${P}.gh.tar.gz" + S="${WORKDIR}"/${P/_/-} + if [[ ${PV} != *_beta* ]] ; then + KEYWORDS="~amd64 ~x86" + fi +fi + +LICENSE="GPL-3+ CC0-1.0" +SLOT="0" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + app-arch/cabextract + || ( + >=app-arch/7zip-24.09[symlink(+)] + app-arch/p7zip + ) + app-arch/unzip + $(python_gen_cond_dep ' + dev-python/certifi[${PYTHON_USEDEP}] + dev-python/dbus-python[${PYTHON_USEDEP}] + dev-python/distro[${PYTHON_USEDEP}] + dev-python/evdev[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/setproctitle[${PYTHON_USEDEP}] + dev-python/pygobject:3[cairo,${PYTHON_USEDEP}] + dev-python/pypresence[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/protobuf[${PYTHON_USEDEP}] + dev-python/moddb[${PYTHON_USEDEP}] + ') + media-sound/fluid-soundfont + net-libs/webkit-gtk:4.1[introspection] + sys-apps/pciutils + sys-apps/xdg-desktop-portal + x11-apps/mesa-progs + x11-apps/xgamma + x11-apps/xrandr + x11-libs/gtk+:3[introspection] + x11-libs/gdk-pixbuf[jpeg] +" + +BDEPEND=" + test? ( + $(python_gen_cond_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + ') + ) +" + +DOCS=( AUTHORS README.rst docs/installers.rst docs/steam.rst ) + +EPYTEST_IGNORE=( + # Requires a Nvidia GPU and driver + tests/util/graphics/test_drivers.py +) + +src_test() { + meson_src_test + virtx epytest +} + +src_install() { + meson_src_install + python_optimize + python_fix_shebang "${ED}/usr/" #740048 +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "playing various games through Valve's Steam launcher (available in Steam overlay)" games-util/steam-launcher + optfeature "playing games through Valve's micro-compositor" gui-wm/gamescope + optfeature "playing games inside a nested X server" x11-base/xorg-server[xephyr] + optfeature "installing and playing games from Flathub" sys-apps/flatpak + optfeature "playing Microsoft Windows games" virtual/wine + optfeature "playing DirectX based games by translating DirectX to Vulkan" "media-libs/vulkan-loader dev-util/vulkan-tools app-emulation/dxvk virtual/wine" + optfeature "playing Vulkan based games (plus ICD for your hardware)" "media-libs/vulkan-loader dev-util/vulkan-tools" + optfeature "a Vulkan and OpenGL overlay for monitoring system performance (available in GURU overlay)" games-util/mangohud + elog + + optfeature_header "${PN} supports various emulators and compatibility layers. \n${PN} can download and install these by itself, but also supports using system-wide installed versions" + optfeature "playing games through x86 PC emulator" app-emulation/86Box + # TODO: Package Adventure Game Studio runner + optfeature "playing Atari 800 games through an emulator" games-emulation/atari800 + # TODO: Package Basilisk II Mac emulator + # TODO: Package Wii U emulator + optfeature "playing Nintendo 3DS games through an emulator (available in GURU overlay)" games-emulation/citra + # TODO: Package ColecoVision/Coleco Adam emulator + optfeature "playing Nintendo DS games through an emulator" games-emulation/desmume + optfeature "playing Sega Genesis games through an emulator" games-emulation/dgen-sdl + optfeature "playing GameCube and Wii games through an emulator" games-emulation/dolphin + optfeature "playing DOS games through an emulator" games-emulation/dosbox + optfeature "playing RPG Maker 2000/2003 games (available in GURU overlay)" games-engines/easyrpg-player + optfeature "playing Z-code based text games" games-engines/frotz + optfeature "playing Amiga games through an emulator" app-emulation/fs-uae + optfeature "playing Atari ST games through an emulator" games-emulation/hatari + # TODO: Package Intellivision emulator + optfeature "playing games through various emulators" games-emulation/libretro-info + optfeature "playing Arcade games through an emulator" games-emulation/advancemame + optfeature "playing games through various emulators" games-emulation/mednafen + optfeature "playing Nintendo DS games through an emulator" games-emulation/melonds + # TODO: Package mGBA + # TODO: Package MicroM8 Apple II emulator + # TODO: Package Mini vMac emulator + optfeature "playing Nintendo 64 games through an emulator" games-emulation/mupen64plus + # TODO: Package O2Em emulator + # TODO: Package Sega Master System emulator + optfeature "playing IBM PC games through an emulator" app-emulation/pcem + optfeature "playing Sony PlayStation 2 games through an emulator" games-emulation/pcsx2 + optfeature "playing various fantasy games" dev-lang/pico8 + optfeature "playing Sony PlayStation Portable games through an emulator" games-emulation/ppsspp + # TODO: Package SEGA Dreamcast emulator redream + # TODO: Package SEGA Dreamcast emulator reicast + # TODO: Package Rosalie's Mupen GUI + optfeature "playing Sony PlayStation 3 games through an emulator (available in GURU overlay)" games-emulation/rpcs3 + optfeature "playing Adobe Flash Player games through an emulator" app-emulation/ruffle + # TODO: Package Nintendo Switch emulator + optfeature "playing Lucasarts adventure games" games-engines/scummvm + # TODO: Package PowerMacintosh emulator + optfeature "playing Super Nintendo (SNES) games through an emulator" games-emulation/snes9x + # TODO: Package Sinclair ZX Spectrum emulator + optfeature "playing Atari 2600 VCS games through an emulator" games-emulation/stella + # TODO: Package TIC-80 tiny computer + optfeature "playing Commodore games through an emulator" app-emulation/vice + # TODO: Package Atari Jaguar emulator + # TODO: Package Vita3K PS Vita emulator + # TODO: Package runner for HTML5 web games + # TODO: Package Xbox emulator + optfeature "playing Nintendo Switch games through an emulator (available in GURU overlay)" games-emulation/yuzu + optfeature "playing DOOM games" games-engines/uzdoom + + # Quote README.rst + elog + elog "Lutris installations are fully automated through scripts, which can" + elog "be written in either JSON or YAML. The scripting syntax is described" + elog "in ${EROOT}/usr/share/doc/${PF}/installers.rst.bz2, and is also" + elog "available online at lutris.net." +} diff --git a/games-util/lutris/lutris-0.5.20-r1.ebuild b/games-util/lutris/lutris-0.5.20-r1.ebuild new file mode 100644 index 000000000000..32292d7c1e8b --- /dev/null +++ b/games-util/lutris/lutris-0.5.20-r1.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="sqlite,threads(+)" + +inherit meson python-single-r1 optfeature virtualx xdg + +DESCRIPTION="An open source gaming platform for GNU/Linux" +HOMEPAGE="https://lutris.net/" + +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://github.com/lutris/lutris.git" + inherit git-r3 +else + SRC_URI="https://github.com/lutris/lutris/archive/refs/tags/v${PV/_/-}.tar.gz -> ${P}.gh.tar.gz" + S="${WORKDIR}"/${P/_/-} + if [[ ${PV} != *_beta* ]] ; then + KEYWORDS="~amd64 ~x86" + fi +fi + +LICENSE="GPL-3+ CC0-1.0" +SLOT="0" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + app-arch/cabextract + || ( + >=app-arch/7zip-24.09[symlink(+)] + app-arch/p7zip + ) + app-arch/unzip + $(python_gen_cond_dep ' + dev-python/certifi[${PYTHON_USEDEP}] + dev-python/dbus-python[${PYTHON_USEDEP}] + dev-python/distro[${PYTHON_USEDEP}] + dev-python/evdev[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/setproctitle[${PYTHON_USEDEP}] + dev-python/pygobject:3[cairo,${PYTHON_USEDEP}] + dev-python/pypresence[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/protobuf[${PYTHON_USEDEP}] + dev-python/moddb[${PYTHON_USEDEP}] + ') + media-sound/fluid-soundfont + net-libs/webkit-gtk:4.1[introspection] + sys-apps/pciutils + sys-apps/xdg-desktop-portal + x11-apps/mesa-progs + x11-apps/xgamma + x11-apps/xrandr + x11-libs/gtk+:3[introspection] + x11-libs/gdk-pixbuf[jpeg] +" + +BDEPEND=" + test? ( + $(python_gen_cond_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + ') + ) +" + +DOCS=( AUTHORS README.rst docs/installers.rst docs/steam.rst ) + +EPYTEST_IGNORE=( + # Requires a Nvidia GPU and driver + tests/util/graphics/test_drivers.py +) + +src_test() { + meson_src_test + virtx epytest +} + +src_install() { + meson_src_install + python_optimize + python_fix_shebang "${ED}/usr/" #740048 +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "playing various games through Valve's Steam launcher (available in Steam overlay)" games-util/steam-launcher + optfeature "playing games through Valve's micro-compositor" gui-wm/gamescope + optfeature "playing games inside a nested X server" x11-base/xorg-server[xephyr] + optfeature "installing and playing games from Flathub" sys-apps/flatpak + optfeature "playing Microsoft Windows games" virtual/wine + optfeature "playing DirectX based games by translating DirectX to Vulkan" "media-libs/vulkan-loader dev-util/vulkan-tools app-emulation/dxvk virtual/wine" + optfeature "playing Vulkan based games (plus ICD for your hardware)" "media-libs/vulkan-loader dev-util/vulkan-tools" + optfeature "a Vulkan and OpenGL overlay for monitoring system performance (available in GURU overlay)" games-util/mangohud + elog + + optfeature_header "${PN} supports various emulators and compatibility layers. \n${PN} can download and install these by itself, but also supports using system-wide installed versions" + optfeature "playing games through x86 PC emulator" app-emulation/86Box + # TODO: Package Adventure Game Studio runner + optfeature "playing Atari 800 games through an emulator" games-emulation/atari800 + # TODO: Package Basilisk II Mac emulator + # TODO: Package Wii U emulator + optfeature "playing Nintendo 3DS games through an emulator (available in GURU overlay)" games-emulation/citra + # TODO: Package ColecoVision/Coleco Adam emulator + optfeature "playing Nintendo DS games through an emulator" games-emulation/desmume + optfeature "playing Sega Genesis games through an emulator" games-emulation/dgen-sdl + optfeature "playing GameCube and Wii games through an emulator" games-emulation/dolphin + optfeature "playing DOS games through an emulator" games-emulation/dosbox + optfeature "playing RPG Maker 2000/2003 games (available in GURU overlay)" games-engines/easyrpg-player + optfeature "playing Z-code based text games" games-engines/frotz + optfeature "playing Amiga games through an emulator" app-emulation/fs-uae + optfeature "playing Atari ST games through an emulator" games-emulation/hatari + # TODO: Package Intellivision emulator + optfeature "playing games through various emulators" games-emulation/libretro-info + optfeature "playing Arcade games through an emulator" games-emulation/advancemame + optfeature "playing games through various emulators" games-emulation/mednafen + optfeature "playing Nintendo DS games through an emulator" games-emulation/melonds + # TODO: Package mGBA + # TODO: Package MicroM8 Apple II emulator + # TODO: Package Mini vMac emulator + optfeature "playing Nintendo 64 games through an emulator" games-emulation/mupen64plus + # TODO: Package O2Em emulator + # TODO: Package Sega Master System emulator + optfeature "playing IBM PC games through an emulator" app-emulation/pcem + optfeature "playing Sony PlayStation 2 games through an emulator" games-emulation/pcsx2 + optfeature "playing various fantasy games" dev-lang/pico8 + optfeature "playing Sony PlayStation Portable games through an emulator" games-emulation/ppsspp + # TODO: Package SEGA Dreamcast emulator redream + # TODO: Package SEGA Dreamcast emulator reicast + # TODO: Package Rosalie's Mupen GUI + optfeature "playing Sony PlayStation 3 games through an emulator (available in GURU overlay)" games-emulation/rpcs3 + optfeature "playing Adobe Flash Player games through an emulator" app-emulation/ruffle + # TODO: Package Nintendo Switch emulator + optfeature "playing Lucasarts adventure games" games-engines/scummvm + # TODO: Package PowerMacintosh emulator + optfeature "playing Super Nintendo (SNES) games through an emulator" games-emulation/snes9x + # TODO: Package Sinclair ZX Spectrum emulator + optfeature "playing Atari 2600 VCS games through an emulator" games-emulation/stella + # TODO: Package TIC-80 tiny computer + optfeature "playing Commodore games through an emulator" app-emulation/vice + # TODO: Package Atari Jaguar emulator + # TODO: Package Vita3K PS Vita emulator + # TODO: Package runner for HTML5 web games + # TODO: Package Xbox emulator + optfeature "playing Nintendo Switch games through an emulator (available in GURU overlay)" games-emulation/yuzu + optfeature "playing DOOM games" games-engines/uzdoom + + # Quote README.rst + elog + elog "Lutris installations are fully automated through scripts, which can" + elog "be written in either JSON or YAML. The scripting syntax is described" + elog "in ${EROOT}/usr/share/doc/${PF}/installers.rst.bz2, and is also" + elog "available online at lutris.net." +} diff --git a/games-util/lutris/lutris-0.5.22-r1.ebuild b/games-util/lutris/lutris-0.5.22-r1.ebuild new file mode 100644 index 000000000000..32292d7c1e8b --- /dev/null +++ b/games-util/lutris/lutris-0.5.22-r1.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="sqlite,threads(+)" + +inherit meson python-single-r1 optfeature virtualx xdg + +DESCRIPTION="An open source gaming platform for GNU/Linux" +HOMEPAGE="https://lutris.net/" + +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://github.com/lutris/lutris.git" + inherit git-r3 +else + SRC_URI="https://github.com/lutris/lutris/archive/refs/tags/v${PV/_/-}.tar.gz -> ${P}.gh.tar.gz" + S="${WORKDIR}"/${P/_/-} + if [[ ${PV} != *_beta* ]] ; then + KEYWORDS="~amd64 ~x86" + fi +fi + +LICENSE="GPL-3+ CC0-1.0" +SLOT="0" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + app-arch/cabextract + || ( + >=app-arch/7zip-24.09[symlink(+)] + app-arch/p7zip + ) + app-arch/unzip + $(python_gen_cond_dep ' + dev-python/certifi[${PYTHON_USEDEP}] + dev-python/dbus-python[${PYTHON_USEDEP}] + dev-python/distro[${PYTHON_USEDEP}] + dev-python/evdev[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/setproctitle[${PYTHON_USEDEP}] + dev-python/pygobject:3[cairo,${PYTHON_USEDEP}] + dev-python/pypresence[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/protobuf[${PYTHON_USEDEP}] + dev-python/moddb[${PYTHON_USEDEP}] + ') + media-sound/fluid-soundfont + net-libs/webkit-gtk:4.1[introspection] + sys-apps/pciutils + sys-apps/xdg-desktop-portal + x11-apps/mesa-progs + x11-apps/xgamma + x11-apps/xrandr + x11-libs/gtk+:3[introspection] + x11-libs/gdk-pixbuf[jpeg] +" + +BDEPEND=" + test? ( + $(python_gen_cond_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + ') + ) +" + +DOCS=( AUTHORS README.rst docs/installers.rst docs/steam.rst ) + +EPYTEST_IGNORE=( + # Requires a Nvidia GPU and driver + tests/util/graphics/test_drivers.py +) + +src_test() { + meson_src_test + virtx epytest +} + +src_install() { + meson_src_install + python_optimize + python_fix_shebang "${ED}/usr/" #740048 +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "playing various games through Valve's Steam launcher (available in Steam overlay)" games-util/steam-launcher + optfeature "playing games through Valve's micro-compositor" gui-wm/gamescope + optfeature "playing games inside a nested X server" x11-base/xorg-server[xephyr] + optfeature "installing and playing games from Flathub" sys-apps/flatpak + optfeature "playing Microsoft Windows games" virtual/wine + optfeature "playing DirectX based games by translating DirectX to Vulkan" "media-libs/vulkan-loader dev-util/vulkan-tools app-emulation/dxvk virtual/wine" + optfeature "playing Vulkan based games (plus ICD for your hardware)" "media-libs/vulkan-loader dev-util/vulkan-tools" + optfeature "a Vulkan and OpenGL overlay for monitoring system performance (available in GURU overlay)" games-util/mangohud + elog + + optfeature_header "${PN} supports various emulators and compatibility layers. \n${PN} can download and install these by itself, but also supports using system-wide installed versions" + optfeature "playing games through x86 PC emulator" app-emulation/86Box + # TODO: Package Adventure Game Studio runner + optfeature "playing Atari 800 games through an emulator" games-emulation/atari800 + # TODO: Package Basilisk II Mac emulator + # TODO: Package Wii U emulator + optfeature "playing Nintendo 3DS games through an emulator (available in GURU overlay)" games-emulation/citra + # TODO: Package ColecoVision/Coleco Adam emulator + optfeature "playing Nintendo DS games through an emulator" games-emulation/desmume + optfeature "playing Sega Genesis games through an emulator" games-emulation/dgen-sdl + optfeature "playing GameCube and Wii games through an emulator" games-emulation/dolphin + optfeature "playing DOS games through an emulator" games-emulation/dosbox + optfeature "playing RPG Maker 2000/2003 games (available in GURU overlay)" games-engines/easyrpg-player + optfeature "playing Z-code based text games" games-engines/frotz + optfeature "playing Amiga games through an emulator" app-emulation/fs-uae + optfeature "playing Atari ST games through an emulator" games-emulation/hatari + # TODO: Package Intellivision emulator + optfeature "playing games through various emulators" games-emulation/libretro-info + optfeature "playing Arcade games through an emulator" games-emulation/advancemame + optfeature "playing games through various emulators" games-emulation/mednafen + optfeature "playing Nintendo DS games through an emulator" games-emulation/melonds + # TODO: Package mGBA + # TODO: Package MicroM8 Apple II emulator + # TODO: Package Mini vMac emulator + optfeature "playing Nintendo 64 games through an emulator" games-emulation/mupen64plus + # TODO: Package O2Em emulator + # TODO: Package Sega Master System emulator + optfeature "playing IBM PC games through an emulator" app-emulation/pcem + optfeature "playing Sony PlayStation 2 games through an emulator" games-emulation/pcsx2 + optfeature "playing various fantasy games" dev-lang/pico8 + optfeature "playing Sony PlayStation Portable games through an emulator" games-emulation/ppsspp + # TODO: Package SEGA Dreamcast emulator redream + # TODO: Package SEGA Dreamcast emulator reicast + # TODO: Package Rosalie's Mupen GUI + optfeature "playing Sony PlayStation 3 games through an emulator (available in GURU overlay)" games-emulation/rpcs3 + optfeature "playing Adobe Flash Player games through an emulator" app-emulation/ruffle + # TODO: Package Nintendo Switch emulator + optfeature "playing Lucasarts adventure games" games-engines/scummvm + # TODO: Package PowerMacintosh emulator + optfeature "playing Super Nintendo (SNES) games through an emulator" games-emulation/snes9x + # TODO: Package Sinclair ZX Spectrum emulator + optfeature "playing Atari 2600 VCS games through an emulator" games-emulation/stella + # TODO: Package TIC-80 tiny computer + optfeature "playing Commodore games through an emulator" app-emulation/vice + # TODO: Package Atari Jaguar emulator + # TODO: Package Vita3K PS Vita emulator + # TODO: Package runner for HTML5 web games + # TODO: Package Xbox emulator + optfeature "playing Nintendo Switch games through an emulator (available in GURU overlay)" games-emulation/yuzu + optfeature "playing DOOM games" games-engines/uzdoom + + # Quote README.rst + elog + elog "Lutris installations are fully automated through scripts, which can" + elog "be written in either JSON or YAML. The scripting syntax is described" + elog "in ${EROOT}/usr/share/doc/${PF}/installers.rst.bz2, and is also" + elog "available online at lutris.net." +} diff --git a/games-util/lutris/lutris-9999.ebuild b/games-util/lutris/lutris-9999.ebuild new file mode 100644 index 000000000000..32292d7c1e8b --- /dev/null +++ b/games-util/lutris/lutris-9999.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="sqlite,threads(+)" + +inherit meson python-single-r1 optfeature virtualx xdg + +DESCRIPTION="An open source gaming platform for GNU/Linux" +HOMEPAGE="https://lutris.net/" + +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://github.com/lutris/lutris.git" + inherit git-r3 +else + SRC_URI="https://github.com/lutris/lutris/archive/refs/tags/v${PV/_/-}.tar.gz -> ${P}.gh.tar.gz" + S="${WORKDIR}"/${P/_/-} + if [[ ${PV} != *_beta* ]] ; then + KEYWORDS="~amd64 ~x86" + fi +fi + +LICENSE="GPL-3+ CC0-1.0" +SLOT="0" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + app-arch/cabextract + || ( + >=app-arch/7zip-24.09[symlink(+)] + app-arch/p7zip + ) + app-arch/unzip + $(python_gen_cond_dep ' + dev-python/certifi[${PYTHON_USEDEP}] + dev-python/dbus-python[${PYTHON_USEDEP}] + dev-python/distro[${PYTHON_USEDEP}] + dev-python/evdev[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/setproctitle[${PYTHON_USEDEP}] + dev-python/pygobject:3[cairo,${PYTHON_USEDEP}] + dev-python/pypresence[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/protobuf[${PYTHON_USEDEP}] + dev-python/moddb[${PYTHON_USEDEP}] + ') + media-sound/fluid-soundfont + net-libs/webkit-gtk:4.1[introspection] + sys-apps/pciutils + sys-apps/xdg-desktop-portal + x11-apps/mesa-progs + x11-apps/xgamma + x11-apps/xrandr + x11-libs/gtk+:3[introspection] + x11-libs/gdk-pixbuf[jpeg] +" + +BDEPEND=" + test? ( + $(python_gen_cond_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + ') + ) +" + +DOCS=( AUTHORS README.rst docs/installers.rst docs/steam.rst ) + +EPYTEST_IGNORE=( + # Requires a Nvidia GPU and driver + tests/util/graphics/test_drivers.py +) + +src_test() { + meson_src_test + virtx epytest +} + +src_install() { + meson_src_install + python_optimize + python_fix_shebang "${ED}/usr/" #740048 +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "playing various games through Valve's Steam launcher (available in Steam overlay)" games-util/steam-launcher + optfeature "playing games through Valve's micro-compositor" gui-wm/gamescope + optfeature "playing games inside a nested X server" x11-base/xorg-server[xephyr] + optfeature "installing and playing games from Flathub" sys-apps/flatpak + optfeature "playing Microsoft Windows games" virtual/wine + optfeature "playing DirectX based games by translating DirectX to Vulkan" "media-libs/vulkan-loader dev-util/vulkan-tools app-emulation/dxvk virtual/wine" + optfeature "playing Vulkan based games (plus ICD for your hardware)" "media-libs/vulkan-loader dev-util/vulkan-tools" + optfeature "a Vulkan and OpenGL overlay for monitoring system performance (available in GURU overlay)" games-util/mangohud + elog + + optfeature_header "${PN} supports various emulators and compatibility layers. \n${PN} can download and install these by itself, but also supports using system-wide installed versions" + optfeature "playing games through x86 PC emulator" app-emulation/86Box + # TODO: Package Adventure Game Studio runner + optfeature "playing Atari 800 games through an emulator" games-emulation/atari800 + # TODO: Package Basilisk II Mac emulator + # TODO: Package Wii U emulator + optfeature "playing Nintendo 3DS games through an emulator (available in GURU overlay)" games-emulation/citra + # TODO: Package ColecoVision/Coleco Adam emulator + optfeature "playing Nintendo DS games through an emulator" games-emulation/desmume + optfeature "playing Sega Genesis games through an emulator" games-emulation/dgen-sdl + optfeature "playing GameCube and Wii games through an emulator" games-emulation/dolphin + optfeature "playing DOS games through an emulator" games-emulation/dosbox + optfeature "playing RPG Maker 2000/2003 games (available in GURU overlay)" games-engines/easyrpg-player + optfeature "playing Z-code based text games" games-engines/frotz + optfeature "playing Amiga games through an emulator" app-emulation/fs-uae + optfeature "playing Atari ST games through an emulator" games-emulation/hatari + # TODO: Package Intellivision emulator + optfeature "playing games through various emulators" games-emulation/libretro-info + optfeature "playing Arcade games through an emulator" games-emulation/advancemame + optfeature "playing games through various emulators" games-emulation/mednafen + optfeature "playing Nintendo DS games through an emulator" games-emulation/melonds + # TODO: Package mGBA + # TODO: Package MicroM8 Apple II emulator + # TODO: Package Mini vMac emulator + optfeature "playing Nintendo 64 games through an emulator" games-emulation/mupen64plus + # TODO: Package O2Em emulator + # TODO: Package Sega Master System emulator + optfeature "playing IBM PC games through an emulator" app-emulation/pcem + optfeature "playing Sony PlayStation 2 games through an emulator" games-emulation/pcsx2 + optfeature "playing various fantasy games" dev-lang/pico8 + optfeature "playing Sony PlayStation Portable games through an emulator" games-emulation/ppsspp + # TODO: Package SEGA Dreamcast emulator redream + # TODO: Package SEGA Dreamcast emulator reicast + # TODO: Package Rosalie's Mupen GUI + optfeature "playing Sony PlayStation 3 games through an emulator (available in GURU overlay)" games-emulation/rpcs3 + optfeature "playing Adobe Flash Player games through an emulator" app-emulation/ruffle + # TODO: Package Nintendo Switch emulator + optfeature "playing Lucasarts adventure games" games-engines/scummvm + # TODO: Package PowerMacintosh emulator + optfeature "playing Super Nintendo (SNES) games through an emulator" games-emulation/snes9x + # TODO: Package Sinclair ZX Spectrum emulator + optfeature "playing Atari 2600 VCS games through an emulator" games-emulation/stella + # TODO: Package TIC-80 tiny computer + optfeature "playing Commodore games through an emulator" app-emulation/vice + # TODO: Package Atari Jaguar emulator + # TODO: Package Vita3K PS Vita emulator + # TODO: Package runner for HTML5 web games + # TODO: Package Xbox emulator + optfeature "playing Nintendo Switch games through an emulator (available in GURU overlay)" games-emulation/yuzu + optfeature "playing DOOM games" games-engines/uzdoom + + # Quote README.rst + elog + elog "Lutris installations are fully automated through scripts, which can" + elog "be written in either JSON or YAML. The scripting syntax is described" + elog "in ${EROOT}/usr/share/doc/${PF}/installers.rst.bz2, and is also" + elog "available online at lutris.net." +} diff --git a/games-util/lutris/metadata.xml b/games-util/lutris/metadata.xml new file mode 100644 index 000000000000..f1718f22d0b1 --- /dev/null +++ b/games-util/lutris/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>nowa@gentoo.org</email> + <name>Nowa Ammerlaan</name> + </maintainer> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <longdescription lang="en"> + Lutris is a gaming platform for GNU/Linux. Its goal is to make + gaming on Linux as easy as possible by taking care of installing + and setting up the game for the user. The only thing you have to + do is play the game. It aims to support every game that is playable + on Linux. + </longdescription> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/mcrcon/Manifest b/games-util/mcrcon/Manifest new file mode 100644 index 000000000000..06a1d53e25f5 --- /dev/null +++ b/games-util/mcrcon/Manifest @@ -0,0 +1,2 @@ +DIST mcrcon-0.7.1.tar.gz 9796 BLAKE2B 4de98574783f995b5161944dac3a817313618019f1711832d266f038ce7a56a2e3d6da2556dbcd36870dd81de74f9886db84af81d9e6c25d70155f61c4a7f191 SHA512 372314e007d50e758203911c25df7c07d317ea6a7e469e24f603eae67ec5ef1e313c997481f4d90395d25d4d99ddc126a6e5745b2044903b2f21271aa7c39eb2 +DIST mcrcon-0.7.2.tar.gz 9997 BLAKE2B 3dabd5c1951bd4427486a7a0c438730d61e9ebf006de77225b17153964728d671821e60ddb9d0a3d53952c4331e4d4807cb9b96009c37427eb4bc1f684664f3e SHA512 584487bd6d3d2d0ddd0065187c5cadf7c1cf80c8234acb55f218eab6a54c10a7e99adf0ca643894f3664d51233cd04745fb13c4ee02964ef735c034b01f2ee89 diff --git a/games-util/mcrcon/mcrcon-0.7.1.ebuild b/games-util/mcrcon/mcrcon-0.7.1.ebuild new file mode 100644 index 000000000000..d840cef90470 --- /dev/null +++ b/games-util/mcrcon/mcrcon-0.7.1.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +DESCRIPTION="Remote connection client for Minecraft servers" +HOMEPAGE="https://github.com/Tiiffi/mcrcon" +SRC_URI="https://github.com/Tiiffi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="~amd64 ~arm" + +src_compile() { + emake \ + CC="$(tc-getCC)" \ + CFLAGS="${CFLAGS} ${LDFLAGS} -std=gnu99 -Wall -Wextra -Wpedantic" +} + +src_install() { + emake install PREFIX="${ED}/usr" +} diff --git a/games-util/mcrcon/mcrcon-0.7.2.ebuild b/games-util/mcrcon/mcrcon-0.7.2.ebuild new file mode 100644 index 000000000000..80b64e933516 --- /dev/null +++ b/games-util/mcrcon/mcrcon-0.7.2.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="Remote connection client for Minecraft servers" +HOMEPAGE="https://github.com/Tiiffi/mcrcon" +SRC_URI="https://github.com/Tiiffi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="~amd64 ~arm" + +src_compile() { + emake \ + CC="$(tc-getCC)" \ + CFLAGS="${CFLAGS} ${LDFLAGS} -std=gnu99 -Wall -Wextra -Wpedantic" +} + +src_install() { + emake install PREFIX="${ED}/usr" +} diff --git a/games-util/mcrcon/metadata.xml b/games-util/mcrcon/metadata.xml new file mode 100644 index 000000000000..3f0cf63ad5fe --- /dev/null +++ b/games-util/mcrcon/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>chewi@gentoo.org</email> + <name>James Le Cuirot</name> + </maintainer> + <longdescription>mcrcon is an IPv6 compliant Minecraft rcon client with Bukkit coloring support. It is well suited for remote administration and to be used as part of automated server maintenance scripts. Does not trigger the "IO: Broken pipe" or "IO: Connection reset" spam bug on the server side.</longdescription> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/nml/Manifest b/games-util/nml/Manifest new file mode 100644 index 000000000000..bc8ac35aad72 --- /dev/null +++ b/games-util/nml/Manifest @@ -0,0 +1 @@ +DIST nml-0.7.5.tar.gz 578976 BLAKE2B 630afc4b532a76ff7dea84b231636cbf8fa50197e43c11eaa1fdaa80b2acadb61d35dc07119f57417d7cdae88d39d516f52bac49aa56fa3177e287ab11bd07b2 SHA512 6c92ce5124e2c4bc641ff8c14a2e88e2576ef06dccce8fb5ffee1b1dbcee2b9640fa51410bfb7aa6b800b00274020b38161617aa41712d4d358612493ea8fe26 diff --git a/games-util/nml/files/nml-0.7.5-regex-py313.patch b/games-util/nml/files/nml-0.7.5-regex-py313.patch new file mode 100644 index 000000000000..bef0c1002e21 --- /dev/null +++ b/games-util/nml/files/nml-0.7.5-regex-py313.patch @@ -0,0 +1,20 @@ +https://github.com/OpenTTD/nml/issues/340 +https://github.com/OpenTTD/nml/pull/341 + +From 0bebfe612d489a20fa5a71b06963ea3ee80379d0 Mon Sep 17 00:00:00 2001 +From: glx22 <glx@openttd.org> +Date: Sat, 5 Oct 2024 01:00:32 +0200 +Subject: [PATCH] Fix #340: Always use raw strings for token regex + +--- a/nml/tokens.py ++++ b/nml/tokens.py +@@ -195,7 +195,7 @@ def t_ignore_comment(self, t): + self.increment_lines(t.value.count("\n")) + + def t_ignore_whitespace(self, t): +- "[ \t\r]+" ++ r"[ \t\r]+" + pass + + def t_line_directive1(self, t): + diff --git a/games-util/nml/metadata.xml b/games-util/nml/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/nml/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/nml/nml-0.7.5.ebuild b/games-util/nml/nml-0.7.5.ebuild new file mode 100644 index 000000000000..2fea2fb6adef --- /dev/null +++ b/games-util/nml/nml-0.7.5.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_SINGLE_IMPL=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) +inherit distutils-r1 + +DESCRIPTION="Compiler of NML files into GRF/NFO files" +HOMEPAGE="https://github.com/OpenTTD/nml/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/OpenTTD/nml" + inherit git-r3 +else + SRC_URI="https://github.com/OpenTTD/nml/releases/download/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~x86" +fi + +LICENSE="GPL-2+" +SLOT="0" + +RDEPEND=" + $(python_gen_cond_dep ' + dev-python/pillow[${PYTHON_USEDEP},zlib] + dev-python/ply[${PYTHON_USEDEP}] + ') +" + +PATCHES=( + "${FILESDIR}"/${PN}-0.7.5-regex-py313.patch +) + +src_prepare() { + default +} + +python_test() { + # the tests involving sprites seem to fail when running in the ebuild, + # unless --no-cache is passed. + emake regression NML_FLAGS='-s -c --verbosity=1 --no-cache' +} + +src_install() { + local DOCS=( README.md docs/changelog.txt ) + distutils-r1_src_install + + doman docs/nmlc.1 +} diff --git a/games-util/nml/nml-9999.ebuild b/games-util/nml/nml-9999.ebuild new file mode 100644 index 000000000000..f2d3baddb0bd --- /dev/null +++ b/games-util/nml/nml-9999.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_SINGLE_IMPL=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) +inherit distutils-r1 + +DESCRIPTION="Compiler of NML files into GRF/NFO files" +HOMEPAGE="https://github.com/OpenTTD/nml/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/OpenTTD/nml" + inherit git-r3 +else + SRC_URI="https://github.com/OpenTTD/nml/releases/download/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~x86" +fi + +LICENSE="GPL-2+" +SLOT="0" + +RDEPEND=" + $(python_gen_cond_dep ' + dev-python/pillow[${PYTHON_USEDEP},zlib] + dev-python/ply[${PYTHON_USEDEP}] + ') +" + +python_test() { + # the tests involving sprites seem to fail when running in the ebuild, + # unless --no-cache is passed. + emake regression NML_FLAGS='-s -c --verbosity=1 --no-cache' +} + +src_install() { + local DOCS=( README.md docs/changelog.txt ) + distutils-r1_src_install + + doman docs/nmlc.1 +} diff --git a/games-util/qstat/Manifest b/games-util/qstat/Manifest new file mode 100644 index 000000000000..02338ff54a78 --- /dev/null +++ b/games-util/qstat/Manifest @@ -0,0 +1,2 @@ +DIST qstat-2.14.tar.gz 210440 BLAKE2B 2a33287a69fe63c59a1cb136e84ea29cccd27f4468cb4b38b4e9ce49f28a558dc67793eaa7ead7addd828730e084a15f9684ccba7753852ce1c2795c7c94cb78 SHA512 f2054d74399fe1773a19ca43629e10364fdd87e551459719685c11f38245a05906631b456848b1a3764b4e6843baf654af6a9b174c7b16908b6bcb97ac64c6d6 +DIST qstat-2.17.tar.gz 233981 BLAKE2B e66aad52931443183ad91b19d5ed775c78babb0a5bd679c57fdf4c0ef604aab4e071bd16f97d151b84eb0b9b9814da271342a3494ec4123c5cf0ca10a8786341 SHA512 880549d220a9a9046910bc2e5564b09349870110c77249b66d2ca77143327c83473da31c00e7b70df45f48e6a5bcb3310487f73983d745a69e6aa6278a125278 diff --git a/games-util/qstat/files/qstat-2.14-gcc-10.patch b/games-util/qstat/files/qstat-2.14-gcc-10.patch new file mode 100644 index 000000000000..9900ccdbaa85 --- /dev/null +++ b/games-util/qstat/files/qstat-2.14-gcc-10.patch @@ -0,0 +1,43 @@ +From: Sergei Trofimovich <slyfox@gentoo.org> +Date: Sun, 26 Jan 2020 11:15:10 +0000 +Subject: [PATCH] qstat: fix build failure against gcc-10 + +On gcc-10 (and gcc-9 -fno-common) build fails as: + +``` +gcc ... -o qstat ... +ld: config.o:qstat/display_json.h:24: + multiple definition of `json_printed'; xform.o:qstat/display_json.h:24: first defined here +ld: config.o:qstat/display_json.h:23: + multiple definition of `json_encoding'; xform.o:qstat/display_json.h:23: first defined here +``` + +gcc-10 will change the default from -fcommon to fno-common: +https://gcc.gnu.org/PR85678. + +The error also happens if CFLAGS=-fno-common passed explicitly. + +Reported-by: Toralf Förster +Bug: https://bugs.gentoo.org/706390 +Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> +--- a/debug.c ++++ b/debug.c +@@ -114,6 +114,7 @@ static void _dump_packet(const char* tag, const char* buf, int buflen) + close(fd); + } + ++int do_dump = 0; + ssize_t send_dump(int s, const void *buf, size_t len, int flags) + { + if(do_dump) +--- a/debug.h ++++ b/debug.h +@@ -47,7 +47,7 @@ void dump_packet(const char* buf, int buflen); + #endif + #include <sys/types.h> + #include <sys/stat.h> +-int do_dump; ++extern int do_dump; + ssize_t send_dump(int s, const void *buf, size_t len, int flags); + #ifndef QSTAT_DEBUG_C + #define send(s, buf, len, flags) send_dump(s, buf, len, flags) diff --git a/games-util/qstat/files/qstat-2.14-unneeded-cast.patch b/games-util/qstat/files/qstat-2.14-unneeded-cast.patch new file mode 100644 index 000000000000..c1bf19b502c5 --- /dev/null +++ b/games-util/qstat/files/qstat-2.14-unneeded-cast.patch @@ -0,0 +1,14 @@ +packet_funcs are already have correct type, no need to cast function pointer to wrong +function pointer +https://bugs.gentoo.org/944360 +--- a/packet_manip.c ++++ b/packet_manip.c +@@ -131,7 +131,7 @@ + } + // Call the server's packet processing method flagging as a combine call + server->combined = 1; +- ret = ((int (*)())server->type->packet_func)(server, combined, datalen); ++ ret = (server->type->packet_func)(server, combined, datalen); + free(combined); + server->combined = 0; + diff --git a/games-util/qstat/metadata.xml b/games-util/qstat/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/qstat/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/qstat/qstat-2.14-r1.ebuild b/games-util/qstat/qstat-2.14-r1.ebuild new file mode 100644 index 000000000000..f3531042e8bc --- /dev/null +++ b/games-util/qstat/qstat-2.14-r1.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Server statics collector supporting many FPS games" +HOMEPAGE="https://github.com/Unity-Technologies/qstat" +SRC_URI="https://github.com/Unity-Technologies/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Artistic" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc64 x86" +IUSE="debug" + +RDEPEND="!sys-cluster/torque" + +DOCS=( CHANGES.txt COMPILE.txt template/README.txt ) + +PATCHES=( + "${FILESDIR}"/"${P}"-gcc-10.patch +) + +QA_CONFIG_IMPL_DECL_SKIP=( + strnstr #bug #899024, there's fallback implementation +) + +src_prepare() { + default + eautoreconf + + # bug #530952 + sed -i -e 's/strndup/l_strndup/g' qstat.c || die +} + +src_configure() { + econf $(use_enable debug) +} + +src_install() { + default + dosym qstat /usr/bin/quakestat + + docinto html + dodoc template/*.html qstatdoc.html +} diff --git a/games-util/qstat/qstat-2.17.ebuild b/games-util/qstat/qstat-2.17.ebuild new file mode 100644 index 000000000000..c38e3fbc6a1d --- /dev/null +++ b/games-util/qstat/qstat-2.17.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Server statics collector supporting many FPS games" +HOMEPAGE="https://github.com/Unity-Technologies/qstat" +SRC_URI="https://github.com/Unity-Technologies/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Artistic" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc64 ~riscv x86" +IUSE="debug" + +RDEPEND="!sys-cluster/torque" + +DOCS=( CHANGES.txt COMPILE.md template/README.txt ) + +PATCHES=( "${FILESDIR}/${PN}-2.14-unneeded-cast.patch" ) + +QA_CONFIG_IMPL_DECL_SKIP=( + strnstr # bug #899024, there's fallback implementation +) + +src_prepare() { + default + local -x QSTAT_VERSION="${PV}" + eautoreconf +} + +src_configure() { + econf $(use_enable debug) +} + +src_install() { + default + dosym qstat /usr/bin/quakestat + + docinto html + dodoc template/*.html qstatdoc.html +} diff --git a/games-util/sc-controller/Manifest b/games-util/sc-controller/Manifest new file mode 100644 index 000000000000..be2398b67408 --- /dev/null +++ b/games-util/sc-controller/Manifest @@ -0,0 +1 @@ +DIST sc-controller-0.5.0.tar.gz 1816791 BLAKE2B b96c5f7b63c5a27e283ff52f2b6fac2f89d2e55f7d9d252e864730aef9b071b9d6f8a3549a2cdda265beb759bbe375fec4b930944392cff9e804e3eb2d1baa65 SHA512 e857862427434514f08cd5d3aec303b026688d6c5a94cc654fc25a423dab705f7284216d270a07a549d1dc67ffe6d14873eb6fd028f91fd071369e9900911a2b diff --git a/games-util/sc-controller/files/sc-controller-0.5.0-tomllib.patch b/games-util/sc-controller/files/sc-controller-0.5.0-tomllib.patch new file mode 100644 index 000000000000..d6724b9c7b9e --- /dev/null +++ b/games-util/sc-controller/files/sc-controller-0.5.0-tomllib.patch @@ -0,0 +1,35 @@ +From 10d0e99164eb699d13df3c183a1600a6a955c6d3 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@aura-online.co.uk> +Date: Sun, 9 Mar 2025 19:27:50 +0000 +Subject: [PATCH] Use built-in tomllib rather than toml (#71) + +The toml library has been unmaintained for years and is no longer packaged by some distributions. +--- + tests/test_setup.py | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/tests/test_setup.py b/tests/test_setup.py +index eaae0166..7593b727 100644 +--- a/tests/test_setup.py ++++ b/tests/test_setup.py +@@ -1,6 +1,6 @@ + import pkgutil + +-import toml ++import tomllib + + import scc + +@@ -19,7 +19,8 @@ class TestSetup: + pass + + # Load the packages from pyproject.toml +- pyproject = toml.load("pyproject.toml") ++ with open("pyproject.toml", "rb") as file: ++ pyproject = tomllib.load(file) + packages = pyproject["tool"]["setuptools"]["packages"] + + for importer, modname, ispkg in pkgutil.walk_packages(path=scc.__path__, prefix="scc.", onerror=lambda x: None): +-- +2.48.1 + diff --git a/games-util/sc-controller/metadata.xml b/games-util/sc-controller/metadata.xml new file mode 100644 index 000000000000..e8b3964c43d9 --- /dev/null +++ b/games-util/sc-controller/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <use> + <flag name="trayicon">Enable system tray icon</flag> + </use> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/sc-controller/sc-controller-0.5.0-r1.ebuild b/games-util/sc-controller/sc-controller-0.5.0-r1.ebuild new file mode 100644 index 000000000000..33908b7710c2 --- /dev/null +++ b/games-util/sc-controller/sc-controller-0.5.0-r1.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_SINGLE_IMPL=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) +inherit distutils-r1 linux-info xdg + +DESCRIPTION="User-mode driver and GTK-based GUI for Steam Controllers and others" +HOMEPAGE="https://github.com/C0rn3j/sc-controller/" +SRC_URI="https://github.com/C0rn3j/sc-controller/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2 CC-BY-3.0 CC0-1.0 MIT PSF-2 ZLIB" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="+trayicon +udev wayland" + +RDEPEND=" + $(python_gen_cond_dep ' + dev-python/evdev[${PYTHON_USEDEP}] + dev-python/ioctl-opt[${PYTHON_USEDEP}] + dev-python/libusb1[${PYTHON_USEDEP}] + dev-python/pygobject[${PYTHON_USEDEP},cairo] + dev-python/pylibacl[${PYTHON_USEDEP}] + dev-python/vdf[${PYTHON_USEDEP}] + ') + gnome-base/librsvg[introspection] + virtual/libusb + x11-libs/gtk+:3[introspection] + trayicon? ( dev-libs/libayatana-appindicator ) + udev? ( games-util/game-device-udev-rules ) + wayland? ( gui-libs/gtk-layer-shell[introspection(+)] ) +" + +BDEPEND=" + $(python_gen_cond_dep ' + dev-python/setuptools-scm[${PYTHON_USEDEP}] + ') +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +PATCHES=( + "${FILESDIR}"/${P}-tomllib.patch +) + +pkg_setup() { + local CONFIG_CHECK="~INPUT_UINPUT" + + linux-info_pkg_setup + python-single-r1_pkg_setup +} + +src_compile() { + export SETUPTOOLS_SCM_PRETEND_VERSION_FOR_SCCONTROLLER=${PV} + distutils-r1_src_compile +} + +src_install() { + distutils-r1_src_install + rm -r "${ED}"/usr/lib/udev/ || die +} diff --git a/games-util/slade/Manifest b/games-util/slade/Manifest new file mode 100644 index 000000000000..fb783a0b36fa --- /dev/null +++ b/games-util/slade/Manifest @@ -0,0 +1,2 @@ +DIST slade-3.2.6.tar.gz 7027328 BLAKE2B ba0db4926f5706166ec2439cbb539a9d5330e2d3ea3dbd8e29b586cf57a23b7b254823d84b7ba79b604a86ed0e5753b4e7c4fcf825ba7d3217c52824f36c5be4 SHA512 d09631b24c83769482480c24dfc1f6992ae293bdfe4c8661d967d6ac0fcbba6f0e1bf58c58afc84a82fb5f900d9e0e99413800a42edc353a4f7f1f52781db54f +DIST slade-3.2.7.tar.gz 6419781 BLAKE2B 484e70406a5185166ea6b73d68565d9bb43e7558e6269abe4710e3f1437b8421383a5f40e136dd86ca84f0bb2fa38d61fd6e3e8925db293b436ba044ad88418c SHA512 026bba57a85a64e695d1c96344726f5f82cd89e5e403c686e72a569d9272383347190b6804fa4623b5836967db0541b80e418457df1614c76da466bbc8c61b5e diff --git a/games-util/slade/files/slade-3.2.0_beta2-fluidsynth-driver.patch b/games-util/slade/files/slade-3.2.0_beta2-fluidsynth-driver.patch new file mode 100644 index 000000000000..bd828d81b390 --- /dev/null +++ b/games-util/slade/files/slade-3.2.0_beta2-fluidsynth-driver.patch @@ -0,0 +1,27 @@ +From dc0057d1200f9bb6b67f1b1a2094b7e402d1d370 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Sat, 20 Feb 2021 12:28:48 +0000 +Subject: [PATCH] Don't force FluidSynth to use ALSA on Linux + +--- + src/Audio/MIDIPlayer.cpp | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/src/Audio/MIDIPlayer.cpp b/src/Audio/MIDIPlayer.cpp +index bb001339..f33ffe67 100644 +--- a/src/Audio/MIDIPlayer.cpp ++++ b/src/Audio/MIDIPlayer.cpp +@@ -344,10 +344,6 @@ public: + fs_initialised_ = false; + file_ = ""; + +- // Set fluidsynth driver to alsa in linux (no idea why it defaults to jack) +- if (app::platform() == app::Platform::Linux && fs_driver.value.empty()) +- fs_driver = "alsa"; +- + // Init soundfont path + if (fs_soundfont_path.value.empty()) + { +-- +2.30.0 + diff --git a/games-util/slade/files/slade-3.2.2-wayland.patch b/games-util/slade/files/slade-3.2.2-wayland.patch new file mode 100644 index 000000000000..4207ceb2076d --- /dev/null +++ b/games-util/slade/files/slade-3.2.2-wayland.patch @@ -0,0 +1,25 @@ +SFML's render window only supports X11 under Linux, so SLADE crashes if GDK +chooses the Wayland backend. This patch tells GDK to prefer the X11 backend. +SLADE 3.3.0 will apparently not use the render window. + +diff --git a/src/Application/SLADEWxApp.cpp b/src/Application/SLADEWxApp.cpp +index 3dadf241..de01e340 100644 +--- a/src/Application/SLADEWxApp.cpp ++++ b/src/Application/SLADEWxApp.cpp +@@ -52,6 +52,16 @@ + using namespace slade; + + ++#ifdef __WXGTK__ ++#include <gdk/gdk.h> ++ ++struct PreferX11 { ++ PreferX11() { gdk_set_allowed_backends("x11,*"); } ++}; ++static PreferX11 preferx11; ++#endif ++ ++ + // ----------------------------------------------------------------------------- + // + // Variables diff --git a/games-util/slade/files/slade-3.2.6-fix-sol.patch b/games-util/slade/files/slade-3.2.6-fix-sol.patch new file mode 100644 index 000000000000..d0aa3b993f7d --- /dev/null +++ b/games-util/slade/files/slade-3.2.6-fix-sol.patch @@ -0,0 +1,14 @@ +diff --git a/thirdparty/sol/sol.hpp b/thirdparty/sol/sol.hpp +index 3ff9ad1c..eb73973b 100644 +--- a/thirdparty/sol/sol.hpp ++++ b/thirdparty/sol/sol.hpp +@@ -5968,7 +5968,8 @@ namespace sol { + static_assert(std::is_constructible<T, Args&&...>::value, "T must be constructible with Args"); + + *this = nullopt; +- this->construct(std::forward<Args>(args)...); ++ new (static_cast<void*>(this)) optional(std::in_place, std::forward<Args>(args)...); ++ return **this; + } + + /// Swaps this optional with the other. diff --git a/games-util/slade/files/slade-3.2.7-pkg-config.patch b/games-util/slade/files/slade-3.2.7-pkg-config.patch new file mode 100644 index 000000000000..b421c3c68028 --- /dev/null +++ b/games-util/slade/files/slade-3.2.7-pkg-config.patch @@ -0,0 +1,25 @@ +From 49e5aa0b0a4481a335936b623b7725a1bc8863d1 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Wed, 30 Apr 2025 23:28:59 +0100 +Subject: [PATCH] Fix CMake USE_SYSTEM_DUMB option + +This stopped working since pkg-config stopped being used elsewhere. +--- + thirdparty/CMakeLists.txt | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt +index 56506035..67c3dab5 100644 +--- a/thirdparty/CMakeLists.txt ++++ b/thirdparty/CMakeLists.txt +@@ -8,6 +8,7 @@ set(BZIP2_LIBRARIES ${BZIP2_LIBRARIES} PARENT_SCOPE) + + option(USE_SYSTEM_DUMB "Use system DUMB library" OFF) + if(USE_SYSTEM_DUMB) ++ find_package(PkgConfig REQUIRED) + pkg_check_modules(DUMB REQUIRED IMPORTED_TARGET dumb>=1.0) + else() + file(GLOB_RECURSE DUMB_SOURCES dumb/*.c) +-- +2.49.0 + diff --git a/games-util/slade/files/slade-3.2.7-wayland.patch b/games-util/slade/files/slade-3.2.7-wayland.patch new file mode 100644 index 000000000000..2fc47e414fb7 --- /dev/null +++ b/games-util/slade/files/slade-3.2.7-wayland.patch @@ -0,0 +1,41 @@ +SFML's render window only supports X11 under Linux, so SLADE crashes if GDK +chooses the Wayland backend. This patch tells GDK to prefer the X11 backend. +SLADE 3.3.0 will apparently not use the render window. + +diff --git a/src/Application/SLADEWxApp.cpp b/src/Application/SLADEWxApp.cpp +index 3dadf241..de01e340 100644 +--- a/src/Application/SLADEWxApp.cpp ++++ b/src/Application/SLADEWxApp.cpp +@@ -52,6 +52,16 @@ + using namespace slade; + + ++#ifdef __WXGTK__ ++#include <gdk/gdk.h> ++ ++struct PreferX11 { ++ PreferX11() { gdk_set_allowed_backends("x11,*"); } ++}; ++static PreferX11 preferx11; ++#endif ++ ++ + // ----------------------------------------------------------------------------- + // + // Variables +diff --git a/cmake/unix.cmake b/cmake/unix.cmake +index a5d62c0d..18059156 100644 +--- a/cmake/unix.cmake ++++ b/cmake/unix.cmake +@@ -158,7 +158,11 @@ add_executable(slade WIN32 MACOSX_BUNDLE + ${SLADE_HEADERS} + ) + ++find_package(PkgConfig REQUIRED) ++pkg_check_modules(GDK REQUIRED IMPORTED_TARGET gdk-3.0) ++ + target_link_libraries(slade ++ PkgConfig::GDK + ${ZLIB_LIBRARY} + ${BZIP2_LIBRARIES} + ${EXTERNAL_LIBRARIES} diff --git a/games-util/slade/metadata.xml b/games-util/slade/metadata.xml new file mode 100644 index 000000000000..75bfe96665b6 --- /dev/null +++ b/games-util/slade/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <use> + <flag name="fluidsynth">Enable MIDI software synthesis using <pkg>media-sound/fluidsynth</pkg> + </flag> + </use> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/slade/slade-3.2.6-r1.ebuild b/games-util/slade/slade-3.2.6-r1.ebuild new file mode 100644 index 000000000000..2cf0c331c4da --- /dev/null +++ b/games-util/slade/slade-3.2.6-r1.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{1,3,4} luajit ) +WX_GTK_VER="3.2-gtk3" + +inherit cmake lua-single wxwidgets xdg + +MY_PV="${PV/beta/b}" + +DESCRIPTION="Modern editor for Doom-engine based games and source ports" +HOMEPAGE="https://slade.mancubus.net/" +SRC_URI="https://github.com/sirjuddington/${PN^^}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN^^}-${MY_PV}" + +LICENSE="GPL-2 MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="fluidsynth timidity webkit" +REQUIRED_USE="${LUA_REQUIRED_USE}" + +# <libfmt-11 https://github.com/sirjuddington/SLADE/issues/1746 +DEPEND=" + ${LUA_DEPS} + app-arch/bzip2:= + <dev-libs/libfmt-11:= + >=media-libs/dumb-2:= + media-libs/freeimage[jpeg,png,tiff] + media-libs/glew:0= + media-libs/libsfml:= + media-sound/mpg123 + net-misc/curl + virtual/zlib:= + x11-libs/wxGTK:${WX_GTK_VER}=[curl(+),opengl,webkit?,X] + fluidsynth? ( media-sound/fluidsynth:= ) +" + +RDEPEND=" + ${DEPEND} + timidity? ( media-sound/timidity++ ) +" + +BDEPEND=" + app-arch/p7zip + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-3.2.0_beta2-fluidsynth-driver.patch + "${FILESDIR}"/${PN}-3.2.2-wayland.patch + "${FILESDIR}"/${PN}-3.2.6-fix-sol.patch +) + +src_prepare() { + cmake_src_prepare + + # Delete bundled libraries just in case. + rm -r thirdparty/dumb/ thirdparty/fmt/ || die + +} + +src_configure() { + local luav=$(lua_get_version) + + local mycmakeargs=( + -DLua_FIND_VERSION_MAJOR=$(ver_cut 1 "${luav}") + -DLua_FIND_VERSION_MINOR=$(ver_cut 2 "${luav}") + -DLua_FIND_VERSION_COUNT=2 + -DLua_FIND_VERSION_EXACT=ON + -DNO_COTIRE=ON + -DNO_FLUIDSYNTH=$(usex fluidsynth OFF ON) + -DNO_WEBVIEW=$(usex webkit OFF ON) + -DUSE_SFML_RENDERWINDOW=ON + -DUSE_SYSTEM_DUMB=ON + -DUSE_SYSTEM_FMT=ON + -DWX_GTK3=ON + ) + + setup-wxwidgets + cmake_src_configure +} diff --git a/games-util/slade/slade-3.2.7-r1.ebuild b/games-util/slade/slade-3.2.7-r1.ebuild new file mode 100644 index 000000000000..089081b9ac3b --- /dev/null +++ b/games-util/slade/slade-3.2.7-r1.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{1,3,4} luajit ) +WX_GTK_VER="3.2-gtk3" + +inherit cmake lua-single wxwidgets xdg + +MY_PV="${PV/beta/b}" + +DESCRIPTION="Modern editor for Doom-engine based games and source ports" +HOMEPAGE="https://slade.mancubus.net/" +SRC_URI="https://github.com/sirjuddington/${PN^^}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN^^}-${MY_PV}" + +LICENSE="GPL-2 MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="fluidsynth timidity webkit" +REQUIRED_USE="${LUA_REQUIRED_USE}" + +DEPEND=" + ${LUA_DEPS} + app-arch/bzip2:= + dev-libs/libfmt:= + >=media-libs/dumb-2:= + media-libs/freeimage[jpeg,png,tiff] + media-libs/freetype:2 + media-libs/ftgl + media-libs/libsfml:= + media-sound/mpg123 + virtual/zlib:= + x11-libs/wxGTK:${WX_GTK_VER}=[curl(+),opengl,webkit?,X] + virtual/glu + fluidsynth? ( media-sound/fluidsynth:= ) +" + +RDEPEND=" + ${DEPEND} + timidity? ( media-sound/timidity++ ) +" + +BDEPEND=" + virtual/pkgconfig + || ( + app-arch/zip + app-arch/p7zip + app-arch/7zip + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-3.2.0_beta2-fluidsynth-driver.patch + "${FILESDIR}"/${PN}-3.2.7-wayland.patch + "${FILESDIR}"/${PN}-3.2.7-pkg-config.patch +) + +src_prepare() { + cmake_src_prepare + + # Delete bundled libraries just in case. + rm -r thirdparty/dumb/ thirdparty/fmt/ || die + +} + +src_configure() { + local luav=$(lua_get_version) + + local mycmakeargs=( + -DLua_FIND_VERSION_MAJOR=$(ver_cut 1 "${luav}") + -DLua_FIND_VERSION_MINOR=$(ver_cut 2 "${luav}") + -DLua_FIND_VERSION_COUNT=2 + -DLua_FIND_VERSION_EXACT=ON + -DNO_FLUIDSYNTH=$(usex fluidsynth OFF ON) + -DNO_WEBVIEW=$(usex webkit OFF ON) + -DUSE_SYSTEM_DUMB=ON + -DUSE_SYSTEM_FMT=ON + -DWX_GTK3=ON + -DZIPTOOL_7Z_EXECUTABLE=$(type -P 7z 7zz | head -n1) + ) + + setup-wxwidgets + cmake_src_configure +} diff --git a/games-util/ucon64/Manifest b/games-util/ucon64/Manifest new file mode 100644 index 000000000000..d31bb6ad971d --- /dev/null +++ b/games-util/ucon64/Manifest @@ -0,0 +1 @@ +DIST ucon64-2.2.2-src.tar.gz 1481087 BLAKE2B 3ae3d09f4ea186d4e64d712bf0e3036ca79b7e87ba9a9b165fdcee2f0e24ac1dd00a5da9653a404850e8bc1f85cd6b26e0d03615e60090709d9b792c3db07e8e SHA512 21e403e6de64c0a76de32032fbafea75f53a96b88b343220cdc8d62ef3bdec252764cacb9bbf98a910477ba451bc05aee8c9f91024b9e5d3149f7ead20d426b5 diff --git a/games-util/ucon64/files/ucon64-2.2.2-respect-flags.patch b/games-util/ucon64/files/ucon64-2.2.2-respect-flags.patch new file mode 100644 index 000000000000..9e772fe6c76a --- /dev/null +++ b/games-util/ucon64/files/ucon64-2.2.2-respect-flags.patch @@ -0,0 +1,29 @@ +--- a/Makefile ++++ b/Makefile +@@ -13,3 +13,3 @@ + +-CFLAGS+=-I. -Wall -W -Wno-implicit-fallthrough -O3 -fsigned-char ++CFLAGS+=-I. -Wall -W -Wno-implicit-fallthrough -fsigned-char + ifneq ($(findstring clang,$(CC)),clang) +@@ -21,3 +21,2 @@ + # ld: warning: option -s is obsolete and being ignored +-LDFLAGS+=-s + endif +--- a/backup/libcd64/Makefile ++++ b/backup/libcd64/Makefile +@@ -1,3 +1,2 @@ + ifeq ($(CC),cc) +-CC=gcc + endif +@@ -12,5 +11,3 @@ + else +-CFLAGS+=-O3 -funroll-loops + ifneq ($(findstring clang,$(CC)),clang) +-CFLAGS+=-fexpensive-optimizations + endif +--- a/libdiscmage/Makefile.in ++++ b/libdiscmage/Makefile.in +@@ -37,3 +37,2 @@ + # /usr/bin/libtool: -static not specified, -s invalid +-LDFLAGS+=-s + endif diff --git a/games-util/ucon64/metadata.xml b/games-util/ucon64/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/ucon64/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/ucon64/ucon64-2.2.2.ebuild b/games-util/ucon64/ucon64-2.2.2.ebuild new file mode 100644 index 000000000000..a7bd5584d6af --- /dev/null +++ b/games-util/ucon64/ucon64-2.2.2.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="The backup tool and wonderful emulator's Swiss Army knife program" +HOMEPAGE="https://ucon64.sourceforge.net/" +SRC_URI="https://downloads.sourceforge.net/ucon64/${P}-src.tar.gz" +S="${WORKDIR}/${P}-src/src" + +LICENSE="GPL-2+ LGPL-2.1+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug usb zlib" + +RDEPEND=" + usb? ( virtual/libusb:0 ) + zlib? ( virtual/zlib:= )" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-respect-flags.patch +) + +src_prepare() { + default + + sed "/discmage.so/s|.* \"|\"${EPREFIX}/usr/$(get_libdir)/${PN}/|" \ + -i ucon64_misc.c || die +} + +src_configure() { + local econfargs=( + $(use_enable debug) + $(use_with usb libusb) + $(use_with zlib) + --enable-ppdev + --with-libcd64 + --with-libdiscmage + ) + econf "${econfargs[@]}" + + tc-export AR CC LD +} + +src_install() { + dobin ucon64 + + exeinto /usr/$(get_libdir)/${PN} + doexe libdiscmage/discmage.so + + docinto html + dodoc -r ../images ../{changes,developers,faq,hardware,readme}.html +} + +pkg_postinst() { + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog "Be sure to check ~/.ucon64rc for some options after" + elog "you've run uCON64 for the first time." + fi +} diff --git a/games-util/umodpack/Manifest b/games-util/umodpack/Manifest new file mode 100644 index 000000000000..065f47cd4961 --- /dev/null +++ b/games-util/umodpack/Manifest @@ -0,0 +1 @@ +DIST umodpack-0.5b16-allinone.tar.gz 3605080 BLAKE2B 718208835f318c85305f266a23f9fa5c2966031924d4d4e3a5cdee649afaee64ed5ac753e630ef6783a49581b932a44d8b0dafa3e97603eb1706190f3c7e10d5 SHA512 3678507c7aec30043f50f5519935e2d5eb7471b5e0692ba8b27c506bdd7a067fdb055e6731a6bffb04bb3008020c889f3486624a1466a77e0eab3e5139003ff0 diff --git a/games-util/umodpack/files/umodpack-fixes.patch b/games-util/umodpack/files/umodpack-fixes.patch new file mode 100644 index 000000000000..13bcad6c9ea9 --- /dev/null +++ b/games-util/umodpack/files/umodpack-fixes.patch @@ -0,0 +1,138 @@ +diff -Naur a/Config-Ini-1.06/test.pl b/Config-Ini-1.06/test.pl +--- a/Config-Ini-1.06/test.pl 2020-04-05 21:08:14.033277147 +0100 ++++ b/Config-Ini-1.06/test.pl 2020-04-05 21:08:04.576074986 +0100 +@@ -11,9 +11,9 @@ + + ######################### End of black magic. + +-use POSIX qw(tmpnam); +-do { $tmpfile = tmpnam() } until open TMPFILE, ">$tmpfile"; +-print TMPFILE <<EOT; ++use File::Temp qw(tempfile); ++( $tmpfh, $tmpfile ) = tempfile(UNLINK => 0); ++print $tmpfh <<EOT; + [Setup] + MasterProduct=UnrealTournament + Group=UnrealTournament +@@ -56,7 +56,7 @@ + ServerActors = IpServer.UdpServerUplinkMaster\\ + ServerAddress=master.mplayer.com MasterServerPort = 27900 + EOT +-close TMPFILE; ++close $tmpfh; + + # constructor + $ini = new Config::Ini($tmpfile); +@@ -165,11 +165,11 @@ + + # save function + $ini->save; +-open TMPFILE, "<$tmpfile"; ++open $tmpfh, "<$tmpfile"; + undef $/; +-$wholefile = <TMPFILE>; ++$wholefile = <$tmpfh>; + $/ = "\n"; +-close TMPFILE; ++close $tmpfh; + $shouldbe = <<EOT; + [Setup] + MasterProduct=UnrealTournament +@@ -232,7 +232,7 @@ + print "ok 17\n"; + } else { print "not ok 17\n"; } + +-do { $tmpfile = tmpnam() } until open TMPFILE, ">$tmpfile"; ++( $tmpfh, $tmpfile ) = tempfile(UNLINK => 0); + $ini->save($tmpfile); + + # test decoder +@@ -254,8 +254,8 @@ + unlink $tmpfile; + + # test comment delimiter +-do { $tmpfile = tmpnam() } until open TMPFILE, ">$tmpfile"; +-print TMPFILE <<EOT; ++( $tmpfh, $tmpfile ) = tempfile(UNLINK => 0); ++print $tmpfh <<EOT; + [Options] + Configured=1 + GSversion=550 +@@ -272,7 +272,7 @@ + [DEQData] + Winlist=t123;218 praivi;215 ptsk;209 + EOT +-close TMPFILE; ++close $tmpfh; + undef $ini; + $ini = new Config::Ini($tmpfile, -commentdelim => '#'); + +diff -Naur a/Makefile.PL b/Makefile.PL +--- a/Makefile.PL 2001-01-18 16:20:37.000000000 +0000 ++++ b/Makefile.PL 2020-04-05 21:08:32.335668386 +0100 +@@ -11,7 +11,6 @@ + 'PREREQ_PM' => { + 'Config::Ini' => 1.06, + 'Archive::Zip' => 0.07, +- 'Tk' => 800.020, + }, +- 'EXE_FILES' => [qw(umod xumod)], ++ 'EXE_FILES' => [qw(umod)], + ); +diff -Naur a/umod b/umod +--- a/umod 2020-04-05 21:08:14.033277147 +0100 ++++ b/umod 2020-04-05 21:08:04.576074986 +0100 +@@ -17,7 +17,8 @@ + use FileHandle; + use File::Find; + use Getopt::Long; +-use POSIX qw(tmpnam SEEK_END); ++use POSIX qw(SEEK_END); ++use File::Temp qw(tempfile); + use strict; + + =pod +@@ -520,7 +521,7 @@ + if( $filename =~ /\.zip$/i ) { + + my( $tmpFile, $fh ); +- do { $tmpFile = tmpnam(); } until $fh = new FileHandle( $tmpFile, 'w' ); ++ ( $fh, $tmpFile ) = tempfile(UNLINK => 0); + + my( $zipFile ) = new Archive::Zip; + if( $zipFile->read( $filename ) != AZ_OK ) { +diff -Naur a/Umod.pm b/Umod.pm +--- a/Umod.pm 2020-04-05 21:08:14.033277147 +0100 ++++ b/Umod.pm 2020-04-05 21:08:04.576074986 +0100 +@@ -400,22 +400,22 @@ + if( $ini->exists( ['Setup', 'Requires'] ) ) { + foreach my $requirement ( $ini->get( ['Setup', 'Requires'], + -mapping => 'multiple' ) ) { +- my( %hash ); +- %hash->{product} = $ini->get( [$requirement, 'Product'], ++ my( $hash ); ++ $hash->{product} = $ini->get( [$requirement, 'Product'], + -mapping => 'single' ); +- %hash->{version} = $ini->get( [$requirement, 'Version'], ++ $hash->{version} = $ini->get( [$requirement, 'Version'], + -mapping => 'single' ); +- %hash->{localproduct} = $ini->get( [$requirement, 'LocalProduct'], ++ $hash->{localproduct} = $ini->get( [$requirement, 'LocalProduct'], + -mapping => 'single' ); +- %hash->{producturl} = $ini->get( [$requirement, 'ProductURL'], ++ $hash->{producturl} = $ini->get( [$requirement, 'ProductURL'], + -mapping => 'single' ); +- %hash->{versionurl} = $ini->get( [$requirement, 'VersionURL'], ++ $hash->{versionurl} = $ini->get( [$requirement, 'VersionURL'], + -mapping => 'single' ); +- %hash->{developer} = $ini->get( [$requirement, 'Developer'], ++ $hash->{developer} = $ini->get( [$requirement, 'Developer'], + -mapping => 'single' ); +- %hash->{developerurl} = $ini->get( [$requirement, 'DeveloperURL'], ++ $hash->{developerurl} = $ini->get( [$requirement, 'DeveloperURL'], + -mapping => 'single' ); +- push( @requirements, \%hash ); ++ push( @requirements, \$hash ); + } + } + diff --git a/games-util/umodpack/metadata.xml b/games-util/umodpack/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/umodpack/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/umodpack/umodpack-0.5_beta16-r3.ebuild b/games-util/umodpack/umodpack-0.5_beta16-r3.ebuild new file mode 100644 index 000000000000..d87d9347c4f7 --- /dev/null +++ b/games-util/umodpack/umodpack-0.5_beta16-r3.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit perl-module toolchain-funcs + +MY_P="${P/_beta/b}" +DESCRIPTION="Portable (un)packer for Unreal Tournament's Umod files" +HOMEPAGE="http://www.oldunreal.com/wiki/index.php?title=UmodPack" +SRC_URI="mirror://gentoo/${MY_P}-allinone.tar.gz" + +LICENSE="Artistic" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +DEPEND="virtual/perl-IO-Compress + dev-perl/Archive-Zip + dev-perl/Tie-IxHash" + +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" +PATCHES=( "${FILESDIR}"/${PN}-fixes.patch ) +DIST_TEST="do" + +src_prepare() { + default + + # Remove bundled Perl modules. + rm -rf {Archive-Zip,Compress-Zlib,Tie-IxHash,Tk}* || die +} + +src_compile() { + perl-module_src_compile + + cd umr-* || die + emake DEBUG=0 CC="$(tc-getCC)" CFLAGS="${CFLAGS}" +} + +src_test() { + local line + perl-module_src_test | while read line; do + cat <<< "${line}" + [[ ${line} =~ ^not\ ok\ [0-9] ]] && die "test failed" + done +} + +src_install() { + perl-module_src_install + + cd umr-* || die + dobin umr + newdoc README README-umr + newdoc TODO TODO-umr +} diff --git a/games-util/uz2unpack/Manifest b/games-util/uz2unpack/Manifest new file mode 100644 index 000000000000..313541daeb7d --- /dev/null +++ b/games-util/uz2unpack/Manifest @@ -0,0 +1 @@ +DIST uz2unpack-0.1.tar.bz2 1483 BLAKE2B b349aa9d04719364227da8c9074845527eff938805c27ab484e485d4ff8f8203320ed8e5772408b325dc10ea8662a37710cd8d62d51c498074f97b064b4ee800 SHA512 b3876a54dfd4729399dc768f9e096aa9eed3af9d7a0a5ad68777159244a7f3f4a7ff113d2da00ca9dba60c731e8abc3b88888aab3c0aa2b934decfee9312654b diff --git a/games-util/uz2unpack/metadata.xml b/games-util/uz2unpack/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/uz2unpack/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/uz2unpack/uz2unpack-0.1.ebuild b/games-util/uz2unpack/uz2unpack-0.1.ebuild new file mode 100644 index 000000000000..e73d2137a326 --- /dev/null +++ b/games-util/uz2unpack/uz2unpack-0.1.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +DESCRIPTION="UZ2 Decompressor for UT2003/UT2004" +HOMEPAGE="http://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?42:mss:1013:200406:kikgppboefcimdbadcdo" +SRC_URI="mirror://gentoo/${P}.tar.bz2" + +LICENSE="public-domain" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +DEPEND="virtual/zlib:=" +RDEPEND="${DEPEND}" + +src_compile() { + emake CC="$(tc-getCC)" LDLIBS=-lz ${PN} +} + +src_install() { + dobin ${PN} + dodoc README +} diff --git a/games-util/vispatch/Manifest b/games-util/vispatch/Manifest new file mode 100644 index 000000000000..9290db18cf65 --- /dev/null +++ b/games-util/vispatch/Manifest @@ -0,0 +1 @@ +DIST vispatch-1.4.7.tgz 132222 BLAKE2B 9a8e0fc74a50ebda653b39eb23ad31c9f113238f1de8cce85626c0261d498855c24f8a9b7906966d642c95205af22664b6a08c077c8fe2a30394c456205f9f82 SHA512 572eb13cbf2c984c98b80abb98606b87ee1b45eac81d8077cb9d26968911f56be4b0fb9a744710532f955f3515ac929a05151c42e72fd7e9bae50052c57fae2d diff --git a/games-util/vispatch/metadata.xml b/games-util/vispatch/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/vispatch/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/vispatch/vispatch-1.4.7.ebuild b/games-util/vispatch/vispatch-1.4.7.ebuild new file mode 100644 index 000000000000..fec01c71f88f --- /dev/null +++ b/games-util/vispatch/vispatch-1.4.7.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="WaterVIS utility for GLQuake" +HOMEPAGE="https://vispatch.sourceforge.net/" +SRC_URI="https://downloads.sourceforge.net/vispatch/${P}.tgz" +S="${WORKDIR}"/${P}/source + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +src_compile() { + emake \ + CC="$(tc-getCC)" \ + OPTIMIZATIONS="${CFLAGS}" \ + LDFLAGS="${LDFLAGS}" +} + +src_install() { + dobin ${PN} + dodoc ../${PN}.txt +} diff --git a/games-util/wiiload/Manifest b/games-util/wiiload/Manifest new file mode 100644 index 000000000000..5ecf196a5e74 --- /dev/null +++ b/games-util/wiiload/Manifest @@ -0,0 +1 @@ +DIST wiiload-0.5.3.tar.gz 5528 BLAKE2B 907ce57af768c1b5dc4f35098a014a334eea19846b64e7f8f0385cc7477c254f06498a2975e28968e6dee91711dba8e71bed4d459b1f8aa0236aa4795fac0698 SHA512 58ec5e3a3b56f8f4822f29db3ea67f2b5d82a35ec0478ac2395f3ebbe51030f451b00b3bc97f534db5ab7613f40f8433aeef1778cf38682a9d7d790f276fc595 diff --git a/games-util/wiiload/files/wiiload-0.5.3-stdbool.patch b/games-util/wiiload/files/wiiload-0.5.3-stdbool.patch new file mode 100644 index 000000000000..cff0049cef0d --- /dev/null +++ b/games-util/wiiload/files/wiiload-0.5.3-stdbool.patch @@ -0,0 +1,23 @@ +Fix build with gcc 15 +https://bugs.gentoo.org/944172 +https://github.com/devkitPro/wiiload/pull/4 + +--- a/source/main.c ++++ b/source/main.c +@@ -28,6 +28,7 @@ + #include <unistd.h> + #include <errno.h> + #include <libgen.h> ++#include <stdbool.h> + #ifndef _WIN32 + #include <sys/socket.h> + #include <netinet/in.h> +@@ -62,8 +63,6 @@ typedef signed short s16; + typedef signed int s32; + typedef signed long long s64; + +-typedef enum { false, true } bool; +- + #ifndef __WIN32__ + static const char *desc_export = "export"; + #ifndef __APPLE__ diff --git a/games-util/wiiload/metadata.xml b/games-util/wiiload/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/wiiload/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/wiiload/wiiload-0.5.3.ebuild b/games-util/wiiload/wiiload-0.5.3.ebuild new file mode 100644 index 000000000000..29182df94c46 --- /dev/null +++ b/games-util/wiiload/wiiload-0.5.3.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Load homebrew apps over the network to your Wii" +HOMEPAGE="http://wiibrew.org/wiki/Wiiload https://github.com/devkitPro/wiiload" +SRC_URI="https://github.com/devkitPro/wiiload/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND="virtual/zlib:=" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/${P}-stdbool.patch" +) + +src_prepare() { + default + eautoreconf +} diff --git a/games-util/wit/Manifest b/games-util/wit/Manifest new file mode 100644 index 000000000000..460df286b66a --- /dev/null +++ b/games-util/wit/Manifest @@ -0,0 +1 @@ +DIST wiimms-iso-tools.source-3.05a.txz 1279228 BLAKE2B af8c0fb938ad9a7f1aa784861bd155c0e2a43e5e94010130dc0e152a0cec0b67745734ab70d54307c7e6135a80bcdfe0f933878e5211c18bd13207576afa5f00 SHA512 7f964a76522e87149a44ff4c0571dafe5702d1d6fa0abb0ae08a9665cb5a3aa489ae608d098835e3da77541b58943747aba997db15f5756eb1e2909c27b12fe2 diff --git a/games-util/wit/files/wit-3.05a-makefile.patch b/games-util/wit/files/wit-3.05a-makefile.patch new file mode 100644 index 000000000000..62b4930b1d89 --- /dev/null +++ b/games-util/wit/files/wit-3.05a-makefile.patch @@ -0,0 +1,266 @@ +From ecf6121592e9ffa0b2cd220a0de675b64b163000 Mon Sep 17 00:00:00 2001 +From: Eli Schwartz <eschwartz93@gmail.com> +Date: Sun, 17 Mar 2024 18:12:43 -0400 +Subject: [PATCH] reroll patch to Makefile for system integration + +Don't link libdl into wfuse as it's unnecessary, use system bzip2, respect user +CFLAGS, use pkgconfig to determine ncurses libs, and use verbose build output. +--- + Makefile | 82 ++++++++++++++++--------------------------- + test-libwbfs/Makefile | 13 ++----- + 2 files changed, 32 insertions(+), 63 deletions(-) + +diff --git a/Makefile b/Makefile +index adaa48a..433578a 100644 +--- a/Makefile ++++ b/Makefile +@@ -111,11 +111,6 @@ VERSION := $(VERSION_NUM)$(BETA_SUFFIX) + #------------------------------------------------------------------------------- + # compiler settings + +-PRE ?= +-CC = $(PRE)gcc +-CPP = $(PRE)g++ +-STRIP = $(PRE)strip +- + #------------------------------------------------------------------------------- + # files + +@@ -171,7 +166,7 @@ endif + TOPT_wit := $(OPT_STATIC) + TOPT_wwt := $(OPT_STATIC) + TOPT_wdf := $(OPT_STATIC) +-TOPT_wfuse := -lfuse -lpthread -ldl ++TOPT_wfuse := -lfuse -lpthread + + #TOPT_ALL := $(TOPT_wit) $(TOPT_wwt) $(TOPT_wdf) $(TOPT_wfuse) + +@@ -206,8 +201,8 @@ else + endif + + # lib summary +-LIB_LIST += libbz2 lzma +-LIB_OBJECTS += $(LIBBZ2_OBJ) $(LZMA_OBJ) ++LIB_LIST += lzma ++LIB_OBJECTS += $(LZMA_OBJ) + RM_FILES += $(foreach l,$(LIB_LIST),src/$(l)/*.{d,o}) + + +@@ -297,10 +292,10 @@ DEFINES1 += -D_7ZIP_ST=1 # disable 7zip multi threading + DEFINES1 += -D_LZMA_PROB32=1 # LZMA option + DEFINES = $(strip $(DEFINES1) $(MODE) $(XDEF)) + +-CFLAGS += -std=gnu99 -fomit-frame-pointer -fno-strict-aliasing -funroll-loops ++CFLAGS += -std=gnu99 -fno-strict-aliasing + CFLAGS += -Wall -Wno-parentheses -Wno-unused-function + #CFLAGS += -O3 -Isrc/libwbfs -Isrc/lzma -Isrc -I$(UI) -I. -Iwork +-CFLAGS += -O3 -Isrc/libwbfs -Isrc -I$(UI) -I. -Iwork ++CFLAGS += -Isrc/libwbfs -Isrc -I$(UI) -I. -Iwork + + ifeq ($(SYSTEM_LINUX),1) + LIBS += -ltinfo +@@ -313,8 +308,6 @@ endif + + ifeq ($(SYSTEM),mac) + CFLAGS += -I/usr/local/include +-else +- LDFLAGS += -static-libgcc + endif + + ifeq ($(shell expr $(GCC_VERSION) '>=' 7.0 ),1) +@@ -334,7 +327,7 @@ LDFLAGS := $(strip $(LDFLAGS)) + ifeq ($(HAVE_ZLIB),1) + LIBS += -lz + endif +-LIBS += -lm -lncurses $(XLIBS) ++LIBS += -lm $(shell $(PKG_CONFIG) --libs ncurses) -lbz2 $(XLIBS) + + ifeq ($(HAVE_SHA),1) + ifeq ($(SYSTEM_LINUX),1) +@@ -402,60 +395,51 @@ default_rule: all + # general rules + + $(ALL_TOOLS_X): %: %.o $(ALL_OBJECTS) $(TOBJ_ALL) Makefile | $(HELPER_TOOLS) +- @printf "$(LOGFORMAT_TOOL)" tool "$@" "$(MODE) $(TOPT_$@) $(TOBJ_$@)" +- @$(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \ ++ $(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \ + $(ALL_OBJECTS) $(TOBJ_$@) $(LIBS) $(TOPT_$@) -o $@ +- @if test -f $@.exe; then $(STRIP) $@.exe; else $(STRIP) $@; fi + +- @mkdir -p bin/$(SYSTEM2) bin/$(SYSTEM2)/debug +- @if test -s $(MODE_FILE) && grep -Fq -e -DDEBUG $(MODE_FILE); \ ++ mkdir -p bin/$(SYSTEM2) bin/$(SYSTEM2)/debug ++ if test -s $(MODE_FILE) && grep -Fq -e -DDEBUG $(MODE_FILE); \ + then cp -p $@ bin/$(SYSTEM2)/debug/; \ + else cp -p $@ bin/; cp -p $@ bin/$(SYSTEM2)/; fi + + #-------------------------- + + $(HELPER_TOOLS): %: %.o $(ALL_OBJECTS) $(UI_TABS) Makefile +- @printf "$(LOGFORMAT_TOOL)" helper "$@ $(TOBJ_$@)" "$(MODE)" +- @$(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \ ++ $(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \ + $(ALL_OBJECTS) $(TOBJ_$@) $(LIBS) -o $@ + + #-------------------------- + + $(WDF_LINKS): wdf +- @printf "$(LOGFORMAT_INST)" "link" "wdf -> $@" "" +- @ln -f wdf "$@" ++ ln -f wdf "$@" + + #-------------------------- + + $(UI_OBJECTS): %.o: %.c ui-%.c ui-%.h version.h Makefile +- @printf "$(LOGFORMAT_CC)" +object "$@" "$(MODE)" +- @$(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@ ++ $(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@ + + #-------------------------- + + $(C_OBJECTS): %.o: %.c version.h Makefile $(TEXT_FILES) +- @printf "$(LOGFORMAT_CC)" object "$@" "$(MODE)" +- @$(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@ ++ $(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@ + + #-------------------------- + + $(ASM_OBJECTS): %.o: %.S Makefile +- @printf "$(LOGFORMAT_CC)" asm "$@" "$(MODE)" +- @$(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@ ++ $(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@ + + #-------------------------- + + $(SETUP_FILES): templates.sed $(SETUP_DIR)/$@ +- @printf "$(LOGFORMAT)" create "$@" "" +- @chmod 775 $(GEN_TEMPLATE) +- @$(GEN_TEMPLATE) $@ ++ chmod 775 $(GEN_TEMPLATE) ++ $(GEN_TEMPLATE) $@ + + #-------------------------- + + $(TEXT_FILES): $(GEN_TEXT_FILE) $(TEXT_DIR)/$@ +- @printf "$(LOGFORMAT)" text "$@" "" +- @chmod 775 $(GEN_TEXT_FILE) +- @$(GEN_TEXT_FILE) $(TEXT_DIR) $@ ++ chmod 775 $(GEN_TEXT_FILE) ++ $(GEN_TEXT_FILE) $(TEXT_DIR) $@ + + #-------------------------- + +@@ -465,20 +449,17 @@ $(UI_FILES): gen-ui.c ui.h $(UI_TABS) | gen-ui + + .PHONY : ui + ui : gen-ui +- @printf "$(LOGFORMAT)" run gen-ui "" +- @./gen-ui ++ ./gen-ui + + # + ############################################################################### + # lib specific rules + + $(LIBBZ2_OBJ): %.o: %.c Makefile +- @printf "$(LOGFORMAT_CC)" object "$(subst src/libbz2/,,$@)" "$(MODE) [libbz2]" +- @$(CC) $(CFLAGS) $(DEPFLAGS) $(BZIP2_FLAGS) $(DEFINES) -c $< -o $@ ++ $(CC) $(CFLAGS) $(DEPFLAGS) $(BZIP2_FLAGS) $(DEFINES) -c $< -o $@ + + $(LZMA_OBJ): %.o: %.c Makefile +- @printf "$(LOGFORMAT_CC)" object "$(subst src/lzma/,,$@)" "$(MODE) [lzma]" +- @$(CC) $(CFLAGS) $(DEPFLAGS) $(LZMA_FLAGS) $(DEFINES) -c $< -o $@ ++ $(CC) $(CFLAGS) $(DEPFLAGS) $(LZMA_FLAGS) $(DEFINES) -c $< -o $@ + + # + ############################################################################### +@@ -670,9 +651,8 @@ doc: $(MAIN_TOOLS) templates.sed gen-doc + + .PHONY : gen-doc + gen-doc: +- @printf "$(LOGFORMAT)" create documentation "" +- @chmod ug+x $(GEN_TEMPLATE) +- @$(GEN_TEMPLATE) ++ chmod ug+x $(GEN_TEMPLATE) ++ $(GEN_TEMPLATE) + + # + #-------------------------- +@@ -778,7 +758,7 @@ old: + + .PHONY : predef + predef: +- @gcc -E -dM none.c | sort ++ @$(CC) -E -dM none.c | sort + + # + #-------------------------- +@@ -792,8 +772,7 @@ $(SUB_PROJECTS): + #-------------------------- + + templates.sed: Makefile +- @printf "$(LOGFORMAT)" create templates.sed "" +- @printf '%s\n' \ ++ printf '%s\n' \ + '/^~/ d;' \ + 's|@.@@@|$(VERSION_NUM)|g;' \ + 's|@@@@-@@-@@|$(DATE)|g;' \ +@@ -859,13 +838,12 @@ templates.sed: Makefile + + .PHONY : test + test: +- @printf "$(LOGFORMAT)" enable test "-> define -DTEST" +- @rm -f *.o $(ALL_TOOLS_X) +- @echo "-DTEST" >>$(MODE_FILE) +- @sort $(MODE_FILE) | uniq > $(MODE_FILE).tmp ++ rm -f *.o $(ALL_TOOLS_X) ++ echo "-DTEST" >>$(MODE_FILE) ++ sort $(MODE_FILE) | uniq > $(MODE_FILE).tmp + # 2 steps to bypass a cygwin mv failure +- @cp $(MODE_FILE).tmp $(MODE_FILE) +- @rm -f $(MODE_FILE).tmp ++ cp $(MODE_FILE).tmp $(MODE_FILE) ++ rm -f $(MODE_FILE).tmp + + # + #-------------------------- +diff --git a/test-libwbfs/Makefile b/test-libwbfs/Makefile +index 6e937fc..9c0f0f8 100644 +--- a/test-libwbfs/Makefile ++++ b/test-libwbfs/Makefile +@@ -7,11 +7,6 @@ + + SHELL = /bin/bash + +-PRE ?= +-CC = $(PRE)gcc +-CPP = $(PRE)g++ +-STRIP = $(PRE)strip +- + #------------------------------------------------------------------------------- + # files + +@@ -46,18 +41,14 @@ VPATH += ../src/libwbfs + DEFINES = -DLARGE_FILES -D_FILE_OFFSET_BITS=64 $(XDEF) + DEFINES := $(strip $(DEFINES)) + +-CFLAGS = -fomit-frame-pointer -fno-strict-aliasing ++CFLAGS += -fno-strict-aliasing + CFLAGS += -Wall -Wno-parentheses -Wno-unused-function +-CFLAGS += -O3 -I../src/libwbfs -I. ++CFLAGS += -I../src/libwbfs -I. + CFLAGS += $(XFLAGS) + CFLAGS := $(strip $(CFLAGS)) + + DEPFLAGS += -MMD + +-LDFLAGS += -static-libgcc +-#LDFLAGS += -static +-LDFLAGS := $(strip $(LDFLAGS)) +- + LIBS += $(XLIBS) + + # +-- +2.43.2 + diff --git a/games-util/wit/files/wit-3.05a-no-exec-stack.patch b/games-util/wit/files/wit-3.05a-no-exec-stack.patch new file mode 100644 index 000000000000..db91b45cfcb1 --- /dev/null +++ b/games-util/wit/files/wit-3.05a-no-exec-stack.patch @@ -0,0 +1,9 @@ +--- wit-2.30a/src/crypto/ssl-asm.S ++++ wit-2.30a/src/crypto/ssl-asm.S +@@ -37,3 +37,6 @@ + #define WIT_INCLUDE_SSL_ASM + #include "ssl-asm.h" + ++#if defined(__linux__) && defined(__ELF__) ++.section .note.GNU-stack,"",%progbits ++#endif diff --git a/games-util/wit/metadata.xml b/games-util/wit/metadata.xml new file mode 100644 index 000000000000..3b798313743f --- /dev/null +++ b/games-util/wit/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <use> + <flag name="fuse">Enable image mount support via fuse</flag> + </use> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/wit/wit-3.05a.ebuild b/games-util/wit/wit-3.05a.ebuild new file mode 100644 index 000000000000..5e5e34b89d1d --- /dev/null +++ b/games-util/wit/wit-3.05a.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic toolchain-funcs + +MY_P="wiimms-iso-tools.source-${PV}" + +DESCRIPTION="command line tools to manipulate Wii/GameCube ISO images and WBFS containers" +HOMEPAGE="https://wit.wiimm.de/" +SRC_URI="https://download.wiimm.de/source/wiimms-iso-tools/${MY_P}.txz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="+fuse +zlib" + +RDEPEND=" + app-arch/bzip2:0= + dev-libs/openssl:= + fuse? ( sys-fs/fuse:0= ) + zlib? ( virtual/zlib:= )" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}"/${P}-makefile.patch + "${FILESDIR}"/${P}-no-exec-stack.patch +) + +src_configure() { + # -Werror=lto-type-mismatch + # https://bugs.gentoo.org/859319 + # + # After investigation, the build system also uses -fno-strict-aliasing + # so do not trust it with LTO either, even if the type-mismatch gets fixed. + filter-lto + + export NO_FUSE=$(usex fuse 0 1) + export NO_ZLIB=$(usex zlib 0 1) + + tc-export CC PKG_CONFIG +} + +src_compile() { + emake INSTALL_PATH="${ED}"/usr + emake doc +} + +src_install() { + default + dodoc doc/*.txt +} diff --git a/games-util/wxchtdecoder/Manifest b/games-util/wxchtdecoder/Manifest new file mode 100644 index 000000000000..7ed64c4528fa --- /dev/null +++ b/games-util/wxchtdecoder/Manifest @@ -0,0 +1 @@ +DIST wxchtdecoder-1.5a.tar.bz2 84088 BLAKE2B 1bff9a352a80d3f89b9963540e4a1a0ea79bffa8220c1c1a940068180a294a5518edd6fda13083d0d5fe3baa5f64813b6c925257e23d306a0de625817839c908 SHA512 edb606d1b88cedcb725a1dca2c82f4a81ebff5a1b8786a4127505e021b1fc8cc351363d05963a68c7d555f895b3b762fbd34dfc3f26640759619daecce1097df diff --git a/games-util/wxchtdecoder/files/wxchtdecoder-1.5a-wxgtk.patch b/games-util/wxchtdecoder/files/wxchtdecoder-1.5a-wxgtk.patch new file mode 100644 index 000000000000..1eb61febe1bb --- /dev/null +++ b/games-util/wxchtdecoder/files/wxchtdecoder-1.5a-wxgtk.patch @@ -0,0 +1,37 @@ +--- wxchtdecoder-1.5a.orig/source/chtdecoder.cc ++++ wxchtdecoder-1.5a/source/chtdecoder.cc +@@ -64,26 +64,26 @@ + const wxSize *CHTDecoder::APP_SIZE = new wxSize(640, 480); + + namespace { +- const wxCmdLineEntryDesc CMDLINE_DESC[] = { ++ wxCmdLineEntryDesc CMDLINE_DESC[] = { + { +- wxCMD_LINE_SWITCH, wxT("h"), wxT("help"), +- wxT("display usage information"), wxCMD_LINE_VAL_STRING, ++ wxCMD_LINE_SWITCH, "h", "help", ++ "display usage information", wxCMD_LINE_VAL_STRING, + wxCMD_LINE_OPTION_HELP + }, + + { +- wxCMD_LINE_SWITCH, wxT("v"), wxT("version"), +- wxT("display version information"), wxCMD_LINE_VAL_STRING, ++ wxCMD_LINE_SWITCH, "v", "version", ++ "display version information", wxCMD_LINE_VAL_STRING, + wxCMD_LINE_OPTION_HELP + }, + + { +- wxCMD_LINE_SWITCH, wxT("f"), wxT("force-open"), +- wxT("force opening of possibly invalid .CHT files") ++ wxCMD_LINE_SWITCH, "f", "force-open", ++ "force opening of possibly invalid .CHT files" + }, + + { +- wxCMD_LINE_PARAM, 0, 0, wxT(".CHT file(s)"), ++ wxCMD_LINE_PARAM, 0, 0, ".CHT file(s)", + wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_MULTIPLE + }, + diff --git a/games-util/wxchtdecoder/metadata.xml b/games-util/wxchtdecoder/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/wxchtdecoder/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/wxchtdecoder/wxchtdecoder-1.5a-r3.ebuild b/games-util/wxchtdecoder/wxchtdecoder-1.5a-r3.ebuild new file mode 100644 index 000000000000..86ec27766c54 --- /dev/null +++ b/games-util/wxchtdecoder/wxchtdecoder-1.5a-r3.ebuild @@ -0,0 +1,31 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +WX_GTK_VER="3.2-gtk3" +inherit desktop wxwidgets + +DESCRIPTION="Program to decode .CHT files in Snes9x and ZSNES to plain text" +HOMEPAGE="https://games.technoplaza.net/chtdecoder/" +SRC_URI="mirror://gentoo/${P}.tar.bz2" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND="x11-libs/wxGTK:${WX_GTK_VER}=[X]" +DEPEND=${RDEPEND} + +PATCHES=( "${FILESDIR}"/${P}-wxgtk.patch ) + +src_configure() { + setup-wxwidgets + econf --with-wx-config="${WX_CONFIG}" +} + +src_install() { + dobin source/wxchtdecoder + dodoc docs/wxchtdecoder.txt + make_desktop_entry ${PN} wxCHTDecoder application-vnd.nintendo.snes.rom +} diff --git a/games-util/xboxdrv/Manifest b/games-util/xboxdrv/Manifest new file mode 100644 index 000000000000..4aa9d2fe9b7b --- /dev/null +++ b/games-util/xboxdrv/Manifest @@ -0,0 +1 @@ +DIST xboxdrv-0.8.11.tar.gz 323870 BLAKE2B 3cfc5441496e72226a00a82874b580dd7113ff52317cc63afeca94d53c0c20d0d2bd8c458adabdd0e2358746d43de8a2815788d9fd82b21c4e733638a07379f8 SHA512 d6503ee3a4b0388214dd866e479205d37fc9dcd4aa8e8a10edae5db7368d755e2dcc1e4217ecde234c5dd4d0aec3548fd1eea980aa7d6150895ed6dfa3673e5a diff --git a/games-util/xboxdrv/files/org.seul.Xboxdrv.conf b/games-util/xboxdrv/files/org.seul.Xboxdrv.conf new file mode 100644 index 000000000000..fc685d6e8e83 --- /dev/null +++ b/games-util/xboxdrv/files/org.seul.Xboxdrv.conf @@ -0,0 +1,7 @@ +<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN" + "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"> +<busconfig> + <policy context="default"> + <allow own="org.seul.Xboxdrv"/> + </policy> +</busconfig> diff --git a/games-util/xboxdrv/files/xboxdrv.confd b/games-util/xboxdrv/files/xboxdrv.confd new file mode 100644 index 000000000000..99363c95dafb --- /dev/null +++ b/games-util/xboxdrv/files/xboxdrv.confd @@ -0,0 +1,5 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +XBOXDRV_OPTS="" +#XBOXDRV_OPTS="${XBOXDRV_OPTS} --next-controller --config /etc/xboxdrv/controller.ini" diff --git a/games-util/xboxdrv/files/xboxdrv.initd b/games-util/xboxdrv/files/xboxdrv.initd new file mode 100644 index 000000000000..8602c7e12531 --- /dev/null +++ b/games-util/xboxdrv/files/xboxdrv.initd @@ -0,0 +1,18 @@ +#!/sbin/openrc-run +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +PIDFILE="/var/run/${SVCNAME}.pid" + +start() { + ebegin "Starting xboxdrv" + start-stop-daemon --start --pidfile "${PIDFILE}" --exec /usr/bin/xboxdrv -- \ + --daemon --detach --pid-file "${PIDFILE}" ${XBOXDRV_OPTS} + eend $? +} + +stop() { + ebegin "Stopping xboxdrv" + start-stop-daemon --stop --pidfile "${PIDFILE}" + eend $? +} diff --git a/games-util/xboxdrv/files/xboxdrv.service b/games-util/xboxdrv/files/xboxdrv.service new file mode 100644 index 000000000000..b0d372696e0a --- /dev/null +++ b/games-util/xboxdrv/files/xboxdrv.service @@ -0,0 +1,14 @@ +[Unit] +Description=Userspace Xbox 360 Controller driver +BindsTo=sys-subsystem-usb-xbox-controller0.device +After=sys-subsystem-usb-xbox-controller0.device + +[Service] +BusName=org.seul.Xboxdrv +ExecStart=/usr/bin/xboxdrv --silent --daemon +KillSignal=SIGINT +# xboxdrv can not stop gracefully if controller gets unplugged +TimeoutStopSec=2 + +[Install] +WantedBy=multi-user.target diff --git a/games-util/xboxdrv/files/xboxdrv.udev-rules b/games-util/xboxdrv/files/xboxdrv.udev-rules new file mode 100644 index 000000000000..85b1d57dd26b --- /dev/null +++ b/games-util/xboxdrv/files/xboxdrv.udev-rules @@ -0,0 +1,5 @@ +SUBSYSTEM=="usb", ACTION=="add",\ + ENV{ID_MODEL_FROM_DATABASE}=="Xbox*Controller|Xbox*Controller S|Xbox 360 Wireless Adapter",\ + TAG+="systemd",\ + ENV{SYSTEMD_ALIAS}="/sys/subsystem/usb/xbox/controller$number",\ + ENV{SYSTEMD_WANTS}+="xboxdrv.service" diff --git a/games-util/xboxdrv/metadata.xml b/games-util/xboxdrv/metadata.xml new file mode 100644 index 000000000000..5f33304011d5 --- /dev/null +++ b/games-util/xboxdrv/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/xboxdrv/xboxdrv-0.8.11.ebuild b/games-util/xboxdrv/xboxdrv-0.8.11.ebuild new file mode 100644 index 000000000000..f289843f1fde --- /dev/null +++ b/games-util/xboxdrv/xboxdrv-0.8.11.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit linux-info python-any-r1 scons-utils toolchain-funcs systemd udev + +DESCRIPTION="Userspace Xbox 360 Controller driver" +HOMEPAGE="https://github.com/xiota/xboxdrv https://xboxdrv.gitlab.io" +SRC_URI="https://github.com/xiota/xboxdrv/archive/v$(ver_cut 1-3).tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + dev-libs/dbus-glib + dev-libs/glib:2 + sys-apps/dbus + virtual/libudev:= + virtual/libusb:1 + x11-libs/libX11 +" + +DEPEND=" + ${RDEPEND} +" + +BDEPEND=" + dev-util/glib-utils + virtual/pkgconfig +" + +CONFIG_CHECK="~INPUT_EVDEV ~INPUT_JOYDEV ~INPUT_UINPUT ~!JOYSTICK_XPAD" + +pkg_setup() { + linux-info_pkg_setup + python-any-r1_pkg_setup +} + +src_compile() { + escons \ + BUILD=custom \ + CXX="$(tc-getCXX)" \ + AR="$(tc-getAR)" \ + RANLIB="$(tc-getRANLIB)" \ + CXXFLAGS="-Wall ${CXXFLAGS}" \ + LINKFLAGS="${LDFLAGS}" +} + +src_install() { + dobin xboxdrv + doman doc/xboxdrv.1 + dodoc AUTHORS NEWS PROTOCOL README.md TODO + + newinitd "${FILESDIR}"/xboxdrv.initd xboxdrv + newconfd "${FILESDIR}"/xboxdrv.confd xboxdrv + + insinto /etc/dbus-1/system.d + doins "${FILESDIR}"/org.seul.Xboxdrv.conf + + udev_newrules "${FILESDIR}"/xboxdrv.udev-rules 99-xbox-controller.rules + systemd_dounit "${FILESDIR}"/xboxdrv.service +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/games-util/xpadneo/Manifest b/games-util/xpadneo/Manifest new file mode 100644 index 000000000000..f6b6c6dfa026 --- /dev/null +++ b/games-util/xpadneo/Manifest @@ -0,0 +1,3 @@ +DIST xpadneo-0.10.1.tar.gz 1455344 BLAKE2B e654cf387f8bf45110542c7131d27714dc8ae77cf9e1b23c32eb2489f4058411ca944644f825afe8689846ec1dbd0809fa9fa4f4a720e1a1a8a3a1c3b0d8d1d0 SHA512 72fbd924744b9408801d2cc969c5f0883510b1f485a1f88db2f3de23a505d790167fca22229d56b2b77120ad97c65acecf6db8c8da7d13dd6dbb5c199434ef04 +DIST xpadneo-0.10.2.tar.gz 1456320 BLAKE2B f822ad82e43df5af263cb76fd837e65931561c34ccd8cbb5fe0d93f9e7cf9903feeb65d0ac66749ae92371b40c2b0cc10d15bca502df36e6a611b9702d5ac81c SHA512 40ded7b72185056fad119cd1eb8d6d34cf5aa045567de53a9ceef56323a7efdf0c811d7d08be183351fba4bd4f1625edf294202db10e73874057e027d7973d25 +DIST xpadneo-0.9.8.tar.gz 1431768 BLAKE2B 1cddb91cdd4b055fda5c09112af5441da621c07b14f61a0094cbfffa9a7b746491bff6ea0858a28b1e91a204af2822d005a28ed3b1354b6a367a3eee0fc7250c SHA512 8ec29834587fd8ca8127e6bb1bdea15be40bcb8a11bfb9be3e6f5069f50521ffc93a431ac3a265a3301da64a6e0cfab1166e44b7b1aca0f963a492398d6e684a diff --git a/games-util/xpadneo/metadata.xml b/games-util/xpadneo/metadata.xml new file mode 100644 index 000000000000..83a427082c82 --- /dev/null +++ b/games-util/xpadneo/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>ionen@gentoo.org</email> + <name>Ionen Wolkens</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/xpadneo/xpadneo-0.10.1.ebuild b/games-util/xpadneo/xpadneo-0.10.1.ebuild new file mode 100644 index 000000000000..b918a4532329 --- /dev/null +++ b/games-util/xpadneo/xpadneo-0.10.1.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-mod-r1 udev + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/atar-axis/xpadneo.git" + EGIT_MIN_CLONE_TYPE="single" +else + SRC_URI="https://github.com/atar-axis/xpadneo/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="Advanced Linux Driver for Xbox One Wireless Controller" +HOMEPAGE="https://atar-axis.github.io/xpadneo/" + +LICENSE="GPL-2 GPL-3+" +SLOT="0" + +CONFIG_CHECK="INPUT_FF_MEMLESS" + +src_compile() { + local modlist=( hid-${PN}=kernel/drivers/hid:hid-${PN}:hid-${PN}/src ) + local modargs=( KERNEL_SOURCE_DIR="${KV_OUT_DIR}" ) + + linux-mod-r1_src_compile +} + +src_install() { + linux-mod-r1_src_install + + # install modprobe.d/rules.d files and docs + emake PREFIX="${ED}" ETC_PREFIX=/usr/lib DOC_PREFIX=/usr/share/doc/${PF} install +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + udev_reload + + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog "To pair the gamepad and view module options, see documentation in:" + elog " ${EROOT}/usr/share/doc/${PF}/" + fi +} + +pkg_postrm() { + udev_reload +} diff --git a/games-util/xpadneo/xpadneo-0.10.2.ebuild b/games-util/xpadneo/xpadneo-0.10.2.ebuild new file mode 100644 index 000000000000..b918a4532329 --- /dev/null +++ b/games-util/xpadneo/xpadneo-0.10.2.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-mod-r1 udev + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/atar-axis/xpadneo.git" + EGIT_MIN_CLONE_TYPE="single" +else + SRC_URI="https://github.com/atar-axis/xpadneo/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="Advanced Linux Driver for Xbox One Wireless Controller" +HOMEPAGE="https://atar-axis.github.io/xpadneo/" + +LICENSE="GPL-2 GPL-3+" +SLOT="0" + +CONFIG_CHECK="INPUT_FF_MEMLESS" + +src_compile() { + local modlist=( hid-${PN}=kernel/drivers/hid:hid-${PN}:hid-${PN}/src ) + local modargs=( KERNEL_SOURCE_DIR="${KV_OUT_DIR}" ) + + linux-mod-r1_src_compile +} + +src_install() { + linux-mod-r1_src_install + + # install modprobe.d/rules.d files and docs + emake PREFIX="${ED}" ETC_PREFIX=/usr/lib DOC_PREFIX=/usr/share/doc/${PF} install +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + udev_reload + + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog "To pair the gamepad and view module options, see documentation in:" + elog " ${EROOT}/usr/share/doc/${PF}/" + fi +} + +pkg_postrm() { + udev_reload +} diff --git a/games-util/xpadneo/xpadneo-0.9.8.ebuild b/games-util/xpadneo/xpadneo-0.9.8.ebuild new file mode 100644 index 000000000000..dd6c3131c64b --- /dev/null +++ b/games-util/xpadneo/xpadneo-0.9.8.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-mod-r1 udev + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/atar-axis/xpadneo.git" + EGIT_MIN_CLONE_TYPE="single" +else + SRC_URI="https://github.com/atar-axis/xpadneo/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="amd64 ~x86" +fi + +DESCRIPTION="Advanced Linux Driver for Xbox One Wireless Controller" +HOMEPAGE="https://atar-axis.github.io/xpadneo/" + +LICENSE="GPL-3+" +SLOT="0" + +CONFIG_CHECK="INPUT_FF_MEMLESS" + +src_compile() { + local modlist=( hid-${PN}=kernel/drivers/hid:hid-${PN}:hid-${PN}/src ) + local modargs=( KERNEL_SOURCE_DIR="${KV_OUT_DIR}" ) + + linux-mod-r1_src_compile +} + +src_install() { + local DOCS=( docs/{[^i]*.md,descriptors,reports} NEWS.md ) + linux-mod-r1_src_install + + insinto /etc/modprobe.d + doins hid-${PN}/etc-modprobe.d/${PN}.conf + + udev_dorules hid-${PN}/etc-udev-rules.d/*.rules +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + udev_reload + + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog "To pair the gamepad and view module options, see documentation in:" + elog " ${EROOT}/usr/share/doc/${PF}/" + fi +} + +pkg_postrm() { + udev_reload +} diff --git a/games-util/xpadneo/xpadneo-9999.ebuild b/games-util/xpadneo/xpadneo-9999.ebuild new file mode 100644 index 000000000000..864bd142f981 --- /dev/null +++ b/games-util/xpadneo/xpadneo-9999.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-mod-r1 udev + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/atar-axis/xpadneo.git" + EGIT_MIN_CLONE_TYPE="single" +else + SRC_URI="https://github.com/atar-axis/xpadneo/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="Advanced Linux Driver for Xbox One Wireless Controller" +HOMEPAGE="https://atar-axis.github.io/xpadneo/" + +LICENSE="GPL-2 GPL-3+" +SLOT="0" + +src_compile() { + local modlist=( hid-${PN}=kernel/drivers/hid:hid-${PN}:hid-${PN}/src ) + local modargs=( KERNEL_SOURCE_DIR="${KV_OUT_DIR}" ) + + linux-mod-r1_src_compile +} + +src_install() { + linux-mod-r1_src_install + + # install modprobe.d/rules.d files and docs + emake PREFIX="${ED}" ETC_PREFIX=/usr/lib DOC_PREFIX=/usr/share/doc/${PF} install +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + udev_reload + + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog "To pair the gamepad and view module options, see documentation in:" + elog " ${EROOT}/usr/share/doc/${PF}/" + fi +} + +pkg_postrm() { + udev_reload +} diff --git a/games-util/xqf/Manifest b/games-util/xqf/Manifest new file mode 100644 index 000000000000..df1f313ca4cf --- /dev/null +++ b/games-util/xqf/Manifest @@ -0,0 +1 @@ +DIST xqf-1.0.6.2.tar.gz 595096 BLAKE2B 36c135c064ae61af12daa70e9c78fe2a377ebcaf91b0f36fac43865b6b0601f104d8b09bd84b9d9699afdab7f3d4d3a0e67f3251f20d6ce025e92db2302d21a8 SHA512 8706104dde0f93a89f9f69a4b8f40f5c4c8160a3bb7a99f7572448c0110a595503e430fdba741c50b22f7e92a08f1cf6abee06aaa23956e4e37b7bf894a66a9c diff --git a/games-util/xqf/files/xqf-1.0.6.2-fno-common.patch b/games-util/xqf/files/xqf-1.0.6.2-fno-common.patch new file mode 100644 index 000000000000..15147ac6d917 --- /dev/null +++ b/games-util/xqf/files/xqf-1.0.6.2-fno-common.patch @@ -0,0 +1,21 @@ +--- a/src/filter.c ++++ b/src/filter.c +@@ -88,6 +88,8 @@ + const char* filter_quick_get(void); + void filter_quick_unset (void); + ++unsigned int current_server_filter; ++ + /* /QUICK FILTER */ + + struct filter filters[FILTERS_TOTAL] = { +--- a/src/filter.h ++++ b/src/filter.h +@@ -89,7 +89,6 @@ + + extern GArray* server_filters; + +-unsigned int current_server_filter; + extern unsigned int current_server_filter; + + diff --git a/games-util/xqf/files/xqf-1.0.6.2-underlink.patch b/games-util/xqf/files/xqf-1.0.6.2-underlink.patch new file mode 100644 index 000000000000..0e3ba3ed22e4 --- /dev/null +++ b/games-util/xqf/files/xqf-1.0.6.2-underlink.patch @@ -0,0 +1,30 @@ +--- a/configure.in ++++ b/configure.in +@@ -23,6 +23,7 @@ + AC_ISC_POSIX + AC_PROG_LN_S + AC_PROG_RANLIB ++AM_PROG_AR + + dnl Checks for header files. + AC_HEADER_STDC +--- a/po/POTFILES.in ++++ b/po/POTFILES.in +@@ -21,6 +21,7 @@ + #src/rc.c + src/rcon.c + src/redial.c ++src/scripts.c + #src/server.c + #src/skin.c + #src/skin_pcx.c +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -41,6 +41,7 @@ + $(GEOIP_LIB) \ + $(PACKAGE_LIBS) \ + $(GDK_PIXBUF_LIBS) \ ++ -lX11 \ + -lz -ldl + + xqf_LDFLAGS = -Wl,-rpath,$(pkglibdir) -Wl,--export-dynamic -Wl,--version-script=$(top_srcdir)/src/xqf.map diff --git a/games-util/xqf/files/xqf-1.0.6.2-zlib-1.2.5.1-compile-fix.patch b/games-util/xqf/files/xqf-1.0.6.2-zlib-1.2.5.1-compile-fix.patch new file mode 100644 index 000000000000..9bd433b3b27e --- /dev/null +++ b/games-util/xqf/files/xqf-1.0.6.2-zlib-1.2.5.1-compile-fix.patch @@ -0,0 +1,11 @@ +--- xqf-1.0.5/src/zip/ioapi.h ++++ xqf-1.0.5/src/zip/ioapi.h +@@ -6,6 +6,8 @@ + Copyright (C) 1998-2003 Gilles Vollant + */ + ++#define OF(x) x ++ + #ifndef _ZLIBIOAPI_H + #define _ZLIBIOAPI_H + diff --git a/games-util/xqf/metadata.xml b/games-util/xqf/metadata.xml new file mode 100644 index 000000000000..183ecc5ceeeb --- /dev/null +++ b/games-util/xqf/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-util/xqf/xqf-1.0.6.2.ebuild b/games-util/xqf/xqf-1.0.6.2.ebuild new file mode 100644 index 000000000000..9c9510182f86 --- /dev/null +++ b/games-util/xqf/xqf-1.0.6.2.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools + +DESCRIPTION="A server browser for many FPS games (frontend for qstat)" +HOMEPAGE="http://xqf.github.io/en/" +SRC_URI="https://github.com/XQF/xqf/archive/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~hppa ~x86" +IUSE="bzip2 geoip nls" + +RDEPEND=" + x11-libs/gdk-pixbuf-xlib + x11-libs/gtk+:2 + >=games-util/qstat-2.11 + nls? ( virtual/libintl ) + geoip? ( dev-libs/geoip ) + bzip2? ( app-arch/bzip2 )" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + nls? ( sys-devel/gettext )" + +S="${WORKDIR}/${PN}-${P}" + +PATCHES=( + "${FILESDIR}"/${P}-underlink.patch + "${FILESDIR}"/${P}-zlib-1.2.5.1-compile-fix.patch + "${FILESDIR}"/${P}-fno-common.patch +) + +src_prepare() { + default + mv configure.{in,ac} || die + eautoreconf +} + +src_configure() { + econf \ + $(use_enable nls) \ + $(use_enable geoip) \ + $(use_enable bzip2) +} |
