Fix typos in Amazon platform code (#441)

Fix typo in get_settings_serializable method across multiple platforms

Fix typos and improve clarity in Linux tips documentation

Fix typos and improve clarity in documentation

Fix formatting in README to clarify limitations of platform imports
This commit is contained in:
guylamar2006
2025-02-24 21:54:45 +01:00
committed by GitHub
parent c90191bf0f
commit 04feb0b52c
19 changed files with 39 additions and 39 deletions
+3 -3
View File
@@ -56,7 +56,7 @@ There is also an [AUR package](https://aur.archlinux.org/packages/steam-boilr-gu
## Integrations ## Integrations
BoilR can import games from many platforms, but there are limits based BoilR can import games from many platforms, but there are limitations:
| Platforms | Windows | Linux (executable) | Linux (flatpak) | | Platforms | Windows | Linux (executable) | Linux (flatpak) |
| ------------------------------------------------------------------------------- | ------- | ----------------------------- | ----------------------------------------- | | ------------------------------------------------------------------------------- | ------- | ----------------------------- | ----------------------------------------- |
@@ -117,7 +117,7 @@ If you experience bugs or errors please try the native version and see if that f
### How can I help/contribute? ### How can I help/contribute?
If you are a coder, you are very welcome! You can fork this repo and then create a pull request. If you are a coder, you are very welcome! You can fork this repo and then create a pull request.
To check formats and errors of code before run the code: To check formats and errors of code before running the code:
```shell ```shell
cargo fmt cargo fmt
@@ -148,4 +148,4 @@ Nope, please don't, donate it to your favorite charity instead, and if you don't
This project is dual license MIT or Apache 2.0 , it is up to you. In short, you can do what you want with this project, but if in doubt read the license files. This project is dual license MIT or Apache 2.0 , it is up to you. In short, you can do what you want with this project, but if in doubt read the license files.
## What is up with the name BoilR? ## What is up with the name BoilR?
This tool turns things into Steam, therefor boiler, And it is written in **R**ust so therefor: BoilR This tool turns things into Steam, therefore boiler, And it is written in **R**ust, so therefore: BoilR
+10 -10
View File
@@ -1,8 +1,8 @@
# Configuration # Configuration
The tool reads its configuration from a `config.toml` file. If it cannot find one, it will create a default one on its first run. The tool reads its configuration from a `config.toml` file. If it cannot find one, it will create a default one on its first run.
You can either manually edit this file or use the UI version to changing the configurations. You can either manually edit this file or use the UI version to change the configurations.
Most people will not need to change the configuration and BoilR can find different launchers without problem. Most people will not need to change the configuration and BoilR can find different launchers without problems.
Here is a simple example of how to write the config file: Here is a simple example of how to write the config file:
@@ -16,7 +16,7 @@ And here is a full example of all configuration options:
```toml ```toml
[epic_games] [epic_games]
enabled=true #On windows this is default true, on linux default false enabled=true #On Windows this is default true, on Linux default false
location="C:\\ProgramData\\Epic\\EpicGamesLauncher\\Data\\Manifests" #If this value is not defined, the tool will try to find it automatically (only windows). If it can't find it, it will fail and tell you. location="C:\\ProgramData\\Epic\\EpicGamesLauncher\\Data\\Manifests" #If this value is not defined, the tool will try to find it automatically (only windows). If it can't find it, it will fail and tell you.
create_symlinks = true #Only for Linux, To get around a bug in steam where paths can not contain spaces, BoilR creates symlinks in ~/.boilr/link and uses those. create_symlinks = true #Only for Linux, To get around a bug in steam where paths can not contain spaces, BoilR creates symlinks in ~/.boilr/link and uses those.
@@ -35,7 +35,7 @@ create_symlinks = true #Only for Linux, To get around a bug in steam where paths
[origin] [origin]
enabled=true enabled=true
location="C:\\ProgramData\\Origin" #If this value is not defined, "%PROGRAMGDATA%origin" will be used on windows, and HOME/Games/origin/drive_c/ProgramData/Origin/ on linux. location="C:\\ProgramData\\Origin" #If this value is not defined, "%PROGRAMDATA%\\Origin" will be used on Windows, and HOME/Games/origin/drive_c/ProgramData/Origin/ on Linux.
[gog] [gog]
enabled=true enabled=true
@@ -45,8 +45,8 @@ wine_c_drive="/home/username/Games/gog-galaxy/drive_c" #Only for Linux, Is manda
[steam] [steam]
location="C:\\Program Files (x86)\\Steam\\" #If this value is not defined, the tool will try to find it automatically. If it can't find it, it will fail and tell you. location="C:\\Program Files (x86)\\Steam\\" #If this value is not defined, the tool will try to find it automatically. If it can't find it, it will fail and tell you.
optimize_for_big_picture=false #Set icons to wide images, that big picture mode will use. This will make the icons have a wrong ratio in desktop mode, but will improve the look in big picture mode optimize_for_big_picture=false #Set icons to wide images that Big Picture mode will use. This will make the icons have a wrong ratio in desktop mode but will improve the look in Big Picture mode
create_collections=false #Will try to create a steam collection for each platform create_collections=false #Will try to create a Steam collection for each platform
[steamgrid_db] [steamgrid_db]
enabled = true #If false, the whole download of custom art will be skipped. enabled = true #If false, the whole download of custom art will be skipped.
@@ -55,7 +55,7 @@ prefer_animated = false #If true, animated images will be prefered over static i
``` ```
## No Vsync ## No VSync
BoilR runs with Vsync Enabled, to limit its resource use. BoilR runs with VSync enabled to limit its resource use.
This can be a problem for some setups that run Linux, Wayland and Nvidia (but not all). This can be a problem for some setups that run Linux, Wayland, and Nvidia (but not all).
If BoilR just crashes when you start it, try to add `--no-vsync` as an argument when you launch boilr. If BoilR just crashes when you start it, try to add `--no-vsync` as an argument when you launch BoilR.
+4 -4
View File
@@ -32,7 +32,7 @@ fn get_sqlite_path() -> eyre::Result<PathBuf> {
Ok(path) Ok(path)
} else { } else {
Err(eyre::format_err!( Err(eyre::format_err!(
"Amazong GameInstallInfo.sqlite not found at {:?}", "Amazon GameInstallInfo.sqlite not found at {:?}",
path path
)) ))
} }
@@ -72,7 +72,7 @@ impl GamesPlatform for AmazonPlatform {
ui.checkbox(&mut self.settings.enabled, "Import from Amazon"); ui.checkbox(&mut self.settings.enabled, "Import from Amazon");
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
@@ -83,10 +83,10 @@ impl GamesPlatform for AmazonPlatform {
impl AmazonPlatform { impl AmazonPlatform {
fn get_amazon_games(&self) -> eyre::Result<Vec<AmazonGame>> { fn get_amazon_games(&self) -> eyre::Result<Vec<AmazonGame>> {
let sqllite_path = get_sqlite_path()?; let sqlite_path = get_sqlite_path()?;
let launcher_path = get_launcher_path()?; let launcher_path = get_launcher_path()?;
let mut result = vec![]; let mut result = vec![];
let connection = sqlite::open(sqllite_path)?; let connection = sqlite::open(sqlite_path)?;
let mut statement = let mut statement =
connection.prepare("SELECT Id, ProductTitle FROM DbSet WHERE Installed = 1")?; connection.prepare("SELECT Id, ProductTitle FROM DbSet WHERE Installed = 1")?;
while let Ok(State::Row) = statement.next() { while let Ok(State::Row) = statement.next() {
+1 -1
View File
@@ -146,7 +146,7 @@ impl GamesPlatform for BottlesPlatform {
ui.checkbox(&mut self.settings.enabled, "Import from Bottles"); ui.checkbox(&mut self.settings.enabled, "Import from Bottles");
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -53,7 +53,7 @@ impl GamesPlatform for EpicPlatform {
self.render_epic_settings(ui) self.render_epic_settings(ui)
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
} }
+1 -1
View File
@@ -105,7 +105,7 @@ impl GamesPlatform for FlatpakPlatform {
ui.checkbox(&mut self.settings.enabled, "Import from Flatpak"); ui.checkbox(&mut self.settings.enabled, "Import from Flatpak");
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -77,7 +77,7 @@ impl GamesPlatform for GamePassPlatForm {
Ok(games_iter.collect()) Ok(games_iter.collect())
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -260,7 +260,7 @@ impl GamesPlatform for GogPlatform {
} }
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -273,7 +273,7 @@ impl GamesPlatform for HeroicPlatform {
}); });
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -147,7 +147,7 @@ impl GamesPlatform for ItchPlatform {
} }
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
@@ -66,7 +66,7 @@ impl GamesPlatform for LegendaryPlatform {
} }
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -112,7 +112,7 @@ impl GamesPlatform for LutrisPlatform {
} }
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -87,7 +87,7 @@ impl GamesPlatform for MiniGalaxyPlatform{
crate::platforms::to_shortcuts(self, Ok(gog_games)) crate::platforms::to_shortcuts(self, Ok(gog_games))
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -195,7 +195,7 @@ impl GamesPlatform for OriginPlatform {
ui.checkbox(&mut self.settings.enabled, "Import from Origin"); ui.checkbox(&mut self.settings.enabled, "Import from Origin");
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -15,7 +15,7 @@ where
fn get_shortcut_info(&self) -> eyre::Result<Vec<ShortcutToImport>>; fn get_shortcut_info(&self) -> eyre::Result<Vec<ShortcutToImport>>;
fn get_settings_serilizable(&self) -> String; fn get_settings_serializable(&self) -> String;
fn render_ui(&mut self, ui: &mut egui::Ui); fn render_ui(&mut self, ui: &mut egui::Ui);
} }
+1 -1
View File
@@ -58,7 +58,7 @@ impl GamesPlatform for PlaynitePlatform {
to_shortcuts_simple(self.get_playnite_games()) to_shortcuts_simple(self.get_playnite_games())
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -296,7 +296,7 @@ impl GamesPlatform for UplayPlatform {
ui.checkbox(&mut self.settings.enabled, "Import from Uplay"); ui.checkbox(&mut self.settings.enabled, "Import from Uplay");
} }
fn get_settings_serilizable(&self) -> String { fn get_settings_serializable(&self) -> String {
toml::to_string(&self.settings).unwrap_or_default() toml::to_string(&self.settings).unwrap_or_default()
} }
+1 -1
View File
@@ -77,7 +77,7 @@ pub fn save_settings(settings: &Settings, platforms: &Platforms) -> eyre::Result
toml.push('\n'); toml.push('\n');
toml.push_str(section_name.as_str()); toml.push_str(section_name.as_str());
toml.push('\n'); toml.push('\n');
let platform_string = platform.get_settings_serilizable(); let platform_string = platform.get_settings_serializable();
toml.push_str(platform_string.as_str()); toml.push_str(platform_string.as_str());
} }
+7 -7
View File
@@ -4,28 +4,28 @@ If you are on Linux, and want to use one of the launchers that is not available
If you want to avoid launching into Lutris, here are a few ways that you can do that. If you want to avoid launching into Lutris, here are a few ways that you can do that.
### GOG ### GOG
I recommend you just use Heroic. But if you really really want to use GOG Galaxy you can: I recommend you just use Heroic. But if you really, really want to use GOG Galaxy you can:
- Install [Lutris](https://lutris.net/) - Install [Lutris](https://lutris.net/)
- Install GOG from Lutris [here](https://lutris.net/games/gog-galaxy/) - Install GOG from Lutris [here](https://lutris.net/games/gog-galaxy/)
- Set the path to GOG in the config.toml (or through the ui) - Set the path to GOG in the config.toml (or through the UI)
- Run BoilR - Run BoilR
- Remember to pick which version of Proton you want to use for a game, before the first time you play it. - Remember to pick which version of Proton you want to use for a game, before the first time you play it.
### Epic ### Epic
I recommend you just use Heroic, Rare or [Legendary](https://github.com/derrod/legendary). But if you really really want to use EGS you can: I recommend you just use Heroic, Rare, or [Legendary](https://github.com/derrod/legendary). But if you really, really want to use EGS you can:
- Install [Lutris](https://lutris.net/) - Install [Lutris](https://lutris.net/)
- Install EGS from Lutris [here](https://lutris.net/games/epic-games-store/) - Install EGS from Lutris [here](https://lutris.net/games/epic-games-store/)
- Set the path to EGS in the config.toml (or through the ui) - Set the path to EGS in the config.toml (or through the UI)
- Run BoilR - Run BoilR
- Remember to pick which version of Proton you want to use for a game, before the first time you play it. - Remember to pick which version of Proton you want to use for a game, before the first time you play it.
### Origin ### Origin
- Download the origin installer - Download the Origin installer
- Run the installer by adding it to steam via the "add a non-steam game" option - Run the installer by adding it to Steam via the "add a non-Steam game" option
- Remember to set "compatability" to a newer proton version - Remember to set "compatibility" to a newer Proton version
- After the install, BoilR can find and add the games - After the install, BoilR can find and add the games
- Validate that the found games have the correct Proton version - Validate that the found games have the correct Proton version