commit: 89c74d1c94b3acd0bd434e5fa9e0d8dea870d6db Author: crueter <crueter <AT> eden-emu <DOT> dev> AuthorDate: Sun Feb 15 18:32:19 2026 +0000 Commit: crueter <crueter <AT> crueter <DOT> xyz> CommitDate: Sun Feb 15 18:32:19 2026 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=89c74d1c
games-emulation/eden: add 0.2.0_rc1 Signed-off-by: crueter <crueter <AT> eden-emu.dev> games-emulation/eden/Manifest | 1 + games-emulation/eden/eden-0.2.0_rc1.ebuild | 175 +++++++++++++++++++++++++++++ 2 files changed, 176 insertions(+) diff --git a/games-emulation/eden/Manifest b/games-emulation/eden/Manifest index ce3ea555d3..6569a8d1ab 100644 --- a/games-emulation/eden/Manifest +++ b/games-emulation/eden/Manifest @@ -1,2 +1,3 @@ DIST eden-0.1.1.tar.gz 12241965 BLAKE2B d102c4639753185a6a0579559e1de287f05c21800f19bf2030700e60f6124e713e6bff0d434bc541a3c8bcc7cd9869d3f0fa8167150993ebbe57df8a40d1b8c1 SHA512 bb15e6cae7a5143eb4cf39100de02fb71bd7e8729e6242601800b135f4eaeaf68d74435097bcca22019edb496a41ea63f979340e0549c1512c36c1110df19579 +DIST eden-0.2.0_rc1.tar.gz 12824105 BLAKE2B feae77ec6d0cde0d384ae05bc91bd10ea710c8149a300d143d4c18a5625e3f57d0bc73ce347e3e11c81bf2ecd8706dd94a0fab16c241ba451e717614bbf9660b SHA512 1404b6c205dd98744e72381d073bd25c38a2e9be48114bfffe19869e5577b455166a794ddb969c97a6ff46a53fc910fee8893d4339c1b787e457668499a2e881 DIST nx-tzdb-121125.tar.gz 102895 BLAKE2B 6619b7ad2200be8efb495773d017a07985adb7b05ba97285427aa86103ae9a8c9befc698709539a0292c413c2c8082c39fd699e181140e6879844084e5c19382 SHA512 dc37a189a44ce8b5c988ca550582431a6c7eadfd3c6e709bee6277116ee803e714333e85c9e6cbb5c69346a14d6f2cc7ed96e8aa09cc5fb8a89f945059651db6 diff --git a/games-emulation/eden/eden-0.2.0_rc1.ebuild b/games-emulation/eden/eden-0.2.0_rc1.ebuild new file mode 100644 index 0000000000..7dcbebbeac --- /dev/null +++ b/games-emulation/eden/eden-0.2.0_rc1.ebuild @@ -0,0 +1,175 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake xdg + +_TZDB_VER=121125 + +DESCRIPTION="Nintendo Switch Emulator" +HOMEPAGE="https://eden-emu.dev" +SRC_URI=" + https://git.eden-emu.dev/eden-emu/eden/archive/v${PV/_/-}.tar.gz -> ${P}.tar.gz + https://git.crueter.xyz/misc/tzdb_to_nx/releases/download/${_TZDB_VER}/${_TZDB_VER}.tar.gz -> + nx-tzdb-${_TZDB_VER}.tar.gz +" + +S="${WORKDIR}/${PN}" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~arm64" +IUSE="camera +cubeb discord llvm lto +opengl +qt6 room sdl ssl test +usb web-applet web-service wifi" +REQUIRED_USE=" + !qt6? ( !camera !discord !web-applet ) + web-service? ( ssl || ( qt6 room ) ) +" +RESTRICT="!test? ( test )" + +RDEPEND=" + app-arch/lz4 + app-arch/zstd + dev-libs/libfmt:= + dev-libs/mcl + >=dev-libs/sirit-1.0.1 + dev-util/spirv-tools + games-util/gamemode + media-gfx/renderdoc + media-libs/libva + media-libs/opus + media-video/ffmpeg + net-libs/enet + net-libs/mbedtls:3 + virtual/zlib:= + + camera? ( dev-qt/qtmultimedia:6 ) + cubeb? ( media-libs/cubeb ) + discord? ( + dev-cpp/cpp-httplib:=[ssl] + dev-libs/discord-rpc + ) + qt6? ( + dev-libs/quazip[qt6] + dev-qt/qtbase:6[concurrent,dbus,gui,widgets] + ) + sdl? ( media-libs/libsdl2[haptic,joystick,sound,video] ) + ssl? ( + dev-libs/openssl:= + dev-cpp/cpp-httplib:=[ssl] + ) + usb? ( dev-libs/libusb ) + web-applet? ( dev-qt/qtwebengine:6[widgets] ) + web-service? ( dev-cpp/cpp-httplib:=[ssl] ) + wifi? ( net-wireless/wireless-tools ) + llvm? ( llvm-core/llvm ) +" +DEPEND=" + ${RDEPEND} + dev-cpp/nlohmann_json + dev-cpp/simpleini + dev-libs/boost:=[context] + dev-libs/frozen + dev-libs/unordered_dense + dev-util/spirv-headers + dev-util/vulkan-headers + dev-util/vulkan-utility-libraries + media-libs/VulkanMemoryAllocator + + amd64? ( dev-libs/xbyak ) + arm64? ( dev-libs/oaknut ) + x86? ( dev-libs/xbyak ) + + web-service? ( dev-cpp/cpp-jwt ) + + test? ( dev-libs/oaknut ) +" +BDEPEND=" + app-arch/unzip + dev-util/glslang + virtual/pkgconfig + + test? ( dev-cpp/catch ) +" + +# [directory]=license +declare -A KEEP_BUNDLED=( + # Generated or copied files for internal usage + [bc_decoder]=MPL-2.0 + [cmake-modules]=Boost-1.0 + [demangle]=Apache-2.0-with-LLVM-exceptions + [FidelityFX-FSR]=MIT + [glad]=GPL-2+ + [nx_tzdb]="GPL-2+" + [stb]="MIT public-domain" + [tz]=BSD-2 + + # Configuration for the system library + [libusb]=GPL-3+ +) + +add_bundled_licenses() { + for license in "${KEEP_BUNDLED[@]}"; do + if [[ -n "$license" ]]; then + LICENSE+=" ${license}" + fi + done +} +add_bundled_licenses + +src_prepare() { + local s remove=() + for s in externals/*; do + [[ -f ${s} ]] && continue + if ! has "${s#externals/}" "${!KEEP_BUNDLED[@]}"; then + remove+=( "${s}" ) + fi + done + + einfo "removing sources: ${remove[*]}" + rm -r "${remove[@]}" || die + + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DCPMUTIL_FORCE_SYSTEM=yes + -DTITLE_BAR_FORMAT_IDLE="Eden | v${PV/_/-}" + -DYUZU_TZDB_PATH="${WORKDIR}/nx-tzdb-${_TZDB_VER}" + -DUSE_FASTER_LINKER=no + + -DENABLE_LTO=$(usex lto) + + -DDYNARMIC_USE_LLVM=$(usex llvm) + -DYUZU_DISABLE_LLVM=$(usex !llvm) + + -DBUILD_TESTING=$(usex test) + -DENABLE_CUBEB=$(usex cubeb) + -DENABLE_LIBUSB=$(usex usb) + -DENABLE_OPENGL=$(usex opengl) + -DENABLE_OPENSSL=$(usex ssl) + -DENABLE_QT=$(usex qt6) + -DENABLE_SDL2=$(usex sdl) + -DENABLE_WEB_SERVICE=$(usex web-service) + -DENABLE_WIFI_SCAN=$(usex wifi) + -DUSE_DISCORD_PRESENCE=$(usex discord) + -DYUZU_USE_QT_MULTIMEDIA=$(usex camera) + -DYUZU_USE_QT_WEB_ENGINE=$(usex web-applet) + + -DYUZU_ROOM=$(usex room) + + -Wno-dev + ) + + cmake_src_configure +} + +src_test() { + cd "${BUILD_DIR}" || die + + ./bin/dynarmic_tests || die + + # See https://git.eden-emu.dev/eden-emu/eden/issues/126 + ./bin/tests "~Fibers::InterExchange" "~RingBuffer: Threaded Test" || die +}
