Giter VIP home page Giter VIP logo

davidotek / protonup-qt Goto Github PK

View Code? Open in Web Editor NEW
1.2K 16.0 40.0 5.57 MB

Install and manage GE-Proton, Luxtorpeda & more for Steam and Wine-GE & more for Lutris with this graphical user interface.

Home Page: https://davidotek.github.io/protonup-qt

License: GNU General Public License v3.0

Python 99.75% Shell 0.25%
linux linux-gaming steam proton proton-ge-custom python automation steamdeck luxtorpeda steamtinkerlaunch

protonup-qt's Introduction

Downloads Flathub Downloads License Build AppImage CI

ProtonUp-Qt

Install and manage GE-Proton and Luxtorpeda for Steam and Wine-GE for Lutris with this graphical user interface. Based on AUNaseef's ProtonUp, made with Python 3 and Qt 6.

ProtonUp-Qt Screenshot

Disclaimer

Affiliation Note: ProtonUp-Qt is an independent tool for managing gaming compatibility tools. It is neither directly affiliated with the compatibility tool creators nor with the providers of the individual game launchers. However, we try to work with them where possible.

The official development takes place on GitHub at DavidoTek/ProtonUp-Qt, and the official website is https://davidotek.github.io/protonup-qt. We distribute ProtonUp-Qt as a Flatpak on Flathub and as an AppImage in the releases section of the GitHub repository. Additionally, we check the integrity of the AUR (protonup-qt and protonup-qt-bin) and Pacstall distribution on an irregular basis.

Download from Flathub or as AppImage (portable):

Download from Flathub Download AppImage

Website: https://davidotek.github.io/protonup-qt

Install from AUR: (Arch, Manjaro, EndeavourOS, etc.)

Source

https://aur.archlinux.org/packages/protonup-qt (Maintained by yochananmarqos)

Binary (Appimage)

https://aur.archlinux.org/packages/protonup-qt-bin (Maintained by R1yuu)

Run from source

Install dependencies

pip3 install -r ./requirements.txt

Run ProtonUp-Qt

python3 -m pupgui2

Build AppImage

Install dependencies

  1. Install appimage-builder: https://appimage-builder.readthedocs.io/en/latest/intro/install.html

Build AppImage

appimage-builder

Translate ProtonUp-Qt

Recommended: You can translate ProtonUp-Qt on Weblate: https://hosted.weblate.org/projects/protonup-qt/

  1. Generate an empty translation file or copy a template from here.
  2. Install Qt Linguist (alternatively: edit the .ts file using a text editor).
  3. Open the translation file (.ts) with Qt Linguist and translate the app.
  4. The app summary can be found here.
  5. The comment inside the .desktop file can be found here.
  6. Submit the translation:
    a) Create a Pull Request with the translation
    b) Simple method: Alternatively, upload the .ts file/texts here and create a new issue with a link to your translation.

Credits

Special thanks to the authors of all services that ProtonUp-Qt uses, including AreWeAntiCheatYet and ProtonDB.

Licensing

Project License
ProtonUp-Qt GPL-3.0
ProtonUp GPL-3.0
PySide6 LGPL-3.0/GPL-2.0
inputs BSD
pyxdg LGPLv2
vdf@solstice MIT
steam@solstice MIT
requests Apache 2.0
PyYAML MIT

protonup-qt's People

Contributors

adam4nj avatar asayed18 avatar asciiwolf avatar atomicptr avatar blooym avatar david082321 avatar davidotek avatar domheadroom avatar franciscot avatar greatapo avatar jan200101 avatar kaptanlingu avatar lamdarer avatar liamdawe avatar marco-calautti avatar r1yuu avatar scrumplex avatar sonic2kk avatar starterx4 avatar teppyboy avatar vistaus avatar weblate avatar yurikaka avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

protonup-qt's Issues

Add a Snap or Flatpak package

For an easy install for new users (and as they so generally start off on Ubuntu). A one click snap install from the Software would not hurt other users either, wishing to just do things fast and simple after a long day's work, hearing of this and heading off to Steam.

Core dump when exiting the application

