Async downloader, better Proton support (#183)

* feat: async downloader + other fixes

* feat: windows command parsing + use library path for install path

* feat: better proton support

* feat: style fixes and store button now uses in-app

* feat: emulator rename + umu emulator fix

* feat: bring process creation inline with docs

* fix: clippy
This commit is contained in:
DecDuck
2026-02-06 23:24:14 +11:00
committed by GitHub
parent 1f74d35bdc
commit 16ef83228b
45 changed files with 1453 additions and 381 deletions
+8 -2
View File
@@ -1,4 +1,8 @@
use std::{fmt::Display, io::{self, Error}, sync::Arc};
use std::{
fmt::Display,
io::{self, Error},
sync::Arc,
};
use serde_with::SerializeDisplay;
@@ -15,6 +19,7 @@ pub enum ProcessError {
OpenerError(Arc<tauri_plugin_opener::Error>),
InvalidArguments(String),
FailedLaunch(String),
NoCompat,
}
impl Display for ProcessError {
@@ -38,6 +43,7 @@ impl Display for ProcessError {
"Missing a required dependency to launch this game: {} {}",
game_id, version_id
),
ProcessError::NoCompat => "No Proton compatibility layer could be found for this tool. Add an override or set your global default in settings.",
};
write!(f, "{s}")
}
@@ -47,4 +53,4 @@ impl From<io::Error> for ProcessError {
fn from(value: io::Error) -> Self {
ProcessError::IOError(Arc::new(value))
}
}
}