eden/src/yuzu/configuration
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
..
addon [desktop] Fix 2 mod manager bugs (#3884) 2026-04-26 03:26:04 +02:00
system [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configuration_shared.cpp common,qt-config: Remove usage of forward_list 2023-07-21 23:09:09 -04:00
configuration_shared.h common,qt-config: Remove usage of forward_list 2023-07-21 23:09:09 -04:00
configure.ui [desktop] fix random qt annoyances (#226) 2025-08-08 01:25:00 +02:00
configure_applets.cpp settings: enable error applet 2024-02-24 22:56:08 -05:00
configure_applets.h general: add default configurations for applet mode 2024-02-09 09:20:53 -05:00
configure_applets.ui general: add default configurations for applet mode 2024-02-09 09:20:53 -05:00
configure_audio.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_audio.h settings: Allow audio sink, input, and output to be set per game 2024-01-31 09:31:19 -05:00
configure_audio.ui configure_audio: Implement ui generation 2023-07-21 10:56:07 -04:00
configure_camera.cpp [desktop] port IR Camera to Qt6 & fix camera saving on windows (#3630) 2026-02-28 01:06:59 +01:00
configure_camera.h [desktop] port IR Camera to Qt6 & fix camera saving on windows (#3630) 2026-02-28 01:06:59 +01:00
configure_camera.ui yuzu: Hook qt camera to camera driver 2022-07-23 19:40:21 -05:00
configure_cpu.cpp [arm] remove vtable bounce hack (#3776) 2026-04-06 19:12:51 +02:00
configure_cpu.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_cpu.ui Fast CPU Time & Improved Fast GPU Time (#109) 2025-05-29 08:19:51 +00:00
configure_cpu_debug.cpp core: add option to break on unmapped access 2022-12-02 08:25:45 -05:00
configure_cpu_debug.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
configure_cpu_debug.ui core: add option to break on unmapped access 2022-12-02 08:25:45 -05:00
configure_debug.cpp [settings] remove duplicate settings (#3847) 2026-04-17 06:58:40 +02:00
configure_debug.h [android, qt] 16 bit debug knob set for quick development toggles (#3076) 2025-11-25 00:41:45 +01:00
configure_debug.ui [settings] Add back & properly implement use_dev_keys (#3631) 2026-03-08 22:37:20 +01:00
configure_debug_controller.cpp hid_core: Move hid to it's own subproject 2024-01-05 11:41:15 -06:00
configure_debug_controller.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
configure_debug_controller.ui ui/themes: Cleanup UI 2020-11-15 23:33:19 -05:00
configure_debug_tab.cpp general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
configure_debug_tab.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
configure_debug_tab.ui yuzu qt: Remove global system instances from config, WaitTree, main 2021-10-07 13:50:13 -04:00
configure_dialog.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
configure_dialog.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_filesystem.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_filesystem.h [fs/core] Load external content without NAND install (#2862) 2026-02-06 14:05:44 +01:00
configure_filesystem.ui [qt, android] Implement custom save path setting and migration + Implement custom path settings for Android (#3154) 2025-12-31 21:20:30 +01:00
configure_general.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_general.h [fs/core] Load external content without NAND install (#2862) 2026-02-06 14:05:44 +01:00
configure_general.ui [fs/core] Load external content without NAND install (#2862) 2026-02-06 14:05:44 +01:00
configure_graphics.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
configure_graphics.h [common] merge RenderBackend and ShaderBackend options (#3313) 2026-01-18 12:33:00 +01:00
configure_graphics.ui configure_graphics: Reimplement bg_color 2023-07-21 10:56:07 -04:00
configure_graphics_advanced.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_graphics_advanced.h yuzu: Add per-game linux gamemode configuration 2024-01-02 21:21:40 +01:00
configure_graphics_advanced.ui [desktop, settings] new RendererHacks category, move to Extensions -> Extras, fix GPU accuracy naming (#3245) 2025-12-31 23:45:58 +01:00
configure_graphics_extensions.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_graphics_extensions.h Add dynamic state extension configs 2025-04-23 20:57:53 -04:00
configure_graphics_extensions.ui [desktop, settings] new RendererHacks category, move to Extensions -> Extras, fix GPU accuracy naming (#3245) 2025-12-31 23:45:58 +01:00
configure_hotkeys.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_hotkeys.h yuzu: Make controller keys easier to assign 2024-02-06 16:51:39 -06:00
configure_hotkeys.ui yuzu qt: Remove global system instances from config, WaitTree, main 2021-10-07 13:50:13 -04:00
configure_input.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_input.h [chore] Fixed a couple memory leaks using up ~15 MB each iteration (#398) 2025-12-26 02:55:52 +01:00
configure_input.ui Update configure_input.ui 2022-07-19 16:20:16 -03:00
configure_input_advanced.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_input_advanced.h core: hid: Signal color updates 2023-11-04 14:13:18 -06:00
configure_input_advanced.ui [desktop, core] yuzu -> Eden, eden -> Eden 2025-07-19 00:12:21 -04:00
configure_input_per_game.cpp hid_core: Move hid to it's own subproject 2024-01-05 11:41:15 -06:00
configure_input_per_game.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_input_per_game.ui configure_input_per_game: Allow configuring all 8 players 2022-11-28 19:22:18 -05:00
configure_input_player.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_input_player.h Convert files to LF eol 2023-11-04 18:25:40 +00:00
configure_input_player.ui fix a large variety of issues (#101) 2025-05-11 23:58:25 +00:00
configure_input_player_widget.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_input_player_widget.h [chore] Fixed a couple memory leaks using up ~15 MB each iteration (#398) 2025-12-26 02:55:52 +01:00
configure_input_profile_dialog.cpp general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
configure_input_profile_dialog.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
configure_input_profile_dialog.ui applets/controller: Change the input button to create input profiles 2020-11-15 23:33:21 -05:00
configure_motion_touch.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
configure_motion_touch.h yuzu: Add per-game linux gamemode configuration 2024-01-02 21:21:40 +01:00
configure_motion_touch.ui [meta] remove stale/dead links in help/about (#3064) 2025-11-22 21:08:55 +01:00
configure_mouse_panning.cpp yuzu: Ensure mouse panning can't be enabled with real mouse emulation 2023-06-30 18:59:39 -06:00
configure_mouse_panning.h yuzu: Add per-game linux gamemode configuration 2024-01-02 21:21:40 +01:00
configure_mouse_panning.ui yuzu: Ensure mouse panning can't be enabled with real mouse emulation 2023-06-30 18:59:39 -06:00
configure_network.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_network.h ui: retranslate the network tab 2022-05-01 21:39:39 -07:00
configure_network.ui Add Airplane Mode + Host Network Interface Details (#204) 2025-06-26 18:55:34 +00:00
configure_per_game.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_per_game.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_per_game.ui c_per_game: Inform when settings might not be configurable 2023-07-21 10:56:07 -04:00
configure_per_game_addons.cpp [frontend] Built-in auto updater (#3845) 2026-04-28 20:42:23 +02:00
configure_per_game_addons.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_per_game_addons.ui [desktop] Add mod importer from folder and zip (#3472) 2026-02-06 06:37:30 +01:00
configure_profile_manager.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_profile_manager.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_profile_manager.ui [desktop] refactor profile management and fix some misc bugs with it (#3415) 2026-01-29 17:17:28 +01:00
configure_ringcon.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_ringcon.h Convert files to LF eol 2023-11-04 18:25:40 +00:00
configure_ringcon.ui Hyphenate Joy-Con and clarify further 2023-06-25 12:51:16 -04:00
configure_system.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_system.h Merge pull request #12555 from flodavid/fix-gamemode-setting 2024-01-28 15:02:34 -05:00
configure_system.ui yuzu: create linux group in general settings 2023-11-25 19:30:37 +01:00
configure_tas.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_tas.h Convert files to LF eol 2023-11-04 18:25:40 +00:00
configure_tas.ui [desktop] tas: add option to disable file overwrite dialog (#3657) 2026-03-07 20:08:47 +01:00
configure_touch_from_button.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_touch_from_button.h chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
configure_touch_from_button.ui ui/themes: Cleanup UI 2020-11-15 23:33:19 -05:00
configure_touch_widget.h chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
configure_touchscreen_advanced.cpp config: Unify config handling under frontend_common 2023-11-21 01:58:13 -05:00
configure_touchscreen_advanced.h Convert files to LF eol 2023-11-04 18:25:40 +00:00
configure_touchscreen_advanced.ui [desktop, core] yuzu -> Eden, eden -> Eden 2025-07-19 00:12:21 -04:00
configure_ui.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_ui.h yuzu-qt: Screenshots depend more on the graphics settings 2023-08-16 16:12:42 -04:00
configure_ui.ui [desktop] Add icon-only mode to grid and improve design (#3485) 2026-02-07 22:48:39 +01:00
configure_vibration.cpp service: hid: Fully implement abstract vibration 2024-01-15 23:15:40 -06:00
configure_vibration.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
configure_vibration.ui yuzu: config: Vibrate the controller while configuring vibration strength 2022-02-02 14:54:24 -06:00
configure_web.cpp [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_web.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00
configure_web.ui [desktop, core] yuzu -> Eden, eden -> Eden 2025-07-19 00:12:21 -04:00
input_profiles.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
input_profiles.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
shared_widget.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
shared_widget.h [meta] clang-format literally all of the Qt code (#3706) 2026-03-10 06:51:08 +01:00