Describe the bug

Every time I exit the application, python3.9 coredumps.

To Reproduce

  1. Open ProtonUp-Qt
  2. Close it
  3. Get notified by Fedora's ABRT that python3.9 crashed

Desktop (please complete the following information):

  • OS: Fedora 35
  • Version: Flatpak

systemd log: see attachment.

python3.9-backtrace.txt

Show which apps are using custom Proton

ProtonUp-Qt already checks for games that use a custom Proton version with get_steam_games_using_compat_tool function

In the steam/config/config.vdf file there is also the app id information.

I personally have many games installed on my Steam client (more than 100) and sometimes pick custom Proton versions to test, but I usually forget to revert it back to the default (or to use the newest Proton-GE, for example).

While showing how many apps using that old custom Proton is useful, would it be possible to also list the name of the games using them? Then it should be easier to decide if that version can be deleted or not.

Thanks!

Cant run AppImage on Fedora

I have Appimage launcher installed and chmod +x ed it. Running it from terminal gives this traceback error:

➜  Downloads chmod +x ProtonUp-Qt-1.4.1-x86_64.AppImage
➜  Downloads ./ProtonUp-Qt-1.4.1-x86_64.AppImage       
/usr/bin/AppImageLauncher: /lib64/libcurl.so.4: no version information available (required by /usr/bin/../lib/x86_64-linux-gnu/appimagelauncher/libappimageupdate.so)
Extracting usr/share/icons/hicolor/256x256/apps/pupgui.png to "/home/peterge/.local/share/icons/hicolor/256x256/apps/appimagekit_7500ce94912719a025e58ffa5ff98326_pupgui.png"
WARNING: Unable to resize the application icon into a 128x128 image: "Unable to load image.". It will be written unchanged.
WARNING: Unable to resize the application icon into a 256x256 image: "Unable to load image.". It will be written unchanged.
gtk-update-icon-cache: Cache file created successfully.
which: no gtk-update-icon-cache-3.0 in (/home/peterge/.local/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/var/lib/snapd/snap/bin:/home/peterge/bin)
which: no update-icon-caches in (/home/peterge/.local/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/var/lib/snapd/snap/bin:/home/peterge/bin)
Traceback (most recent call last):
  File "/tmp/.mount_ProtonemlEsX//usr/src/pupgui/pupgui.py", line 3, in <module>
    from PySide6.QtWidgets import *
ImportError: /lib64/libk5crypto.so.3: undefined symbol: EVP_KDF_ctrl, version OPENSSL_1_1_1b

[Bug] Throws exception, if I only use a window manager

./ProtonUp-Qt-1.5.0-x86_64.AppImage

Traceback (most recent call last):
File "/tmp/.mount_ProtonHIxb8n//usr/src/pupgui/pupgui.py", line 136, in
apply_dark_theme(app)
File "/tmp/.mount_ProtonHIxb8n//usr/src/pupgui/pupgui.py", line 102, in apply_dark_theme
is_plasma = 'plasma' in os.environ.get('DESKTOP_SESSION')
TypeError: argument of type 'NoneType' is not iterable

I use i3 as window manager, DESKTOP_SESSION environment variable is not set. Maybe you can add a default option: os.environ.get('DESKTOP_SESSION', [])

Btw. If you need help with Qt, feel free to ask me. I have some experience

Edit: https://github.com/DavidoTek/ProtonUp-Qt#compile-gui
Why not add this file to github?

Crash: inputs.UnpluggedError: No gamepad found.

