Commit graph

153 commits

Author SHA1 Message Date
Observer KRypt0n_
f777963548
feat: added wine tools to settings 2023-04-09 17:58:23 +02:00
Observer KRypt0n_
49ebbc35a2
feat(ui): added changelog to updated components toast
Implemented SDK 0.5.13
2023-04-08 21:57:52 +02:00
Observer KRypt0n_
deacef3759
feat(core): implemented SDK 0.5.12
This change allows to support game edition switching in settings
2023-04-08 19:46:28 +02:00
Observer KRypt0n_
941851c234
feat(ui): utilized new recommended feature for wine / dxvk versions 2023-04-07 21:25:27 +02:00
Observer KRypt0n_
487fdd79ee
feat(ui): used dxvk component's title field 2023-04-06 23:16:24 +02:00
Observer KRypt0n_
d7a46b25da
feat: added environment emulation support
This experimental feature generates special configuration file
which game interprets as different environments.
With this, for example, you can access google payment methods
2023-04-06 22:09:36 +02:00
Observer KRypt0n_
02323bad4f
feat(core): implemented core 0.5.8 2023-03-31 10:21:06 +02:00
Observer KRypt0n_
6a306e9806
chore(core): replaced sdk's git submodule by cargo git dependency 2023-03-25 10:58:44 +02:00
Observer KRypt0n_
0a505a6562 3.3.0 2023-03-25 10:48:49 +02:00
Observer KRypt0n_
a54148bb41
chore(core): updated core library to 1.4.5 2023-03-24 14:54:34 +02:00
Observer KRypt0n_
ac652529d8
feat(core): removed launcher.speed_limit config 2023-03-24 14:47:02 +02:00
Observer KRypt0n_
3bb796ab58 docs: added info about branches 2023-03-23 19:30:26 +02:00
Observer KRypt0n_
e8455d7916
fix(core): updated core library with fixed XluaPatch work 2023-03-22 22:41:15 +02:00
Observer KRypt0n_
907361df7b
feat(ui): initial xlua patch implementation 2023-03-22 20:44:46 +02:00
Observer KRypt0n_
ddc122d631
feat(core): implemented core library 1.4.0
It now allowed to use several patches for the game. As well it now uses `GitRemoteSync`
trait like components index does with gains more stability I guess
2023-03-22 17:25:26 +02:00
Observer KRypt0n_
25b18958bc
feat: implemented relm4 0.6.0-alpha.2 and gtk 4.10 2023-03-19 16:39:33 +02:00
Observer KRypt0n_
beedb31deb
3.2.1 2023-03-18 20:46:29 +02:00
Observer KRypt0n_
e1475f05bf
3.2.0 2023-03-18 13:51:02 +02:00
Observer KRypt0n_
23175137c8
chore(core): updated SDK 2023-03-16 14:28:13 +02:00
Observer KRypt0n_
4efa6abbb0 feat(core): implemented new SDK 2023-03-15 23:11:34 +02:00
Observer KRypt0n_
7f6b1b754b
3.1.5 2023-03-08 21:12:40 +02:00
Observer KRypt0n_
e21dddd2a3
feat(core): implemented SDK 0.5.0 2023-03-08 18:37:16 +02:00
Observer KRypt0n_
ae990e996b
feat(core): implemented SDK 0.4.0 2023-03-08 14:32:32 +02:00
Observer KRypt0n_
58743eca04
3.1.4 2023-03-07 22:52:24 +02:00
Observer KRypt0n_
095966d451
3.1.3 2023-03-07 20:17:58 +02:00
Observer KRypt0n_
d3f8498d02
chore(core): updated SDK 2023-03-07 18:03:05 +02:00
Observer KRypt0n_
9b91f73d6a 3.1.2 2023-03-07 13:25:42 +02:00
Observer KRypt0n_
032ca88a6e fix: fixed initial setup window panic
Before it couldn't get list of available wine/dxvk versions because
on first run launcher obviously doesn't have `components` folder
and it needs to be synced with one of remotes

