Commit graph

10008 commits

Author SHA1 Message Date
Daniel Johnson 4c702c254a Add a "Turn on Library Sync" button to the notification bar.
We do not sync by default, but once you log in this will prompt you to do so. This will turn on the setting and start a full library sync
2024-04-04 15:43:44 -07:00
Daniel Johnson 3015ca60d4 Go back to using a link to Lutris.net, but use CSS to remove the link color (which rendered it unreadable) 2024-04-04 15:43:44 -07:00
Daniel Johnson e0c81d7024 Show the log-in notification only with the splash, not if you have games or if you have games, but they are filtered away. 2024-04-04 15:43:44 -07:00
Daniel Johnson 4975ce4030 Move away from using LutrisService
It looks like we're moving away from this in favor of some modules; I'll do what the AccountsBox is doing.
2024-04-04 15:43:44 -07:00
Daniel Johnson ee70fba51a Hide and show the notification bar when you log into or out of Lutris. 2024-04-04 15:43:44 -07:00
Daniel Johnson bed49c83e4 Hide and show the notification bar on service login/logout, and hook up the Login button 2024-04-04 15:43:44 -07:00
Daniel Johnson 507561d1d3 Create a notification bar to log in.
First cut, always visible, buttons don't work. But it's the spirit of the thing!
2024-04-04 15:43:44 -07:00
Daniel Johnson a4211eaf1c More subtle logic for the Wine update.
We'll load the latest Wine if you have the 'runners/wine' directory, but not if you do not.

The 'Update' button provided in preferences now pre-creates this directory if it is missing, enabling the update to proceed.
2024-04-04 18:36:26 -04:00
Daniel Johnson 526cebd1fb Runner updates should be less choosy - you can have a runner without yet having its directory (it can be coming from flatpak or be part of your distro)
So, we should be able to install versions of the runner without a pre-existing runner dir, or with one that is empty.
2024-04-04 18:02:02 -04:00
R1kaB3rN b8d651fedb Target Proton-GE (Latest)
Co-authored-by: Mathieu Comandon <strycore@gmail.com>
2024-04-04 12:06:32 -07:00
R1kaB3rN 065afac87f Kill wineserver via UMU Proton
- Kills the wineserver process associated with the running prefix via the `wineserver` command in the UMU-Proton directory instead of wineboot which had lead to unreliable results
2024-04-04 12:06:32 -07:00
ferrreo d51aa8ac8a Fix "table games has no column named hidden" error
When the hidden column was removed from the games table in schema.py the setting of the column value was never removed from installer.py

This meant on a fresh Lutris install user's cannot install games and are met with "table games has no column named hidden" errors.

This cleans up that incorrect setting of the column value.
2024-04-04 10:29:12 -07:00
Daniel Johnson 1117bf204a Add bragging to the changelog, but also some more 'critial bug' items. 2024-04-04 06:35:22 -04:00
Mathieu Comandon fa04547243 Initial changelog for 0.5.17 2024-04-03 14:23:31 -07:00
Mathieu Comandon 10c0354a90 Get rid of legacy.get_game_launcher, all installers on the website have been fixed 2024-04-03 13:46:40 -07:00
Mathieu Comandon cb17de4c8e Download media on manually added games 2024-04-03 04:20:16 -07:00
Mathieu Comandon 04c6d0da10 Don't raise error when Proton path not found, return nothing 2024-04-02 19:23:02 -07:00
Mathieu Comandon 8d5543d45c Fortnite mention can be removed since we no longer show the installers 2024-04-02 19:07:00 -07:00
Mathieu Comandon 5a3e2cd711 Updates for installer moderation 2024-04-02 19:05:35 -07:00
Mathieu Comandon bfe9b67747 Docstrings + handle category creation on updates 2024-04-02 18:32:18 -07:00
Mathieu Comandon eba3a88cc2 changed = True isn't needed here 2024-04-02 06:09:37 -07:00
Mathieu Comandon 3bc822a80b Updates for category sync 2024-04-02 06:06:15 -07:00
Mathieu Comandon acd7257a2b Category sync for newly created games 2024-04-02 05:39:04 -07:00
Mathieu Comandon 749c6ec06d Start refactoring LybrarySyncer (+ rebase with last commit) 2024-04-02 05:12:38 -07:00
Daniel Johnson a95ff285dc Make LibrarySyncer.is_sync a global variable again.
It really needs to be, or it's just useless - resulting in a UI error and potentially multiple threads syncing at once.