[kevin@kevin-at-fedora ~]$ flatpak run net.davidotek.pupgui2 
Gtk-Message: 21:45:31.289: Failed to load module "canberra-gtk-module"
Gtk-Message: 21:45:31.289: Failed to load module "pk-gtk-module"
Gtk-Message: 21:45:31.289: Failed to load module "canberra-gtk-module"
Gtk-Message: 21:45:31.290: Failed to load module "pk-gtk-module"
Qt: Session management error: None of the authentication protocols specified are supported
ProtonUp-Qt 2.4.0 by DavidoTek. Base directory: /app/share/pupgui2
Loaded ctmod Proton-GE
Loaded ctmod Wine-GE
Loaded ctmod Boxtron
Loaded ctmod Kron4ek Wine-Builds Vanilla
Loaded ctmod Lutris-Wine
Loaded ctmod Luxtorpeda
Loaded ctmod Roberta
Traceback (most recent call last):
  File "/app/lib/python3.9/site-packages/inputs.py", line 3676, in get_gamepad
    gamepad = devices.gamepads[0]
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/app/src/pupgui2/gamepadinputworker.py", line 16, in run
    events = inputs.get_gamepad()
  File "/app/lib/python3.9/site-packages/inputs.py", line 3678, in get_gamepad
    raise UnpluggedError("No gamepad found.")
inputs.UnpluggedError: No gamepad found.

ProtonQt closes itself after 1 minute

I am running the flatpak version and the app closes it self exactly after 1 minute. No errors in terminal.

flatpak: ProtonUp-Qt v2.6.0
Arch, KDE Plasma 5.24.3

Show usage info for installed official Proton versions

