Commit Graph
100 Commits
Author SHA1 Message Date
quexeky 19c8fc24aa chore(collections): Slightly fixed return value for collections
Signed-off-by: quexeky <git@quexeky.dev>
2025-03-11 19:26:05 +11:00
quexeky 4239215451 feat(collections): Added all internal collections commands
Signed-off-by: quexeky <git@quexeky.dev>
2025-03-11 12:34:56 +11:00
quexeky 9614af7f03 feat(collections): Added fetch_collections function
Signed-off-by: quexeky <git@quexeky.dev>
2025-03-11 10:46:16 +11:00
quexeky cdcd69391d Merge remote-tracking branch 'aden/develop' into develop 2025-02-18 14:45:09 +11:00
quexeky d9c4f7aa75 feat(library): Reactive library updating
Signed-off-by: quexeky <git@quexeky.dev>
2025-02-12 10:00:45 +11:00
quexeky 316a3742eb fix(cache): Added proper error handling to fetch_object(_offline) 2025-02-12 10:00:45 +11:00
quexeky b9df197534 feat(cache): Caching objects which use the useObject tauri command 2025-02-12 10:00:45 +11:00
quexeky 5c479cb283 chore(cache): Added fetch_drop_object command
Signed-off-by: quexeky <git@quexeky.dev>
2025-02-12 10:00:45 +11:00
quexeky 4c59c5d6c1 feat(cache): Implemented caching for game metadata 2025-02-12 10:00:45 +11:00
quexeky 9977107374 fix(cache): Bug where games would not remove themselves from the list of installed applications when being uninstalled 2025-02-12 10:00:45 +11:00
quexeky 2690c3019d chore: Various formatting 2025-02-12 10:00:45 +11:00
quexeky 2a1a7326d0 feat(cache): Added forceOffline in settings and caching games & library 2025-02-12 10:00:45 +11:00
quexeky f33ca95bdf feat(cache): Added offline!() macro to manage online and offline function distinctions
See fetch_library command for example
2025-02-12 10:00:45 +11:00
quexeky bb23e88ead chore: Swapped over to using a macro with an offline mode
Signed-off-by: quexeky <git@quexeky.dev>
2025-02-12 10:00:45 +11:00
quexeky 810fbdfe49 chore: Progress on caching 2025-02-12 10:00:45 +11:00
quexeky e204ff30b4 fix: Removed unnecessary nightly feature try_trait_v2 2025-02-12 10:00:45 +11:00
quexeky 501145c5d9 fix(downloads): Fix rearranging download queue throwing error 2025-02-12 10:00:45 +11:00
quexeky dca5f65e89 chore: Version bump 2025-02-12 10:00:45 +11:00
quexeky 00f55ff3ae Merge branch 'main' into develop 2025-01-25 18:46:33 +11:00
quexeky 4ad688da14 refactor(downloads): Replaced static usage with const 2025-01-21 10:17:30 +11:00
quexeky 0381b8b8cb chore(exit): Progress on cleanup and exit 2025-01-16 18:57:40 +11:00
quexeky 9369ff14b8 chore(progress): Added rolling_progress_updates.rs
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-16 17:23:53 +11:00
quexeky 7c3140e424 feat(logging): Added line numbers to file logging and highlighting to console 2025-01-16 16:48:31 +11:00
quexeky 9e29aa7a76 fix(settings): Broken command invoke logic in settings/downloads.vue 2025-01-14 07:57:33 +11:00
quexekyandAdenMGB 4e93eb440c feat(download manager): Added UI to change download threads
Co-authored-by: AdenMGB <140392385+AdenMGB@users.noreply.github.com>
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-06 20:56:19 +11:00
quexeky 94cf6788d8 chore: More refining info!() statements
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-06 20:46:08 +11:00
quexeky 3eda9799c5 chore: Removed tools/
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-06 20:06:01 +11:00
quexeky f29e989aff chore: Removed tests/
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-06 20:05:19 +11:00
quexeky 182361e598 chore: General cleanup
- Changed some info!() statements to debug!() and warn!()
- Removed most Turbofish syntax cases
- Removed InvalidCodeError and replaced it with InvalidResponse