The problem is that _IS_LOCAL_LIBRARY_SYNCING is now a mutable global, and in Python this is treacherous. 'from x import G' copies G into scope, which is bad news for a global like this.

 'import x' followed by 'x.G' works, but this is real dark corner, so I've added a global function just to read the global variable; it reads the original, not a copy, even if you copy the function reference into scope with 'from x import f'.

 So this works without making LibrarySyncer a singleton.
2024-04-02 04:43:37 -04:00
Mathieu Comandon e2c68e1b41 Create LibrarySyncer class 2024-04-02 00:14:51 -07:00
Mathieu Comandon 7a10f9e2d2 Update version of ruff in Makefile 2024-04-01 23:52:18 -07:00
Mathieu Comandon eba175cbc5 Format code with newer Ruff version 2024-04-01 23:43:34 -07:00
Mathieu Comandon f7f5da433f Fix wrong name being applied in case of multiple GPUs from the same vendor 2024-04-01 20:32:18 -07:00
Daniel Johnson b09efe491b Make the file extension check for .AppImage case-insensitive.
The problem is that we often have .AppImage instead of the more Unixy .appimage, but the later occurs too.

So, We'll tolerate whatever CrAzY Casing you can come up with.

Resolves #5396
2024-04-01 16:53:58 -04:00
Mathieu Comandon 2abe2323f7 Return default ID if no game is provided 2024-03-28 23:14:52 -07:00
Mathieu Comandon 738bda4bb4 Allow picking WUA files for Cemu 2024-03-28 19:42:06 -07:00
Mathieu Comandon 8836eae836 Fix types 2024-03-28 14:37:45 -07:00
Mathieu Comandon 782e3330dd Add test for incorrect version 2024-03-28 14:28:57 -07:00
Mathieu Comandon 960c078e94 Add mock for runner version 2024-03-28 13:24:45 -07:00
Mathieu Comandon 916e8aa0db Start breaking up version code and add tests 2024-03-28 12:51:00 -07:00
Mathieu Comandon c490ae2a8d Move some runner tests in runners folder 2024-03-28 10:58:33 -07:00
Daniel Johnson 42b74a51c9 Provide explicit types for the execute methods. Also, make sure to return a tuple on every code path of _execute().
Resolves #5380
2024-03-27 16:56:25 -04:00
Daniel Johnson b2a819fb2b Add a gross hack to tolerate GE-Proton versions of Wine not having architectures on the end of them.
I feel dirty, but it's the best I can do.
2024-03-26 17:46:54 -04:00
Daniel Johnson ef5436edef Do not return the wrong version from get_default_runner_version_info() if a specific version is specified; this leads to crashes when we try to install a verison already installed. 2024-03-26 17:40:03 -04:00
Daniel Johnson cda7ce8871 Further, add a method to fix up the runner configuration, which contains the version, on a runner specific basis.
Ugly, but since we're fixing up the versions for the installer, we should do so for the game as well.

It's that or just insist that the game scripts all should be fixed to specify architecture for their wine versions.
2024-03-26 17:13:15 -04:00
Daniel Johnson eb96626451 Supply a missing architecture for a wine version taken from an install script.
Resolves #5362
2024-03-26 16:49:39 -04:00
Mathieu Comandon e513e442a6 Add umu update channel (not fully implemented yet) 2024-03-26 13:05:15 -07:00
Mathieu Comandon f4b370c38a Print warning when trying to use winetricks with Proton 2024-03-25 17:48:07 -07:00
Mathieu Comandon 1b57533bd8 Remove log about PROTONPATH. Show playtime log in seconds 2024-03-25 16:58:08 -07:00
Mathieu Comandon 74ff7899c4 Adapt winekill for umu 2024-03-25 16:43:52 -07:00
Tyrovox 676beb0495 Added Wezterm terminal support. 2024-03-22 13:43:17 -07:00
Mathieu Comandon 89ea5c7dbc Use a MonitoredCommand to create prefixes with umu 2024-03-22 00:16:02 -07:00
Mathieu Comandon 99567b8057 Add import fixing to ruff format 2024-03-21 22:34:46 -07:00
Mathieu Comandon 8c14d52457 Rename command module to monitored_command 2024-03-21 22:28:39 -07:00