I love the new usage info feature (see #14) in 2.3.0!

Would it be feasible to also list installed official Proton versions without the option to remove them, just to show which games use them?

I think this would be useful, since Steam allows me to uninstall Proton versions that are still in use, but I'd understand if it was outside the scope of this tool.

distribute as python module

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Instead of having to rely on manually running pupgui2.py distribute as a module with a console entry point.

Additional context
Add any other context or screenshots about the feature request here.

This would simplify packaging efforts as well as simplify global and per user installs.

Unable to change install directory in config file

I'm using Pop!_OS and have to install Proton GE into home/user/.steam/steam/compatibilitytools.d/ in order for Steam to recognize the GE versions. I tried to edit the config file located in /home/posiris/.var/app/net.davidotek.pupgui2/config/pupgui, but it reverts back to home/user/.steam/root/compatibilitytools.d/ every time.

Would it be possible to add an option in the GUI to add a custom install directory?

Installed proton-ge versions does not reside on disk nor does get created.

Type:
Bug.

Common description:
When installing a version of proton-ge for steam (flatpak), the downloaded files does not reside on disk nor the expected folder gets created.

How to replicate:
Install Steam (flatpak), Install a version of proton-ge.

Stacktrace:
ProtonUp-Qt 2.4.1 by DavidoTek. Base directory: /app/share/pupgui2
Loaded ctmod Proton-GE
Loaded ctmod Wine-GE
Loaded ctmod Boxtron
Loaded ctmod Kron4ek Wine-Builds Vanilla
Loaded ctmod Lutris-Wine
Loaded ctmod Luxtorpeda
Loaded ctmod Roberta
Gamepad error: No gamepad found.

Platform:
Archlinux vanilla.

Hardware:
Intel i5 U8250.

ProtonUp-Qt version:
ProtonUp-Qt 2.4.1 (flatpak)

Reverse batch update version order

Available versions for the batch update function are sorted from oldest to newest. Reversing the order so the newest version is the default selection would probably make more sense.
screenshot

Support luxtorpeda-dev

I'm the maintainer of the luxtorpeda-dev project and this looks very nice!

I was curious if you were interested in adding luxtorpeda-dev (https://github.com/luxtorpeda-dev/luxtorpeda) as an option. It's another compatibility tool similar to the others that you support, although it's more geared towards allowing people to play native engines for games.

I use github releases (https://github.com/luxtorpeda-dev/luxtorpeda/releases), which looks pretty similar to what you support for other tools. One difference is the name of the folder is always "luxtorpeda" without a version. It does not look like you're detecting if something is "newer" or not, so it sounds like that won't be an issue, unless the tool has any issues with overwriting files that are already tehre.

Crashes instantly

Describe the bug
Upon attempting to launch the app it just crashes instantly.

To Reproduce
Steps to reproduce the behavior:

  1. Launch ProtonUp-Qt
  2. Nothing happens

Expected behavior
The app to appear and function as usual.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: Arch Linux w/GNOME 42 on Wayland
  • Version: ProtonUp-Qt 2.6.1 Flatpak

Additional Info
Steam is not a Flatpak.

Terminal output

[trpg1@trpg1-desktop ~]$ flatpak run net.davidotek.pupgui2
Traceback (most recent call last):
  File "/app/src/pupgui2/pupgui2.py", line 12, in <module>
    from steamutil import get_steam_game_list
  File "/app/src/pupgui2/steamutil.py", line 3, in <module>
    from steam.utils.appcache import parse_appinfo
ModuleNotFoundError: No module named 'steam'

Does not detect dependencies when installing Boxtron

OS: Fedora 35

All noted dependencies installed as detailed on the Boxtron project page: sudo dnf install dosbox-staging inotify-tools timidity++ fluid-soundfont-gm

  1. Open ProtonUp-Qt
  2. Click Add version
  3. Note that only Proton-GE, Boxtron, Luxtorpeda and Roberta are available
  4. Select Boxtron and latest version
  5. Error thrown: You need doxbox, inotify-tools and timidity for Boxtron
  6. Click OK
  7. Program Seg faults.

From terminal:

$ flatpak run net.davidotek.pupgui2 
ProtonUp-Qt 2.4.1 by DavidoTek. Base directory: /app/share/pupgui2
Loaded ctmod Proton-GE
Loaded ctmod Wine-GE
Loaded ctmod Boxtron
Loaded ctmod Kron4ek Wine-Builds Vanilla
Loaded ctmod Lutris-Wine
Loaded ctmod Luxtorpeda
Loaded ctmod Roberta
Gamepad error: No gamepad found.
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x55826d0d2600), parent's thread is QThread(0x55826c8d5ef0), current thread is QThread(0x55826d4049b0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x55826d0d2600), parent's thread is QThread(0x55826c8d5ef0), current thread is QThread(0x55826d4049b0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x55826d0e15a0), parent's thread is QThread(0x55826c8d5ef0), current thread is QThread(0x55826d4049b0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x55826d0e15a0), parent's thread is QThread(0x55826c8d5ef0), current thread is QThread(0x55826d4049b0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x55826d0d2600), parent's thread is QThread(0x55826c8d5ef0), current thread is QThread(0x55826d4049b0)
QObject::installEventFilter(): Cannot filter events for objects in a different thread.
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x55826d0d2600), parent's thread is QThread(0x55826c8d5ef0), current thread is QThread(0x55826d4049b0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x55826d0d2600), parent's thread is QThread(0x55826c8d5ef0), current thread is QThread(0x55826d4049b0)
QPainter::begin: A paint device can only be painted by one painter at a time.
QPainter::setCompositionMode: Painter not active
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
/app/bin/net.davidotek.pupgui2: line 2:     3 Segmentation fault      (core dumped) python3 /app/src/pupgui2/pupgui2.py --pupgui2-base-dir /app/share/pupgui2 "$@"

Feature Request: Add single update button beside batch update button

Is your feature request related to a problem? Please describe.
This tool is great if you want to batch update games to not use a specific version, but if you only want to update one game to use a specific version, this isn't possible.

Describe the solution you'd like
I think there should be a single game update button added beside the batch update button.

Describe alternatives you've considered
I can't think of any other alternatives to this, it would be so helpful to have this functionality.

App image fails to run

Hey I just wanted to inform you that the app image fails to launch. I am on Manjaro Gnome in case that means anything.

Traceback (most recent call last):
  File "/tmp/.mount_Protonizmbh5//usr/src/pupgui2/pupgui2.py", line 213, in <module>
    create_compatibilitytools_folder()
  File "/tmp/.mount_Protonizmbh5/usr/src/pupgui2/util.py", line 72, in create_compatibilitytools_folder
    os.mkdir(install_dir)
FileExistsError: [Errno 17] File exists: '/home/corey/.steam/root/compatibilitytools.d/'

Version selection showing both Proton-GE and Luxtorpeda versions

If you go to "Add version" and select "Luxtorpeda" before the Proton-GE versions are loaded, the Version dropdown will be populated with versions for both Proton-GE and Luxtorpeda. This is very easy to reproduce with a slow internet connection.

protonup1
protonup2

I didn't check what would happen if I actually tried to install for example Luxtorpeda 6.21-GE-1.

I'm using ProtonUp-Qt-2.1.1-x86_64.AppImage.

Add compatibility with AppImageUpdate

This excellent tool should be compatible with AppImageUpdate https://github.com/AppImage/AppImageUpdate . I am using Bauh https://github.com/vinifmor/bauh as a flaptpak/snap/appimage manager .Bauh has an automated update process with Appimages that are not included in appimage repository but have a githtub release .
Right now , in order to update protonup-qt, i have to go to help , check for update , download it and install it as an upgrade via bauh. All this would be reduced to 1 step using AppImageUpdate and would greatly improve the functionality of the app.

Add a manual toggle for dark/light theme.

I'm running this on Linux Mint with a dark theme. The whole system is in dark theme but ProtonUp defaults to a light theme anyway. I propose a way to make it easy to force the app to use the dark theme regardless.
image

Proton version doesn't change in Steam when changed in ProtonUp

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to Game List by clicking Show game list
  2. Look at different games using Proton, for example proton_63
  3. Click the dropdown then change a game's Proton version
  4. Look at Steam, it hasn't changed, restart Steam and it's still using the older Proton version despite what ProtonUp GUI says.
    You can also reproduce this with batch updating Proton versions, this way also doesn't actually change the Proton version in Steam, even after restarting Steam
    It's worth noting after re-launching ProtonUp, the GUI reports that the older Proton version is indeed still being used (since it doesn't actually successfully change the Proton version being used).

