Commit Graph
247 Commits
Author SHA1 Message Date
Inix cde02bfe46 [frontend, android] Move update_checker to frontend_common and add Android support (#2687)
I still have to add a setting to disable the auto update checking on a later PR, firstly lets make sure i didn't accidentally break anything  with CMAKE. or QT.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2687
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: crueter <[email protected]>
Co-authored-by: Inix <[email protected]>
Co-committed-by: Inix <[email protected]>
2025-10-21 23:36:35 +02:00
crueter f1debdbac5 [license-header] make it actually work with posix shells (#2797)
grep doesn't support -P in POSIX, so to get around this we just replace
\n with space and match that with a POSIX basic expression

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2797
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2025-10-21 21:00:26 +02:00
crueter 2e9dbe3f1d [cmake, tools, docs] Update CPMUtil (#2790)
updates CPMUtil to
[`8f9b39fc98`](https://git.crueter.xyz/CMake/CPMUtil/commit/8f9b39fc980fc7079c7c4471c19f219180abe368)

Makes the tooling/docs better and enforces usage of tar.gz everywhere as
opposed to zips

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2790
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2025-10-20 03:43:15 +02:00
crueter d7cd7c6313 [license-header] refactor: excludes, updating, better logic (#2780)
Rewrite of license-header.sh. Lots of new goodies:
- Fully POSIX compliant
- supports dash arguments (-u/--update, -c/--commit, -uc for both)
- can update year or malformed headers in-place now
- accounts for shell scripts
- exclusion of external files (e.g. sse2neon, my CMake modules/scripts)
- better, more extensible logic all around

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2780
2025-10-20 02:59:43 +02:00
crueter b330117a14 [dist] update translations from transifex (#2569)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2569
Reviewed-by: MaranBr <[email protected]>
2025-10-18 19:29:19 +02:00
crueter 6a4fa11ac3 [externals] only build spirv-tools as static (#2680)
Upstream forcefully builds the shared lib and also builds shared and
static separately for... some reason. I made a PR that fixes that, so
for now let's use it here

should speed up build on Android and Windows

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2680
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: MaranBr <[email protected]>
2025-10-07 01:31:36 +02:00
Caio Oliveira 50ceb9a43a [.ci] install-msvc: fix installation on MSVC (#2611)
* changed from Build Tools to Community (congrats Microsoft very cool)
* add spining to show it didnt stopped installing

Signed-off-by: Caio Oliveira <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2611
Reviewed-by: crueter <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: Caio Oliveira <[email protected]>
Co-committed-by: Caio Oliveira <[email protected]>
2025-09-29 18:42:04 +02:00
lizzie 1d83ba733c [dist] shrink png asset size with optipng, scripts to generate assets (#2573)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2573
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: crueter <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2025-09-26 03:53:54 +02:00
crueter 76a8a6e039 [cmake] feat: FFmpeg CI, allow 16kb android builds, update translations for transifex (#2543)
Uses an FFmpeg CI for Android and Windows, also available for Linux. Saves compile time on Linux and is more consistent on Windows/Android.

Also, updates VVL and FFmpeg to allow for a fully 16kb-compliant Android build. Bonus: APK size is down 30%

Updated all localization files for Transifex while I was at it

TODO for future: Android 8.0 with vp9_vulkan et al.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2543
Reviewed-by: Maufeat <[email protected]>
Reviewed-by: Lizzie <[email protected]>
2025-09-23 19:38:11 +02:00
lizzie 191e4c75a1 [meta] fix license headers (#2547)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2547
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2025-09-21 21:58:59 +02:00
crueterandMaranBr f4386423e8 [qt] refactor: qt_common lib (#94)
This is part of a series of PRs made in preparation for the QML rewrite. this PR specifically moves a bunch of utility functions from main.cpp into qt_common, with the biggest benefit being that QML can reuse the exact same code through ctx passthrough.

Also, QtCommon::Frontend is an abstraction layer over several previously Widgets-specific stuff like QMessageBox that gets used everywhere. The idea is that once QML is implemented, these functions can have a Quick version implemented for systems that don't work well with Widgets (sun) or for those on Plasma 6+ (reduces memory usage w/o Widgets linkage) although Quick from C++ is actually anal, but whatever.

Other than that this should also just kinda reduce the size of main.cpp which is a 6000-line behemoth rn, and clangd straight up gives up with it for me (likely caused by the massive amount of headers, which this DOES reduce).

In the future, I probably want to create a common strings lookup table that both Qt and QML can reference--though I'm not sure how much linguist likes that--which should give us a way to keep language consistent (use frozen-map).

TODO: Docs for Qt stuff

Co-authored-by: MaranBr <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/94
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Shinmegumi <[email protected]>
2025-09-15 17:21:18 +02:00
Caio Oliveira 28d26b0d76 [ci, docs] Refactor building with Windows (#400)
* this a initial PR to improve documentation of building under windows

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/400
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: crueter <[email protected]>
Reviewed-by: Shinmegumi <[email protected]>
Co-authored-by: Caio Oliveira <[email protected]>
Co-committed-by: Caio Oliveira <[email protected]>
2025-09-12 16:07:35 +02:00
9d2681ecc9 [cmake] enable clang-cl and WoA builds (#348)
Compilation and CMake fixes for both Windows on ARM and clang-cl, meaning Windows can now be built on both MSVC and clang on both amd64 and aarch64.

Compiling on clang is *dramatically* faster so this should be useful for CI.

Co-authored-by: crueter <[email protected]>
Co-authored-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/348
Reviewed-by: CamilleLaVey <[email protected]>
Reviewed-by: crueter <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2025-09-09 20:47:49 +02:00
crueterandSDK Chan 428f136a75 [cmake] CPMUtil: formatting, git_host, new repos, more system deps, libusb (#392)
I promise I'm a UI developer

- mbedtls can now be used as a system package
- zycore can now be used as a system package
- cleaned up dynarmic externals
- fixed libusb incorrectly showing as bundled
- add version/tag formatting to JSON
- add custom GIT_HOST option for packages
- moved some of my repos to my new git
- slightly better version identification
- combined VUL/VH since they are codependent (using my combo vendor)
- fix cpmfile inclusion
- remove libusb submodule

This PR succeeds #383 since it includes it

Co-authored-by: SDK Chan <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/392
Co-authored-by: crueter <[email protected]>
Co-committed-by: crueter <[email protected]>
2025-09-08 19:21:38 +02:00
lizzie 10dd003d0f [dynarmic, cmake] allow LTO build for dynarmic (#252)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/252
Reviewed-by: crueter <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2025-09-08 00:49:46 +02:00
Guo Yunhe 4b5a8e0621 [cmake] changed app id from org.eden_emu.eden to dev.eden_emu.eden (#237)
it is better to match app id with website domain

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/237
Reviewed-by: crueter <[email protected]>
Co-authored-by: Guo Yunhe <[email protected]>
Co-committed-by: Guo Yunhe <[email protected]>
2025-08-31 04:56:23 +02:00
crueterandCaio Oliveira 5180031313 [ci, cmake] openssl updates, fix drpc and ci scripts (#283)
- Add bundled OpenSSL libs for Solaris, FreeBSD, Linux
- Fix CPMUtil default on msvc
- Update CI scripts (thanks dravee)
- PLATFORM_<OS> helpers for non-ANDROID UNIX

Co-authored-by: Caio Oliveira <[email protected]>
Signed-off-by: crueter <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/283
Reviewed-by: Lizzie <[email protected]>
Co-authored-by: crueter <[email protected]>
Co-committed-by: crueter <[email protected]>
2025-08-19 21:29:36 +02:00
crueter d96da5104b [cmake] final CPM fixes (#267)
- remove vcpkg references in docs
- move externals around
- fix non-cpm stuff
- remove redundant simpleini call/dir

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/267
Reviewed-by: Maufeat <[email protected]>
2025-08-16 03:19:02 +02:00
crueter 3e55dc6352 [cmake] refactor: CPM over vcpkg (#250)
Completely replaces vcpkg with CPM for all "system" dependencies. Primarily needed for Android and Windows. Also uses my OpenSSL CI for those two platforms.

In theory, improves configure and build time by a LOT and makes things much easier to manage

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/250
Reviewed-by: Lizzie <[email protected]>
2025-08-14 20:30:30 +02:00
lizzie 37618e1043 [dist] fix icons (#221)
Signed-off-by: lizzie <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/221
Reviewed-by: crueter <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2025-08-07 22:05:21 +02:00
crueter f1e74f6855 [meta] remove MicroProfile (#185)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/185
Reviewed-by: Lizzie <[email protected]>
2025-08-06 07:48:11 +02:00
lizzie 5ee06b2d75 [dist] update icons + script to update icons (#198)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/198
Reviewed-by: crueter <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2025-08-04 18:42:05 +02:00
crueter b2914247c3 [cmake] Build presets and System profiles (#135)
- Build Preset (Linux only): enables arch optimizations, e.g. generic,
  v3, zen2/4, armv8, armv9
- System Profiles: currently only steamdeck, uses an older sdl commit to
  fix virtual gamepad bug

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/135
2025-07-27 06:36:33 +02:00
lizzieandcrueter 275d64e653 [docs] add into docs/ and make links local (#93)
Co-authored-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/93
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>
2025-07-23 09:53:45 +02:00
crueter 108daeeb39 [cmake] Fix QuaZip once and for all (#71)
(and core5compat)

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/71
2025-07-16 23:17:34 +02:00
e9ca3f4c06 [host1x] Fix FFmpeg crash on Linux (#37)
This fixes the FFmpeg crash on Linux / Steam Deck.

Credit to Maufeat for AVERROR_EOF check.

Co-authored-by: MaranBr <[email protected]>
Co-authored-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/37
Co-authored-by: MaranBr <[email protected]>
Co-committed-by: MaranBr <[email protected]>
2025-07-14 22:30:54 +02:00
crueter be59b4f15f [cmake] Patch QuaZip for windows fix (#60)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/60
2025-07-14 04:48:39 +02:00
crueter f99488fe3e [desktop] feat: install firmware from ZIP (#52)
Closes #12

Adds a menu option to install firmware from a packed ZIP.

This PR additionally lays the groundwork to add data import/export via ZIP. In the future, a qt_common subproject should be added to handle common Qt tasks such as this.

Furthermore, to decrease dependency complexity, this also introduces CPM, a wrapper around FetchContent. In theory, this should also lay the groundwork for #8 as well.

Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/52
2025-07-14 01:29:57 +02:00
crueter ae02310bdf optional multimedia/webengine
Signed-off-by: crueter <[email protected]>
2025-07-12 18:05:37 -04:00
94c66f98bf [frontend, web] refactor: web service frontend rewrite (#221)
- Automatic verification based on regex
- Token generation button
- Removed unneeded links
- public lobby creation [android]

Signed-off-by: crueter <[email protected]>
Co-authored-by: Aleksandr Popovich <[email protected]>
Co-authored-by: Aleksandr Popovich <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/221
Co-authored-by: crueter <[email protected]>
Co-committed-by: crueter <[email protected]>
2025-07-01 01:44:12 +00:00
crueter 09194cc5c3 remove pdb files
Signed-off-by: crueter <[email protected]>
2025-06-29 20:28:01 -04:00
crueter b8150060c7 apply extra DLLs
Signed-off-by: crueter <[email protected]>
2025-06-29 20:25:21 -04:00
crueter 996400953e fix windeploy
Signed-off-by: crueter <[email protected]>
2025-06-29 18:48:45 -04:00
crueter 43a22546cf Update .ci/windows/build.sh
Signed-off-by: crueter <[email protected]>
2025-06-29 06:04:44 +00:00
crueter 1bdbe2071f [ci] fix windows :/ (again) (#237)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/237
Co-authored-by: crueter <[email protected]>
Co-committed-by: crueter <[email protected]>
2025-06-29 05:07:22 +00:00
crueter e0501bfd74 [ci] fix windows :/ (#236)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/236
Co-authored-by: crueter <[email protected]>
Co-committed-by: crueter <[email protected]>
2025-06-29 04:18:03 +00:00
crueter fa423c68e8 [ci/windows] fix CMake prefix path
Signed-off-by: crueter <[email protected]>
2025-06-28 23:47:02 -04:00
crueter cc9c3dd5a3 [ci] fix windows environment variables
Signed-off-by: crueter <[email protected]>
2025-06-28 23:13:20 -04:00
crueter a1087ddec8 Updated CI for GH Actions Builds
Signed-off-by: crueter <[email protected]>
2025-06-28 22:22:45 -04:00
crueter dceb3c2206 fix license headers
Signed-off-by: crueter <[email protected]>
2025-06-27 19:26:11 -04:00
crueter f121df0aa3 [frontend] Firmware setup & requirement (#222)
Currently Android only, will need to be added to desktop.

Android incorrectly records firmware as 19.0.1 if on a higher version...

TODO:
- [x] desktop
- [x] fix android

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/222
Co-authored-by: crueter <[email protected]>
Co-committed-by: crueter <[email protected]>
2025-06-27 23:23:25 +00:00
crueter 77b226a162 [qt-ts, ci] Update translations (#213)
Still need to add the CI job but translations are updated

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/213
Co-authored-by: crueter <[email protected]>
Co-committed-by: crueter <[email protected]>
2025-06-26 18:38:36 +00:00
crueter a4123200c0 fix packaging (#192)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/192
Co-authored-by: crueter <[email protected]>
Co-committed-by: crueter <[email protected]>
2025-06-16 03:27:06 +00:00
crueter ef2d0a9076 [ci] tmp: debug license-header
Signed-off-by: crueter <[email protected]>
2025-06-15 04:58:00 -04:00
crueter 8ff1b9d282 Use proper rdns nonsense (#179)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/179
Co-authored-by: crueter <[email protected]>
Co-committed-by: crueter <[email protected]>
2025-06-11 15:05:03 +00:00
crueter a9f9b207c2 Fix License headers & CI (#168)
Signed-off-by: crueter <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/168
Co-authored-by: crueter <[email protected]>
Co-committed-by: crueter <[email protected]>
2025-06-09 01:40:21 +00:00
swurl 6c655321e6 Move dead submodules in-tree
Signed-off-by: swurl <[email protected]>
2025-05-31 02:33:02 -04:00
swurl c0cceff365 fix for new ci
Signed-off-by: swurl <[email protected]>
2025-05-30 23:51:09 -04:00
swurl 568ac9f7de fix fmv greenscreens when CPU video decoding is enabled (#131)
This just reverts FFmpeg to 6.0.2 (known working version) but we should
probably take a look at what breaking changes occurred since then.

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/131
Co-authored-by: swurl <[email protected]>
Co-committed-by: swurl <[email protected]>
2025-05-29 21:55:19 +00:00
swurl 4235492079 Update checker (#132)
(with some extra spice)

Maybe this should be a target for Android as well.

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

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/132
Co-authored-by: swurl <[email protected]>
Co-committed-by: swurl <[email protected]>
2025-05-28 02:23:51 +00:00