Signed-off-by: quexeky <git@quexeky.dev>
2025-01-06 20:04:34 +11:00
quexeky 50f37fd022 chore: Moved generateGameMeta.ts to composables, using PathBuf instead of String for install_dirs
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-06 09:22:18 +11:00
quexeky 5ea47d733b feat(settings): Added max_download_threads setting and separated settings from db
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-06 07:36:35 +11:00
quexeky 2822b7a593 chore: More cleanup after cargo clippy
Also added some type efficiency improvements (using references where possible and added SliceDeque crate)

Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 21:08:27 +11:00
quexeky 82804ebc67 refactor: Ran cargo clippy & fmt
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 20:29:15 +11:00
quexeky 8aad64ffa7 fix(db): Added Settings component
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:44:18 +11:00
quexeky 9e82a0b3c3 fix(game downloads): Accidentally was attempting to lock onto something that was already in scope
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:05:00 +11:00
quexeky 6ea4cf2797 perf(game downloads): Moved some variable declarations outside of the spawned download thread
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:05:00 +11:00
quexeky 165a9671fd chore(README): Updated README.md
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:04:47 +11:00
quexeky 25ba200a5e feat(database): Added database corruption dialog
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:04:47 +11:00
quexeky 32ae7d5385 feat(recovery): Added database recovery
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:04:47 +11:00
quexeky 005bab2fb8 fix(kill game): Re-enabled killing games
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:04:47 +11:00
quexeky 06d1e9ed95 refactor(downloads): Moved all files relevant to game downloads to their own directory
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:04:47 +11:00
quexeky a56ee25581 fix(uninstalling): Re-enabled uninstalling apps
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:04:21 +11:00
quexeky dceaa56ade fix(game launcher): Renamed game_id to id
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:04:07 +11:00
quexeky 6159319172 feat(download manager): Added generic download manager
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:04:07 +11:00
quexeky 8be1dd435c refactor(download manager): Removed Arc requirement for DownloadableMetadata
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:02:19 +11:00
quexeky cac612b176 refactor(download manager): Fully separate & generic download manager
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:02:19 +11:00
quexeky 6568faaf4f refactor(download manager): Removed all references to anything outside of the DownloadManager
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:00:47 +11:00
quexeky ea70ec9453 chore(download manager): Added manage_go_signal command
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:00:47 +11:00
quexeky f64782e5d4 chore(download manager): Added manage_queue_signal
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:00:47 +11:00
quexeky a2e63aa2c8 chore(tool manager): Added ToolDownloadAgent
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:00:18 +11:00
quexeky 78149bbb3c Revert "refactor(download manager): Moved manifest and stored_manifest to download_manager"
This reverts commit 8db2393346.
2025-01-05 19:00:18 +11:00
quexeky a846eed306 refactor(download manager): Moved manifest and stored_manifest to download_manager
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:00:18 +11:00
quexeky 1a89135342 chore(download manager): Ensure that Downloadable is also send and sync
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:00:18 +11:00
quexeky 0a2ac25b1c chore(download manager): Some easy cleanup of the download manager
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:00:18 +11:00
quexeky aed58e49bc refactor(download manager): Renamed GameDonwloadError to ApplicationDownloadError and moved
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 19:00:18 +11:00
quexeky 881fcc6abe chore(download manager): Renamed most instances of "game" outside of actual game downloads
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 18:59:08 +11:00
quexeky b4d70a35b3 refactor(download manager): Added Downloadable trait and replaced references to GameDownloadAgent
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 18:52:00 +11:00
quexeky b6c64e56e5 refactor(download manager): Moved download manager to separate directory
Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 18:52:00 +11:00
quexeky 3299c71b3d chore(tool manager): Progress on adding tools
Going to try changing around the download manager to take a generic trait rather than specifically for game downloads

Signed-off-by: quexeky <git@quexeky.dev>
2025-01-05 18:49:32 +11:00
quexeky c3f62222fe fix(deep links): Re-enabled deep links
Signed-off-by: quexeky <git@quexeky.dev>
2024-12-30 14:18:42 +11:00
quexeky 01e6162527 feat(process manager): Game kill tauri command
Signed-off-by: quexeky <git@quexeky.dev>
2024-12-30 13:50:26 +11:00
quexeky 88b2505e71 feat(Compat): Implemented spawning with umu (using umu-wrapper-lib)
Signed-off-by: quexeky <git@quexeky.dev>
2024-12-30 13:12:27 +11:00
quexeky dcb1564568 chore: Ran cargo clippy
Signed-off-by: quexeky <git@quexeky.dev>
2024-12-27 11:58:37 +11:00
quexeky 022330bcb6 chore(changelog): Updated changelog 2024-12-25 11:41:31 +11:00
quexeky d9d0122c3d feat(downloads): Added manifest.json utility for persistent download progress
Signed-off-by: quexeky <git@quexeky.dev>
2024-12-24 12:22:45 +11:00
quexeky 0a1dddf7ef chore(downloads): Made logging systems match
Signed-off-by: quexeky <git@quexeky.dev>
2024-12-24 12:22:45 +11:00
quexeky 76b0975bcc style(downloads): Abstracted queue system
TODO: Still need to cleanup the rest of the legacy code which used to use the queue system
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-23 18:18:03 +11:00
quexeky 450bca9c5b feat(downloads): Download cancelling
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-21 16:46:05 +11:00
quexeky 18b914918c chore(downloads): progress on more precise download control
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-19 15:27:35 +11:00
quexeky 2d4a7e8f9c feat: added file-based logging
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-19 13:23:42 +11:00
quexeky ec2f4148e8 style(downloads): Made all errors type-based
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-18 13:21:20 +11:00
quexeky bd3deacf38 chore(downloads): Ran cargo clippy & cargo fmt
Side note, I'm going to start using chore to declare these rather than refactor because I don't think that it actually qualifies