Expected behavior
I expect changing the Proton version for a game in ProtonUp to change the Proton version for a game in Steam especially after restarting Steam.

Screenshots
You can see here, ProtonUp says that Proton 7-9 is not being used indicating that the move was successful, however Steam says (before and after restarting Steam) that Proton 7-9 is still in use for Horizon Zero Dawn (which, it actually is still in use):

Desktop (please complete the following information):

  • OS: Ubuntu 20.04
  • Version: ProtonUp-Qt 2.6.0 AppImage with Steam deb version 1:1.0.0.61-2ubuntu3

Terminal output
There's nothing remarkable for the terminal output, it's pretty standard:

Paste the output of running ProtonUp-Qt from the Terminal here.
AppImage: ./ProtonUp-Qt-2.6.0-x86_64.AppImage 
ProtonUp-Qt 2.6.0 by DavidoTek. Base directory: /tmp/.mount_ProtonuBNuWh/usr/share/pupgui2
Python 3.8.2 (default, Mar 13 2020, 10:14:16) [GCC 9.3.0], PySide 6.2.3
Platform: Ubuntu 20.04 Linux-5.4.0-107-generic-x86_64-with-glibc2.29
Loaded ctmod Proton-GE
Loaded ctmod Wine-GE
Loaded ctmod Boxtron
Loaded ctmod Kron4ek Wine-Builds Vanilla
Loaded ctmod Lutris-Wine
Loaded ctmod Luxtorpeda
Loaded ctmod Roberta
qt.pysideplugin: Environment variable PYSIDE_DESIGNER_PLUGINS is not set, bailing out.
qt.pysideplugin: No instance of QPyDesignerCustomWidgetCollection was found.
Gamepad error: No gamepad found.
qt.pysideplugin: No instance of QPyDesignerCustomWidgetCollection was found.

New Touch/SteamDeck-optimized UI

Is your feature request related to a problem? Please describe.
Current UI isn't optimized for touch screens. Built up using multiple windows which doesn't work that well with SteamDeck's handheld-mode.

Describe the solution you'd like
Provide new UI, made using QtQuick/QML, consisting of a single view/window with different pages.

Crash on launch when a controller is connected

I get the following crash when I start ProtonUp-Qt with a controller connected:

