eden-miror/src/yuzu
crueter 676b1aabfc
Some checks are pending
tx-src / sources (push) Waiting to run
Check Strings / check-strings (push) Waiting to run
[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 <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3845
2026-04-28 20:42:23 +02:00
..
applets [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
configuration [frontend] Built-in auto updater (#3845) 2026-04-28 20:42:23 +02:00
debugger [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
game [desktop] Use pixel-based font sizes instead of point-based for game card (#3827) 2026-04-07 00:04:16 +02:00
multiplayer [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
render [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
updater [frontend] Built-in auto updater (#3845) 2026-04-28 20:42:23 +02:00
util [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
about_dialog.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
about_dialog.h
aboutdialog.ui [dist, docs] Revolt renames itself to Stoat, change rvlt.gg to stt.gg (#2656) 2025-12-17 14:36:35 +01:00
bootmanager.cpp [video_core] Properly disable/avoid building OpenGL when it's disabled (#3692) 2026-03-11 16:49:29 +01:00
bootmanager.h [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
breakpad.cpp User Data Migration from Citron, Sudachi, and Yuzu (#91) 2025-05-08 22:16:07 +00:00
breakpad.h qt: implement automatic crash dump support 2023-10-08 11:35:53 -04:00
CMakeLists.txt [frontend] Built-in auto updater (#3845) 2026-04-28 20:42:23 +02:00
compatdb.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
compatdb.h Removed telemetry and anonymized SCM (git) strings 2025-04-04 03:40:47 +02:00
compatdb.ui fix a large variety of issues (#101) 2025-05-11 23:58:25 +00:00
compatibility_list.cpp Update fmt to allow for v11 2025-04-10 01:11:22 +02:00
compatibility_list.h [*] change all std::unordered_map and std::unordered_set into ankerl::unordered_dense::map/set variants (#3442) 2026-02-10 03:34:07 +01:00
data_dialog.cpp [desktop] Change data manager to use tabs instead of a list (#3856) 2026-04-21 04:01:39 +02:00
data_dialog.h [desktop] Change data manager to use tabs instead of a list (#3856) 2026-04-21 04:01:39 +02:00
data_dialog.ui [desktop] Change data manager to use tabs instead of a list (#3856) 2026-04-21 04:01:39 +02:00
data_widget.ui [desktop] Data Manager, data import/export (#2700) 2025-10-15 04:54:41 +02:00
deps_dialog.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
deps_dialog.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
deps_dialog.ui [cmake, frontend] feat: CPMUtil + dependency viewer (#238) 2025-08-11 22:27:29 +02:00
hotkeys.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
hotkeys.h hid_core: Move hid to it's own subproject 2024-01-05 11:41:15 -06:00
Info.plist [meta, macos] update plist, register extensions for .NCA/.NSO/.NSP/.XCI and update identifier (#3369) 2026-01-29 17:22:47 +01:00
install_dialog.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
install_dialog.h
libqt_common.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
libqt_common.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
loading_screen.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
loading_screen.h [*] change all std::unordered_map and std::unordered_set into ankerl::unordered_dense::map/set variants (#3442) 2026-02-10 03:34:07 +01:00
loading_screen.ui
main.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
main.ui [desktop] Add basic Frametime/FPS overlay (#3537) 2026-02-15 19:22:19 +01:00
main_window.cpp [frontend] Built-in auto updater (#3845) 2026-04-28 20:42:23 +02:00
main_window.h [frontend] Built-in auto updater (#3845) 2026-04-28 20:42:23 +02:00
migration_dialog.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
migration_dialog.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
migration_worker.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
migration_worker.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
ryujinx_dialog.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
ryujinx_dialog.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
ryujinx_dialog.ui [qt] Ryujinx save data link (#2815) 2025-10-28 03:46:47 +01:00
set_play_time_dialog.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
set_play_time_dialog.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
set_play_time_dialog.ui [core, android] Initial playtime implementation (#2535) 2025-10-17 22:47:43 +02:00
startup_checks.cpp [video_core] Properly disable/avoid building OpenGL when it's disabled (#3692) 2026-03-11 16:49:29 +01:00
startup_checks.h [compat] fix solaris Qt build (#194) 2025-08-15 04:12:45 +02:00
user_data_migration.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
user_data_migration.h [cmake] fixes for XCode when having languages other than C/C++ (#3772) 2026-03-26 04:46:43 +01:00
vk_device_info.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
vk_device_info.h
yuzu.qrc Rename Yuzu logo to Eden 2025-04-13 01:15:36 +01:00
yuzu.rc Rename Yuzu logo to Eden 2025-04-13 01:15:36 +01:00