- classic style loads its background from "config's_tmp_path/background"
so from "launcher folder/background" by default
- icons will be changed in some future
- stdout logs got rid of rustls messages and now are pretty styled
- logs are saved into the `debug.log` file in the launcher folder
they're not filtered and contain all the messages
- toasts timeout fixed to 5 seconds
- added "save" button which will, well, not save logs
but open `debug.log` file using `xdg-open`
- updated core library with a few fixes
- improved gamer updater. Now it will not start to download next update
before the previous one was properly applied (hdiff and so on)
Core library changes:
- updated `VOICE_PACKAGES_SIZES`
- added version prediction based on the `.version` file for voiceovers
- fixed redownloading of downloaded files in `Downloader::download_to`
- Updated dependencies, components and the core library;
fixed voiceovers updating issue
From previous commits:
- Fixed `--run-game` flag work
- Fixed predownload button's state updating
- Now launcher will run the game with `--run-game` flag
even when predownloading is available, but if update was already predownloaded
- Added `--just-run-game` flag to run game even when predownloading is available
- updated core library; now launcher will try to repair
failed that were unnable to be patched by the hdiff patcher
- updated components list with new soda version
- limited dxvk and wine versions
Now total amount is 12 versions, where (first) 6 are recommended
- updated core library and components library
- added (likely working) updates pre-downloading functionality
- moved to `anyhow::Result` in lots of places
- fixed panicing when DXVK is not applied (`Config::try_get_selected_dxvk_info`)
- removed 100 option from fps unlocker
From previous commits:
- added support for FPS unlocker
- added support for system wine during initial setup
- added usage of xdg-portals for folders chooser during initial setup
- fixed DXVK applying using system wine
- updated core library; now launcher will continue downloading
of partially downloaded files
- added downloading speed limiter (`config.json` -> `launcher.speed_limit`)
- added `Config::try_get_selected_dxvk_info` method;
now launcher loads currently applied dxvk version from the wine prefix files
- added new wine versions
From previous commits:
- changed preferences icon, updated main window's menu
- removed open launcher folder button from settings
- added fix for dxvk applying with spaces to the runners folder path
- updated default patch repo's mirror
- updated core library; added support for Chinese version
- added default game edition prediction based on system locale
- added ability to run the game when all patch servers are down
- used `std::process::Output` on DXVK applying instead of String
this fixes errors related to UTF-8 decoding since different systems may have
different default encodings
- added "borderless" and "virtual desktop" options to settings;
added separate FSR option to gamescope settings
- dxvk now uses wine64 to update prefix before applying patches
- added setting of `-window-mode exclusive` args to the wine when using wine FSR
- `WinePrefix::update` and so now use wine64 binary instead of wineboot
- renamed `files.wine` to `files.wine64` in `wine.json`
- `Config::try_get_wine_executable` function now return wine64 binary
- added errors toasting for initial setup window
- added "borderless" and "virtual desktop" options to settings;
added separate FSR option to gamescope settings
- dxvk now uses wine64 to update prefix before applying patches
- added setting of `-window-mode exclusive` args to the wine when using wine FSR
- `WinePrefix::update` and so now use wine64 binary instead of wineboot
- renamed `files.wine` to `files.wine64` in `wine.json`
- `Config::try_get_wine_executable` function now return wine64 binary
- added picture to the repo
From previous commits:
- updated core library;
this fixes getting available space on systems with lots of disks
- added patch folder selection during initial setup
- fixed error panicking when you're closing folder selection dialogue
during initial setup
- disabled mangohud if gamescope is enabled
Reworked work with config file
- now missing fields will be automatically filled;
excess fields - removed.
thanks to new code structure I can easily create
new fields or rename old ones
- improved `WineLang` enum; now launcher loads languages list dynamically
from this enum so I can easily add support for new languages
Initial setup changes
- renamed "page_*" to some actual pages names
- added voice packages selection page
- made "Advanced" button working. It shows default paths selection page
- updated core library;
this fixes getting available space on systems with lots of disks
- added patch folder selection during initial setup
- fixed error panicking when you're closing folder selection dialogue
during initial setup
- now missing fields will be automatically filled;
excess fields - removed.
thanks to new code structure I can easily create
new fields or rename old ones
- improved `WineLang` enum; now launcher loads languages list dynamically
from this enum so I can easily add support for new languages
- renamed "page_*" to some actual pages names
- added voice packages selection page
- made "Advanced" button working. It shows default paths selection page
- added gamescope support
- now gamemode option will not be clickabke if gamemode is not installed
- reworked enhancements page's events
- changed winesync env variables
- added `lib::is_available` function to check packages availability
- updated core library;
added `lib::consts::TELEMETRY_CHECK_TIMEOUT` and `PATCH_FETCHING_TIMEOUT`
to specify new core-required timeouts
- fixed error message toasting when failed to run the game
- added telemetry servers acessibility checking before running the game
From previous commits:
- fixed setting game command default value in environment settings
- use `patch.root = false` by default in flatpak
- updated core library;
now launcher will check available free space
before downloading anything
- added dxvk 1.10.3
From previous commits:
- added `WINEARCH=win64` to some places
- added `devel` style to `FirstRunApp` if it's debug mode
- changed app's id
- added xdelta3 requirement during initial setup
- added wine & dxvk version selection during initial setup
- added "Open launcher folder" button to settings
- removed `glib::Downgrade` trait from all the `App`s' `Value`s
- removed `tasks` mod; removed `tokio` dependency;
rewritten `OpenPreferencesPage` to work with threads instead of futures
- added `opt-level = 3` to release profile
- upscaled logo to 512x512; added source link
- bundled all the UI files into gtk resources
- added "Open launcher folder" button to settings
- removed `glib::Downgrade` trait from all the `App`s' `Value`s
- removed `tasks` mod; removed `tokio` dependency;
rewritten `OpenPreferencesPage` to work with threads instead of futures
- added `opt-level = 3` to release profile
- made working environment variables manager
From previous commits:
- renamed `ToastError` trait to `Toast`;
renamed its `toast_error` method to `toast`;
now `toast` method will not display button if toast's message is empty
- updated `game::run` function, now it prints running command
and supports `gamemoderun`
- added automatic `DXVK_ASYNC=1` setting for dxvk-async
- renamed `ToastError` trait to `Toast`;
renamed its `toast_error` method to `toast`;
now `toast` method will not display button if toast's message is empty
- updated `game::run` function, now it prints running command
and supports `gamemoderun`
- added "Repair game" button
- added `repairer` field to settings file
- updated core library
From previous commits:
- made preparations for environment settings
- now launcher hides when you launch the game
- now `Config::try_get_wine_executable` can return `Some("wine")`
- removed old wine and dxvk versions;
added new Wine-GE-Proton and GE-Proton builds
- made preparations for environment settings
- now launcher hides when you launch the game
- now `Config::try_get_wine_executable` can return `Some("wine")`
- removed old wine and dxvk versions;
added new Wine-GE-Proton and GE-Proton builds
- updated core library
- now general settings page displays patch version with orange color
if patch is not applied
- added working patch applying mechanism
- added `patch.root` config, and you can apply patch
without using root privilegies
- removed "Settings" main menu item because I said so
- made `VoiceoverRow` component;
added dynamic voiceovers loading
Now you can download new voiceovers, but can't delete them (WIP)
From previous commits:
- probably fixed startup gtk errors
- added "Settings" option for main window menu
- added working default paths selection in first run window
From previous commits:
- added subfolders support for blueprint compiler;
moved first_run and preferences pages to subfolders
- added 2 first run pages:
+ when you don't have some required components
+ to select default folders paths
- added subfolders support for blueprint compiler;
moved first_run and preferences pages to subfolders
- added 2 first run pages:
+ when you don't have some required components
+ to select default folders paths
- added automatic downloading if you already clicked "download" button
so e.g. you don't need to press "download" button two times to download the game
and then download its voiceover
- reduced amount of action calls
- added "WIP" tooltips for progress pause buttons
- added usage of config's temp path to all the installers
- added processing of `WineNotInstalled` and `PrefixNotExists` actions
- added (forgotten) launcher states updating
- updated core library to 0.1.3
- added soda wine version
- added default patch servers for config file
- with core modifications now first run window
finally works
- added new wine versions
- added automatic default folder creation
- added `latest` methods for DXVK/Wine versions
- added `wine_prefix` mod with `WinePrefix` struct to manage what do you think what
- spent lots of time trying to make the launcher
download default wine version,
create prefix and apply DXVK
but it just pauses actions flow after
~400 KB of downloaded wine version progress
it fixes issue with huge data downloading. You can specify `null` as temp path
and then default system temp folder will be used
Also added `unwrap` everywhere I could add it
just not to see warnings in the code editor
- added `add_action` function to add actions to widgets
- added `MainApp::toast_error` method to show toast with some error
- added `lib::game` mod with `run` function to run the game
- added `lib::consts` mod with constant values like config file path
- added `lib::config` mod to control config file
- added warning subtitle to `Proton-GE` wine version selector