╰─ ./ProtonUp-Qt-2.4.1-x86_64.AppImage                                                                              ─╯
Traceback (most recent call last):
  File "/tmp/.mount_ProtonajEtNN//usr/src/pupgui2/pupgui2.py", line 18, in <module>
    from gamepadinputworker import GamepadInputWorker
  File "/tmp/.mount_ProtonajEtNN/usr/src/pupgui2/gamepadinputworker.py", line 1, in <module>
    import inputs
  File "/tmp/.mount_ProtonajEtNN/usr/lib/python3.8/site-packages/inputs.py", line 3652, in <module>
    devices = DeviceManager()  # pylint: disable=invalid-name
  File "/tmp/.mount_ProtonajEtNN/usr/lib/python3.8/site-packages/inputs.py", line 3188, in __init__
    self._post_init()
  File "/tmp/.mount_ProtonajEtNN/usr/lib/python3.8/site-packages/inputs.py", line 3200, in _post_init
    self._find_leds()
  File "/tmp/.mount_ProtonajEtNN/usr/lib/python3.8/site-packages/inputs.py", line 3359, in _find_leds
    self._parse_led_path(path)
  File "/tmp/.mount_ProtonajEtNN/usr/lib/python3.8/site-packages/inputs.py", line 3364, in _parse_led_path
    self.leds.append(GamepadLED(self, path, name))
  File "/tmp/.mount_ProtonajEtNN/usr/lib/python3.8/site-packages/inputs.py", line 3133, in __init__
    super(GamepadLED, self).__init__(manager, path, name)
  File "/tmp/.mount_ProtonajEtNN/usr/lib/python3.8/site-packages/inputs.py", line 3003, in __init__
    self._post_init()
  File "/tmp/.mount_ProtonajEtNN/usr/lib/python3.8/site-packages/inputs.py", line 3137, in _post_init
    self._character_device_path = self.gamepad.get_char_device_path()
AttributeError: 'NoneType' object has no attribute 'get_char_device_path'

The controller is a standard wired Xbox360 controller and this happens on both the AppImage and the Flatpak. The program works great when I disconnect the controller.

App doesn't launch when using cinnamon desktop

From Flatpak I get this error when launching from terminal when logged into Cinnamon 5.0.6 but it works on the same machine in Xfce 4.16. In Xfce, it gives the same xapp-gtk3-module error, but still loads the gui and works.

/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=net.davidotek.pupgui2 net.davidotek.pupgui2

Gtk-Message: 18:53:50.762: Failed to load module "xapp-gtk3-module"
Gtk-Message: 18:53:50.762: Failed to load module "xapp-gtk3-module"

(python3:3): GLib-GIO-ERROR **: 18:53:50.786: Settings schema 'org.cinnamon.desktop.interface' is not installed
/app/bin/net.davidotek.pupgui2: line 2: 3 Trace/breakpoint trap (core dumped) python3 /app/src/pupgui2/pupgui2.py --pupgui2-base-dir /app/share/pupgui2 "$@"

To Reproduce
Steps to reproduce the behavior:

  1. Install from flatpak on Ubuntu 22.04 Jammy and login to the cinnamon desktop environment
  2. Run it
  3. It doesn't open
  4. error: "(python3:3): GLib-GIO-ERROR **: 18:53:50.786: Settings schema 'org.cinnamon.desktop.interface' is not installed"

Expected behavior
Expectedly it would open like in other DEs.

Desktop (please complete the following information):

  • OS: Ubuntu 22.04 Jammy Jellyfish Dev when logged into cinnamon 5.0.6 desktop
  • Version: ProtonUp-Qt 2.5.0 Flatpak

Additional context
Works great when I use xfce or gnome so there's a workaround to get the end goal but it'd be cooler if it launched in the cinnamon desktop too. If I logout of cinnamon, log back in with xfce, install the ProtonGE editions I want and then logout of xfce and back with cinnamon.

Game List compatibility tool only shows regular Proton versions for games that already use it

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to Game List by clicking Show game list
  2. Look at different games using regular Proton, for example proton_63
  3. Click the dropdown for games using ProtonGE or "-"
  4. There is no option for proton_63 or any other regular Proton versions for these games not using proton_63 etc already

Expected behavior
I expect it to show standard Proton versions not just Proton GE versions, for all games not just games that are currently using standard Proton versions.