Signed-off-by: quexeky <git@quexeky.dev>
2024-11-16 17:05:24 +11:00
quexeky 63c3cc1096 feat(downloads): Added AgentInterfaceData to get information about all downloads in queue
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-16 17:03:37 +11:00
quexeky f029cbf0b3 docs(download manager): Added description on how the DownloadManager works
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-13 22:17:30 +11:00
quexeky 27e5a8e31c style(downloads): Fixing some references to "id" vs "game_id"
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-13 21:55:28 +11:00
quexeky b8cf44c0b2 refactor(downloads): Ran cargo fmt
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-13 21:28:24 +11:00
quexeky 075d6ecf3c refactor(downloads): Ran cargo clippy & moved DownloadManagerInterface
Created file "download_manager_interface.rs" to contain the DownloadManagerInterface

Signed-off-by: quexeky <git@quexeky.dev>
2024-11-13 21:05:25 +11:00
quexeky a1ada07690 feat(downloads): Added Download Manager
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-13 20:38:00 +11:00
quexeky ab606e8e33 refactor(downloads): Reordered DownloadThreadControlFlag to agree with From<bool>
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-12 09:03:36 +11:00
quexeky 5ba151f813 fix(downloads): Chunk counting logic error
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-12 09:02:58 +11:00
quexeky 5e3d26b3ca refactor(downloads): ran cargo clippy & cargo fmt
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-11 18:27:39 +11:00
quexeky 17244496ec refactor: Removed unnecessary dependencies
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-11 18:25:26 +11:00
quexeky 7d3c6011df feat(downloads): Separated chunk updates into individual counters
Also added a From<bool> for DownloadThreadControlFlag because I accidentally was calling the wrong one before and had meant to add it anyway

Signed-off-by: quexeky <git@quexeky.dev>
2024-11-11 18:07:45 +11:00
quexeky 5e05e6873d feat(downloads): Added DownloadThreadControl struct
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-11 10:05:49 +11:00
quexeky f25bfed336 feat(downloads): Convert DownloadThreadControlFlag to AtomicBool
Also ran cargo fmt & cargo clipy

Signed-off-by: quexeky <git@quexeky.dev>
2024-11-11 09:39:25 +11:00
quexeky b47b7ea935 refactor: Created file settings.rs
Add constant values here to have a central management point for any relevant constants

Signed-off-by: quexeky <git@quexeky.dev>
2024-11-11 09:11:46 +11:00
quexeky 4fc13a1c8f refactor(downloads): Convert DOWNLOAD_MAX_THREADS to const
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-11 07:58:49 +11:00
quexeky 4983b25702 refactor: Ran cargo clippy & cargo fmt
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-10 13:21:37 +11:00
quexeky 1aa52c0a21 feat(library): Added option to change root directory
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-10 13:18:28 +11:00
quexeky 00b7179743 refactor(database): Convert DATA_ROOT_DIR to Mutex
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-09 22:44:44 +11:00
quexeky 6bc64822df feat(downloads): Added function to take and set any game state
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-09 21:26:44 +11:00
quexeky f10d92d623 feat(downloads): Generic function to set download state
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-09 20:15:04 +11:00
quexeky 8204795ba6 style(downloads): Added GAME_PAUSE_CHECK_INTERVAL value
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-09 20:00:05 +11:00
quexeky 2c7b5fb47d refactor: Cleaning up downloads playing and pausing
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-09 19:57:53 +11:00
quexeky 55b7921ee6 feat(downloads): Pausing and resuming game downloads
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-09 19:55:36 +11:00
quexeky 97bb1fac68 chore(p2p): Starting p2p progress
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-06 16:40:19 +11:00
quexeky 046ba643e2 refactor(downloads): Scoping changes and removing qualifications
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-06 16:39:30 +11:00
quexeky 2aa5b9cddd docs(README): Updated contributing link
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-05 20:47:20 +11:00
quexeky 0c6c4701fd Removing more unnecessary imports
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-04 19:22:30 +11:00
quexeky c5b6ccf992 Fixed all merge issues
Signed-off-by: quexeky <git@quexeky.dev>
2024-11-04 19:05:27 +11:00