I've added here status page and heavy tasks system to the first run window
as it works now on the main window, and now
components are synced there behind status page

As well was updated SDK with fixed `Installer::get_filename` method
which will fix issue with stuff downloading

closes https://github.com/an-anime-team/an-anime-game-launcher/issues/91
2023-03-07 13:07:22 +02:00
Observer KRypt0n_
7f38c15c76
3.1.1 2023-03-06 22:35:38 +02:00
Observer KRypt0n_
2427faa089
feat(ui): added components index path selection to initial setup 2023-03-06 22:34:06 +02:00
Observer KRypt0n_
578f475ab8
3.1.0 2023-03-06 21:22:33 +02:00
Observer KRypt0n_
da70ae174c
chore(core): updated SDK with fixed wine LANG values
Should fix keyboard input issues in the game
2023-03-06 21:09:20 +02:00
Observer KRypt0n_
5de6f0aa48
feat: added commit hashes to core/sdk versions in about
SDK and core library were updated. Now "no free space available" error message
will have prettified measurements for users simplicity
2023-03-06 20:20:03 +02:00
Observer KRypt0n_
d69107dfba feat(core): added dynamic components loading
Now launcher will update its local wine/dxvk versions index from remotes in config file
2023-03-06 12:39:24 +02:00
Observer KRypt0n_
b1b3455f8e feat: updated core library 2023-03-05 22:43:44 +02:00
Renaud Lepage
e1e53d4b49 xdg open 2023-03-05 20:31:12 +00:00
Observer KRypt0n_
e475fa9d89
3.0.1 2023-03-04 19:41:27 +02:00
Observer KRypt0n_
714c4758d0
chore(core): updated SDK 2023-03-04 19:19:14 +02:00
Observer KRypt0n_
24c8f7fb7c
feat(core): updated core library & sdk, changed game running mechanism
New core library version contain updated voice packages sizes
for more precise versioning

New SDK version's `game::run()` function freezes thread
so now game launching should work better
2023-03-04 18:48:41 +02:00
Observer KRypt0n_
820fb1bfd1
3.0.0 2023-03-04 15:44:28 +02:00
Observer KRypt0n_
12f2876f7f chore: updated repository related stuff 2023-03-04 15:26:49 +02:00
Observer KRypt0n_
f3e6b29446
chore(core): updated SDK with new wine versions 2023-03-04 14:37:02 +02:00
Observer KRypt0n_
3f6fe2b847
feat(ui): added experimental discord rpc support 2023-03-02 22:31:35 +02:00
Observer KRypt0n_
84683ded86
feat(ui): added gamescope settings support
Added gamescope settings support. As well made gamemode and gamescope switches
non-sensitive if needed packages aren't installed
2023-03-02 15:31:21 +02:00
Observer KRypt0n_
5ae39efbac
fix(ui): fixed background picture updating 2023-03-01 18:59:00 +02:00
Observer KRypt0n_
38f604d211
perf(core): updated sdk with changed md5 library
New library uses ASM instructions which greatly improved launcher's performance (maybe ~50%!)
2023-02-26 14:02:58 +02:00
Observer KRypt0n_
d80156696e
perf: ~23.5% startup performance improvements
After series of flamecharts analyzing I found some bottlenecks and fixed them
2023-02-25 23:39:50 +02:00
Observer KRypt0n_
4f560eaa5e
feat(ui): added paths selection page in first run window 2023-02-24 11:13:14 +02:00
Observer KRypt0n_
6340ccbd6e
feat(core): added background picture downloading 2023-02-23 16:41:13 +02:00
Observer KRypt0n_
efa96b9d2b
tracing: removed env-filter and use of RUST_LOG
it increased build size by 1 MB
2023-02-23 14:29:57 +02:00
Observer KRypt0n_
1dcc1b5403
tracing: improved logs output
- now launcher can use `RUST_LOG` variable to filter logs
- removed "called event" logs from wine/dxvk/progress bar components
Also:
- fixed constant "remove_css_class" gtk errors
2023-02-23 14:14:06 +02:00
Observer KRypt0n_
949a0f37e9
packages: updated relm4 and glib-build-tools version 2023-02-18 00:33:43 +02:00
Observer KRypt0n_
0916894165
core: made some components async and updated launcher sdk
which fixed app's blocking when downloading wine/dxvk
2023-02-04 14:44:19 +02:00
Observer KRypt0n_
bf3e58e21c
settings: added showing of installed game version 2023-01-28 21:18:24 +02:00
Observer KRypt0n_
14c425ae9b
Updated SDK 2023-01-28 20:02:06 +02:00
Observer KRypt0n_
d7e2380a36
Updated launcher SDK 2023-01-18 19:21:44 +02:00
Observer KRypt0n_
51569ee20c
Repo changes 2023-01-18 18:38:12 +02:00
Observer KRypt0n_
d6b5eb6411
relm4 init commit 2023-01-18 18:37:53 +02:00
Observer KRypt0n_
da37ea2103
1.2.4
- updated components and the core library;
  fixed issue with an error message when the game's folder is empty