Screenshots

Desktop (please complete the following information):

  • OS: Ubuntu 20.04
  • Version: ProtonUp-Qt 2.6.0 AppImage

Terminal output

Paste the output of running ProtonUp-Qt from the Terminal here.
AppImage: ./ProtonUp-Qt-2.6.0-x86_64.AppImage 
ProtonUp-Qt 2.6.0 by DavidoTek. Base directory: /tmp/.mount_Protonjzpax0/usr/share/pupgui2
Python 3.8.2 (default, Mar 13 2020, 10:14:16) [GCC 9.3.0], PySide 6.2.3
Platform: Ubuntu 20.04 Linux-5.4.0-107-generic-x86_64-with-glibc2.29
Loaded ctmod Proton-GE
Loaded ctmod Wine-GE
Loaded ctmod Boxtron
Loaded ctmod Kron4ek Wine-Builds Vanilla
Loaded ctmod Lutris-Wine
Loaded ctmod Luxtorpeda
Loaded ctmod Roberta
qt.pysideplugin: Environment variable PYSIDE_DESIGNER_PLUGINS is not set, bailing out.
qt.pysideplugin: No instance of QPyDesignerCustomWidgetCollection was found.
Gamepad error: No gamepad found.
qt.pysideplugin: No instance of QPyDesignerCustomWidgetCollection was found.
qt.pysideplugin: No instance of QPyDesignerCustomWidgetCollection was found.

Suggestion: Donations section on website.

The new website looks fantastic by the way, great job.

I think it'd be nice to have a donations section for anyone who would like to throw a couple bucks to the project as a sign of appreciation for all the hard work, ProtonUp-Qt does a great job of offering a pleasant user experience for new Linux users and that deserves a few donations in my opinion.

Could include a link back to the Proton GE project as well and GE's patreon.

Feature Request: Make accessible from SteamOS UI in similar way to Chrome's Standalone Flatpak.

Description of problems that this feature could address:
A UI that would be tappable from Steam Big Picture Mode/Steamdeck's Main Home-Screen (and doesn't even need desktop mode either even to install.)

(Chrome Just involved clicking an automatic dialog box prompt that popped up when looking at non-steam apps section)

It could make life so much easier for getting automatic updates on Steamdeck :) 🙏🏼

Description of ideal solution: Bigger UI
Would it be possible to have that as an option from the app? Even if initially installing from desktop mode, allow it to launch as a non-steam shortcut from the tablet mode thinking

Hopefully it's as easy as a script that adds a symlink shortcut in one of steams folders. I could try and check where Chrome was put if you'd like?
And could be useful with #46 ? @DavidoTek

