commit: fa6dcae7027e4c4d5b71fadcfa7dc01af8ff2358
Author: Pavel Sobolev <contact <AT> paveloom <DOT> dev>
AuthorDate: Sun Nov 2 16:05:01 2025 +0000
Commit: Pavel Sobolev <contact <AT> paveloom <DOT> dev>
CommitDate: Sun Nov 2 19:36:23 2025 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=fa6dcae7
games-emulation/eden: add 0.0.4_rc1, drop 0.0.3
Signed-off-by: Pavel Sobolev <contact <AT> paveloom.dev>
games-emulation/eden/Manifest | 3 +-
.../{eden-0.0.3.ebuild => eden-0.0.4_rc1.ebuild} | 48 ++++++++--------------
.../files/eden-0.0.3-fix-compilation-errors.patch | 36 ----------------
...n-0.0.3-make-the-dependency-on-mcl-global.patch | 15 -------
...0.0.3-make-the-dependency-on-xbyak-global.patch | 15 -------
...en-0.0.3-use-the-bundled-dynarmic-library.patch | 15 -------
...-0.0.3-use-the-system-discord-rpc-library.patch | 20 ---------
...eden-0.0.3-use-the-system-mbedtls-library.patch | 27 ------------
...c1-add-a-formatter-for-Dynarmic-IR-Opcode.patch | 20 +++++++++
games-emulation/eden/metadata.xml | 3 +-
10 files changed, 42 insertions(+), 160 deletions(-)
diff --git a/games-emulation/eden/Manifest b/games-emulation/eden/Manifest
index 541bca87ce..9fff4b99c7 100644
--- a/games-emulation/eden/Manifest
+++ b/games-emulation/eden/Manifest
@@ -1,2 +1,3 @@
-DIST eden-0.0.3.tar.gz 16409877 BLAKE2B
dee3028aa88c00a07e030bad635ef8e2bb9bc4575d9e4b0285c7217a0fe0547c85e1532bbc2ba9c0b7c48525fd3b8050b3999899a4afd0ecf2b5b1a4ffeb6491
SHA512
59acce43e99d92fe668ccf035a5bc9963594764088312b1b1a79223a2a85a48097cff8a2f3ccb2f693e86d377260840b81cef39724f70c3d960932b54b4e1184
+DIST eden-0.0.4_rc1-revert-the-latest-Dynarmic-changes.patch 110541 BLAKE2B
7832f1f08d79cb8c16797ffdaa824bf4ff4822b2ab002fd3c551864aff4f3128ab0cbb2624132ec139e75ef0e9c6fc18119bd0805d3969fa219b97937aff14d1
SHA512
6e41b8dc2fb8b4b6cfdb0223c9f63a7ae7aab30a038f1e5dee52598f20e6bd53c6638fc6b072c2bb7633268d016fc02274e01cc3a27d935c22d53b2c51702067
+DIST eden-0.0.4_rc1.tar.gz 15713193 BLAKE2B
33b1062189b09505f064e7bf0bdb18a2377518b577f1f88fbb948657e60f47bd381ad4e8b572046416c19232bdc57885d531682060118941abbfb638007fdc24
SHA512
2054a71b1bdcd4958e85aee2e6597ddcf54939e1d43e23cf85c1ba835b205236ba92b51c2b2cf2fee9a4e3f6c74eedd45f9954dcd2dc097d50760d64d74012d8
DIST nx-tzdb-250725.zip 286133 BLAKE2B
e8791883b589c58927f24293263f56d85f68a7e52f12d4e022c23bdba47f5e5f12cd1d8dfb186194b455fbd53f48951c8eb1e157d4de5e80db4f09b63d7a25f7
SHA512
8f60b4b29f285e39c0443f3d5572a73780f3dbfcfd5b35004451fadad77f3a215b2e2aa8d0fffe7e348e2a7b0660882b35228b6178dda8804a14ce44509fd2ca
diff --git a/games-emulation/eden/eden-0.0.3.ebuild
b/games-emulation/eden/eden-0.0.4_rc1.ebuild
similarity index 75%
rename from games-emulation/eden/eden-0.0.3.ebuild
rename to games-emulation/eden/eden-0.0.4_rc1.ebuild
index d9fcfb0c7d..bc509e80a4 100644
--- a/games-emulation/eden/eden-0.0.3.ebuild
+++ b/games-emulation/eden/eden-0.0.4_rc1.ebuild
@@ -10,6 +10,8 @@ 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/250725/250725.zip ->
nx-tzdb-250725.zip
+
https://git.eden-emu.dev/eden-emu/eden/commit/6b01c13975439784cd40cf1810b67350111a41d3.patch
->
+ ${PN}-0.0.4_rc1-revert-the-latest-Dynarmic-changes.patch
"
S="${WORKDIR}/${PN}"
@@ -17,7 +19,7 @@ S="${WORKDIR}/${PN}"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64"
-IUSE="camera cubeb discord gui lto opengl sdl ssl test web-applet web-service
wifi"
+IUSE="camera cubeb discord gui lto opengl sdl ssl test usb web-applet
web-service wifi"
REQUIRED_USE="
!gui? ( !camera !discord !opengl !web-applet )
web-service? ( ssl )
@@ -28,7 +30,6 @@ RDEPEND="
app-arch/lz4
app-arch/zstd
dev-libs/libfmt:=
- dev-libs/libusb
dev-libs/mcl
dev-libs/sirit
dev-util/spirv-tools
@@ -38,7 +39,7 @@ RDEPEND="
media-libs/opus
media-video/ffmpeg
net-libs/enet
- net-libs/mbedtls:0[cmac]
+ net-libs/mbedtls:3
sys-libs/zlib
amd64? (
@@ -51,7 +52,6 @@ RDEPEND="
discord? (
dev-cpp/cpp-httplib:=[ssl]
dev-libs/discord-rpc
- dev-qt/qtbase:6[network]
)
gui? (
dev-libs/quazip[qt6]
@@ -59,6 +59,7 @@ RDEPEND="
)
sdl? ( media-libs/libsdl2[haptic,joystick,sound,video] )
ssl? ( dev-libs/openssl:= )
+ usb? ( dev-libs/libusb )
web-applet? ( dev-qt/qtwebengine:6[widgets] )
web-service? ( dev-cpp/cpp-httplib:=[ssl] )
wifi? ( net-wireless/wireless-tools )
@@ -68,6 +69,7 @@ DEPEND="
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
@@ -80,25 +82,20 @@ DEPEND="
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
- dev-libs/oaknut
- )
+ test? ( dev-cpp/catch )
"
PATCHES=(
- "${FILESDIR}/${PN}-0.0.3-fix-compilation-errors.patch"
- "${FILESDIR}/${PN}-0.0.3-make-the-dependency-on-mcl-global.patch"
- "${FILESDIR}/${PN}-0.0.3-make-the-dependency-on-xbyak-global.patch"
- "${FILESDIR}/${PN}-0.0.3-use-the-bundled-dynarmic-library.patch"
- "${FILESDIR}/${PN}-0.0.3-use-the-system-discord-rpc-library.patch"
- "${FILESDIR}/${PN}-0.0.3-use-the-system-mbedtls-library.patch"
+ "${DISTDIR}/${PN}-0.0.4_rc1-revert-the-latest-Dynarmic-changes.patch"
+
"${FILESDIR}/${PN}-0.0.4_rc1-add-a-formatter-for-Dynarmic-IR-Opcode.patch"
)
# [directory]=license
@@ -111,6 +108,9 @@ declare -A KEEP_BUNDLED=(
[nx_tzdb]="GPL-2+"
[stb]="MIT public-domain"
[tz]=BSD-2
+
+ # Configuration for the system library
+ [libusb]=GPL-3+
)
add_bundled_licenses() {
@@ -134,30 +134,21 @@ src_prepare() {
einfo "removing sources: ${remove[*]}"
rm -r "${remove[@]}" || die
- mkdir -p "${S}/.cache/cpm/nx_tzdb" || die
- mv "${WORKDIR}/zoneinfo" "$_/250725" || die
-
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
+ -DCPMUTIL_FORCE_SYSTEM=yes
-DTITLE_BAR_FORMAT_IDLE="Eden | v${PV/_/-}"
- -DYUZU_CHECK_SUBMODULES=no
- -DYUZU_ENABLE_PORTABLE=no
- -DYUZU_USE_BUNDLED_FFMPEG=no
- -DYUZU_USE_CPM=no
- -DYUZU_USE_EXTERNAL_SDL2=no
- -DYUZU_USE_EXTERNAL_VULKAN_HEADERS=no
- -DYUZU_USE_EXTERNAL_VULKAN_SPIRV_TOOLS=no
- -DYUZU_USE_EXTERNAL_VULKAN_UTILITY_LIBRARIES=no
+ -DYUZU_TZDB_PATH="${WORKDIR}"
-DYUZU_USE_FASTER_LD=no
- -DYUZU_USE_PRECOMPILED_HEADERS=no
- -DDYNARMIC_USE_PRECOMPILED_HEADERS=no
+ -DDYNARMIC_ENABLE_LTO=$(usex lto)
-DBUILD_TESTING=$(usex test)
-DENABLE_CUBEB=$(usex cubeb)
+ -DENABLE_LIBUSB=$(usex usb)
-DENABLE_OPENGL=$(usex opengl)
-DENABLE_OPENSSL=$(usex ssl)
-DENABLE_QT=$(usex gui)
@@ -169,9 +160,6 @@ src_configure() {
-DYUZU_USE_QT_MULTIMEDIA=$(usex camera)
-DYUZU_USE_QT_WEB_ENGINE=$(usex web-applet)
- -DCPMUTIL_FORCE_SYSTEM=yes
- -Dnx_tzdb_FORCE_BUNDLED=yes
-
-Wno-dev
)
diff --git a/games-emulation/eden/files/eden-0.0.3-fix-compilation-errors.patch
b/games-emulation/eden/files/eden-0.0.3-fix-compilation-errors.patch
deleted file mode 100644
index 97d18a038c..0000000000
--- a/games-emulation/eden/files/eden-0.0.3-fix-compilation-errors.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From: Pavel Sobolev <[email protected]>
-Subject: [PATCH] Fix compilation errors.
-
-Signed-off-by: Pavel Sobolev <[email protected]>
-
---- a/src/dynarmic/src/dynarmic/common/common_types.h
-+++ b/src/dynarmic/src/dynarmic/common/common_types.h
-@@ -21,3 +21,5 @@ using f64 = double; ///< 64-bit floating point
-
- using u128 = std::array<std::uint64_t, 2>;
- static_assert(sizeof(u128) == 16, "u128 must be 128 bits wide");
-+
-+using size_t = std::size_t;
---- a/src/dynarmic/src/dynarmic/common/memory_pool.h
-+++ b/src/dynarmic/src/dynarmic/common/memory_pool.h
-@@ -6,6 +6,7 @@
- #pragma once
-
- #include <cstddef>
-+#include <cstdlib>
- #include <vector>
-
- namespace Dynarmic::Common {
---- a/src/yuzu/main.cpp
-+++ b/src/yuzu/main.cpp
-@@ -101,9 +101,10 @@ static FileSys::VirtualFile
VfsDirectoryCreateFileWrapper(const FileSys::Virtual
- #include <QUrl>
- #include <QtConcurrent/QtConcurrent>
-
--#ifdef HAVE_SDL2
- #include <QCheckBox>
- #include <QStringLiteral>
-+
-+#ifdef HAVE_SDL2
- #include <SDL.h> // For SDL ScreenSaver functions
- #endif
diff --git
a/games-emulation/eden/files/eden-0.0.3-make-the-dependency-on-mcl-global.patch
b/games-emulation/eden/files/eden-0.0.3-make-the-dependency-on-mcl-global.patch
deleted file mode 100644
index 75430db5d8..0000000000
---
a/games-emulation/eden/files/eden-0.0.3-make-the-dependency-on-mcl-global.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-From: Pavel Sobolev <[email protected]>
-Subject: [PATCH] Make the dependency on `mcl` global.
-
-Signed-off-by: Pavel Sobolev <[email protected]>
-
---- a/src/dynarmic/externals/cpmfile.json
-+++ b/src/dynarmic/externals/cpmfile.json
-@@ -10,6 +10,7 @@
- "repo": "azahar-emu/mcl",
- "sha": "7b08d83418",
- "hash":
"f943bac39c1879986decad7a442ff4288eaeca4a2907684c7914e115a55ecc43c2782ded85c0835763fe04e40d5c82220ce864423e489e648e408a84f54dc4f3",
-+ "find_args": "GLOBAL",
- "options": [
- "MCL_INSTALL OFF"
- ]
diff --git
a/games-emulation/eden/files/eden-0.0.3-make-the-dependency-on-xbyak-global.patch
b/games-emulation/eden/files/eden-0.0.3-make-the-dependency-on-xbyak-global.patch
deleted file mode 100644
index 9da45e04a1..0000000000
---
a/games-emulation/eden/files/eden-0.0.3-make-the-dependency-on-xbyak-global.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-From: Pavel Sobolev <[email protected]>
-Subject: [PATCH] Make the dependency on `xbyak` global.
-
-Signed-off-by: Pavel Sobolev <[email protected]>
-
---- a/externals/cpmfile.json
-+++ b/externals/cpmfile.json
-@@ -84,6 +84,7 @@
- "repo": "herumi/xbyak",
- "sha": "4e44f4614d",
- "hash":
"5824e92159e07fa36a774aedd3b3ef3541d0241371d522cffa4ab3e1f215fa5097b1b77865b47b2481376c704fa079875557ea463ca63d0a7fd6a8a20a589e70",
-+ "find_args": "GLOBAL",
- "bundled": true
- },
- "oaknut": {
diff --git
a/games-emulation/eden/files/eden-0.0.3-use-the-bundled-dynarmic-library.patch
b/games-emulation/eden/files/eden-0.0.3-use-the-bundled-dynarmic-library.patch
deleted file mode 100644
index 3f66b873ad..0000000000
---
a/games-emulation/eden/files/eden-0.0.3-use-the-bundled-dynarmic-library.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-From: Pavel Sobolev <[email protected]>
-Subject: [PATCH] Use the bundled `dynarmic` library.
-
-Signed-off-by: Pavel Sobolev <[email protected]>
-
---- a/src/dynarmic/src/dynarmic/CMakeLists.txt
-+++ b/src/dynarmic/src/dynarmic/CMakeLists.txt
-@@ -1,6 +1,6 @@
- include(TargetArchitectureSpecificSources)
-
--add_library(dynarmic
-+add_library(dynarmic STATIC
- backend/block_range_information.cpp
- backend/block_range_information.h
- backend/exception_handler.h
diff --git
a/games-emulation/eden/files/eden-0.0.3-use-the-system-discord-rpc-library.patch
b/games-emulation/eden/files/eden-0.0.3-use-the-system-discord-rpc-library.patch
deleted file mode 100644
index 1fc6d6211e..0000000000
---
a/games-emulation/eden/files/eden-0.0.3-use-the-system-discord-rpc-library.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-From: Pavel Sobolev <[email protected]>
-Subject: [PATCH] Use the system `discord-rpc` library.
-
-Signed-off-by: Pavel Sobolev <[email protected]>
-
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -499,10 +499,8 @@ endif()
-
- # DiscordRPC
- if (USE_DISCORD_PRESENCE)
-- AddJsonPackage(discord-rpc)
--
-- target_include_directories(discord-rpc INTERFACE
${discord-rpc_SOURCE_DIR}/include)
-- add_library(DiscordRPC::discord-rpc ALIAS discord-rpc)
-+ find_package(DiscordRPC REQUIRED)
-+ find_package(httplib)
- endif()
-
- # SimpleIni
diff --git
a/games-emulation/eden/files/eden-0.0.3-use-the-system-mbedtls-library.patch
b/games-emulation/eden/files/eden-0.0.3-use-the-system-mbedtls-library.patch
deleted file mode 100644
index b27d961313..0000000000
--- a/games-emulation/eden/files/eden-0.0.3-use-the-system-mbedtls-library.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Pavel Sobolev <[email protected]>
-Subject: [PATCH] Use the system `mbedtls` library.
-
-Signed-off-by: Pavel Sobolev <[email protected]>
-
---- a/externals/CMakeLists.txt
-+++ b/externals/CMakeLists.txt
-@@ -54,7 +54,7 @@ endif()
- add_subdirectory(glad)
-
- # mbedtls
--AddJsonPackage(mbedtls)
-+add_library(mbedtls SHARED IMPORTED)
-
- if (mbedtls_ADDED)
- target_include_directories(mbedtls PUBLIC ${mbedtls_SOURCE_DIR}/include)
---- a/src/core/CMakeLists.txt
-+++ b/src/core/CMakeLists.txt
-@@ -1196,7 +1196,7 @@ else()
- target_link_libraries(core PUBLIC Boost::headers)
- endif()
-
--target_link_libraries(core PRIVATE fmt::fmt nlohmann_json::nlohmann_json
mbedtls RenderDoc::API)
-+target_link_libraries(core PRIVATE fmt::fmt nlohmann_json::nlohmann_json
mbedtls mbedcrypto RenderDoc::API)
- if (MINGW)
- target_link_libraries(core PRIVATE ${MSWSOCK_LIBRARY})
- endif()
diff --git
a/games-emulation/eden/files/eden-0.0.4_rc1-add-a-formatter-for-Dynarmic-IR-Opcode.patch
b/games-emulation/eden/files/eden-0.0.4_rc1-add-a-formatter-for-Dynarmic-IR-Opcode.patch
new file mode 100644
index 0000000000..c2854b5a6e
--- /dev/null
+++
b/games-emulation/eden/files/eden-0.0.4_rc1-add-a-formatter-for-Dynarmic-IR-Opcode.patch
@@ -0,0 +1,20 @@
+From: Pavel Sobolev <[email protected]>
+Subject: [PATCH] Add a formatter for `Dynarmic::IR::Opcode`.
+
+Signed-off-by: Pavel Sobolev <[email protected]>
+
+--- a/src/dynarmic/src/dynarmic/ir/opcodes.h
++++ b/src/dynarmic/src/dynarmic/ir/opcodes.h
+@@ -654,3 +654,11 @@ constexpr bool MayGetNZCVFromOp(const Opcode op) noexcept
{
+ }
+
+ } // namespace Dynarmic::IR
++
++template<>
++struct fmt::formatter<Dynarmic::IR::Opcode> :
fmt::formatter<std::string_view> {
++ template<typename FormatContext>
++ auto format(Dynarmic::IR::Opcode op, FormatContext& ctx) const {
++ return formatter<std::string_view>::format(GetNameOf(op), ctx);
++ }
++};
+
diff --git a/games-emulation/eden/metadata.xml
b/games-emulation/eden/metadata.xml
index a3670ce384..a0f25784a3 100644
--- a/games-emulation/eden/metadata.xml
+++ b/games-emulation/eden/metadata.xml
@@ -2,8 +2,8 @@
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>[email protected]</email>
<name>Pavel Sobolev</name>
+ <email>[email protected]</email>
</maintainer>
<use>
<flag name="camera">Enable camera support</flag>
@@ -12,6 +12,7 @@
<flag name="opengl">Enable the OpenGL frontend</flag>
<flag name="sdl">Enable the SDL2 frontend</flag>
<flag name="ssl">Enable OpenSSL backend for ISslConnection</flag>
+ <flag name="usb">Enable the use of LibUSB</flag>
<flag name="web-applet">Enable web applet support</flag>
<flag name="web-service">Enable web services (telemetry, etc.)</flag>
<flag name="wifi">Enable Wi-Fi scanning</flag>