From previous commits:
- added new options to the fps unlocker
2022-12-24 22:12:51 +02:00
Observer KRypt0n_
7d91714d30
Added new options to the fps unlocker 2022-12-21 17:31:45 +02:00
Observer KRypt0n_
219bac46f1
1.2.3 (bugfix)
- fixed dxvk 2.0 version identification
2022-12-07 22:15:13 +02:00
Observer KRypt0n_
fb28ecf7b1
Updated wincompatlib with fixed dxvk 2.0 identification 2022-12-07 21:52:55 +02:00
Observer KRypt0n_
82fc7a1630
1.2.2
From previous commits:
- updated components list
- updated core library with a few fixes
- improved game 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`
2022-12-07 20:06:35 +02:00
Observer KRypt0n_
9fa5f9e306 Several changes
- 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`
2022-12-07 11:25:00 +02:00
Observer KRypt0n_
e7b2024f6e
1.2.1 fix of jap and kor voiceovers versioning
Build of this commit will replace previous one since it wasn't published yet
2022-11-02 22:43:38 +02:00
Observer KRypt0n_
5ae3495802
1.2.1
- 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
2022-11-02 19:01:57 +02:00
Observer KRypt0n_
bd41ba30ef
1.2.0
From previous commits:
- 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
- code refactoring based on clippy warnings
- fixed about window re-opening issue
- fixed game files repairing
2022-10-01 18:34:43 +02:00
Observer KRypt0n_
f9bf12056d
Several changes
- 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
2022-10-01 15:42:43 +02:00
Observer KRypt0n_
eaa8379976
Not sure what I wanted to fix initially
but in the end I rewrote tons of code,
including total change of strings to PathBuf
also I fixed all the warnings generated by clippy
2022-09-30 00:00:36 +02:00
Observer KRypt0n_
d92674ca77
Fixed game files repairing 2022-09-29 19:55:20 +02:00
Observer KRypt0n_
a6c53280d2
1.1.3
Updated core library with fixed voiceovers versions prediction algorithm
2022-09-28 11:26:43 +02:00
Observer KRypt0n_
435f00fdbe
1.1.2
- hotfix of launcher being unable to download any stuff
2022-09-26 21:35:29 +02:00
Observer KRypt0n_
a9e3797f75
1.1.1
From previous commits:
- updated core library and components library
- added (likely working) updates pre-downloading functionality
- moved to `anyhow::Result` in lots of places
- added partial support of wincompatlib
- moved to libadwaita 1.2
2022-09-26 17:56:12 +02:00
Observer KRypt0n_
002c77a9c1
Several changes
- updated core library and components library
- added (likely working) updates pre-downloading functionality
- moved to `anyhow::Result` in lots of places
2022-09-26 15:08:29 +02:00
Observer KRypt0n_
7ac3935ab1 Added partial support of wincompatlib 2022-09-25 21:38:38 +02:00
Observer KRypt0n_
5d26f84659
Moved to libadwaita 1.2 2022-09-24 16:52:31 +02:00
Observer KRypt0n_
6fd220e633
Added support for 1.1.0 core library 2022-09-18 15:24:31 +02:00
Observer KRypt0n_
aa3d7c3ffd
1.1.0
- 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
2022-09-18 14:19:26 +02:00
Observer KRypt0n_
8efd07c7fd
Added usage of xdg-portals for folders chooser during initial setup 2022-09-14 13:36:08 +02:00
Observer KRypt0n_
a7b1345302
Added support for FPS unlocker 2022-09-11 23:42:58 +02:00
Observer KRypt0n_
c8fc6d3cf3
1.0.4
From previous commits:
- added creation of wine/dxvk folders at start if needed
- fixed ability to use system wine to run the game
- updated components (wine/dxvk) system
- reworked DXVKs UI components to support different builds
- fixed thread issues when calling `MainApp::update_state`
- 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 initial updates pre-downloading support (from 1.0.3 core)
- removed patch-related buttons
- changed FSR description
2022-09-11 16:14:06 +02:00
Observer KRypt0n_
1eedbb52a3
Added initial updates pre-downloading support (from 1.0.3 core) 2022-09-10 22:05:46 +02:00
Observer KRypt0n_
57c36ae52d
Several changes
- 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
2022-09-08 17:27:37 +02:00
Observer KRypt0n_
00ff5c6409
Implemented updated core library and new components system (2) 2022-08-31 20:27:52 +02:00
Observer KRypt0n_
f4684dcf32
1.0.3
From previous commits:
- fixed work with `patch` folder
- reworked components downloading during initial setup
  now lots of stuff happens in separate threads and launcher shouldn't freeze
  also fixed sometimes weird progress bar behavior