Description of alternatives considered:
An automatically updated GE-Proton, hopefully the AUR gets updated to relevant forks (https://aur.archlinux.org/packages/protonup-git).

Additional context:

https://cdn.arstechnica.net/wp-content/uploads/2022/02/steamdeck-chrome-980x613.jpg

https://cdn.arstechnica.net/wp-content/uploads/2022/02/steamdeck-non-steam-980x613.jpg

steamdeck-chrome-980x613

steamdeck-non-steam-980x613

Game names gone

Thanks for this useful tool. When I first installed and used it, the names of the games that use a specific compatibility tool were displayed correctly (e.g., Tom Clancy's Ghost Recon® Wildlands), but all of a sudden it just says "None". Any idea what's going on and how that can be resolved?
Bildschirmfoto vom 2021-12-22 02-40-29
PS: I searched all across Google but with no success, maybe you know the answer: I have more than a hundred games that use the same version of Proton GE. Is there a way to batch update them to another version, or do I have to change them, in Steam itself, one by one? Thanks a lot!

Description / Information on Each Steam Play Tool Avaliable

A simple feature to explain broadly what GE-Proton, Luxtropeda, Boxtron, and Roberta are and when they should be used. This is a very nit-picky request but I think it would help those who bought a Steam Deck and not very familar with what these tools do.

So something simple like:

"Luxtropeda is a Steam Play tool that allows a game to be played on a native Linux engine or source port (ex: GZDoom, OpenMW, etc.)"

Anyways, good work on this GUI.

Support for installing wine globally

Hello so I like to use wine-ge as my global wine, but I don't want to have it build for 2 hours every time there is a new release since i have it installed through the AUR. Can you please add it as a feature? Thanks!

Show usage info for installed compatibility tools

It would be nice if ProtonUp-Qt would show which currently installed compatibility tools are used by which games.

This would prevent accidentally removing a version that is still needed and help with changing the game settings to a newer version to allow removing older versions.

Steam stores the compatibility tool selection for all games in ~/.local/share/Steam/appcache/appinfo.vdf, which can probably be parsed easily with vdf.

ProtonupQT does not detect Proton GE on Steam (Ubuntu 20.04)

Describe the bug
I use flatpak ProtonupQT does not detect ProtonGE on /home/user/.steam/root/compatibilitytools.d/

To Reproduce
Steps to reproduce the behavior:

  1. Open protonupqt
  2. I cannot update anything

Expected behavior
it suppose update the proton GE with GUI

Screenshots
Screenshot_20220308_093231

Desktop (please complete the following information):

  • Ubuntu 20.04
  • Protonup 25 Flatpak

Additional context
Add any other context about the problem here.

Terminal output

Paste the output of running ProtonUp-Qt from the Terminal here.

Screenshot_20220308_093456

Heroic Launcher Flatpak directories

Is your feature request related to a problem? Please describe.
Since Heroic has changed to flatpak, the directories have changed.

  • /home/deck/.var/app/com.heroicgameslauncher.hgl/config/heroic/tools/

Describe the solution you'd like
Allow the app to pickup the new directories (side note, i tried to do it doing a custom install directory, when I added heroicproton and heroicwine, the last one I added was successful but the first seems to get lost/deleted/ignored)

Describe alternatives you've considered
Tried symbolic links but they didn't show up in the app.

Add version of compatibility tool bugged

Hello,

in the latest version 2.2.0 the entries are not filtered correctly, so you cannot use the filter of the respective compatibility tool.

This can be easily reproduced by simply switching from one category to another and seeing how the list gets longer and longer.

[feature request] Cancel progress button

Is your feature request related to a problem? Please describe.
Currently we can't cancel the progress of downloading.

Describe the solution you'd like
Add a "Cancel" download button, which would cancel downloading if you already started it.

Additional context
I was downloading via protonup qt and my internet got slow because i was already updating a game, so it bothered me that i couldn't cancel or pause the download inside the protonup GUI.

Sort installed compatibility tool versions

Specific installed compatibility tool versions are hard to find, because they have no recognizable sort order. They seem to be sorted by something, because the order stays the same after relaunching ProtonUp-Qt, but sorting them by version number, by release date, or alphabetically would probably be better. The sort order under "Add version" is fine.

protonupqt_sort

I'm using ProtonUp-Qt-2.1.1-x86_64.AppImage.

Lutris flatpak support

Is your feature request related to a problem? Please describe.
ProtonUp-Qt doesn't detect flatpaked lutris.

Additional context
image

Allow resetting compatibility tool for individual games

An option to reset the selected compatibility tool for a single game back to the default would be nice.

Currently Between the Stars Demo (928050) is permanently "stuck" in ProtonUp-Qt for me. The tool lists it because back when I tried this demo I ran it with some Proton-GE version. Every time I remove the oldest Proton-GE version, the demo gets bumped to the latest version via the batch update function. Since the demo isn't available to install any more, the Steam client doesn't give me the option to manually reset the compatibility tool. Removing the license for the demo from my account didn't remove it either. Currently my only way to get rid of the entry in ProtonUp-Qt would be to manually edit appinfo.vdf, which I'd like to avoid.

Very long start

Program start long time, this is reading folder proton from steam. If change to lutris or heroic than start faster.
Version 2.5.0 and 2.6.0 start faster.

Desktop (please complete the following information):
Ubuntu 22.04
ProtonUp-Qt 2.6.1 AppImage or Flatpak

Testing AppImage and flatpak versions. Old version only Appimage.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.