Commit Graph
100 Commits
Author SHA1 Message Date
crueter cd003e5ec9 [cmake] Fix CPMUtil on Windows by avoiding a temp dir (#4195)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4195
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
2026-07-10 01:21:17 +02:00
crueter 813b248bc3 [docs] Tighten AI restrictions and switch to CONTRIBUTING.md (#4193)
Also removes some now-unnecessary docs files.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4193
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-07-09 23:06:46 +02:00
crueter 66b073ab8d [cmake] CPMUtil rewrite of the day number 852 (#4130)
Composite PR for several changes to CPMUtil, most notably:
- https://git.crueter.xyz/CMake/CPMUtil/pulls/19
- https://git.crueter.xyz/CMake/CPMUtil/pulls/22
- https://git.crueter.xyz/CMake/CPMUtil/pulls/24
- https://git.crueter.xyz/CMake/CPMUtil/pulls/25

These contain a lot of changes that generally simplify control flow and improve ease-of-use. Read those descriptions and patchsets for more info.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4130
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-07-06 23:11:39 +02:00
crueter c993bc01a4 [cmake] Update CPMUtil (#4123)
Notable changes

- Single cpmfile
- version/min_version/git_version have been fixed and replaced with
  version and min_version
- Docs rewrite
- Legacy options are gone
- Fixed update/version commands
- Added patch creation functionality

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4123
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-06-26 02:22:04 +02:00
crueter 39be450fa3 [desktop] Add basic carousel view (#4112)
Adds a basic carousel view, or essentially a horizontal list a la Android/Qt Quick.

Lacks a lot of niceties like autoscroll, smooth shifts, etc. Will work on those later

Also fixed a bug introduced recently that capped game icon size to 8 at the low end, breaking the None option

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4112
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Shinmegumi <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-06-22 21:04:47 +02:00
crueter e63b248e54 [ci] Fix update-deps workflow (again) (#4110)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4110
2026-06-20 00:58:02 +02:00
crueter 102d254530 [desktop] Clean up game list code, fix external watcher crash, and fix macOS flickering (#4106)
- Remove unnecessary icon update code (the UI reloads this stuff anyways); test on Windows please
- Cleaned up a bunch of duplicated/unused code within the game list
- Fix the game list constantly reloading on macOS
  * When you reconstruct the entire directory list on the watcher the directoryChanged signal fires on macOS--seems like a behavioral change that occurred somewhere in the 6.8 release cycle--and it would enter an infinite loop very quickly
  * To fix this, only the differences between the current and old watch list are accounted for on both ends.
  * Since this bug is now fixed, macOS uses Qt 6.11.1 now. Should theoretically improve our situation.
- Fix the external content watcher crashing; the worker would attempt to read files that didn't exist without any bounds since its cache was still pointing to that file.

This supersedes and replaces #4099.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4106
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-06-19 22:55:29 +02:00
crueter 7c0e993b5b [*] Fix compilation on fmt 12.2.0 (#4107)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4107
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-06-19 22:50:46 +02:00
crueter 02eaf3c5a7 [cmake, docs] Reorganize CMakeModules directory and add GentooCross toolchain (#4088)
Lightly inspired by my earlier toolchain and writeup from the PowerPC
PR.

Closes #3793

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4088
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-06-16 16:15:49 +02:00
crueter 3e31831cb0 [externals] UCRT64 support (#4035)
Testing which deps can't cross MSVCRT/UCRT barriers

- openssl
- Qt

FFmpeg and Sirit are fine--likely don't use the C99 APIs that MSVCRT is missing?

Closes #4022

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4035
2026-06-09 21:41:50 +02:00
crueter 2912f64145 [cmake] Don't scan for CXX modules (#4063)
Added a bunch of "Scanning ... for CXX dependencies" steps to the build.
We don't use modules and probably won't for a very long time, so we
don't need this.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4063
Reviewed-by: Lizzie <[email protected]>
2026-06-06 02:19:29 +02:00
crueter 661346503b [net] Add support for future macOS PGO shenanigans (#4050)
Rudimentary tests showed that using PGO on macOS *does* have an
appreciable impact on performance. So we're probably going to introduce
it soon.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4050
Reviewed-by: Lizzie <[email protected]>
2026-06-05 02:24:26 +02:00
crueter efc7472330 [cmake] Bump minimum version to 3.31 (#4055)
Ubuntu 24.04 can't hurt us anymore.

Some other deps may have their versions raised, but there's not much of
an incentive so we'll keep it as is for now.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4055
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-06-04 15:28:39 +02:00
crueter f39e985434 [cmake] Link to UniformTypeIdentifiers framework on macOS (#4046)
Needed for local LLVM builds

Signed-off-by: crueter <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4046
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-06-02 21:40:51 +02:00
crueter a8047d3b12 [cmake] Fix OpenSSL flaky build by using a CMake script (#4047)
Something weird is happening with the CI that causes frequent build errors. For reasons I am not entirely certain of, Ninja fails to properly spawn a POSIX shell instance during the Make phase.

More investigation is in order, but for now fix it with the grand power of shelling out to CMake script

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4047
Reviewed-by: Lizzie <[email protected]>
2026-06-02 07:02:31 +02:00
crueter cc8451f764 [desktop] Rework game list to use MVP architecture (#4042)
Closes #3480

moves the game list model/worker/private stuff to qt_common for later
use in QML

- `qt_common/game_list/model.{cpp,h}` is the model
- `yuzu/game/game_{grid,tree}.*` are the views
- `yuzu/game/game_list.cpp` is the presenter

This was done very lazily in a manner that "works" while largely
maintaining existing structure as much as possible. Most of it is
copy-paste, with some bonus reworks/cleanups thrown in.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4042
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-06-02 04:08:24 +02:00
crueter 27189f39d2 [desktop] Prefer extracred folder name over zip name for non-Atmosphere zip mods (#4043)
e.g. Serfrost's Defogger will now be named "Serfrosts Defogger" by
default, instead of "serfrosts_base_defogger_v2-4"

Note that for atmosphere mods it still uses the zip folder name, since otherwise their default name will just be the game's Title ID.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4043
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-06-02 04:08:09 +02:00
crueter 683e6249c3 [cmake] Allow building OpenSSL from source (#4032)
If YUZU_USE_BUNDLED_OPENSSL is off and OpenSSL is *not* installed to the
system, pulls in OpenSSL and Jimmy Park's CMake wrapper, then configures + builds from source.

Some patches were made on top of OpenSSL and openssl-cmake:
- USE_CCACHE is respected from UseCcache.cmake
- CXX/CFLAGS are passed from CMake to the configure script, which sends
  those to the compiler
- Uses a bundled cert.h akin to the bundled OpenSSL build

Closes #3614

~~Before merge: remove verbose stuff~~ actually useful so nvm

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4032
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-06-02 03:40:28 +02:00
crueter eaece15dbd [svc] Stub BreakDebugProcess (#4044)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4044
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-06-02 03:33:38 +02:00
crueter 706a3d0764 [cmake] Disable no-cast-function-type-mismatch on Clang 19 (#4038)
Suppresses this annoying warning during Android builds

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4038
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-06-02 01:28:16 +02:00
crueter bd2d344040 [desktop] Restore metal layer search (#4033)
This was cut out in #3916 by accident.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4033
2026-05-31 04:19:49 +02:00
crueter b7fcec4985 [desktop] Increase rlimit on UNIX/Apple (#4030)
Sets max open fd limit to 8192 on non-windows platforms (or bounds it to
the system hard limit). Complement to the previous VFS PR.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4030
Reviewed-by: MaranBr <[email protected]>
2026-05-31 04:13:56 +02:00
crueter 251a3470dc [desktop] Set max stdio limit to 2048 on MSVCRT environments (#4023)
Such as MINGW64.

I legitimately don't have an explanation for this.

Signed-off-by: crueter <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4023
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-05-28 21:22:28 +02:00
crueter 08f65cbd01 [frontend] Fix auto updater flavors on Windows (#4019)
Matches the build ID and compiler now.

Note that this could still use some work on the Windows side of things.
Ideally, it would just replace the executables in place; however, I
think using the setup files will be better.

Most of my concerns w.r.t this issue is that users will want to install
multiple in the same place; however, I think it's fair to just not
support the older versions at all for now. If users really want to do
that, they can use the portable versions and cry about it.

Signed-off-by: crueter <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4019
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-05-28 20:36:16 +02:00
crueter 4a11d5db2f [file_sys] Increase max file limit to 8192 (#4011)
Now hopefully the Redditors can get off my ass for five seconds

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4011
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-05-25 18:53:47 +02:00
crueter 24dc3834b6 [desktop] Fix YUZU_USE_QT_MULTIMEDIA compilation (#3993)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3993
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-05-21 03:06:04 +02:00
crueter feb8c5f88e [desktop] More qt_common reorganization (#3916)
Ported from QML branch.

Main "big" change is that EmuThread is now a shared state in QtCommon,
not individually managed/passed around by GRenderWindow and MainWindow.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3916
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-05-20 04:49:16 +02:00
crueter 5ab0227624 [cmake] Fix reversed YUZU_USE_BUNDLED_SDL3 (#3980)
oops

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3980
2026-05-18 21:44:29 +02:00
crueter ca6bb3ae1d [cmake, dist] Update udev rule to act on all joysticks, and add install option (#3968)
This is needed for gyro access.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3968
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-05-17 23:44:57 +02:00
crueter 50df88106e [externals] Remove httplib minimum version spec (#3967)
For some Godforsaken reason it uses SameMinorVersion.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3967
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-05-17 22:54:32 +02:00
crueter b154a7da3c [hle, friend] GetFriendListForViewerV2 STUBBED and update list of functions (#3933) (#3937)
Fixes freezes Friend List on firmware 22+ and update list of functions according to data from Switchbrew

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3933
Reviewed-by: crueter <[email protected]>
Reviewed-by: MaranBr <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3937
2026-05-06 20:23:42 +02:00
crueter 37026c8aaa [ci] Remove dead scripts (#3935)
These are horrifically outdated. Just use CMake

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3935
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-05-06 18:49:44 +02:00
crueter 65beea7c73 [docs] Clean up debug and development docs + fix mdlint (#3936)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3936
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-05-06 16:50:38 +02:00
crueter 8b9a841d99 [desktop] Fix QtCommon missing header in bootmanager.cpp (#3931)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3931
2026-05-06 03:27:51 +02:00
crueterandryana 17c341ff6c [video_core] index rescaling metadata by descriptor (#3899) (#3924)
#3898 fix was good but exposed a rescaling metadata mismatch that can cause scaled texture descriptors to read the wrong state so this patch tries to keep them aligned with shader lookup

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3899
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: crueter <[email protected]>

Co-authored-by: ryana <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3924
2026-05-04 20:27:53 +02:00
crueter b537e83bed [android] Fix update checker crash on release mode (#3909)
R8 minifies the UpdateResult's data class to remove the `Set...`
methods, as it's technically not used in Kotlin/Java land.

Just force the minifier to keep it

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3909
2026-04-30 20:32:19 +02:00
crueter 676b1aabfc [frontend] Built-in auto updater (#3845)
Checks latest release and opens a dialog containing the changelog, and
allow the user to select a specific build to download. After
downloading, it prompts the user to open it.

On Windows, this just opens up the zip in File Explorer. In the future setup files will be available. On macOS this opens up the DMG in Finder so the user can drag it to the Applications folder. Android retains the auto-update functionality from before, but updated to the new scheme. Body/View on Forgejo are not implemented, that should be in a future PR.

Additionally, moved some common httplib incantations to `Common::Net`. This will serve as the common network accessor and JSON parser from here on out.

TODO:
- [x] android :(
- [x] Search for builds based on keywords, with weights towards certain builds (e.g. macOS will search for dmg then tar.gz, windows msvc then mingw/exe then zip, etc.)
- [x] remove linux leftovers
- [x] don't allow asset selection on platforms w/o assets
- [x] nightly changelog should be in the real

FUTURE IMPLEMENTATION:
- [ ] Body/View on Forgejo for Android
- [ ] Setup files for Windows (Eden/nightly are separate) -- maybe portable/setup selector?
- [ ] Something else I'm forgetting

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3845
2026-04-28 20:42:23 +02:00
crueter e81f5111de [android] Fix auto updater by using https scheme (#3895)
Seems like some phone vendors require https for URLs? Weird behavior,
works on some phones but not others

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3895
2026-04-26 21:15:07 +02:00
crueter 91058d7383 [desktop] Fix 2 mod manager bugs (#3884)
- Multi-import would show duplicates of a mod if it had both exefs and
  romfs
- Import from folder would crash on some single mods

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3884
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-04-26 03:26:04 +02:00
crueter 048d02e5b4 [android] Remove unused SPIRV strings and make strings check run on PRs (#3885)
I reorganized my runners so it shouldn't be an issue anymore

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3885
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
2026-04-25 23:32:20 +02:00
crueter bd6dd7ecec [maxwell] Fix Flow::Block comp error (#3882)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3882
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-04-25 20:50:11 +02:00
crueterandEden CI 72ae613176 [dist, android] Update translations from Transifex (#3881)
Signed-off-by: Eden CI <[email protected]>
Co-authored-by: Eden CI <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3881
2026-04-25 18:07:47 +02:00
crueter 26ce96297c [frontend] Change update checker to use new endpoints (#3879)
Related: [RFC3870](https://git.eden-emu.dev/eden-emu/eden/issues/3870)

Nightly and stable releases are now served through
`nightly.eden-emu.dev` and `stable.eden-emu.dev`, respectively. These
are stored using Backblaze, and served and cached through the Cloudflare
CDN. Ideally this will reduce costs, though I'll have to wait for my
first invoice to be certain.

These will serve as the new download locations going forward. Since we
have full control over this API, we can make any adjustments we want as
needed. For now, all it does is provide `tag_name`, `name`, and `body`,
the latter of which will be used for the upcoming updater PR.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3879
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-04-24 18:40:49 +02:00
crueter 0257a8d491 [desktop] Change data manager to use tabs instead of a list (#3856)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3856
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-04-21 04:01:39 +02:00
crueter c05d999225 [bcat] Fix news to use Forgejo releases instead (#3841)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3841
2026-04-08 22:09:55 +02:00
crueter 71d3dd67d3 [frontend] Force https on bundled OpenSSL (#3843)
For some unknown reason, bundled OpenSSL likes the `https` scheme,
whereas system OpenSSL (on Gentoo at least) does not... even when the
bundled OpenSSL is built exactly like the Gentoo one, certificate and
all...

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3843
2026-04-08 21:27:10 +02:00
crueter 9b2fba1275 [ci] Add CPMUtil dependency update workflow (#3838)
We have dependabot at home

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3838
2026-04-08 05:15:27 +02:00
crueter 50a6f331cf [desktop] Use pixel-based font sizes instead of point-based for game card (#3827)
Archaic systems that still don't utilize point sizes properly should
like this.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3827
2026-04-07 00:04:16 +02:00
crueter 9c13c71da8 [externals] Require httplib >=0.18.7 (#3830)
This is the version in Trixie and is thus far the oldest known version
that works. We know for a fact that Bookworm's doesn't work, so drop
that entirely.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3830
2026-04-07 00:03:45 +02:00
crueter 7d53849cd3 [desktop] "Fix" card auto-alignment (#3829)
Closes #3707

All this does is anchor the left and right-most cards to their
respective edges, and then equally distributes the gaps between cards
thereafter.

Don't even bother trying to figure out what the hell I just wrote. I'm a
UI designer, not a mathematician.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3829
2026-04-07 00:02:59 +02:00
crueter 88f0e7862a [ci] fix tx-pull cron fr this time (#3828)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3828
2026-04-06 19:49:24 +02:00
crueter 612a203ab2 [docs] add instructions to build older commits (#3826)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3826
2026-04-06 19:12:10 +02:00
crueter 79f29abcba [core] Fix renderdoc API garbage (#3816)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3816
2026-04-01 21:02:20 +02:00
crueter 3ce5463d2d [cmake] Remove shader dir regeneration (#3813)
We ***do not*** support BSD make. Period.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3813
2026-04-01 08:10:39 +02:00
crueter 6e76014824 [ci] Move workflows to .forgejo (#3808)
Primarily to prevent mirrors from trying to run bogus actions.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3808
2026-04-01 02:09:56 +02:00
crueter bb71ace365 [cmake] switch nightly auto updater to forgejo (#3807)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3807
2026-04-01 02:08:46 +02:00
crueter c0fbb2526d [ci] Fix transifex workflow (#3805)
Now should auto update

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3805
2026-03-31 21:13:50 +02:00
crueter 93472023e2 [cmake] Fix macOS frameworks, and icon set usage (#3782)
- The Xcode generator /mandates/ that you pass in the `.icon` directory
  into the build system, where it can then compose the asset itself.
- Assets.car and eden.icns were improperly handled; they are now
  automatically generated and should properly be applied as needed. I
  will need someone on Tahoe to confirm, however, as I am on Sequoia.
- Added some missing frameworks, ported from the KosmicKrisp branch.

Signed-off-by: crueter <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3782
2026-03-26 07:59:53 +01:00
crueter ad58ab8976 [externals] Use Eden mirrors for llvm-mingw and tzdb (#3766)
My server is getting hammered, let's just move them here.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3766
2026-03-23 17:05:40 +01:00
crueter f0a4ac7359 [frontend] only set https on Android (#3733)
Otherwise it breaks the shit out of every other platform.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3733
2026-03-15 02:57:32 +01:00
crueter 9cf1e19d98 [externals] Update SDL2 (#3731)
https://github.com/libsdl-org/SDL/pull/15207

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3731
2026-03-15 01:45:11 +01:00
crueter 8678cb06eb [meta] clang-format literally all of the Qt code (#3706)
I'm tired of dealing with this tbh

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3706
Reviewed-by: Lizzie <[email protected]>
2026-03-10 06:51:08 +01:00
crueter 769edbfea3 [video_core] Revert "Simplify TextureCache GC and remove redundant code" (#3652) (#3704)
regr. Steam Deck

Please, for the love of God, stop saying "YOLO good to merge" after
testers report performance regressions (and promptly get brushed to the
side). Seriously, what the hell?

This reverts commit f8ea09fa0f.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3704
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: DraVee <[email protected]>
2026-03-10 05:44:51 +01:00
crueter 0ff1d215c8 [desktop] Port some QtCommon changes from QML branch (#3703)
- Linker now resolves implementation differences
- Remove unneeded ifdefs
- Better abstractions overall

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3703
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
2026-03-10 05:37:45 +01:00
crueter 07e3a2aa46 [settings] Disable fastmem on Linux systems with non-4kb page sizes (#3669)
Asahi, etc

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3669
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
2026-03-10 05:36:12 +01:00
crueter f5e2b1fb13 [dynarmic] Remove incorrect LICENSE (#3698)
Our dynarmic is GPLv3, not BSD.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3698
2026-03-08 23:22:51 +01:00
crueter 3d1a67af18 [externals] Update dependencies (#3664)
* zlib: 1.3.1.2 -> 1.3.2
* vulkan-validation-layers: 1.4.335.0 -> 1.4.341.0
* sirit: 1.0.3 -> 1.0.4
* httplib: 0.35.0 -> 0.37.0
* xbyak: 7.33.3 -> 7.35.2
* catch2: 3.12.0 -> 3.13.0
* vulkan-headers: 1.4.342 -> 1.4.345
* vulkan-utility-libraries: 1.4.342 -> 1.4.345

Also fixed a build error with newer xbyak.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3664
2026-03-08 22:33:51 +01:00
crueteranddarkpaper c7b23f4a1a [time] fix: guard timezone out buffer logging (#3668)
Original text, per the emailed patch:

---------------

Hello,

I am submitting a small fix to prevent an unintended abort when _GLIBCXX_ASSERTIONS is enabled, caused by out-of-bounds access in debug logging.
Background / Issue

In the server-side implementations of ITimeZoneService::ToPosixTime and ToPosixTimeWithMyRule, the SCOPE_EXIT debug logging previously accessed out_times[0] and out_times[1] unconditionally.

However, out_times is an IPC-provided output buffer (OutArray, which inherits from std::span). Its length depends on the caller-provided buffer capacity. During debugging, I encountered a case where out_times.size() == 1.

Under _GLIBCXX_ASSERTIONS, accessing out_times[1] triggers a std::span::operator[] assertion failure (std::__glibcxx_assert_fail) and aborts the process, causing the service thread to crash. This results in an unintended crash caused solely by debug logging.
Change Description

In the SCOPE_EXIT logging blocks of both ToPosixTime and ToPosixTimeWithMyRule, I added bounds checks before accessing out_times[0] and out_times[1]:

    Access out_times[0] only if out_times.size() > 0

    Access out_times[1] only if out_times.size() > 1

    Print 0 when the corresponding element is unavailable

This change only affects debug log output. It does not modify IPC semantics or the time conversion logic itself.
Reproduction Context (for reference)

I encountered this issue while running 13 Sentinels: Aegis Rim (title ID: 01008D7016438000). During the “Load Game” flow, ToPosixTimeWithMyRule is invoked with an out_times buffer of length 1, which previously led to the out-of-bounds access in the logging code.

Thank you for your time and review.

Best regards,
darkpaper

Environment: Arch Linux / KDE / X11

This email and the accompanying patch were prepared with assistance from
an LLM.

Authored-by: darkpaper <[email protected]>
Signed-off-by: crueter <[email protected]>

Co-authored-by: darkpaper <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3668
2026-03-08 20:53:37 +01:00
crueter e4122dae1d [desktop] addons: open mod folder in rc menu (#3662)
also fixed the multiselection being absolutely horrendous

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3662
2026-03-06 16:38:21 +01:00
crueter 464212393e [gitignore] add *.tar.zst (#3663)
the amount of times I've accidentally committed a tar.zst to this
repository...

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3663
2026-03-02 05:28:26 +01:00
crueter fc63de39dd [docs] Bring back the Options page, and clean up LLM policy (#3649)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3649
2026-02-27 03:33:36 +01:00
crueter bf25058dbd [docs] SIGNUP: Add spam/junk notice, email patch info, and clarify some things (#3648)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3648
2026-02-27 03:33:29 +01:00
crueter f957c36238 [vk] Disable vsync when Turbo Mode is enabled (#3633)
Note to self: you have a 60Hz display, use it

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3633
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-02-26 01:04:23 +01:00
crueter ee67853636 [desktop] Show basic driver info on GPU selector box (#3636)
Shows a short driver identification string in the Graphics Device combo box (desktop only, Android doesn't need this at all)

Largely meant for debugging, especially macOS. Maybe Windows in the future once MESA begins working on FOSS drivers over there. Linux on ARM platforms too maybe? And Nvidia

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3636
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-02-26 01:04:14 +01:00
crueterandRedBlackAka 0ff84ef312 [desktop] Fix path corruption for special characters on Windows (#3635)
https://github.com/azahar-emu/azahar/pull/1745

Authored-by: RedBlackAka <[email protected]>
Signed-off-by: crueter <[email protected]>

Co-authored-by: RedBlackAka <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3635
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-02-25 14:53:49 +01:00
crueter 00e2128fab [desktop] Allow deletion of add-ons from the add-on menu (#3626)
Adds a location param to the Patch struct which can be used to delete
any installed mods at the user's request. You can delete multiple at
once too, or just one by right-clicking

You are not able to delete game updates, DLC, or SDMC mods.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3626
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Maufeat <[email protected]>
2026-02-25 03:38:13 +01:00
crueter f25582833a [cmake] Start requiring SDL2 (#3632)
Closes #3466

Like said in the issue and the OpenSSL equivalent, disabling SDL2 on
desktop is just not something we want to do. It's not worth the added
burden of supporting the n+1'th matrix.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3632
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-02-25 02:49:47 +01:00
crueter 7758f70833 [core] Fix language index mismatches (#3629)
For reasons I am not knowledgeable enough to answer, NACP language and
nn::settings::Language don't match.

PR #3587 however erroneously matched language_index directly to NACP
language which caused those weird mismatches (since idx 2 = French
actually matches up to an NACP language of Japanese). So to get around
that just go back to the mapping of language idx -> nacp language

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3629
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: DraVee <[email protected]>
2026-02-25 00:41:21 +01:00
crueter 270232e8d6 [dynarmic] Revert "Transition IR::Block to use stable_vector<Inst>, remove inline pool + pooled vector, remove unused mutable get/set block functors (#3543)" (#3625)
This reverts commit d64f7dfe5c.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3625
2026-02-24 19:34:34 +01:00
crueter 89dd600790 [cmake] Comment out YUZU_USE_QT_MULTIMEDIA usages (#3616)
This option is currently dead code. Let's not use it. In the future we
should definitely update it. (or not, not a single soul used this beforehand).

See: #3468

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3616
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-02-23 03:47:25 +01:00
crueter eb57e11f42 [cmake] Delete YUZU_USE_CPM forever (#3615)
This option is really confusing, and has long since outlived its
originally intended purpose.

Goodbye forever!

Closes #3467

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3615
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-02-23 03:47:19 +01:00
crueter 45eb9cfcee [desktop] Reset speed mode on game shutdown (#3613)
Closes #3602

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3613
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-02-23 02:52:12 +01:00
crueter 80d6172084 [desktop] Display currently applied update in tooltip alongside playtime (#3611)
Also nicely formats both it and play time, alongside fallbacks if they
have nothing

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3611
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-02-23 02:03:30 +01:00
crueter d8b2971a2e [desktop] Fix game list name column starting out super small by default (#3610)
Unsure why but geometry is at 100x30 when this func is called. For now
just use sane ish default of 840

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3610
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-02-23 00:20:14 +01:00
crueter 12157214b6 [externals] Update FFmpeg to c7b5f1537d (#3604)
Fixes some Vulkan VP9 thing

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3604
Reviewed-by: DraVee <[email protected]>
2026-02-22 23:28:46 +01:00
crueter 0574d7d2c9 [desktop] Fix mod import for romfs mods (#3609)
Forgot a comma :(

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3609
Reviewed-by: DraVee <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-02-22 22:03:32 +01:00
crueter fecf763a51 [desktop] Fix crash on restart (#3600)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3600
Reviewed-by: DraVee <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
2026-02-22 04:15:26 +01:00
crueter 308a995275 [desktop] Revert FPS counter to 500ms (#3586)
This broke things, needs more investigation.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3586
2026-02-20 15:59:53 +01:00
crueter f8145152c7 [cmake] Fix MoltenVK Fetch and Dynarmic tests build (#3559)
Originally was a test for Qt 6.9.3. Still broken, I have absolutely zero idea how to fix it.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3559
Reviewed-by: Lizzie <[email protected]>
2026-02-20 15:59:45 +01:00
crueter f4e7fc91ba [cmake, frontend] Fix update checker and move to self-hosted Git (#3558)
httplib doesn't like when you include the protocol, as it would seem

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3558
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-02-15 20:51:05 +01:00
crueter 45c9f9bbb3 [desktop] Add basic Frametime/FPS overlay (#3537)
Just displays min, max, avg frametime/fps, alongside a chart of FPS in
the last 30 seconds.

Notes:
- Qt Charts is now required
- FPS/frametime collector now runs 2x as often. TODO: keep status bar at
  500ms, but put perf overlay at 250ms

Signed-off-by: crueter <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3537
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2026-02-15 19:22:19 +01:00
crueter 19e2dba35a [cmake] CPMUtil: Don't consider system packages if FORCE_BUNDLED is on (#3539)
Thanks, Debian.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3539
2026-02-14 03:33:03 +01:00
crueter 0634b4a278 [externals] Update SDL2 CI (#3538)
https://github.com/eden-emulator/Issue-Reports/issues/327

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3538
Reviewed-by: MaranBr <[email protected]>
2026-02-14 03:24:36 +01:00
crueter 2b979024cb [frontend] Slow and Turbo modes (#3525)
Closes #3344

Adds slow and turbo modes with configurable speeds that can then be
toggled by the user. Behavior is:
- Standard/slow limit, toggle turbo = turbo
- Turbo limit, toggle turbo = standard
- Standard/turbo limit, toggle slow = slow
- Slow limit, toggle slow = standard

Enabling the turbo/slow mode enables the frame limiter unconditionally.

This has some conflicts with VSync. For example when I set my refresh
rate to 60hz and enable vsync, turbo mode does nothing. Not sure how to
go about fixing this, @MaranBr probably knows better the proper
solution.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3525
Reviewed-by: DraVee <[email protected]>
Reviewed-by: CamilleLaVey <[email protected]>
2026-02-12 01:31:55 +01:00
crueter aaf1a597ef [externals] Don't force xbyak to be bundled (#3526)
I explicitly asked for it to be removed, and it was added back again.
Why?

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3526
2026-02-11 19:37:20 +01:00
crueter ca9f2d43be [desktop] Add icon-only mode to grid and improve design (#3485)
- Move Game Icon Size to the main toolbar. It's cleaner that way
- Add a "Show Game Name" toggle that does as it says. Disabling it
  basically creates an "icons-only" mode. Useful for controller-only
  nav with big icons (TODO: maybe make a 192 size?)
- Fixed a crash with controller nav. Oops
- Rounded corners of the game icon in grid mode
- Fixed the scroll bar creating extra clamping range on the grid icons
- Item can be deselected if user clicks on the blank space outside of the view

As a bonus fixed a crash on mod manager

Future TODOs for design:
- [ ] Row 1 type. Not sure what to do here tbh.
- [ ] Move around game list settings in configure_ui to make it clear
  that nothing there affects the grid view.
- [ ] 192x192 size? 256 feels too big on my 1440p screen whereas 128
  feels too small.
- Set text space as a function of fontMetrics.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3485
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Maufeat <[email protected]>
2026-02-07 22:48:39 +01:00
crueter b9e052b3a7 [desktop] Basic grid view implementation (#3479)
Closes #3441

Basic impl of a grid view on the game list. The ideal solution here
would be to use QSortFilterProxyModel and abstract the game list model
out to a QStandardItemModel, but that is too much effort for me rn.
Adapted the "card" design from QML, can 1000% be improved but QPainter
is just such a pain to deal with. Implanting a Qt Quick scene into there
would legitimately be easier.

Anyways, margins and text sizes lgtm at all sizes, though please give
feedback on both that and the general card design.

Future TODOs:
- [ ] Auto size mode
- [ ] Refactor to use models

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3479
2026-02-06 19:51:01 +01:00
crueter e07e269bd7 [desktop] Add mod importer from folder and zip (#3472)
Closes #3125

Adds buttons to the addons page that imports a mod (or mods) from zip or folder.

Currently known to work with mods that provide proper romfs/exefs things, unsure about cheats and such. Also works on mods that just stuff things into the root of the zip.

TODO:
- [ ] test folder more thoroughly
- [ ] cheats
- [ ] test all sorts of mod pack types

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3472
Reviewed-by: Lizzie <[email protected]>
2026-02-06 06:37:30 +01:00
crueter d59fcf01bf [frontend] Generate web token at runtime (#3462)
Rather than having that hardcoded one like before. Also adds
infrastructure which should make it easier to setup defaults at runtime
(e.g. GPU stuff?)

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3462
Reviewed-by: DraVee <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2026-02-04 04:16:39 +01:00
crueter 8ed0ed5828 [desktop] Add smooth scrolling and shift scrolling to game list (#3452)
Intercepts Qt's awful scroll wheel handling and passes it off to a
continuously self-integrating animation on the scroll bar positions.
Code kind of sucks right now and I think has a bit of a perf bottleneck,
but that's somewhat expected in the way I implemented it. Maybe look for
a better sln? QScroller?

Also while I was at it I added shift scrolling.

TODO:
- [ ] TouchGesture? With overshoot off
- [ ] Perf

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3452
2026-02-02 19:07:12 +01:00