2022-08-25 17:44:12 +02:00
Observer KRypt0n_
4843b6f537
Updated core library, fixed work with patch folder 2022-08-24 22:07:40 +02:00
Observer KRypt0n_
73a0a27476
1.0.2
From previous commits:
- updated core library with lots of fixes
- added new wine versions
- fixed Polish `LANG` value
- made FSync default wine sync option
2022-08-24 18:42:10 +02:00
Observer KRypt0n_
69cccd3a11
Updated core library with lots of fixes, added new wine versions 2022-08-24 14:51:36 +02:00
Observer KRypt0n_
a53facfab3
1.0.1
- updated core library with fixed Chinese game's data folder name
- added icon loading from "icon" file, added `--run-game` argument
- fixed gamescope switcher's state loading from config
- fixed FSR switch in gamescope settings
2022-08-18 21:29:25 +02:00
Observer KRypt0n_
43b09f295d
1.0.0
- 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
2022-08-07 15:15:51 +02:00
Observer KRypt0n_
c878841a15
Updated core library with improved Chinese version support 2022-08-07 09:05:51 +02:00
Observer KRypt0n_
cd76c22812
Updated core library; added support for Chinese version 2022-08-06 10:42:21 +02:00
Observer KRypt0n_
7938da4b45
1.0.0-rc2
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
2022-08-04 19:45:18 +02:00
Observer KRypt0n_
bcdb0217ad
Several changes
- 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
2022-08-04 17:23:05 +02:00
Observer KRypt0n_
a425c3cddf
Updated core library and AppImage building script 2022-08-04 15:59:52 +02:00
Observer KRypt0n_
a24f419a9e
1.0.0-rc1 2022-08-03 23:14:49 +02:00
Observer KRypt0n_
cc5e9b3d4e
0.7.1
- updated core library; new version caches patch fetching results
- added Nvidia Image Scaling option to gamescope

From previous commits:
- added `dxvk-async-1.10.3`
2022-08-03 22:37:36 +02:00
Observer KRypt0n_
ea6094daf5
0.7.0
- 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
2022-08-03 21:38:01 +02:00
Observer KRypt0n_
a5caf1a217
0.6.3
- 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
2022-08-03 13:44:48 +02:00
Observer KRypt0n_
c3a6cf37de
0.6.2
- 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
2022-08-03 10:49:13 +02:00