Compare commits

..
1977 Commits
Author SHA1 Message Date
Boria138 afa9519efc chore: enable NVAPI Reflex
Code check / Check code (pull_request) Successful in 1m41s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-27 18:15:38 +05:00
Boria138 13e89d8b2b chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-26 12:01:15 +05:00
Boria138 30c3bfb3b1 feat(settings): allow skipping ALT Linux dependency checks
Code check / Check code (push) Successful in 1m34s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-26 11:59:37 +05:00
Boria138 8e12ec713f fix: repair malformed desktop entries
Code check / Check code (push) Successful in 3m43s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-25 22:38:30 +05:00
Boria138 e809f031ce fix: scroll horizontal library layouts with mouse wheel
Code check / Check code (push) Successful in 1m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-25 14:28:09 +05:00
Boria138 1b42c672bb fix: include library layout in gamepad navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-25 14:20:43 +05:00
Boria138 07b53f3160 chore(locale): update
Code check / Check code (push) Successful in 2m2s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-25 13:59:45 +05:00
Boria138 40d80f0ce8 fix: preserve theme card animations across library layouts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-25 13:58:53 +05:00
Boria138 0b8536b163 feat: add configurable library layout variant
Code check / Check code (push) Successful in 1m38s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-25 13:37:05 +05:00
Boria138 31f6d84537 feat: add vertical cards to horizontal library layouts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-25 13:13:11 +05:00
Boria138 5c86b3d943 chore: remove unversioned LG Wine aliases from settings
Code check / Check code (push) Successful in 2m2s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-24 20:13:29 +05:00
Boria138 ec2ffee64d chore(locale): update
Code check / Check code (push) Successful in 1m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-24 20:08:51 +05:00
Boria138 60e9a2866a chore: move Wine defaults to user.conf settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-24 20:07:47 +05:00
Boria138 94269455ec fix: restore gamepad control for user.conf combos
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-24 19:55:38 +05:00
Boria138 f5c07cf3ea fix: add resolution save to global game settings editor
Code check / Check code (push) Successful in 2m43s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-24 12:18:24 +05:00
Boria138 509d4272ab chore(locale): update
Code check / Check code (push) Successful in 1m54s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-24 11:40:43 +05:00
Boria138 ff560fb43a feat: add global game settings editor
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-24 11:39:34 +05:00
Boria138 ed78af49d2 feat: add unified store download queue
Code check / Check code (push) Successful in 1m45s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-23 11:14:24 +05:00
Boria138 5c5a154a0d feat: improve completed download actions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-23 10:59:46 +05:00
Boria138 ae011adfdf feat: add install all button to DLC dialog
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-23 10:36:12 +05:00
Boria138 b0d97e0e0b chore: added Temporarily disable OptiScaler hint to compatibility_report
Code check / Check code (push) Successful in 1m48s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-22 19:06:39 +05:00
Boria138 8a303bf9ed fix: improve game crash detection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-22 19:03:40 +05:00
Boria138 a14563dd78 fix: prevent duplicate game card when adding a game
Code check / Check code (push) Successful in 2m42s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-21 15:49:39 +05:00
Codeberg TranslateandBoria138 abb511c173 Translated using Weblate (Russian)
Currently translated at 100.0% (781 of 781 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-09-20 18:28:52 +00:00
Boria138 ef0626a069 chore(locale): merge Russian Weblate updates 2026-09-20 23:26:03 +05:00
Boria138 40f06caa16 fix: update library search after adding executable
Code check / Check code (push) Successful in 1m50s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-20 23:23:30 +05:00
Boria138 bfd4bf4065 chore: Added Kex Engine support to graphics_detector
Code check / Check code (push) Successful in 2m15s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-20 14:11:59 +05:00
Boria138 92ecc008f3 chore(locale): update
Code check / Check code (push) Successful in 4m4s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-20 13:25:21 +05:00
Boria138 0c78e9c689 feat: add MangoHud font settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-20 13:24:23 +05:00
Codeberg Translateandadem 4840d512b5 Translated using Weblate (Russian)
Currently translated at 100.0% (779 of 779 strings)

Co-authored-by: Andrei Stepanov <adem4ik@gmail.com>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-09-20 07:04:46 +00:00
Boria138 c22992b803 chore: use unity player to graphics_detector
Code check / Check code (push) Successful in 3m38s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-20 12:04:22 +05:00
Renovate Bot 57f955d827 chore(deps): update debian docker tag to trixie-20260918
Code check / Check code (push) Successful in 2m42s
2026-09-20 06:48:57 +00:00
Renovate Bot f9694e576b chore(deps): update archlinux:base-devel docker digest to 4894f5a
Code check / Check code (pull_request) Successful in 1m57s
Package Build - AppImage, Arch, Fedora, Debian / Build AppImage (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (43) (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (44) (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (45) (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (rawhide) (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Debian Package (pull_request) Skipped
Code check / Check code (push) Successful in 1m56s
Package Build - AppImage, Arch, Fedora, Debian / changes (pull_request) Successful in 14s
Package Build - AppImage, Arch, Fedora, Debian / Build Arch Package (pull_request) Skipped
2026-09-20 00:00:58 +00:00
Gitea Actions a74c5631ec chore: download stats 2026-09-18T17:06:55Z 2026-09-18 17:06:56 +00:00
Boria138 55361797c3 chore: round download stats
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-18 22:05:28 +05:00
Boria138 f3999e9bf1 fix: refresh detail page after editing a shortcut
Code check / Check code (push) Successful in 1m56s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-18 21:32:13 +05:00
Boria138 35366bbf12 fix: require confirmation before deleting EGS games
Code check / Check code (push) Successful in 1m36s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-18 11:44:40 +05:00
Boria138 bab6d6b84e feat: add DLC selection and installation for GOG and EGS
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-18 11:40:24 +05:00
Boria138 061ee7fedf fix: keep library search results packed in both layouts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-18 11:18:21 +05:00
Boria138 8707c93835 feat: verify existing GOG and Epic files during installation
Code check / Check code (push) Successful in 2m1s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-17 22:51:02 +05:00
Boria138 53a44c5708 fix: filter GOG and Epic DLCs from the game library
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-17 22:24:52 +05:00
Boria138 154cf43bf8 fix: show Steam demos and related applications
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-17 22:17:21 +05:00
Boria138 a70bf97774 ci: check Bash 5.1 conditional separator compatibility
Code check / Check code (push) Successful in 2m50s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-16 18:31:34 +05:00
Boria138 a06f76a2e9 fix: wait for background workers during shutdown
Code check / Check code (push) Successful in 2m41s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-15 19:33:04 +05:00
Boria138 649aec7229 fix: restore prefix backup support with libarchive-c 5.1
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-15 19:20:46 +05:00
Boria138 0da0d55537 docs: separate third-party license notices
Code check / Check code (push) Successful in 3m45s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-15 16:25:14 +05:00
Renovate Bot c2f611c73e chore(deps): update https://git.linux-gaming.ru/actions/anylinux-setup-action action to v4
Code check / Check code (push) Successful in 1m50s
2026-09-15 10:33:12 +00:00
Renovate Bot c4f9f05363 chore(deps): update archlinux:base-devel docker digest to 70d777a
Code check / Check code (pull_request) Successful in 3m11s
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (43) (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (44) (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (45) (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (rawhide) (pull_request) Skipped
Code check / Check code (push) Successful in 3m36s
Package Build - AppImage, Arch, Fedora, Debian / changes (pull_request) Successful in 14s
Package Build - AppImage, Arch, Fedora, Debian / Build AppImage (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Arch Package (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Debian Package (pull_request) Skipped
2026-09-15 10:27:15 +00:00
Boria138 56c8a9781b fix: restore gamepad hotplug and active type hints
Code check / Check code (push) Successful in 1m55s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-14 17:11:54 +05:00
Boria138 9d72466402 fix: align autoinstall behavior with library layouts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-14 17:05:51 +05:00
Boria138 4df207fa3b chore: migrate AppImage builds to anylinux setup action
Code check / Check code (push) Successful in 1m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-14 13:11:57 +05:00
Renovate Bot bd6dc490b1 fix(deps): update dependency evdev to v2
Code check / Check code (push) Successful in 1m43s
2026-09-14 07:55:51 +00:00
Renovate Bot 383d17f523 fix(deps): update dependency tqdm to >=4.70.1
Code check / Check code (push) Successful in 1m33s
2026-09-14 07:55:36 +00:00
Codeberg Translateandadem 9b889a8d2e Translated using Weblate (Russian)
Currently translated at 100.0% (779 of 779 strings)

Co-authored-by: Andrei Stepanov <adem4ik@gmail.com>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-09-14 07:54:46 +00:00
Boria138 64c9f4d196 fix: support input from multiple gamepads
Code check / Check code (push) Successful in 1m34s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-14 07:54:40 +00:00
Boria138 0de9e46485 fix: check ALT dependencies before GOG support setup
Code check / Check code (push) Successful in 2m25s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-13 12:53:44 +05:00
Boria138 bdc14d1d86 fix: preserve terminal errors for inspection
Code check / Check code (push) Successful in 1m46s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-13 12:48:39 +05:00
Boria138 1fc8d62a85 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-13 11:58:12 +05:00
Codeberg Translateandadem4ik 0e3a0be146 Translated using Weblate (Russian)
Currently translated at 100.0% (776 of 776 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: adem4ik <adem4ik@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-09-11 19:32:38 +00:00
Codeberg Translateandrogerio-mattos 6e2f7452bd Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (773 of 773 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-09-11 19:32:38 +00:00
Codeberg Translateandgallegonovato 37168f8892 Translated using Weblate (Spanish)
Currently translated at 44.9% (349 of 776 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-09-11 19:32:38 +00:00
Codeberg TranslateandRubin13 141f98d81f Translated using Weblate (German)
Currently translated at 100.0% (779 of 779 strings)

Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-09-11 19:32:38 +00:00
Boria138 7031051dc4 feat: added vulkan to graphics API executable detection
Code check / Check code (push) Failing after 30s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-12 00:29:42 +05:00
Boria138 769ad421a2 feat: improve graphics API executable detection
Code check / Check code (push) Successful in 1m58s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-12 00:25:41 +05:00
Boria138 2316efe3d6 fix: prevent autoinstall custom data collisions
Code check / Check code (push) Successful in 2m27s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-11 17:40:57 +05:00
Boria138 09b790fc26 feat: add ID-based GOG and EGS shortcut editing
Code check / Check code (push) Successful in 1m34s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-11 17:19:11 +05:00
Boria138 a48b9050d2 chore: migrate legacy data to persistent storage
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-11 17:12:15 +05:00
Boria138 b602880907 chore: move cache and launcher storage to XDG data directory
Code check / Check code (push) Successful in 2m20s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-11 12:33:40 +05:00
Boria138 05a5b136e9 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-11 12:19:18 +05:00
Boria138 bde4ba9602 feat: offer removal or executable replacement for missing games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-11 12:16:59 +05:00
Renovate Bot 2634370ee3 chore(deps): update archlinux:base-devel docker digest to 61f7de2
Code check / Check code (push) Successful in 2m5s
2026-09-10 15:56:58 +00:00
Renovate Bot 9cea141f9c chore(deps): update dependency pyright to >=1.1.414
Code check / Check code (push) Successful in 2m16s
2026-09-10 15:56:48 +00:00
Boria138 3d417c1a83 fix: refresh button sizing during live theme changes
Code check / Check code (push) Successful in 3m19s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-10 20:56:21 +05:00
Boria138 27003d4967 fix: support library background during live theme switch
Code check / Check code (push) Successful in 1m57s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-10 20:42:27 +05:00
Boria138 c75755bb64 fix: initialize tray before silent launch
Code check / Check code (push) Failing after 55s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-10 13:55:41 +05:00
Boria138 67652ea258 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-10 13:50:14 +05:00
Boria138 3735c7514c feat: add game pause controls to system tray
Code check / Check code (push) Failing after 1m28s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-10 13:49:01 +05:00
Boria138 803c98b6ff fix: prevent empty tray icon during slow startup
Code check / Check code (push) Failing after 1m25s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-10 12:55:19 +05:00
Boria138 9214018c03 fix: wrap game titles in horizontal library modes
Code check / Check code (push) Successful in 4m19s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-09 17:45:51 +05:00
Boria138 d2597fa8d6 feat: support horizontal auto-hide scrollbars
Code check / Check code (push) Successful in 3m21s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-09 17:43:08 +05:00
Boria138 25e20c3ea1 feat: reload custom themes when files change
Code check / Check code (push) Successful in 1m46s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-09 17:32:14 +05:00
Boria138 f1a5db4f34 fix: use XDG data paths on NixOS
Code check / Check code (push) Successful in 1m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-08 20:26:34 +05:00
Boria138 096d86cb7b fix: set icon for built-in terminal window
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-08 20:16:06 +05:00
Boria138 7b7553a1fe feat: add ALT i586 dependency CLI check
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-08 20:13:56 +05:00
Boria138 7c30418d61 fix: filter Wine builds by host architecture
Code check / Check code (push) Successful in 2m52s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-08 14:57:17 +05:00
Boria138 fa30835e97 fix: handle store game shutdown without stale UI state
Code check / Check code (push) Successful in 2m33s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-08 14:37:06 +05:00
Renovate Bot 0bdab8fd40 fix(deps): update python dependencies
Code check / Check code (push) Successful in 2m41s
2026-09-08 09:19:59 +00:00
Renovate Bot 43f4d0a665 chore(deps): update https://git.linux-gaming.ru/actions/setup-python action to v7
Code check / Check code (push) Successful in 3m29s
2026-09-08 09:19:48 +00:00
Renovate Bot 779a5eca65 chore(deps): update https://git.linux-gaming.ru/actions/setup-node action to v7
Code check / Check code (pull_request) Successful in 3m36s
Code check / Check code (push) Successful in 2m21s
2026-09-08 08:59:41 +00:00
Boria138 1a30a105d0 test: use built-in TimeoutError in D-Bus test
Code check / Check code (push) Successful in 2m6s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-08 13:54:40 +05:00
Boria138 45fe72d393 build: require Python 3.11
Code check / Check code (push) Failing after 1m31s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-08 13:44:42 +05:00
Boria138 3b9e531eda chore: added minazuki to GameMode conflicts
Code check / Check code (push) Failing after 2m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-07 22:47:05 +05:00
Boria138 822b454bf4 fix: detect EOS overlay registry section case-insensitively
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-07 22:42:45 +05:00
Renovate Bot 77a65d9e81 chore(deps): update archlinux:base-devel docker digest to 84cd9ef
Code check / Check code (push) Successful in 2m44s
2026-09-06 14:56:44 +00:00
Codeberg Translateandadem4ik eee8fb5f0e Translated using Weblate (Russian)
Currently translated at 100.0% (773 of 773 strings)

Co-authored-by: adem4ik <adem4ik@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-09-05 17:10:27 +00:00
Codeberg TranslateandRubin13 4d84d74d70 Translated using Weblate (German)
Currently translated at 100.0% (773 of 773 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-09-05 17:10:27 +00:00
Boria138 c9fea6e713 feat: add vertical library table layout
Code check / Check code (push) Successful in 1m47s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-05 22:07:19 +05:00
Boria138 b4f39b003b fix: close silent tray after store game exits
Code check / Check code (push) Successful in 2m33s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-05 12:37:51 +05:00
Boria138 f7e44d72c8 feat: add EGS desktop and menu shortcuts
Code check / Check code (push) Successful in 2m44s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-05 12:22:12 +05:00
Boria138 747b85ce2f fix: improve EGS update cancellation and progress display
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-05 12:12:03 +05:00
Boria138 b907b5400c fix: handle EGS launch and cancellation correctly
Code check / Check code (push) Successful in 1m42s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-05 11:53:17 +05:00
Boria138 043031baec fix: preserve log button state on compact layout
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-05 10:40:53 +05:00
Boria138 17e7fa2690 chore(changelog): clean
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-03 19:58:28 +05:00
Boria138 be1e517c68 fix: retranslate composed settings labels
Code check / Check code (push) Successful in 2m45s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-02 23:38:53 +05:00
Boria138 bcd089439e chore: correct desktop MIME associations
Code check / Check code (push) Successful in 2m42s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-02 22:54:50 +05:00
Boria138 cb1b984f04 fix: bundle Bash in AppImage for system GameMode
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-02 22:29:12 +05:00
Boria138 22bf9b2451 feat: apply locale changes without restart
Code check / Check code (push) Successful in 2m55s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-02 12:17:28 +05:00
Boria138 c8ff25dd69 test: mute UI sounds during pytest runs
Code check / Check code (push) Successful in 2m14s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-02 12:08:20 +05:00
Boria138 927531620a fix: bound delayed system adapter polling
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-02 12:05:44 +05:00
Boria138 bb14e1a346 feat: add Proton CachyOS WineLand support
Code check / Check code (push) Successful in 3m9s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-02 11:48:24 +05:00
Boria138 2a5a45fabd fix: retry system adapters after delayed initialization
Code check / Check code (push) Successful in 2m24s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-01 17:36:28 +05:00
Boria138 5e0e5b785e chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-01 17:22:46 +05:00
Codeberg Translateandadem4ik 90c4901e8e Translated using Weblate (Russian)
Currently translated at 100.0% (757 of 757 strings)

Co-authored-by: adem4ik <adem4ik@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-09-01 12:21:12 +00:00
Boria138 c1e76b8e8c feat: add forced English language setting
Code check / Check code (push) Successful in 2m6s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-09-01 17:19:42 +05:00
Gitea Actions 782c9cae6a chore: download stats 2026-09-01T00:01:40Z 2026-09-01 00:01:40 +00:00
Boria138 725c8d371e chore(locale): update
Code check / Check code (push) Successful in 2m19s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-31 11:07:34 +05:00
Boria138 53d79c50d3 feat: add horizontal library layout
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-31 11:07:00 +05:00
Boria138 af8679aa08 fix: refresh Epic library with all sources
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-31 11:06:59 +05:00
Boria138 96a2bd92e8 fix: handle empty settings categories in search
Code check / Check code (push) Successful in 1m30s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-30 19:58:20 +05:00
Renovate Bot 810d09b0ad chore(deps): update https://git.linux-gaming.ru/actions/checkout action to v7
Code check / Check code (push) Successful in 3m6s
2026-08-30 04:31:27 +00:00
Renovate Bot 359ac7d72e fix(deps): update python dependencies
Code check / Check code (pull_request) Successful in 2m39s
Code check / Check code (push) Successful in 1m33s
2026-08-30 00:01:22 +00:00
Boria138 6135f640fd fix: reuse library cache when toggling installed filter
Code check / Check code (push) Successful in 2m29s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-29 22:25:52 +05:00
Boria138 58d85dcf9f feat: add configurable return-to-desktop action
Code check / Check code (push) Successful in 2m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-29 21:54:50 +05:00
Boria138 6b614ce0c5 chore(changelog): update
Code check / Check code (push) Successful in 3m52s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-29 21:29:44 +05:00
Boria138 7b563dff32 chore: filter mobile-only Epic games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-29 21:27:22 +05:00
Boria138 d04e637030 fix: show Epic library refresh progress
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-29 21:27:22 +05:00
Boria138 00a222073f feat: improve library substring search
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-29 21:27:22 +05:00
Codeberg Translateandrogerio-mattos e09c87491f Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (757 of 757 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-08-29 06:08:47 +00:00
Codeberg TranslateandRubin13 4f5fa36a0d Translated using Weblate (German)
Currently translated at 100.0% (757 of 757 strings)

Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-08-29 06:08:47 +00:00
Boria138 6e70c92afc fix(appimage): preserve MIME metadata in AppImage
Code check / Check code (push) Successful in 1m42s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-29 11:08:33 +05:00
Boria138 ff568fad1c feat: Added EGS integration
Code check / Check code (pull_request) Successful in 2m1s
Code check / Check code (push) Failing after 2m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-29 10:36:06 +05:00
Renovate Bot 254f56fe17 chore(deps): update debian docker tag to trixie-20260824
Code check / Check code (push) Successful in 2m12s
2026-08-28 05:55:59 +00:00
Renovate Bot b0e8345517 fix(deps): update python dependencies
Code check / Check code (pull_request) Successful in 2m29s
Code check / Check code (push) Successful in 3m15s
2026-08-28 05:55:09 +00:00
Renovate Bot 897daf983b chore(deps): update https://git.linux-gaming.ru/actions/checkout digest to d23441a
Code check / Check code (push) Successful in 1m27s
2026-08-27 19:30:30 +00:00
Renovate Bot 2effcf5505 chore(deps): update archlinux:base-devel docker digest to 68bfc3b
Package Build - AppImage, Arch, Fedora, Debian / changes (pull_request) Successful in 16s
Package Build - AppImage, Arch, Fedora, Debian / Build AppImage (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (43) (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (44) (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (45) (pull_request) Skipped
Code check / Check code (pull_request) Successful in 2m15s
Code check / Check code (push) Successful in 2m42s
Package Build - AppImage, Arch, Fedora, Debian / Build Arch Package (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Debian Package (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (rawhide) (pull_request) Skipped
2026-08-27 16:47:03 +00:00
Boria138 5aaa7cbc7e fix: register PPDB files as plain text
Code check / Check code (push) Successful in 1m53s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-27 21:11:29 +05:00
Codeberg Translateandadem4ik 6a502711ad Translated using Weblate (Russian)
Currently translated at 100.0% (757 of 757 strings)

Co-authored-by: adem4ik <adem4ik@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-08-27 07:22:20 +00:00
Boria138 4889ad1f48 chore: disable automatic PPDB downloads by default
Code check / Check code (push) Successful in 3m14s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-27 12:21:46 +05:00
Boria138 2d5336bc51 fix: skip invalid Steam cover images
Code check / Check code (push) Successful in 4m37s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-27 11:19:34 +05:00
Boria138 a7fe71558e fix: correct dynamic theme module typing
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-27 11:07:11 +05:00
Boria138 b9de7e40fe chore: added Fedora 45
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-27 11:02:18 +05:00
Boria138 9ad69007ec perf: cache themes for faster live switching
Code check / Check code (push) Failing after 2m25s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-26 18:27:06 +05:00
Boria138 6af8b31a90 feat: apply themes without restarnings
Code check / Check code (push) Successful in 4m21s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-26 18:18:59 +05:00
Boria138 18ae09f4b0 bump to 1.4.1
Code check / Check code (push) Successful in 2m38s
Build AppImage, Arch, Fedora and Debian Packages / Build AppImage (push) Successful in 7m15s
Build AppImage, Arch, Fedora and Debian Packages / Build Arch Package (push) Successful in 2m56s
Build AppImage, Arch, Fedora and Debian Packages / Build Debian Package (push) Successful in 8m19s
Build AppImage, Arch, Fedora and Debian Packages / Create and Publish Release (push) Successful in 16s
Build AppImage, Arch, Fedora and Debian Packages / Build Fedora RPM (rawhide) (push) Successful in 3m27s
Build AppImage, Arch, Fedora and Debian Packages / Build Fedora RPM (44) (push) Successful in 1m59s
Build AppImage, Arch, Fedora and Debian Packages / Build Fedora RPM (43) (push) Successful in 1m48s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-26 13:06:56 +05:00
Boria138 ba56c92726 Revert "chore: update SLR"
This reverts commit ae1d991286.
2026-08-26 13:03:20 +05:00
Codeberg TranslateandBoria138 b55ffc9d09 Translated using Weblate (Russian)
Currently translated at 100.0% (757 of 757 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-08-24 10:25:55 +00:00
Boria138 f819e495f2 bump to 1.4.0
Build AppImage, Arch, Fedora and Debian Packages / Build Fedora RPM (43) (push) Successful in 3m11s
Build AppImage, Arch, Fedora and Debian Packages / Build Fedora RPM (44) (push) Successful in 1m45s
Build AppImage, Arch, Fedora and Debian Packages / Build Debian Package (push) Successful in 6m2s
Code check / Check code (push) Successful in 7m7s
Build AppImage, Arch, Fedora and Debian Packages / Build AppImage (push) Successful in 8m2s
Build AppImage, Arch, Fedora and Debian Packages / Build Arch Package (push) Successful in 2m17s
Build AppImage, Arch, Fedora and Debian Packages / Build Fedora RPM (rawhide) (push) Successful in 2m5s
Build AppImage, Arch, Fedora and Debian Packages / Create and Publish Release (push) Successful in 31s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-23 14:33:43 +05:00
Boria138 4e998edae8 chore: count downloads from both GitHub mirrors
Code check / Check code (push) Successful in 7m20s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-23 14:32:13 +05:00
Boria138 6ccfeffdd8 fix: locate vk_gpu_info in build auxiliary binaries
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-23 14:29:56 +05:00
Boria138 3ce2acca89 chore: update GitHub mirror repositories
Code check / Check code (push) Failing after 3m10s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-22 17:19:58 +05:00
Boria138 2092a08e82 chore: migrate legacy AppImage integration safely
Code check / Check code (push) Successful in 4m27s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-22 15:54:10 +05:00
Boria138 79a32d392e chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-22 15:33:59 +05:00
Boria138 f1a34d352b refactor: move notification icons to themes
Package Build - AppImage, Arch, Fedora, Debian / Build AppImage (pull_request) Skipped
Code check / Check code (pull_request) Failing after 2m34s
Package Build - AppImage, Arch, Fedora, Debian / changes (pull_request) Successful in 15s
Package Build - AppImage, Arch, Fedora, Debian / Build Arch Package (pull_request) Skipped
Package Build - AppImage, Arch, Fedora, Debian / Build Debian Package (pull_request) Skipped
Code check / Check code (push) Successful in 3m44s
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (43) (pull_request) Failing after 1m14s
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (44) (pull_request) Failing after 1m15s
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (rawhide) (pull_request) Failing after 1m35s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-22 15:31:18 +05:00
Boria138 7afd6d0baf fix: pass proxy settings to curl
Code check / Check code (push) Failing after 1m34s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-22 08:07:55 +00:00
Boria138 a0a602daf5 chore: respect selected download mirror
Code check / Check code (push) Successful in 1m57s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-22 08:07:39 +00:00
Boria138 9d797e8072 fix: track GOG launch statistics per game
Code check / Check code (push) Successful in 5m33s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-22 11:41:00 +05:00
Boria138 b695ec6a2a fix: show GOG dependency download status
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-22 11:29:55 +05:00
Boria138 d562bbf18d chore: remove log creation guide from debug log
Code check / Check code (push) Successful in 4m47s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-21 21:05:36 +05:00
Boria138 cf4185007a chore(locale): update
Code check / Check code (push) Successful in 4m14s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-21 12:28:54 +05:00
Boria138 e8dbaeb9f7 feat: add custom theme removal
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-21 12:27:11 +05:00
Boria138 2ec44c6a5b chore: update debug log help links
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-21 12:20:13 +05:00
Boria138 257f3c85cf fix 7z on appimage
Code check / Check code (push) Successful in 3m47s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-21 12:12:55 +05:00
Codeberg Translateandrogerio-mattos 53f1f5857c Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (754 of 754 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-08-20 21:25:51 +00:00
Boria138 ae1d991286 chore: update SLR
Code check / Check code (push) Successful in 2m27s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-20 15:46:00 +05:00
Boria138 693f0cb7f4 chore: drop ext from ppdb
Code check / Check code (push) Successful in 3m46s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-20 00:36:51 +05:00
Boria138 85af880000 build: bundle 7z and vk_gpu_info in AppImage
Code check / Check code (push) Successful in 6m2s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-19 23:27:36 +05:00
Boria138 ed1ba4dd28 refactor: remove unused dead code
Code check / Check code (push) Successful in 1m58s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-19 21:09:37 +05:00
Boria138 de29dd92a9 chore: keep settings gamepad navigation vertical
Code check / Check code (push) Successful in 4m54s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-19 20:33:51 +05:00
Codeberg Translateandrogerio-mattos 6fa6f1af2a Translated using Weblate (Portuguese (Brazil))
Currently translated at 99.8% (753 of 754 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-08-19 00:27:31 +00:00
Boria138 16ef000ed2 fix: cache metadata indexes and preserve source ribbons
Code check / Check code (push) Successful in 4m21s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-18 00:09:08 +05:00
Codeberg TranslateandBoria138 299a3cf89e Translated using Weblate (Russian)
Currently translated at 100.0% (754 of 754 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-08-17 06:15:22 +00:00
Rubin13 056faafd82 Translated using Weblate (German)
Currently translated at 100.0% (753 of 753 strings)

Translation: PortProtonQt/PortProtonQt
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
2026-08-17 11:11:24 +05:00
Boria138 4615b922c2 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-16 21:24:44 +05:00
Boria138 e842840101 feat: add option to hide control hints
Code check / Check code (push) Successful in 3m26s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-16 21:21:59 +05:00
Boria138 8e76a50b1d test: isolate asyncio event loops in D-Bus tests
Code check / Check code (push) Successful in 1m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-16 12:00:43 +05:00
Boria138 e7cf33cdc0 fix: queue gamepad events before opening modal dialogs
Code check / Check code (push) Failing after 3m51s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-16 11:54:10 +05:00
Boria138 3c47d636f2 fix: prevent skipped cards during fast D-pad input
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-16 11:42:55 +05:00
Boria138 0b253a4d6e fix: restore gamepad input after update dialog closes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-16 11:39:36 +05:00
Boria138 ded84a6130 fix: correct library filter controls layout
Code check / Check code (push) Successful in 1m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-16 10:57:48 +05:00
Codeberg TranslateandBoria138 4a17f438fd Translated using Weblate (Russian)
Currently translated at 100.0% (753 of 753 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-08-15 13:04:09 +00:00
Boria138 3e6e138ff9 fix: show cached library while GOG refreshes
Code check / Check code (push) Successful in 3m20s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-15 11:28:18 +05:00
Boria138 2f7dc41c49 fix: refresh only the selected library source
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-15 11:22:05 +05:00
Boria138 ce1ca0d026 fix: prevent repeated card navigation sound
Code check / Check code (push) Successful in 2m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-15 10:58:35 +05:00
Boria138 6ffdd4988f fix: resize library filters when checkbox is hidden
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-15 10:54:13 +05:00
Boria138 debe88f2bc fix: prevent repeated combo box navigation sounds
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-15 10:48:22 +05:00
Boria138 efeac02ece fix: adapt settings actions to narrow windows
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-15 10:39:26 +05:00
Boria138 08d45ddc70 fix: restore Git version fallback
Code check / Check code (push) Successful in 3m16s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 15:13:58 +05:00
Boria138 7a62207063 fix: prevent repeated gamepad navigation sounds
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 15:08:08 +05:00
Boria138 1deaaf74d8 fix: preserve gamepad input in game card context menu
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 15:04:59 +05:00
Boria138 a45792307e fix: correct Meson configuration
Code check / Check code (push) Successful in 1m59s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 11:42:38 +05:00
Boria138 a52d4a1f49 fix: preserve gamepad input after mouse emulation toggle
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 11:36:37 +05:00
Boria138 a5ea3e220f chore: report native gamepad library path
Code check / Check code (push) Successful in 1m38s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 11:11:45 +05:00
Boria138 10b498acb7 refactor: load gamepad library beside Python module
Code check / Check code (push) Successful in 3m34s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 11:07:32 +05:00
Boria138 d9f3e7fbb8 build: organize native binaries and sources
Code check / Check code (push) Successful in 2m24s
Build vk_gpu_info on Debian 11 / Build vk_gpu_info on Debian 11 (push) Successful in 2m58s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 11:04:23 +05:00
Boria138 998a4234e5 fix: avoid duplicate sound in combo navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 10:53:28 +05:00
Boria138 97c1addedc fix: limit gogdl update checks to once a month
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 10:45:36 +05:00
Boria138 b9a8a07a04 chore: refine installed games filter controls
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-14 10:41:50 +05:00
Boria138 9e5fd9d1a7 refactor: add native SDL3 gamepad input
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (43) (pull_request) Successful in 1m43s
Package Build - AppImage, Arch, Fedora, Debian / Build Arch Package (pull_request) Canceled after 0s
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (44) (pull_request) Canceled after 6m6s
Package Build - AppImage, Arch, Fedora, Debian / changes (pull_request) Successful in 17s
Package Build - AppImage, Arch, Fedora, Debian / Build AppImage (pull_request) Successful in 4m24s
Package Build - AppImage, Arch, Fedora, Debian / Build Fedora RPM (rawhide) (pull_request) Canceled after 0s
Package Build - AppImage, Arch, Fedora, Debian / Build Debian Package (pull_request) Canceled after 0s
Code check / Check code (push) Canceled after 40s
Code check / Check code (pull_request) Successful in 2m26s
Assisted-by: Codex:gpt-5.6
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-13 21:13:08 +05:00
Boria138 cea7b40b82 chore: drop Fedora 42 from builds
Code check / Check code (push) Successful in 4m56s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-13 15:01:23 +05:00
Boria138 2a89bd7573 fix: play game launch sound before RPM package check
Code check / Check code (push) Successful in 2m0s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-12 11:53:37 +05:00
Boria138 c66538e32f feat: add open folder button to Wine manager
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-12 11:47:26 +05:00
Codeberg Translateandgallegonovato d2e06fcbc3 Translated using Weblate (Spanish)
Currently translated at 45.9% (346 of 753 strings)

Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-08-11 19:26:23 +00:00
Boria138 4b56725559 chore: set Windows 11 as the default version
Code check / Check code (push) Successful in 3m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-11 22:35:32 +05:00
Boria138 14cf5c73f8 feat: install Wine archives via drag and drop
Code check / Check code (push) Failing after 3m40s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-11 21:05:34 +05:00
Boria138 347685e4f0 bump to v1.3.2
Code check / Check code (push) Successful in 2m1s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-11 13:40:40 +05:00
Boria138 5e512279f3 chore(locale): update
Code check / Check code (push) Successful in 1m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-10 21:56:21 +05:00
Boria138 05e7366706 chore: document GOG support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-10 21:56:21 +05:00
Boria138 862bfe4f8b feat: add installed-only library filter
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-10 21:56:21 +05:00
Dervart 12b0889566 theme: add color_text_accent_hover variable to other themes
Code check / Check code (push) Successful in 1m46s
2026-08-10 06:43:09 +00:00
Boria138 a62bfecfd3 fix: remove last launch date with game shortcut
Code check / Check code (push) Successful in 2m2s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-10 11:09:28 +05:00
Boria138 7ec1602be7 chore: extract launcher icons from batch target executables
Code check / Check code (push) Successful in 1m31s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-09 22:24:13 +05:00
Boria138 7ae1904bb6 feat: add search for MangoHud, vkBasalt and Gamescope settings
Code check / Check code (push) Successful in 1m34s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-07 21:06:45 +05:00
Boria138 527cceccc2 fix: prevent UI freeze during RPM package check
Code check / Check code (push) Successful in 2m18s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-07 16:49:43 +05:00
Boria138 42eff0d44b chore: clean dev-scripts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-07 13:28:40 +05:00
Boria138 12f3d3b753 fix: prevent control hints from being clipped
Code check / Check code (push) Successful in 2m14s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-06 12:19:35 +05:00
Boria138 3afe35929f chore: suggest WINE_LG for detected installers
Code check / Check code (push) Successful in 2m3s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-06 12:10:04 +05:00
Boria138 32e363d328 chore: detect game launch with explicit marker
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-06 12:03:17 +05:00
Boria138 6443b71c01 fix: prevent WINE manager UI freezes
Code check / Check code (push) Successful in 1m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-05 15:51:00 +05:00
Boria138 d5db14db54 fix: use theme values for UI fallback styles
Code check / Check code (push) Successful in 2m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-05 15:16:31 +05:00
Boria138 db2cc0365d fix icon path
Code check / Check code (push) Successful in 2m35s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-04 21:30:15 +05:00
Boria138 ab073c5413 fix: allow icon themes to override AppImage icon
Code check / Check code (push) Successful in 1m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-04 21:18:15 +05:00
Boria138 2212c7c23a feat: add desktop AppImage shortcut
Code check / Check code (push) Successful in 1m33s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-04 14:48:08 +05:00
Boria138 3a3ae4be2e chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-03 11:47:14 +05:00
Dervart 3d9151df7b theme: click icons
Code check / Check code (push) Successful in 2m3s
2026-08-03 06:43:12 +00:00
Dervart 844fcff2da theme: add new variable color_text_accent_hover 2026-08-03 06:43:12 +00:00
Dervart cf542d5ce2 style: make navigation icons monochrome 2026-08-03 06:43:12 +00:00
Boria138 a6c25bad98 feat: add one-click AppImage installer
Code check / Check code (push) Successful in 1m54s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-03 11:38:09 +05:00
Boria138 0f0155cfb7 feat: update gogdl in background on startup
Code check / Check code (push) Successful in 1m53s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-03 11:21:01 +05:00
Boria138 8b7849b3fd chore(locale): update
Code check / Check code (push) Successful in 1m28s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-02 13:53:56 +05:00
Boria138 e0d8f587fa fix: apply theme colors to file explorer icons
Code check / Check code (push) Successful in 1m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-02 13:38:46 +05:00
Boria138 393d5cce98 fix: add mouse sounds to theme store cards
Code check / Check code (push) Successful in 1m59s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-02 13:15:38 +05:00
Boria138 cf7a14983d fix: measure crashes from game process start
Code check / Check code (push) Successful in 1m55s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-01 10:39:29 +05:00
Boria138 024a1670eb fix: use matching duration for detail cover reveal
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-08-01 10:18:06 +05:00
Codeberg TranslateandBoria138 6cc3487d59 Translated using Weblate (Russian)
Currently translated at 100.0% (751 of 751 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-08-01 00:01:37 +00:00
Codeberg Translateandrogerio-mattos 0ce8317763 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (751 of 751 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-08-01 00:01:37 +00:00
Codeberg TranslateandRubin13 c3e1222237 Translated using Weblate (German)
Currently translated at 100.0% (751 of 751 strings)

Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-08-01 00:01:37 +00:00
Gitea Actions bdc52c8f02 chore: download stats 2026-08-01T00:01:32Z 2026-08-01 00:01:32 +00:00
Boria138 d202b03025 feat: make game card geometry theme-aware
Code check / Check code (push) Successful in 2m2s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-31 11:16:11 +05:00
Boria138 4e9f1ee906 chore: separate system manager error types
Code check / Check code (push) Successful in 1m33s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-31 10:39:37 +05:00
Boria138 2590583e98 chore: unify card grid navigation and theme store sounds
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-31 10:35:21 +05:00
Boria138 a62c2b4ee6 fix: prevent duplicate theme preview downloads
Code check / Check code (push) Successful in 5m34s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-30 23:44:45 +05:00
Boria138 c3adf4c6de feat: add Dank Material Shell theme support
Code check / Check code (push) Successful in 2m48s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-30 14:46:42 +05:00
Boria138 eff8436aa0 feat: theme full detail page statistics container
Code check / Check code (push) Successful in 1m48s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-30 14:07:59 +05:00
Boria138 7707d348c2 chore: report missing 32-bit glibc
Code check / Check code (push) Successful in 3m4s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-30 11:18:57 +05:00
Boria138 6d624a59c9 fix: focus install button on detail page
Code check / Check code (push) Successful in 1m36s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-30 10:56:00 +05:00
Boria138 87f06913f2 fix: correct D-pad game card navigation order
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-30 10:53:46 +05:00
Codeberg TranslateandRubin13 b193d36d42 Translated using Weblate (German)
Currently translated at 99.8% (750 of 751 strings)

Translated using Weblate (German)

Currently translated at 99.8% (746 of 747 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-07-30 05:46:50 +00:00
Boria138 5e12b29c5f fix: add sherrydmn to GameMode conflicts
Code check / Check code (push) Successful in 1m38s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-30 10:46:31 +05:00
Boria138 cdfedd1503 fix: speed up and deduplicate compatibility reports
Code check / Check code (push) Successful in 2m56s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-29 19:18:21 +05:00
Boria138 11dbd249ab fix: prevent UI freeze after game exit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-29 19:08:54 +05:00
Boria138 000220dd47 chore: todo moved to https://linux-gaming.ru/roadmap
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-29 18:41:23 +05:00
Boria138 8356659108 fix: recolor control hint icons through theme colors
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-29 12:57:07 +05:00
Boria138 2afa185084 chore: use systemctl and loginctl for system actions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-28 16:29:55 +00:00
Boria138 a41da6b35b chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-28 11:59:33 +05:00
Boria138 bb84524b06 feat: add crash report toggle
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-28 11:57:59 +05:00
Boria138 2cf5369892 feat: report incompatible DXVK configurations
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-28 11:50:56 +05:00
Codeberg Translateandgallegonovato 67026aa040 Translated using Weblate (Spanish)
Currently translated at 46.3% (346 of 746 strings)

Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-07-27 19:15:59 +05:00
Codeberg TranslateandRubin13 0e3e300eb5 Translated using Weblate (German)
Currently translated at 100.0% (746 of 746 strings)

Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-07-27 19:15:44 +05:00
Boria138 b9991f89b3 feat: add Steam shortcut for all accounts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-27 10:51:16 +05:00
Boria138 d9a6e1cca4 feat: add crash compatibility analyzer
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-27 10:30:47 +05:00
Boria138 c4a216422e feat: generalize sakura background as leaf animation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-27 09:25:31 +05:00
Boria138 91f92a215c feat: add procedural detail page backgrounds
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-27 00:38:07 +05:00
Boria138 13dd00c8d5 chore: refresh GOG library from library update button
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-26 23:58:38 +05:00
Boria138 ef7b0bce16 feat: expand UI sound feedback
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-26 23:55:03 +05:00
Boria138 72546d2bd5 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-26 11:30:12 +05:00
Boria138 0e54c0451a feat: add Steam account selection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-26 11:26:23 +05:00
Boria138 2d26067f37 fix: restart UI sounds and silence card loading
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-26 10:28:25 +05:00
Boria138 1c9cfea1eb chore(sounds): replace gamepad_connect sound
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-26 10:23:19 +05:00
Boria138 7cc0873ee2 fix: avoid navigation sound when leaving game details
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-24 20:33:45 +05:00
Boria138 bb8fc83259 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-24 20:24:07 +05:00
Boria138 3f2c368946 chore(sounds): increse
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-24 19:51:55 +05:00
Boria138 0ba671ed1a fix: clear GOG metadata cache and hide empty downloads tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-24 19:47:38 +05:00
Boria138 d96c78d3cb feat: improve AppImage desktop integration
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-24 19:34:46 +05:00
Boria138 3ad8193701 fix: update desktop database after shortcut changes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-24 19:19:25 +05:00
Boria138 4fd947cab5 feat: update UI sound feedback
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-24 19:11:13 +05:00
Boria138 a09ee2e804 fix: avoid audio deadlock
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-24 18:58:44 +05:00
Boria138 4a37d901a2 feat: add AppImage desktop integration
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-23 23:36:53 +05:00
Boria138 5cfea4d8fd fix: avoid startup hang when audio service is unavailable
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-23 23:00:26 +05:00
Boria138 7ca9cb4cf5 feat: install GOG support redistributables
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-23 19:45:08 +05:00
Boria138 e5021edbed feat: simplify GOG account login flow
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-23 13:28:16 +05:00
Boria138 96f471336c fix: detect Steam user without MostRecent flag
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-23 13:03:33 +05:00
Boria138 a1441669c1 fix: restore pre-commit checks after GOG changes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-23 12:50:58 +05:00
Boria138 de794d1aeb chore: added ARM builds
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-23 12:38:40 +05:00
Codeberg Translateandrogerio-mattos d27ffbf407 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (708 of 708 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/zh_Hans/
Translation: PortProtonQt/PortProtonQt
2026-07-22 17:40:58 +00:00
Codeberg Translateandrogerio-mattos d2448b09b7 Translated using Weblate (Russian)
Currently translated at 100.0% (708 of 708 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-07-22 17:40:58 +00:00
Codeberg Translateandrogerio-mattos 549123657d Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (708 of 708 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-07-22 17:40:58 +00:00
Codeberg Translateandgallegonovato 2f89479802 Translated using Weblate (Spanish)
Currently translated at 45.0% (319 of 708 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-07-22 17:40:58 +00:00
Codeberg TranslateandRubin13 6325eee8c2 Translated using Weblate (German)
Currently translated at 100.0% (708 of 708 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-07-22 17:40:58 +00:00
Boria138 83c9c9ba64 fix: prevent GOG repair from hanging
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-22 22:39:54 +05:00
Boria138 1542c5bd0c fix: load compatibility badges for GOG games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-22 20:50:24 +05:00
Boria138 681ba1ff89 fix: switch PPDB URLs to linux-gaming.ru
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-22 20:32:25 +05:00
Boria138 db099bce1f feat: added gog integration 2026-07-22 17:50:58 +05:00
Boria138 5271596481 fix: use Qt Multimedia audio-only fallback
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-22 17:05:15 +05:00
Boria138 c3d7cf4c62 chore: debloat appimage
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-21 21:48:28 +05:00
Boria138 7941258ba7 chore: update development scripts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-21 14:08:18 +05:00
Boria138 1a105fcf0b chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-21 13:36:36 +05:00
Boria138 95aeb4a62f chore: rework sounds theme, thx to @Vektor
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-21 13:18:53 +05:00
Boria138 55a0a158c8 fix: add Qt Multimedia runtime dependencies
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-20 23:19:28 +05:00
Boria138 daa05187f5 fix: install auxiliary desktop files in Debian package
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-20 23:05:54 +05:00
Boria138 92bb49286b chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-20 23:03:10 +05:00
Codeberg TranslateandRubin13 edba3c10bf Translated using Weblate (German)
Currently translated at 100.0% (707 of 707 strings)

Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-07-20 15:18:21 +00:00
Boria138 fa133fff98 feat: add UI sound system with theme-integrated sound effects
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-20 15:18:16 +00:00
Boria138 8e90e9cafc fix: show Edit or Add shortcut button exclusively for non-Steam games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-19 23:31:59 +05:00
Gitea Actions 6f8436eeb2 chore: update download stats mountly
Signed-off-by: Gitea Actions <gitea-actions@users.noreply.gitea.com>
2026-07-19 09:51:25 +05:00
Renovate Bot 69833e7295 chore(deps): update archlinux:base-devel docker digest to 212b1e5 2026-07-19 03:15:14 +00:00
Renovate Bot 7533769b15 chore(deps): update https://git.linux-gaming.ru/actions/setup-node digest to 2499707 2026-07-19 03:15:04 +00:00
Gitea Actions 174fae6dab chore: download stats 2026-07-19T03:01:01Z 2026-07-19 03:01:01 +00:00
Gitea Actions 497acf85e4 chore: exclude steam-compat from download stats
Signed-off-by: Gitea Actions <gitea-actions@users.noreply.gitea.com>
2026-07-18 23:19:54 +05:00
Gitea Actions 3b57f87770 chore: download stats 2026-07-18T18:07:48Z 2026-07-18 18:07:48 +00:00
Gitea Actions d8a9ee58bc chore: update download badge to green and add download stats top lists 2026-07-18 23:06:53 +05:00
Gitea Actions 66adeb619d chore: download stats 2026-07-18T17:54:31Z 2026-07-18 17:54:31 +00:00
Boria138 333cc09409 feat: add download stats to README 2026-07-18 22:50:25 +05:00
Boria138 229f1ee78f fix(ci): build hotfix packages from the selected branch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-18 17:59:21 +05:00
Boria138 20b64de731 bump to v1.3.1
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-18 17:52:27 +05:00
Boria138 f0ab40a2da fix CVE-2026-59678
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-18 17:52:27 +05:00
Boria138 2fb580eb09 fix: support Cyrillic and prevent false search matches
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-18 11:33:57 +05:00
Boria138 b45d26ea8c chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-17 08:46:43 +05:00
Boria138 32e4b28aac feat: add silent and logging launch modes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-17 08:45:08 +05:00
Boria138 c853327cac Revert "fix: clear AppImage Vulkan overrides before runtime launch"
This reverts commit 3c793345ba.

Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-17 07:36:58 +05:00
Boria138 7d2c5e4662 Revert "fix: remove executable permissions from PortProton scripts"
This reverts commit a6564d350f.
2026-07-16 23:45:19 +05:00
Boria138 a6564d350f fix: remove executable permissions from PortProton scripts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-16 23:11:16 +05:00
Boria138 0909faf50c chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-16 16:45:42 +05:00
Boria138 e123bfa79f fix: restore native Steam games in library
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-16 13:03:16 +05:00
Boria138 b45a0683c9 fix: correct SDL3 D-pad vertical directions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-16 13:03:16 +05:00
Boria138 e567a16437 fix: preserve stop button state on compact layout
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-16 13:03:16 +05:00
Boria138 7e38d9a70f feat: support Steam shortcut metadata editing
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-16 13:03:15 +05:00
Boria138 3c793345ba fix: clear AppImage Vulkan overrides before runtime launch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-16 07:12:30 +00:00
Boria138 9e0946ae7e ci: support versioned hotfix AppImage builds
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-16 11:51:12 +05:00
Boria138 2bc610940b chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-16 11:30:49 +05:00
Codeberg Translateandrogerio-mattos f9c790b568 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (704 of 704 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/zh_Hans/
Translation: PortProtonQt/PortProtonQt
2026-07-14 15:45:13 +00:00
Codeberg Translateandrogerio-mattos 035e560fd5 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (704 of 704 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-07-14 15:45:13 +00:00
Codeberg TranslateandRubin13 d185c7cfdc Translated using Weblate (German)
Currently translated at 100.0% (704 of 704 strings)

Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-07-14 15:45:13 +00:00
Boria138 97d4ea26d5 fix: unset Vulkan driver override in AppImage runtime
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-14 20:45:02 +05:00
Boria138 a63c894cb9 Revert "fix: exclude AppImage graphics paths from pressure-vessel"
This reverts commit 032398a988.
2026-07-14 20:32:30 +05:00
Boria138 032398a988 fix: exclude AppImage graphics paths from pressure-vessel
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-14 15:28:43 +05:00
Boria138 9a5265f335 Revert "fix: wrap AppImage executables with sharun"
This reverts commit b1155726e0.
2026-07-14 15:05:51 +05:00
Boria138 589c8657a6 fix: use Steam covers in compact details
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-14 12:35:31 +05:00
Boria138 b1155726e0 fix: wrap AppImage executables with sharun
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-14 12:19:23 +05:00
Boria138 4fd11e09fe feat: show cached exe icons in compact details
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-14 11:07:11 +05:00
Boria138 5dc66e0822 refactor: replace pygame gamepad input with SDL3
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-13 17:50:33 +00:00
Boria138 0cd98c0996 fix(appimage): skip portwine_db strace
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-13 22:24:45 +05:00
Boria138 d813ac1fac fix(appimage): added vk_gpu_info to /usr/bin thx to @Samueru-sama
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-13 22:05:46 +05:00
Mikhail Tergoev 258b1ab6c5 bump v1.3.0 2026-07-13 16:19:01 +03:00
Mikhail Tergoev 450d63963d fix timeout for downloading 2026-07-13 16:05:38 +03:00
Boria138 fe8bc1ef8e fix: show executable icon on detail page
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-13 17:58:56 +05:00
Boria138 f0579307db fix: show executable icon while cover downloads
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-13 17:42:28 +05:00
Boria138 a61d62071f fix: use executable icon when cover is unavailable
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-13 17:34:57 +05:00
Boria138 316ba9d4a8 fix: check 32-bit dependencies before autoinstall
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-13 17:21:27 +05:00
Boria138 c4cc79a432 fix: filter non-Windows Steam library entries
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-13 12:09:56 +05:00
Boria138 805732a5c6 fix: ignore stale HLTB detail callbacks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-13 11:54:50 +05:00
Boria138 8ecb26a3e6 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-12 08:50:52 +05:00
Codeberg Translateandrogerio-mattos 6d800c04fd Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (702 of 702 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-07-12 03:24:48 +00:00
Codeberg Translateandgallegonovato 2addc70dc6 Translated using Weblate (Spanish)
Currently translated at 43.4% (305 of 702 strings)

Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-07-12 03:24:48 +00:00
Codeberg TranslateandRubin13 7c662927b1 Translated using Weblate (German)
Currently translated at 100.0% (702 of 702 strings)

Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-07-12 03:24:48 +00:00
Renovate Bot 3b76a7c8a1 chore(deps): update debian docker tag to trixie-20260623 2026-07-12 03:24:44 +00:00
Renovate Bot a94edea9a6 chore(deps): update archlinux:base-devel docker digest to b21289e 2026-07-12 00:01:24 +00:00
Boria138 39ea73ae87 fix: limit ALT i586 dependency install to installed packages
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-11 23:44:29 +05:00
Boria138 4b4ad33a54 fix: align classic-light source corner color
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-11 12:05:51 +05:00
Boria138 b0d5771bcb chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-11 11:55:46 +05:00
Boria138 e9ccd6c2b4 feat: add missing executable card cleanup button
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-11 11:53:30 +05:00
Boria138 8d10d90263 fix: unify autoinstall and library search
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-11 11:38:34 +05:00
Boria138 15e780d618 fix: keep wine prefix combo in focus order
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-11 11:29:33 +05:00
Boria138 9166cd9cd3 fix: align library control button styling
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-11 11:21:05 +05:00
Boria138 869666ece9 fix: avoid empty custom_data directories
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-11 11:04:04 +05:00
Boria138 269151c00a fix: use real AppImage update progress
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-10 20:48:35 +05:00
Boria138 c7d689cde6 Revert "fix: use nvidia_new dxvk config always on RTX"
This reverts commit 9c1638daff.

Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-10 20:22:57 +05:00
Boria138 52d72b660e feat(appimage): DPAD scroll for changelog
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-10 18:33:43 +05:00
Boria138 99a0e9ba1d chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-10 14:56:30 +05:00
Boria138 b250b86032 feat: add AppImage auto-update UI
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-10 14:30:02 +05:00
Boria138 0797c1a52e chore(appimage): add autoupdate from gitea
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-10 00:22:15 +05:00
Boria138 9ad828ace5 fix: refresh Wine status after version removal
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-08 23:27:43 +05:00
Boria138 a4e0928ff6 feat: add Flatpak PortProton directory auto-detection as portdatapath
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-08 19:50:50 +05:00
Boria138 bcda562b6f chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-08 19:41:56 +05:00
Boria138 15bc92ca7f fix: add ALT i586 dependency prompt before game launch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-08 19:18:51 +05:00
Boria138 9b3bd6b31e fix: handle DOSBox lnk from GOG
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-08 14:00:12 +00:00
Boria138 9c1638daff fix: use nvidia_new dxvk config always on RTX
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-08 13:59:59 +00:00
Boria138 a9b3dff064 refactor: replace jq usage with orjson helpers
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-08 13:59:51 +00:00
Boria138 6c1bef2642 fix(scripts): quote printf messages
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-08 17:26:56 +05:00
Boria138 545ce073d7 chore: hide Steam menu action when Steam is unavailable
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-08 17:23:09 +05:00
Boria138 5e7f81e206 chore: remove shortcuts when deleting PortProton games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-08 17:15:55 +05:00
Dervart 41794c44a9 feat: support gradient type, direction, and cover color count for detail
page
2026-07-07 22:40:57 +07:00
Boria138 d6517cb7c1 feat: add DETAIL_PAGE_GRADIENT for custom detail page gradient override
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-07 12:07:12 +05:00
Boria138 808910c6fc feat: add detail page background modes (gradient, static_waves, waves)
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-06 18:03:13 +05:00
Boria138 d17fbb713e chore: add gamepad tooltip for combo boxes in favorites tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-06 17:22:16 +05:00
Codeberg Translateandrogerio-mattos 863cc4d336 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (689 of 689 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-07-05 18:12:59 +00:00
Codeberg Translateandrogerio-mattos df4dc4497d Translated using Weblate (Spanish)
Currently translated at 38.4% (265 of 689 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-07-05 18:12:59 +00:00
Boria138 33575fc27a fix: remove unconditional icon recoloring fallback in AutoSizeButton
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-05 23:12:09 +05:00
Boria138 34920b8a5e chore: replace wine combo popup widening with gamepad tooltip
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-05 23:01:57 +05:00
Boria138 c068129a46 fix: widen wine popup and refresh installed status
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-05 18:42:53 +05:00
Renovate Bot 498497d3e2 chore(deps): update https://git.linux-gaming.ru/actions/setup-python digest to ece7cb0 2026-07-05 06:54:41 +00:00
Renovate Bot f193089ff3 chore(deps): update archlinux:base-devel docker digest to 5fb487a 2026-07-05 00:01:23 +00:00
Dervart 952af795d5 fix: classic themes button text/icon state colors 2026-07-04 13:17:22 +07:00
Boria138 6e3f70f0c6 fix: prevent icon color inheritance recursion
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-04 11:08:50 +05:00
Boria138 a795bddbc3 fix: keep compact wine table rows in classic-light
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-04 10:52:22 +05:00
Boria138 76a435d421 fix: prevent recursive theme loads for icon colors
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-04 10:48:29 +05:00
Boria138 9e13e5d7fa fix: keep AutoSizeButton text centered on hover
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-04 10:31:15 +05:00
Boria138 186d065f4a chore: improve themed combo boxes and icon recoloring
- Move CustomComboBox to custom_widgets
- Use CustomComboBox consistently for combo boxes
- Recolor context menu icons through ICON_COLORS
- Fix AutoSizeButton text color for iconless buttons

Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-03 23:56:23 +05:00
Dervart 270c96e1cd update theme guide readme 2026-07-03 16:50:00 +00:00
Dervart 608fc12c2b themes: update styles 2026-07-03 16:50:00 +00:00
Dervart 53862ec4e3 classic-light: add styles 2026-07-03 16:50:00 +00:00
Dervart 7744394f07 standart-light: add missed styles 2026-07-03 16:50:00 +00:00
Dervart acd8269b47 feat: add class CustomComboBox for editable combo context menu 2026-07-03 16:50:00 +00:00
Dervart c087b698ab update standart-light theme 2026-07-03 16:50:00 +00:00
Dervart ad9694df98 fix: AutoSizeButton text now recolors with icon on state change 2026-07-03 16:50:00 +00:00
Dervart cb5c39db53 fix: remove * svg color from AutoSizeButton 2026-07-03 16:50:00 +00:00
Dervart b19ce9fd17 feat: AutoSizeButton now recolors icons on state change (hover, pressed,
disabled)
2026-07-03 16:50:00 +00:00
Boria138 c36c52162c fix: keep search expanded with virtual keyboard
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-03 17:59:51 +05:00
Boria138 c8e3bd40b2 fix: prevent recursive theme loading for icon colors
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-03 17:20:22 +05:00
Boria138 d5fedd827d feat: add theme SVG icon recoloring
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-07-02 23:41:24 +05:00
Gitea Actions 8d9a60dc28 chore: update steam apps list 2026-07-01T00:01:20Z 2026-07-01 00:01:20 +00:00
Boria138 3e51f06126 fix: close library filters on tab switch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-30 18:05:31 +05:00
Boria138 39ee989175 fix: decouple search animation duration from game card scale
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-30 17:57:52 +05:00
Boria138 67bc16f3f6 test: update classic theme required styles
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-30 17:43:02 +05:00
Dervart 9c46909973 refactor: styles for library controls popup and filter combobox 2026-06-30 19:09:34 +07:00
Boria138 452ab7a157 fix: smooth library controls animation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-30 13:53:12 +05:00
Boria138 fc58f0cac9 chore: use ppai icon for autoinstall
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-29 14:08:45 +05:00
Boria138 0040307b7f fix: remove redundant ppdb download after autoinstall
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-29 10:18:40 +05:00
Boria138 0f5b33bce4 feat: add local PPAI autoinstall file support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-29 10:05:18 +05:00
Dervart bf9c76be9c fix: border-radius to constant 2026-06-28 12:34:04 +00:00
Dervart ee67e82320 fix: ThemeStore add bottom margin to detail header layout 2026-06-28 12:34:04 +00:00
Dervart c7990e6ac3 fix: scrollbar border style 2026-06-28 12:34:04 +00:00
Dervart 7ead4fb61f Update styles.py 2026-06-28 12:34:04 +00:00
Dervart 6a3ef0005c feat: AutoSizeButton: allow tuple padding (2 or 4 values) 2026-06-28 12:34:04 +00:00
Boria138 5068c11a3d fix: ignore commented autoinstall exe entries
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-28 16:19:22 +05:00
Boria138 e40cabae2e docs(theme): fix TOC anchor links for Gitea rendering
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-28 11:02:44 +05:00
Boria138 5975fa0ba0 docs(theme): rewrite theme guide with real examples and new sections
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-28 10:59:52 +05:00
Renovate Bot ca2127e3ce chore(deps): update archlinux:base-devel docker digest to cf028ae 2026-06-28 05:36:59 +00:00
Renovate Bot dd7c5c934b chore(deps): update debian:13 docker digest to d07d1b5 2026-06-28 05:36:47 +00:00
Boria138 a2a5694a69 chore: switch to library when opening autoinstall card
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-28 10:34:45 +05:00
Boria138 b0ce5aff7b fix: match autoinstall entries by target exe path
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-28 10:29:48 +05:00
Boria138 fb2162b260 feat(preloader): added bat, pulse, dots and wave type
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-28 00:33:15 +05:00
Boria138 0f87c67774 feat(detail-page): add Open Folder button for PortProton games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-27 22:28:27 +05:00
Boria138 0bc6c5eee1 fix: show library download progress on launch button
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-27 18:36:30 +05:00
Boria138 86ce0bb528 fix(theme): prevent clipped buttons in standart-light
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-27 16:12:13 +05:00
Boria138 221ca1b5b5 fix: prevent autoinstall script download thread crash
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-27 14:09:32 +05:00
Boria138 6bce55a116 fix: restore child theme inheritance in standart-light
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-27 11:53:27 +05:00
Boria138 779156bfde fix: repair run-after exe launch output handling
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-27 11:01:34 +05:00
Boria138 c08b3d2ff6 fix: restore lost styles and changed values since 519edd1
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-27 10:44:26 +05:00
Boria138 c6e9e5ac22 fix: recompute inherited light theme styles
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-26 22:36:47 +05:00
Boria138 4e4a4eaa0d refactor: move theme store into dedicated modules
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-26 21:39:40 +05:00
Boria138 3e5da67ac5 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-26 15:06:46 +05:00
Boria138 84a015d1fc chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-25 21:25:21 +05:00
Boria138 a04e1069c4 fix: refresh theme store visibility after saving settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-25 21:21:59 +05:00
Boria138 a56528a61d debug: trace CLI detail page navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-25 18:47:11 +05:00
Boria138 a5bc4269b2 chore(changelog): move PR changes to main for avoid conflicts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-25 18:02:33 +05:00
Codeberg TranslateandRubin13 473c824124 Translated using Weblate (German)
Currently translated at 100.0% (689 of 689 strings)

Translated using Weblate (German)

Currently translated at 100.0% (687 of 687 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-06-25 07:06:40 +00:00
Boria138 4b378f59f5 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-25 00:12:54 +05:00
Boria138 1a62acbd9d feat: hide theme store behind settings checkbox (disabled by default)
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-25 00:10:12 +05:00
Boria138 ff03834ade fix: replace fuzz.ratio with fuzz.partial_ratio for stable first-letter search
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-24 23:51:40 +05:00
Boria138 460ed51fc4 feat(theme_security): rewrite security checker with allowlist approach
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-24 11:26:45 +05:00
Codeberg Translateandgallegonovato 5c9318808a Translated using Weblate (Spanish)
Currently translated at 37.9% (261 of 687 strings)

Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-06-23 17:18:57 +00:00
Codeberg TranslateandRubin13 730c04560d Translated using Weblate (German)
Currently translated at 63.4% (436 of 687 strings)

Translated using Weblate (German)

Currently translated at 44.9% (309 of 688 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-06-23 17:18:57 +00:00
Boria138 9e759f044d fix: refine magic numbers rule to avoid false positives in AGENTS.md
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 22:18:44 +05:00
Boria138 c45b81ea2b ci: add patchelf dependency and replace DEPLOY_SYS_PYTHON with DEPLOY_PYTHON for AppImage build
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 21:50:42 +05:00
Boria138 b438cf900e feat: theme store grid with dynamic layout and gamepad support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 18:33:24 +05:00
Boria138 61205191ea fix(locale): remove untranslated {0} Wine… string from i18n
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 17:50:59 +05:00
Boria138 cab84b3a8e chore(locale): fix weblate warnings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 17:40:42 +05:00
Boria138 e812c8e4da feat(theme-store): added more rows
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 17:16:50 +05:00
Codeberg Translateandgallegonovato 6689c692f6 Translated using Weblate (Spanish)
Currently translated at 31.8% (219 of 688 strings)

Translated using Weblate (Spanish)

Currently translated at 23.4% (161 of 688 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-06-23 13:59:12 +05:00
Codeberg TranslateandRubin13 7ecdcc0c96 Translated using Weblate (German)
Currently translated at 40.2% (277 of 688 strings)

Translated using Weblate (German)

Currently translated at 35.8% (246 of 686 strings)

Translated using Weblate (German)

Currently translated at 35.0% (237 of 676 strings)

Translated using Weblate (German)

Currently translated at 34.1% (231 of 676 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-06-23 13:59:11 +05:00
Boria138 397c4686d6 test: remove dependency on real themes from theme manager tests
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 13:57:58 +05:00
Boria138 f95a475315 fix(theme): only generate styles from immediate parent's styles/ dir
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 13:19:34 +05:00
Boria138 d3673c4aeb chore: speedup theme store
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 12:31:40 +05:00
Boria138 31c8428255 fix(theme): recompute QSS styles with child palette
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 10:12:47 +05:00
Boria138 b01fae652a fix(theme): walk full inheritance chain for constant injection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-23 09:51:47 +05:00
Boria138 c92855366e fix(theme): use AST-based constant injection instead of hardcoded paths
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 21:55:44 +05:00
Boria138 13dc84c1ad fix: parent theme styles shadowed by generated standart styles
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 20:32:27 +05:00
Boria138 d477acffd5 fix: add protondb cache cleanup on steam apps refresh
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 20:28:49 +05:00
Boria138 7147f6087a feat(locale): fix fuzzy and add missing translations for ru, zh_CN, pt_BR
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 18:56:51 +05:00
Boria138 b8fa8925ad feat(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 18:52:31 +05:00
Boria138 e28a8b5321 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 18:52:05 +05:00
Boria138 182ed098a3 feat: add theme store and URI install support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 18:49:29 +05:00
Boria138 a75d6a41d2 theme(security): allow safe theme API calls in custom themes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 17:19:52 +05:00
Boria138 915a7077c6 chore(themes): clean
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 16:44:37 +05:00
Boria138 c183635778 fix(theme): merge standart constants as base in _build_generated_styles
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 14:49:28 +05:00
Boria138 519edd1efc chore(theme): rewrite it to const
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-22 12:30:16 +05:00
Boria138 201a96f73d fix: replace source badges with PPDB badge on detail page
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-21 22:08:53 +05:00
Boria138 9593af224b feat: improve game source corner marker
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-21 17:09:26 +05:00
Boria138 9d8ba97c2d fix: keep detail fade animation from sticking on resize
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-21 15:53:41 +05:00
Boria138 843af631e3 feat(locale): add German translation via Weblate
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-21 12:55:24 +05:00
Boria138 b36f263bb4 Merge weblate/main: resolve German translation conflicts 2026-06-21 12:52:40 +05:00
Codeberg TranslateandRubin13 7e15069f3b Added translation using Weblate (German)
Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
2026-06-21 12:46:42 +05:00
Boria138 edcfe2c018 feat: add gjs-osk based virtual keyboard layouts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-21 12:45:52 +05:00
Codeberg TranslateandRubin13 4ccd2d6640 Translated using Weblate (German)
Currently translated at 26.4% (179 of 676 strings)

Translated using Weblate (German)

Currently translated at 21.7% (147 of 676 strings)

Translated using Weblate (German)

Currently translated at 18.0% (122 of 676 strings)

Translated using Weblate (German)

Currently translated at 5.9% (40 of 676 strings)

Translated using Weblate (German)

Currently translated at 0.5% (4 of 681 strings)

Added translation using Weblate (German)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Rubin13 <rubin13@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/de/
Translation: PortProtonQt/PortProtonQt
2026-06-21 07:08:13 +00:00
Boria138 de0ed85599 fix: improve compact game card scaling
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-21 12:07:55 +05:00
Boria138 f4ee6eef14 fix: skip hidden cards in grid navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-21 11:43:00 +05:00
Renovate Bot 30bbb591d3 chore(deps): update archlinux:base-devel docker digest to 0cf5eb7 2026-06-21 05:40:50 +00:00
Renovate Bot 208b6aea3b chore(deps): pin archlinux docker tag to 0cf5eb7 2026-06-21 00:01:22 +00:00
Boria138 df402b58dd feat: redirect keyboard input to search from focused game cards
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-21 01:16:26 +05:00
Boria138 baaef49dd9 feat: reduce minimum card size slider from 200 to 150 px
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-21 00:49:45 +05:00
Boria138 67553f1b57 drop unneded files
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-20 23:04:12 +05:00
Boria138 a455a7d005 fix: adapt detail page layout on narrow screens
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-20 22:26:46 +05:00
Boria138 65ab28db1f fix: use SVG favorite star overlays
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-20 18:54:09 +05:00
Boria138 9688679ff8 fix: skip malformed po entries during l10n update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-20 18:16:46 +05:00
Boria138 311d74a629 changed: show only ProtonDB service name on badge
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-20 18:13:23 +05:00
Boria138 e807e2246a feat: make control hint icons clickable
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-20 12:37:26 +05:00
Boria138 cc01552bfa chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-19 17:49:35 +05:00
Codeberg Translateandrogerio-mattos 6fb33bd9ac Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (681 of 681 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/zh_Hans/
Translation: PortProtonQt/PortProtonQt
2026-06-19 11:38:28 +00:00
Codeberg Translateandrogerio-mattos 0ed071f980 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (681 of 681 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-06-19 11:38:27 +00:00
Boria138 ccd60ff787 chore(locale): update zh_CN
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 23:59:01 +05:00
Boria138 23264203d8 ci: ignore locale changes in code check
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 23:49:25 +05:00
Codeberg TranslateandBoria138 ad7461d7cc Translated using Weblate (Russian)
Currently translated at 100.0% (681 of 681 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-06-18 18:46:32 +00:00
Boria138 27feb9cfdd chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 23:44:39 +05:00
Boria138 ffc1895295 fix: move PW_GPU_INFO to ppdb log variables
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 23:41:21 +05:00
Boria138 2edc3bf9aa feat: add optional PPDB auto-download
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 23:30:41 +05:00
Boria138 ac827903b5 debug: log primary GPU from glxinfo as PW_GPU_INFO
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 23:03:24 +05:00
Boria138 ef05259289 chore: remove translation spellcheck
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 16:54:10 +05:00
Boria138 4b59fe0fb9 feat: add D7VK UI and debug log support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 16:26:03 +05:00
Boria138 12c344181e fix: download autoinstall scripts to temp directory
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 16:16:35 +05:00
Mikhail Tergoev 43b97acc27 Merge branch 'main' of git.linux-gaming.ru:Linux-Gaming/PortProtonQt 2026-06-18 13:36:13 +03:00
Mikhail Tergoev 6c6a5c7aae add support: d7vk 2026-06-18 13:35:54 +03:00
Boria138 5c43e22726 refactor: move main window tabs into modules
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 11:45:27 +05:00
Boria138 4bf3f34fbe fix: refresh cached PPDB autoinstall images
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 11:26:00 +05:00
Boria138 687c4cfb9d ui: implement theme-aware PPDB rating badges
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 11:16:06 +05:00
Boria138 45d210dd72 feat: use PPDB data for PortProton badges
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 00:56:52 +05:00
Gitea Actions e840f07e60 chore: update steam apps list 2026-06-17T19:38:00Z 2026-06-17 19:38:01 +00:00
Boria138 69b949198d fix: handle wrapped PPDB ratings response
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 00:37:06 +05:00
Gitea Actions bcd6c73d37 chore: update steam apps list 2026-06-17T19:34:57Z 2026-06-17 19:34:57 +00:00
Codeberg Translateandrogerio-mattos 8caa7727c6 Translated using Weblate (Portuguese (Brazil))
Currently translated at 81.0% (550 of 679 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-06-18 00:31:44 +05:00
Boria138 e905e2fb24 feat: add PPDB ratings data to get_id script
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-18 00:29:38 +05:00
Boria138 6ca70e86b4 feat: load autoinstalls from PPDB API
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-17 12:13:22 +00:00
Boria138 1d42a8cd97 refactor: deduplicate animation helpers
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-17 10:53:21 +05:00
Boria138 f0d5873342 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-16 23:01:00 +05:00
Boria138 aeac40a003 fix: refresh playtime and last launch live
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-16 22:57:47 +05:00
Boria138 0059162dff feat: add Steam-style playtime display
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-16 22:41:11 +05:00
Boria138 d432e44ca6 feat: move playtime statistics from bash to Python
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-16 11:48:33 +05:00
Boria138 f860513626 chore: drop unneded topic files
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-15 22:16:06 +05:00
Boria138 e6cdf92fc1 feat: move last_launch to XDG_DATA_HOME with auto-migration
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-15 16:40:38 +05:00
Boria138 c3b54b43dd test: add desktop shortcut creation and path resolution tests
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-14 15:17:59 +05:00
Boria138 f3a2c179a3 test: add dbus_tools tests (68 tests for notifications, idle inhibit, power profiles)
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-14 15:04:48 +05:00
Boria138 85032b3c1f refactor: remove proton_downloads debug code from WINE/Proton manager
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-14 14:53:33 +05:00
Boria138 fa8935b2aa chore(appimage): drop OPTDEPENDS_PACKAGES
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-14 14:49:16 +05:00
Boria138 0ff032885a chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-13 23:33:57 +05:00
Dervart dcaba9bf1f fix: remove commented styles for AutoHideScrollArea 2026-06-13 23:06:48 +07:00
Dervart 930d253fd1 feat: new class AutoHideScrollArea for Library & Autoinstall tab 2026-06-13 22:56:53 +07:00
Boria138 84dd5ad676 ci(code check): switch to Arch container
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-13 13:57:26 +05:00
Boria138 a017399c7a test: add 367 autotests for regression-prone areas
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-13 12:45:33 +05:00
Boria138 0d9a4b560c fix: force-push weblate branch in accept-weblate.sh
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-13 11:40:15 +05:00
Codeberg Translateandrogerio-mattos 73491d8259 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 94.9% (645 of 679 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/zh_Hans/
Translation: PortProtonQt/PortProtonQt
2026-06-12 23:07:54 +00:00
Codeberg Translateandrogerio-mattos f492f0019b Translated using Weblate (Portuguese (Brazil))
Currently translated at 74.9% (509 of 679 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-06-12 23:07:54 +00:00
Boria138 a1c3f1cb8b docs: add bilingual README (English and Russian)
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-12 15:38:34 +05:00
Boria138 9d8d9edf51 build: automate Debian versioning in bump_ver.py
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-12 12:49:26 +05:00
Boria138 b2d42a44be ci: filter out unwanted Debian build artifacts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-12 12:37:40 +05:00
Codeberg Translateandrogerio-mattos 2ce141af90 Translated using Weblate (Portuguese (Brazil))
Currently translated at 61.1% (415 of 679 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-06-11 21:46:17 +05:00
Boria138 dacc44d62c refactor(ui): unify GNOME dark theme check with Cinnamon logic
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-11 21:45:22 +05:00
Boria138 a6edaa5f4d fix: dark theme detection for MATE
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-11 21:34:15 +05:00
Boria138 7612491f2b fix: use startswith for XDG_SESSION_DESKTOP matching
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-11 10:38:43 +05:00
Boria138 8f968133f0 fix: dark theme detection for Cinnamon and XFCE
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-11 10:31:28 +05:00
Boria138 8a5eea305c fix scripts: drop flatpak fatal
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-10 18:24:52 +05:00
Boria138 bb629e4063 feat: implement XDG Desktop Portal notification fallback
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-10 17:30:23 +05:00
Boria138 4d6f6c1b82 bump to 1.2.0
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-10 11:01:19 +05:00
Codeberg TranslateandBoria138 4451d7e26a Translated using Weblate (Russian)
Currently translated at 100.0% (679 of 679 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-06-10 05:58:37 +00:00
Boria138 a4199e2a16 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-10 10:56:09 +05:00
Boria138 401d1ddac2 feat: add file delete and rename to file explorer
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-10 10:55:42 +05:00
Boria138 86f66a1174 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-10 10:44:49 +05:00
Boria138 8d5a99f0de fix: delay library controls auto-close after combo selection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-09 20:34:51 +05:00
Dervart 92f795f0e5 fix: combobox styles for filters 2026-06-09 20:36:45 +07:00
Codeberg TranslateandBoria138 821c9172b2 Translated using Weblate (Russian)
Currently translated at 100.0% (672 of 672 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-06-09 11:26:33 +00:00
Codeberg Translateandrogerio-mattos 9c2febb40a Translated using Weblate (Portuguese (Brazil))
Currently translated at 43.2% (290 of 670 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-06-09 11:26:33 +00:00
Boria138 da21309b0c chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-09 16:24:47 +05:00
Boria138 9be9187ea5 feat: add sound driver setting to gui
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-09 16:24:13 +05:00
Boria138 18d1ad2d92 fix: skip exiftool when it is not installed
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-09 15:56:22 +05:00
Boria138 f9cefe501b fix: move badge view control to library submenu
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-09 15:46:28 +05:00
Boria138 d385e4e120 fix: make refresh button compact in library toolbar
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-09 15:42:42 +05:00
Mikhail Tergoev 4d9f7be000 update WINE_LG to 11-10 2026-06-08 22:08:06 +03:00
Boria138 ee6255a507 fix: collapse filters on card hover
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-08 16:43:21 +00:00
Boria138 2a8630db1b feat: make search compat
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-08 16:43:21 +00:00
Boria138 078bb9e8c7 feat: improve library filter controls
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-08 16:43:21 +00:00
Mikhail Tergoev be7f7056d3 Merge branch 'scripts-show-ppdb' 2026-06-08 18:16:08 +03:00
Mikhail Tergoev b31dcb9c63 fix merge conflict 2026-06-08 18:13:56 +03:00
Boria138 0958914cf1 fix: handle uppercase exe in show-ppdb
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-08 13:42:22 +05:00
Boria138 ff23e4c0df feat: add nrg disc image launch support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-08 09:54:47 +05:00
Boria138 4ae1b71823 fix: fall back to Xbox gamepad type without SDL3
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-08 09:20:06 +05:00
Boria138 25bf639f00 fix: avoid runtime cwd in system scripts dir
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-07 16:30:43 +05:00
Boria138 5dfdc91b75 chore: create shortcuts only in app by default
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-07 16:18:44 +05:00
Mikhail Tergoev e5076a683c update CHANGELOG.md 2026-06-07 12:09:16 +03:00
Mikhail Tergoev c3d3668eee mouse emulator sensitivity = 20 2026-06-07 12:09:16 +03:00
Renovate Bot f6d2a37d6f chore(deps): update archlinux:base-devel docker digest to c84ad63 2026-06-07 04:16:26 +00:00
Renovate Bot 6969c534a8 chore(deps): update https://git.linux-gaming.ru/actions/checkout digest to df4cb1c 2026-06-07 00:00:52 +00:00
Boria138 4fcf48a7cf chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-06 22:59:40 +05:00
Boria138 090818a356 Merge remote-tracking branch 'origin/weblate' 2026-06-06 22:53:16 +05:00
Codeberg TranslateandBoria138 7451d1f876 Translated using Weblate (Russian)
Currently translated at 100.0% (670 of 670 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-06-06 17:53:02 +00:00
Boria138 f30e3fd405 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-06 22:51:41 +05:00
Boria138 01e2c3bfd5 chore: add Weblate accept script 2026-06-06 22:51:06 +05:00
Boria138 52e1b303ba Merge remote-tracking branch 'weblate/main' 2026-06-06 22:46:13 +05:00
Boria138 ab954936fc Merge branch 'weblate' 2026-06-06 22:41:58 +05:00
Codeberg Translateandrogerio-mattos d25342331d Translated using Weblate (Portuguese (Brazil))
Currently translated at 32.8% (220 of 670 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 32.3% (217 of 670 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 30.2% (203 of 670 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-06-06 17:41:26 +00:00
Codeberg Translateandgallegonovato 26d1661f63 Translated using Weblate (Spanish)
Currently translated at 8.6% (58 of 670 strings)

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-06-06 17:41:26 +00:00
Boria138 6ddb630fea fix: adjust vkBasalt CAS and action controls
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-06 22:40:21 +05:00
Codeberg Translateandrogerio-mattos 2b934bef6e Translated using Weblate (Portuguese (Brazil))
Currently translated at 30.2% (203 of 670 strings)

Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-06-06 16:07:54 +00:00
Codeberg Translateandgallegonovato 5d2101475e Translated using Weblate (Spanish)
Currently translated at 8.6% (58 of 670 strings)

Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-06-06 16:07:54 +00:00
Boria138 c16b481679 fix: add LG latest aliases to default Wine selection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-06 19:38:21 +05:00
Boria138 b91ed1b135 fix: read XDG paths always and fix Flatpak container download disable
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-06 18:30:56 +05:00
Boria138 a25c30f463 fix: restore right gamepad stick working
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-06 16:48:11 +05:00
Boria138 ebded297d3 fix: select vkBasalt user config in Flatpak
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-06 16:17:05 +05:00
Boria138 73d8c8e030 fix: improve GPU info command diagnostics
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-06 13:09:03 +05:00
Boria138 079d79f2c8 fix: keep selected table row color on hover
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-06 12:49:14 +05:00
Boria138 4f8e0c2d41 fix: speed up winetricks list loading
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-06 12:45:27 +05:00
Mikhail Tergoev 37d9104274 add support third-party installation scripts 2026-06-05 18:42:58 +03:00
Boria138 764bb3ced5 fix: handle spaced exe names in last launch cache
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 20:20:04 +05:00
37dd71284f Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 95.5% (640 of 670 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 95.5% (640 of 670 strings)

Co-authored-by: Anonymous <anonymous@noreply.codeberg.org>
Co-authored-by: Poesty Li <poesty7450@gmail.com>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/zh_Hans/
Translation: PortProtonQt/PortProtonQt
2026-06-05 14:33:00 +00:00
03da1b2c61 Translated using Weblate (Russian)
Currently translated at 100.0% (670 of 670 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (670 of 670 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (670 of 670 strings)

Co-authored-by: Anonymous <anonymous@noreply.codeberg.org>
Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Co-authored-by: Simple16 <simple16@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-06-05 14:33:00 +00:00
e77a7edf4c Translated using Weblate (Portuguese (Brazil))
Currently translated at 3.4% (23 of 670 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 3.4% (23 of 670 strings)

Co-authored-by: Anonymous <anonymous@noreply.codeberg.org>
Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-06-05 14:33:00 +00:00
Codeberg TranslateandAnonymous 065cf835c5 Translated using Weblate (Belarusian)
Currently translated at 0.0% (0 of 670 strings)

Co-authored-by: Anonymous <anonymous@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/be/
Translation: PortProtonQt/PortProtonQt
2026-06-05 14:33:00 +00:00
Boria138 3001fdac30 chore(locales): return es
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 19:32:48 +05:00
Boria138 4456d06b50 chore(locales): drop unused locales
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 19:17:36 +05:00
Codeberg TranslateandBoria138 1d423d7ebe Translated using Weblate (Portuguese (Brazil))
Currently translated at 3.4% (23 of 670 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/pt_BR/
Translation: PortProtonQt/PortProtonQt
2026-06-05 14:12:52 +00:00
Boria138 1c91219cef fix: improve vkBasalt gamepad navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 16:41:49 +05:00
Boria138 718b7f0eaa chore: avoid translating tool names in settings buttons
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 16:33:43 +05:00
Boria138 0b4fcd37d4 feat: add vkBasalt toggle key setting
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 16:25:58 +05:00
Boria138 f08ae3091e chore: move vkbasalt to separate tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 16:12:29 +05:00
Boria138 947a5d522a chore: add SpecialK to spell ignore
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 13:48:52 +05:00
Codeberg TranslateandBoria138 2ad468491e Translated using Weblate (Russian)
Currently translated at 100.0% (674 of 674 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-06-05 08:34:50 +00:00
Boria138 5bb0848f56 Merge branch 'weblate' 2026-06-05 12:35:07 +05:00
Boria138 6d6ed36bc0 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 12:34:19 +05:00
Boria138 93d6c4610c feat: add vkBasalt exe settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 12:31:31 +05:00
Boria138 72ec18e099 ci: use own action mirrors
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 10:57:03 +05:00
Boria138 a04b0e41e9 chore(scripts): use unpack for p7zip archives
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-05 09:00:46 +05:00
Codeberg Translateandrogerio-mattos 6e4664589b Added translation using Weblate (Portuguese (Brazil))
Co-authored-by: rogerio-mattos <rogerio-mattos@noreply.codeberg.org>
2026-06-05 00:00:41 +00:00
Mikhail Tergoev 6ccf99c73f add download error checking 2026-06-04 17:03:29 +03:00
Mikhail Tergoev 20372331d6 revert logging scripts to terminal 2026-06-04 16:34:29 +03:00
Boria138 b17bbb2f46 fix: avoid file explorer focus jumps from gamepad axis
Prevent left stick axis events from forcing focus to the first path
button in FileExplorer. Keep list reset to the first row only for a
discrete D-pad down transition from path buttons.

Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-04 12:03:24 +05:00
Codeberg TranslateandBoria138 4debfae5aa Translated using Weblate (Russian)
Currently translated at 100.0% (669 of 669 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-06-04 05:34:30 +00:00
Boria138 36a086129e chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-04 10:32:26 +05:00
Boria138 912dc2c77e feat: add exe settings favorites tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-04 10:31:14 +05:00
Boria138 26f3a35560 fix: move default Wine settings to Wine tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-04 10:05:18 +05:00
Boria138 ad8cbb35dc fix: refresh autoinstall status after install
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-04 09:50:21 +05:00
Boria138 612c10595d feat(scripts): automate metainfo updates in bump_ver.py
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-04 09:29:13 +05:00
Boria138 ac3d1045e4 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-04 09:08:51 +05:00
Mikhail Tergoev 363ff0d86e Merge branch 'scripts-specialk' 2026-06-03 20:32:27 +03:00
Mikhail Tergoev fe6b84db56 Merge branch 'scripts-default' 2026-06-03 20:10:19 +03:00
Mikhail Tergoev 02ebc440ec Merge branch 'scripts-wrapper' 2026-06-03 20:07:47 +03:00
Mikhail Tergoev bf6421547d Merge branch 'scripts-winetrics' 2026-06-03 20:02:07 +03:00
Mikhail Tergoev 4679fb7eb0 Merge branch 'scripts-ppdb' 2026-06-03 19:59:20 +03:00
Mikhail Tergoev 5c5d544bc7 Merge branch 'scripts-wayland' 2026-06-03 19:55:25 +03:00
Boria138 a4abeca70d Merge branch 'weblate' 2026-06-03 19:57:59 +05:00
Boria138 bb39b07445 chore: improve exe settings row highlight
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-03 10:30:18 +05:00
Boria138 4c27ca8365 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-02 22:40:02 +05:00
Boria138 8b0eb13d72 chore: remove ppdb cleanup success message from exe settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-02 22:39:24 +05:00
Boria138 08ec0773fa feat: support Special K with OptiScaler
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-02 21:56:56 +05:00
Boria138 52f7c04cff feat: add SpecialK injection support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-02 21:26:03 +05:00
Boria138 00e20f2165 feat: add default exe Wine and prefix settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-02 20:41:29 +05:00
Codeberg TranslateandBoria138 758c731106 Translated using Weblate (Russian)
Currently translated at 100.0% (668 of 668 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-06-02 07:07:50 +00:00
Boria138 01a82510f2 feat: support launch wrapper in run-after setting
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-02 09:48:38 +05:00
Boria138 72daab8cd6 chore: add SLR log only on SLR_DEBUG=1
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-01 21:45:57 +05:00
Boria138 a0445d8c45 feat(scripts): added cli to winetricks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-01 14:00:50 +05:00
Boria138 343bc12c1e chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-01 11:23:31 +05:00
Boria138 8aff408bda fix: keep autoinstall running after leaving card
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-01 11:23:05 +05:00
Boria138 66586b2a36 fix: prevent MangoHud auto-enable from config
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-01 11:14:09 +05:00
Boria138 3fb6727818 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-01 10:40:55 +05:00
Boria138 520fa55988 feat(system): add logout and make power actions init agnostic
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-06-01 10:40:14 +05:00
Gitea Actions b34004cff3 chore: update steam apps list 2026-06-01T00:00:46Z 2026-06-01 00:00:46 +00:00
Renovate Bot 2eb8c1f7b6 chore(deps): update archlinux:base-devel docker digest to 2507482 2026-05-31 03:14:21 +00:00
Renovate Bot f36073ee32 chore(deps): pin debian docker tag to 4ae6766 2026-05-31 00:01:28 +00:00
Boria138 a258a63c8e fix: migrate shortcuts using current launcher mode
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-30 20:16:17 +05:00
Boria138 def3fe27f8 feat: appimage shortcut migration and steam scripts update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-30 18:47:37 +05:00
Boria138 45fd7da18a fix: backspace in folder rename dialog
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-30 18:33:34 +05:00
Boria138 6afce40576 fix: create folders in parent directory
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-30 18:30:15 +05:00
Boria138 c2f45736db fix: use AppImage scripts for silent launch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-30 10:29:13 +05:00
Boria138 4f3fdb621e fix: select MangoHud conf from flatpak home config first
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-30 10:08:51 +05:00
Boria138 e40e9811cf fix: stabilize Steam shortcut launch wrappers
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-30 10:08:51 +05:00
Codeberg TranslateandBoria138 d1bfab6c7c Translated using Weblate (Russian)
Currently translated at 100.0% (667 of 667 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-05-29 13:53:57 +00:00
Boria138 4f8929da40 fix: filter network shares from mounted drives
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-29 09:37:36 +05:00
Boria138 4b0b613659 chore: fix autoFullscreenGamepad settings style
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-28 13:08:49 +05:00
Boria138 0802e7852f chore(build): fix typo on arch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-28 10:17:30 +05:00
Boria138 4a03d803f4 chore(locale): added Belarusian po template
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-28 10:14:07 +05:00
Boria138 4271461282 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-28 10:08:45 +05:00
Boria138 f4477101cc chore(mangohud): fix typo
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-28 10:07:57 +05:00
Boria138 0dc11ecd3c feat(input): use SDL3 for gamepad type detection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-28 09:58:00 +05:00
Boria138 3248392e78 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 21:30:57 +05:00
Boria138 9468c3f286 feat(settings): return gamepad type setting
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 21:27:22 +05:00
Boria138 c826153ddf fix: repair native Wayland launch setup
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 20:47:24 +05:00
Boria138 f2b80604cb feat(mangohud): added display_server to PortProton preset
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 20:35:32 +05:00
Boria138 dd61c72a3a fix: copy ppdb templates and fix runtime game path
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 19:15:44 +05:00
Boria138 36a36ad7d2 fix: load bundled terminal color schemes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 19:00:47 +05:00
Boria138 03ada79e88 fix: improve installed autoinstall handling
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 15:30:07 +05:00
Boria138 20444bc3d1 feat: add drag and drop restore for ppack backups
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 15:02:34 +05:00
Boria138 ae89b5a0fb ci: merge package build workflows
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 12:11:16 +05:00
Boria138 3372bb58ba fix: pass Steam launch options to games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 12:03:09 +05:00
Boria138 200b257622 fix: launch Steam games via detected client type
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-27 12:03:09 +05:00
VanoMJ 0b8ef53cdd ci: build Debian package 2026-05-26 21:42:23 +03:00
Boria138 41aea94fff fix: detect Steam directory via .steam symlink
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 21:48:35 +05:00
Boria138 0a4cb81906 fix: add missing .cmd launch support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 21:05:54 +05:00
Boria138 1743c69261 feat: add hidden time display mode
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 20:57:35 +05:00
Boria138 d0d1dff778 bump to 1.1.0 (hotfix)
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 11:48:45 +05:00
Boria138 07e07dbe09 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 11:44:38 +05:00
Boria138 004916a82b fix: filter invalid GPU entries in settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 11:44:15 +05:00
Codeberg TranslateandBoria138 ae2115ad0a Translated using Weblate (Russian)
Currently translated at 100.0% (665 of 665 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-05-26 06:33:50 +00:00
Boria138 357a0dcf42 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 11:31:45 +05:00
Boria138 e5df48b9b0 chore: move gamepad fullscreen option in settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 11:31:10 +05:00
Boria138 48217b93f5 feat: validate PORT_DATA_PATH read-write access
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 11:27:29 +05:00
Boria138 cc2372107a feat: add version-based download counter
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 11:12:26 +05:00
Boria138 a32d63f5e5 refactor: centralize script D-Bus calls
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 10:58:35 +05:00
Boria138 cbf29005ff fix: remove obsolete PROGRAMS prefix
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-26 10:35:39 +05:00
Boria138 8d10bae8f2 fix: avoid duplicate library refresh
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 21:42:38 +05:00
Boria138 28d0417ede chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 21:32:47 +05:00
Boria138 7efb0aadec fix: reset PortProton user config from CLI
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 21:18:17 +05:00
Boria138 d4d7e9c044 fix: always show pinned prefixes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 21:15:06 +05:00
Boria138 eb18178958 fix: reset PortProton user config with app settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 21:10:51 +05:00
Boria138 979e208969 fix: update PortProton dependency progress from live output
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 21:03:32 +05:00
Boria138 8704ba00e9 fix: keep Wine settings tab populated without dist directory
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 20:31:58 +05:00
Mikhail Tergoev d9d8242475 add check write access to the game directory 2026-05-25 18:12:59 +03:00
Codeberg TranslateandBoria138 64e626b2b2 Translated using Weblate (Russian)
Currently translated at 100.0% (664 of 664 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-05-25 05:14:31 +00:00
Boria138 8af84460eb fix: improve library toolbar focus navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 10:03:38 +05:00
Boria138 b7e83ad1d2 fix: handle gamepad fullscreen startup
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 09:56:21 +05:00
Boria138 ffff6efa68 fix: keep Wine and LG builds in dist
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 09:46:53 +05:00
Boria138 fabf14fc46 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 09:35:55 +05:00
Boria138 88db436b94 fix: keep mouse emulation available after launcher start
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 09:35:18 +05:00
Boria138 592d24c9c6 ui: depersonalize interface by using generic terminology
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 09:02:54 +05:00
Boria138 c472c785cc feat(ui): add quick launch button
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 08:45:03 +05:00
Boria138 759e931dfc ui: remove redundant tab titles
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 08:30:01 +05:00
Boria138 93f5ea49d4 chore(build): replace steam compat
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-25 08:15:04 +05:00
Mikhail Tergoev d9c55bed61 Merge branch 'main' of git.linux-gaming.ru:Linux-Gaming/PortProtonQt 2026-05-24 21:35:19 +03:00
Mikhail Tergoev 64bbabd0f1 fix auto update compat tools 2026-05-24 21:33:59 +03:00
Boria138 c3e9433f9d fix: defer empty library refresh until window shows
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 17:26:48 +05:00
Boria138 c4274bbef6 fix: restore legacy squashfs via easyterm
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 17:20:59 +05:00
Boria138 cdfd983580 fix: avoid prefix restore on theme restart
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 17:13:44 +05:00
Boria138 749113b48c fix: use classic autoinstall covers for list themes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 15:03:05 +05:00
Boria138 5fdba88c5c fix: refresh empty library after silent launch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 14:54:30 +05:00
Boria138 a20887da5b fix: refresh library after all PortProton shortcut creation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 14:44:40 +05:00
Boria138 c9b8871fb1 fix: fallback to exe icon when cover download fails
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 14:38:48 +05:00
Boria138 6db27ef7af feat: add GUI support for bat msi reg launch files
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 14:25:55 +05:00
Boria138 97de53303c fix: force 96 DPI on prefix initialization
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 11:02:59 +05:00
Simple16 07ac67e934 Updating the Russian localization 2026-05-24 05:27:33 +00:00
Simple16 66e1e437f8 Updating the Russian localization 2026-05-24 05:27:33 +00:00
Boria138 12c98adbd7 fix: resolve pyright type errors in wine_extractor, downloader, and prefix_backup
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 10:27:14 +05:00
Boria138 d7de29008e fix(deps): update python dependencies
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 10:21:03 +05:00
Boria138 4d99a66e84 chore: finally migrate custom data to https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt-Custom-Metadata
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 09:55:35 +05:00
Simple16 288242195b Updating the English localization 2026-05-24 09:26:37 +05:00
Boria138 892124efba fix: normalize Proton dist hyphen spacing
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-24 03:24:49 +00:00
Renovate Bot ae7bd3e5ff fix(deps): update dependency dbus-fast to v5 2026-05-24 03:19:56 +00:00
Renovate Bot 042b90d663 chore(deps): update ghcr.io/renovatebot/renovate:latest docker digest to 47421f2 2026-05-24 00:00:43 +00:00
Boria138 4fdaf0115e feat: rework prefix backups with libarchive progress UI
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 16:31:16 +00:00
Boria138 b00f62776c feat: add svg cover image support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 21:29:43 +05:00
Boria138 69674b5c75 fix: check moved Python files in meson hook
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 21:14:37 +05:00
Boria138 eaa3467410 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 21:07:19 +05:00
Boria138 47a949fe6e chore(scripts): fix easyterm location
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 20:41:22 +05:00
Mikhail Tergoev 8902369fe7 fix create desktop and choose ppdb for setup-msi 2026-05-23 16:41:08 +03:00
Mikhail Tergoev c0529ac9fd move easyterm to scripts_utils 2026-05-23 13:49:36 +03:00
Mikhail Tergoev a9ed377b00 add runner terminal function: python_term 2026-05-23 13:40:08 +03:00
Mikhail Tergoev bc523762b6 add runner python3 function: python_module 2026-05-23 13:20:50 +03:00
Boria138 2f5159129c fix: include check_variables defaults in --show-ppdb output
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 14:10:47 +05:00
Boria138 eef8c7d496 chore(locale): rm zh_Hans
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 11:08:38 +05:00
Boria138 64cad59d53 chore(locale): rename zh_Hans to zh_CN for glibc compatibility
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 11:03:51 +05:00
Boria138 cc8e7fa515 bump to 1.0
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 09:24:09 +05:00
Boria138 8865def11e fix: trigger build workflow on v tags
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 09:20:55 +05:00
Boria138 69f3d087b3 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-23 09:04:29 +05:00
Boria138 39c9e0e7ee Revert "feat: add container terminal tool"
This reverts commit fb7e5b4c0c.
2026-05-23 09:04:03 +05:00
Codeberg TranslateandBoria138 bdc486f695 Translated using Weblate (Russian)
Currently translated at 100.0% (661 of 661 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-05-22 18:55:36 +00:00
Boria138 385a2b3535 chore(changelog): added a simplified chinese translator from Codeberg Translate
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 23:52:48 +05:00
Codeberg TranslateandPoesty Li f740ef1a53 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (661 of 661 strings)

Added translation using Weblate (Chinese (Simplified Han script))

Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Poesty Li <poesty7450@gmail.com>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/zh_Hans/
Translation: PortProtonQt/PortProtonQt
2026-05-22 18:39:46 +00:00
Boria138 b78f838ffd chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 23:39:38 +05:00
Boria138 36ca8a6b86 fix: translate folder delete confirmation buttons
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 23:28:10 +05:00
Boria138 fb7e5b4c0c feat: add container terminal tool
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 23:09:58 +05:00
Boria138 c3235ed7d0 fix: keep settings tabs populated on first startup
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 22:44:10 +05:00
Boria138 5676daa573 fix: support dbus-fast 2.x bluetooth annotations
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 20:12:19 +05:00
Codeberg TranslateandBoria138 fba71245ef Translated using Weblate (Russian)
Currently translated at 100.0% (661 of 661 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-05-22 14:31:32 +00:00
Renovate Bot 8c2b80c97e chore(deps): update https://gitea.com/actions/setup-node digest to 48b55a0 2026-05-22 14:30:09 +00:00
Renovate Bot dbab969bd7 chore(deps): update archlinux:base-devel docker digest to 6db772f 2026-05-22 14:29:39 +00:00
Boria138 a8c273c7f1 chore: relax Renovate update restrictions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 19:27:43 +05:00
Boria138 1bfdf82770 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 18:01:34 +05:00
Boria138 3645b7828b chore: rename MangoHud PortProton preset
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 18:01:05 +05:00
Boria138 1b72223930 feat: adjust file explorer default bookmarks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 17:58:02 +05:00
Boria138 8268b95b53 chore(changelog): added a Spanish translator from Codeberg Translate
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 17:38:17 +05:00
Boria138 0477e065f2 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 13:36:56 +05:00
Boria138 5d027a9c8a fix: make JSON cache writes atomic
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 13:33:32 +05:00
Boria138 fbda9ae455 remove muvm launch support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 12:22:34 +05:00
Boria138 e34ae0642d chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 12:17:57 +05:00
Boria138 0f28fa8474 refactor: move power profile control to Python
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 07:15:26 +00:00
Boria138 41f24c9cbc feat(scripts): reuse python functions for icons and shortcuts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 07:15:26 +00:00
Codeberg TranslateandBoria138 e11a1e1a93 Translated using Weblate (Russian)
Currently translated at 100.0% (661 of 661 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-05-22 07:12:07 +00:00
Boria138 b8c1d8595f chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 12:10:34 +05:00
Boria138 4096bd541c feat: replace Xterm to own term
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 06:53:14 +00:00
Boria138 8c934f5875 feat: add PortProton downloads mirror setting
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 08:26:26 +05:00
Boria138 3a82a5859b fix: filter unsupported Wine versions for Steam games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-22 08:15:03 +05:00
Mikhail Tergoev 8305d6ed65 add support portproton variables for steamplay 2026-05-22 01:43:13 +03:00
Mikhail Tergoev 2b863718f4 fix steamplay without ppdb file 2026-05-22 01:37:45 +03:00
Mikhail Tergoev c5bdc0db28 update PROTON_LG to 10-30 (work with steam) 2026-05-21 21:23:46 +03:00
Mikhail Tergoev 74e4b9e747 Merge branch 'main' of git.linux-gaming.ru:Linux-Gaming/PortProtonQt 2026-05-21 21:07:25 +03:00
Mikhail Tergoev e15df2eebb add variable: PW_USE_WOW64 2026-05-21 21:07:05 +03:00
Codeberg TranslateandBoria138 c3a02ed71d Translated using Weblate (Russian)
Currently translated at 99.6% (657 of 659 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-05-21 10:44:33 +00:00
Boria138 4efc5caac9 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-21 15:41:33 +05:00
Boria138 57a87594af feat: add ppack prefix backup MIME integration
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-21 11:31:04 +05:00
Boria138 6157d58d83 chore: use squashfs-tools from plugins
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-21 05:18:17 +00:00
Boria138 c085c31005 chore: use xterm from plugins
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-21 05:18:17 +00:00
Boria138 863bec41a0 chore(settings): move download options from appearance
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-21 05:18:17 +00:00
Boria138 dc721cc697 feat: added disable runtime download settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-21 05:18:17 +00:00
Boria138 e8521a6a98 fix: enable portable gamemode auto preload
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-21 05:14:18 +00:00
Boria138 acc4818266 changed: refresh library after prefix backup restore
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-20 23:02:58 +05:00
Boria138 70685e0f45 Revert "fix: open prefix backup dialog in prefixes directory"
This reverts commit a7f5e0dfe9.
2026-05-20 22:34:52 +05:00
Boria138 a7f5e0dfe9 fix: open prefix backup dialog in prefixes directory
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-20 22:31:47 +05:00
Boria138 a0bd1f73d6 feat: add prefix backup icons to file explorer
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-20 22:22:55 +05:00
Boria138 352420cdf8 refactor: move Qt screen helpers to qt_utils
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-20 14:47:53 +05:00
Boria138 b0da061a29 feat: add clickable tab navigation arrows
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-20 14:34:04 +05:00
Boria138 27d1ccf7a8 fix: keep compact badges sharp and aligned
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-20 09:51:26 +05:00
Boria138 3847da55ab refactor: require dbus-fast imports directly
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-19 21:03:35 +05:00
Boria138 3e1e032618 fix: keep theme SVG icons sharp when UI is scaled
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-19 21:03:35 +05:00
Boria138 a0c5b33114 chore(build): finish migrate to Linux-Gaming
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-19 21:03:35 +05:00
Boria138 46cedbc934 fix: keep empty run-after exe value unchanged
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-19 21:03:34 +05:00
Dervart c7669a3c42 fix: compress screenshots 2026-05-19 08:55:32 +07:00
Boria138 589d2e6d5f feat: support relative paths for second exe
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-18 15:18:35 +05:00
Boria138 da681007c9 fix: remove APNG FPS limit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-18 10:16:00 +05:00
Boria138 f8fa900a22 feat: configure theme variants via metainfo
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-18 09:54:09 +05:00
Boria138 30c3882b65 feat: add configurable tray menu modes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-17 19:58:50 +05:00
Boria138 527b0c1af0 feat: add tray tab switching
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-17 19:43:55 +05:00
Boria138 1016a864ed feat: add CLI cache and settings reset commands
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-17 19:36:40 +05:00
Boria138 951503c48b changed: hide MangoHud controls for system config
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-17 19:31:45 +05:00
Boria138 451d57a6d2 feat: add PPDB clear button to exe settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-17 14:07:04 +05:00
Boria138 392f24f244 feat: add open Steam game folder action to context menu
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-17 11:05:26 +05:00
Boria138 b44ff8bbb6 docs: add prepare_env.sh and update setup instructions in README
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-17 10:23:27 +05:00
Boria138 97a348585f fix: hide GPU settings section for single-GPU systems
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-17 09:59:31 +05:00
Boria138 ef8ee4a821 fix: skip GPU override on single-GPU systems
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-16 23:19:05 +05:00
Boria138 b831742277 fix(image_utils): verify png format for animated covers
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-16 15:33:53 +05:00
Boria138 c1a45747e9 chore(steam): block PW_USE_INHIBIT_SLEEP (steam use own inhibit)
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-16 13:54:10 +05:00
Boria138 4e40460ba2 chore(steam): block PW_USE_INHIBIT_SLEEP (steam use own inhibit)
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-16 13:37:51 +05:00
Boria138 b66841e8b7 fix: resolve Steam Play Proton runner lookup
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-16 13:21:59 +05:00
Boria138 4d34c24cdf chore(build): added python3-pillow-qt to Fedora
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-16 11:16:16 +05:00
Boria138 65bc286494 chore(appimage): fix typo
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 22:51:12 +05:00
Boria138 cb91b41b46 chore(appimage): libqwebp.so
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 22:50:06 +05:00
Boria138 c24aec0e40 fix: bundle WebP Qt image plugin in AppImage
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 22:47:29 +05:00
Boria138 54271548ec fix: keep AppImage runtime libraries in sync
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 22:13:00 +05:00
Boria138 a9552a3c1b chore(build): make pefile explicit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 15:58:34 +05:00
Boria138 88c30025de fix: refresh detail layout after HLTB load
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 11:50:15 +05:00
Boria138 1aac62b647 Revert "adapt detail page between full and compact modes"
This reverts commit 08131ea53f.
2026-05-15 11:47:43 +05:00
Boria138 08131ea53f adapt detail page between full and compact modes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 11:13:02 +05:00
Boria138 2666159375 reduce HEAD cache files
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 10:59:37 +05:00
Boria138 3515ad0ac5 fix: update HowLongToBeat search API
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 10:57:20 +05:00
Boria138 0875896e45 fix: remove downloader network preflight checks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 10:30:51 +05:00
Boria138 4f406cc966 chore: show source badges regardless of display filter
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-15 10:26:27 +05:00
Boria138 f9e0081fd6 Improve MDF to ISO sector conversion
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 22:39:27 +05:00
Boria138 bc4ba2169d fix: add missing RPM packaged files
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 22:22:43 +05:00
Boria138 cfc05c2017 chore: remove redundant defaults for APP_COMMIT and APP_VERSION
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 20:47:27 +05:00
Boria138 55fba9260e build: include commit hash in nightly version
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 20:32:34 +05:00
Boria138 ebc480883a fix: read runtime status from PortProton var.log
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 18:39:33 +05:00
Boria138 3548a48b8a chore: drop scripts version from PortProtonQt log
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 18:03:40 +05:00
Boria138 cdf36315f1 chore(pre-commit): improve meson file inclusion checks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 17:28:57 +05:00
Boria138 6b9e33e1f1 chore(build): added conf and img
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 17:24:34 +05:00
Dervart 4bcfd1ae65 fix: set frameless popup with translucent background for context menu view to eliminate color underlay 2026-05-14 11:48:24 +00:00
Dervart aeb74ea38d fix: set frameless popup with translucent background for combobox view to eliminate color underlay 2026-05-14 11:48:24 +00:00
Boria138 7b8127679c fix: stop pending PortProton launch process group
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 16:30:25 +05:00
Boria138 1364164524 chore: route keyboard shortcuts through pygame keys
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 15:38:26 +05:00
Boria138 0339906d4c dev-scripts: call extract_strings in l10n.py only with --update-all
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 10:56:14 +05:00
Codeberg TranslateandBoria138 38881b93c2 Translated using Weblate (Russian)
Currently translated at 100.0% (650 of 650 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-05-14 05:48:44 +00:00
Codeberg Translateandgallegonovato b16bd492af Translated using Weblate (Spanish)
Currently translated at 5.0% (33 of 649 strings)

Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-05-14 10:42:58 +05:00
Boria138 afcfef4d03 chore localization update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 10:23:29 +05:00
Boria138 92ba82ae63 feat: add Steam Wine download target setting
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 10:22:49 +05:00
Boria138 832eb97597 feat: add Steam game desktop and menu shortcuts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 10:06:24 +05:00
Boria138 ab2596b6e8 fix: prefer portrait Steam covers over capsules
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-14 09:25:11 +05:00
Boria138 7377ec64a8 chore: centralize desktop Exec target parsing
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-13 14:43:43 +05:00
Boria138 3503a72db0 chore: rebuild vk_gpu_info on Debian 11
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-13 11:34:27 +05:00
Boria138 803845d9e0 fix: deduplicate GPUs in vk_gpu_info output
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-13 11:25:10 +05:00
Boria138 a1b3712305 fix: restore gamepad support in PPDB file picker
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-13 10:20:50 +05:00
Boria138 2ce7eab624 fix: resume gamepad polling after focus returns
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-12 20:50:59 +05:00
Boria138 1b48890b0e chore: prepare to release
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-12 20:46:15 +05:00
Boria138 bef746596f feat: split theme family and variant selection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-12 19:07:43 +05:00
Boria138 aa55d183d6 feat: inherit theme resources via THEME_INHERITS
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-12 18:39:11 +05:00
Dervart 56f7d37841 fix: themes adjust hint bar height 2026-05-12 13:21:45 +00:00
Dervart 8060c93e9e fix: standart-light theme remove unneeded style files 2026-05-12 13:21:45 +00:00
Dervart 4b820a831c fix: standart theme new screenshots 2026-05-12 13:21:45 +00:00
Dervart 3961927998 fix: standart theme nav bar look with standart-light theme 2026-05-12 13:21:45 +00:00
Dervart 883f3df205 fix: standart theme unified detail page look with standart-light theme 2026-05-12 13:21:45 +00:00
Dervart b20c3d270f fix: classic theme remove unneeded styles and make dependable by standart-light 2026-05-12 13:21:45 +00:00
Dervart 958a61752b feat: add standart-light theme 2026-05-12 13:21:45 +00:00
Dervart 43912fd002 fix: classic-light theme, add all styles to make it independent 2026-05-12 13:21:45 +00:00
Dervart c4cfdee072 fix: classic-light theme, add screenshots and return steam badge 2026-05-12 13:21:45 +00:00
Dervart c45f9d197c fix: classic-light theme, remove unneeded icons 2026-05-12 13:21:45 +00:00
Dervart d154011b2d feat: classic-light theme 2026-05-12 13:21:45 +00:00
Boria138 e98f4353a3 chore(cli): drop legacy flatpak from compatibility tool oops
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-12 14:29:18 +05:00
Boria138 fcea437edf fix: keep legacy PortProton shortcut launch support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-12 13:41:38 +05:00
Boria138 582ed38c15 chore: pin default prefix entries at top
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-12 13:21:25 +05:00
Boria138 40e6b40bd9 fix: handle custom data for shortcut actions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-12 13:14:36 +05:00
Mikhail Tergoev 39435bacb8 add variable: PW_USE_WOW64 2026-05-11 17:26:14 +03:00
Mikhail Tergoev 6349b2dfec fix: use PROTON_LG for GamesVoice 2026-05-11 17:09:09 +03:00
Dervart e58b6aa912 fix: styles for standart theme detail page when in economy mode 2026-05-11 17:17:46 +07:00
Boria138 b8e220bea1 chore: drop search_label from settings_dialog
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-11 13:35:45 +05:00
Boria138 17e78ac592 fix(ui): eliminate excessive empty space in compact detail page
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-11 11:48:30 +05:00
Boria138 2af942e7c9 fix(ui): improve layout and alignment in compact detail page
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-11 11:39:49 +05:00
Boria138 61bceca3dd chore: hide magohud and gamescope settings if disabled
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-11 10:30:40 +05:00
Boria138 f010dd123a chore: drop Success QMessageBox from settings dialog
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-10 20:57:45 +05:00
Boria138 8b080ebc65 chore: drop disable gamepad polling on inactive
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-10 20:57:44 +05:00
Dervart ffef9b5145 fix: return unnecessary removed comment 2026-05-10 20:59:20 +07:00
Dervart 65b94b02e8 fix: set expanding policy for title frame to match cover height 2026-05-10 20:49:29 +07:00
Boria138 aac34b89f2 feat: refactor disc image logic and improve MDF conversion support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-10 14:19:35 +05:00
Simple16 65c81fa7ea Fixing the translation of PPQt settings to Russian 2026-05-10 12:42:03 +05:00
Simple16 004f9139b6 Fixing the translation of PPQt settings to Russian 2026-05-10 12:36:40 +05:00
Dervart 4091fd0382 fix: adjust hint bar 2026-05-10 13:53:59 +07:00
Dervart f85e71ea7d feat: add window resize by dragging bottom-right corner 2026-05-10 13:49:31 +07:00
Boria138 0d4a8905ce chore: drop status and progress bar
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-10 11:15:53 +05:00
Dervart 70dea7c447 fix: adjust autoSizeButtonPadding for classic theme 2026-05-10 06:00:30 +00:00
Dervart 6ffa04bfac fix: remove hardcoded Height add class to action buttons 2026-05-10 06:00:30 +00:00
Dervart 510da6b95f fix: change class for QLabel hints 2026-05-10 06:00:30 +00:00
Boria138 230003fde2 feat: add dragging support for dialogs
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-10 10:59:27 +05:00
Boria138 3231f89a9e fix: gamepad polling regression after 42b5a356f8
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-10 10:52:55 +05:00
Boria138 a67db553ec fix: always start_minimized on --resolution
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-10 10:50:02 +05:00
Boria138 154ac922b1 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-10 10:25:41 +05:00
Boria138 3322bb571c fix: keep --resolution launches minimized to tray
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-10 10:22:23 +05:00
Dervart 1674efb26d classic theme: change screenshots for detail page 2026-05-09 18:09:12 +00:00
Dervart 845f7c5714 classic theme: smaller add game and refresh buttons 2026-05-09 18:09:12 +00:00
Dervart b507ca432e themes: file manager and add game dialog fixes 2026-05-09 18:09:12 +00:00
Dervart e7185cafa9 themes: add constant AutoSizeButton padding 2026-05-09 18:09:12 +00:00
Dervart cb38008519 classic theme: adjust action buttons height 2026-05-09 18:09:12 +00:00
Dervart 53e45a2265 classic theme: detail page compact layout styles 2026-05-09 18:09:12 +00:00
Dervart 4e400f95a0 fix: change main window minimum width 2026-05-09 18:09:12 +00:00
Dervart 53f250548b fix: rename PortProton Settings tab name 2026-05-09 18:09:12 +00:00
Dervart c5cfa30dce classic theme: if detail page layout mode = compact, the back button is not created 2026-05-09 18:09:12 +00:00
Dervart 799ec4a473 fix: classic_theme exe settings QTableWidget::item height 2026-05-09 18:09:12 +00:00
Boria138 a6abc3ccb9 feat: rework and clean tray
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 22:22:16 +05:00
Boria138 a0144fc8fc fix: handle missing icon data from pefile
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 20:16:09 +05:00
Boria138 f3bdb5e74b feat: replace icoextract to own module
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 20:10:23 +05:00
Boria138 6567ac3431 fix imports
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 16:57:16 +05:00
Boria138 b3c322c6be feat(scripts): added PW_FORCE_SYSTEM_DPI
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 11:51:09 +00:00
Boria138 47cbe6b0df feat(scripts): added stop autoinstall
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 11:50:59 +00:00
Boria138 f5304de50f refactor: simplify screensaver inhibition
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 11:50:53 +00:00
Boria138 949edeb0aa fix(scripts): return dgvoodoo to var
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 11:50:44 +00:00
Boria138 1d4a65def7 feat(scripts): support external wine versions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 11:50:36 +00:00
Boria138 4fd493f961 fix: make gamemode setup init-agnostic
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 11:50:11 +00:00
Boria138 ef7ccb4755 perf(scripts): speed up Unity game detection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 11:50:00 +00:00
Boria138 2086f29d5b feat(portwine_db): added alawar games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 11:49:45 +00:00
Mikhail Tergoev f70cacef0a add copy .conf files 2026-05-09 13:57:16 +03:00
Mikhail Tergoev 4dc76ca5c5 add conf files from PP 2026-05-09 13:44:57 +03:00
Boria138 a3a4a606ad fix: handle MDF images without autorun fallback
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 10:37:55 +05:00
Boria138 208abcce1b chore: improve compact detail page layout
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 10:23:43 +05:00
Boria138 ce3962f27c fix: skip MDF conversion for ISO 9660 images
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-09 08:30:57 +05:00
Boria138 0f01ecafde fix: use plain QWidget for game library root
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-08 21:43:20 +05:00
Boria138 ce709cc078 feat: generate missing PortProton exe icons on startup
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-08 13:00:13 +05:00
Boria138 42b5a356f8 perf: reduce background activity when inactive
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-08 12:28:58 +05:00
Boria138 66be4780c8 feat: add mdf disc image launch support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-08 10:30:12 +05:00
Boria138 09293ad254 feat: add theme style inheritance
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-08 10:04:10 +05:00
Simple16 23c4b662d6 Replacing icons for the classic theme 2026-05-07 23:18:07 +05:00
Boria138 2f8d9acc7f fix: prefer classic autoinstall covers in list mode
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-07 21:24:43 +05:00
Boria138 055e4e48da feat: add tray game stop action
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-07 21:13:14 +05:00
Boria138 e22f747c79 feat: add themed detail page layout mode
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-07 11:16:26 +05:00
Boria138 30306d0021 fix: detect root filesystem for PortProton data path
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-07 11:04:33 +05:00
Boria138 eadc1c199b chore(classic): returned back button to it
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-07 10:33:26 +05:00
Dervart a8a445b712 classic_theme: add screenshots 2026-05-07 05:02:26 +00:00
Dervart f58ccc6499 classic_theme: add screenshots 2026-05-07 05:02:26 +00:00
Dervart d29153debe fix: for 2e183f9c24 hide back button in classic theme. did not pass pyright test 2026-05-07 05:02:26 +00:00
Dervart 2e1d1818e1 classic theme: edit search field min-height again 2026-05-07 05:02:26 +00:00
Dervart 261c48a3db classic theme: optional - if the theme is "classic", the back button is not created on the detail page 2026-05-07 05:02:26 +00:00
Dervart 7ad81309cf themes: add font to staus bar chunk 2026-05-07 05:02:26 +00:00
Dervart eca7cd9d11 themes: unify mangohud/gamescope settings look 2026-05-07 05:02:26 +00:00
Dervart 3384be6745 pre-commit fixes 2026-05-07 05:02:26 +00:00
Dervart 524e49175a classic theme: mangohud QGroupBox style 2026-05-07 05:02:26 +00:00
Dervart 61cfd86138 classic theme: mangohud QGroupBox style 2026-05-07 05:02:26 +00:00
Dervart 45461461fd themes: mangohud add spacing constatns 2026-05-07 05:02:26 +00:00
Dervart 4ae371e3e8 themes: add style to mangohud On/Off buttons 2026-05-07 05:02:26 +00:00
Dervart e0b9f16795 themes: add constants for columns and Vertical spacing checkbox layout 2026-05-07 05:02:26 +00:00
Dervart 7db774fd9e fix: mangohud settings center checkbox layout 2026-05-07 05:02:26 +00:00
Dervart a72a8c45ab fix: remove hardcoded setMinimumHeight parameters for elements from mangohud settings 2026-05-07 05:02:26 +00:00
Dervart 801cc9e7e5 themes: add Wine settings page spacing constant 2026-05-07 05:02:26 +00:00
Dervart af92f4aa34 fix: classic theme settings title style 2026-05-07 05:02:26 +00:00
Dervart 88e724d879 themes: add constants for PortProton settings page 2026-05-07 05:02:26 +00:00
Dervart 51eb8afda0 help ): test constants 2026-05-07 05:02:26 +00:00
Dervart 0ae9bad01d themes: add font to status bar 2026-05-07 05:02:26 +00:00
Dervart 77f703ff38 themes: add max-height to hints bar 2026-05-07 05:02:26 +00:00
Dervart d0f21ee67c fix: pre-commit 2026-05-07 05:02:26 +00:00
Dervart 6c9b5dbc76 classic theme: smaller tab names for exe settings 2026-05-07 05:02:26 +00:00
Dervart e7985e351c classic theme: smaller table and combobox style 2026-05-07 05:02:26 +00:00
Dervart e1554132a9 classic theme: smaller nav buttons 2026-05-07 05:02:26 +00:00
Dervart aee583561a classic theme: addgame and search field change background 2026-05-07 05:02:26 +00:00
Dervart b6a1a3b325 classic theme: gamecard smaller buttons 2026-05-07 05:02:26 +00:00
Boria138 6159882b7a fix: restore WebP animated cover palette background
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-06 09:21:31 +05:00
Boria138 07fa91b448 perf: optimize animated cover rendering and cleanup
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-06 09:10:57 +05:00
Boria138 40450c829e chore(agents): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-06 08:57:03 +05:00
Boria138 d4efb499ad fix: optimize file explorer image previews
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-06 08:54:17 +05:00
Boria138 4d2465a5d2 feat: add APNG cover support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-06 08:40:03 +05:00
Mikhail Tergoev cbcd3e45aa fix laptop with nvidia for Alt Linux 2026-05-05 22:15:28 +03:00
Boria138 ad43008d4c feat: support WebP, GIF and JXL covers
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-05 22:33:20 +05:00
Boria138 207504b2e1 chore localization update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-05 11:52:25 +05:00
Boria138 1e0a966e26 ci: limit code build triggers and update Fedora matrix
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-05 11:38:45 +05:00
Boria138 ff66219d51 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-04 21:33:12 +05:00
Boria138 e8bef95a38 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-04 21:24:00 +05:00
Boria138 924a50f49f chore: log PortProton scripts source
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-04 21:17:18 +05:00
Boria138 90334d3955 packaging: add scripts runtime dependencies
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-04 13:28:16 +05:00
Simple16 476cf5b34f Updating the Russian translation 2026-05-03 08:13:18 +00:00
Boria138 b3362e72cc fix: release pygame controller while game is running
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-03 09:57:19 +05:00
Boria138 261663379d chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-03 09:32:59 +05:00
Dervart cdd227be6f feat: drag frameless window with left mouse button anywhere 2026-05-02 15:36:35 +00:00
Boria138 6891e2cd2d chore(agents): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-02 19:55:19 +05:00
Boria138 66671ec8a4 Fix Steam compatibility tool launch path detection for Flatpak installs.
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-02 14:32:10 +05:00
Boria138 91a2a815ab chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-02 14:26:13 +05:00
Dervart b5039cd5ca fix: page scroll over combobox no longer blocked 2026-05-02 14:18:00 +05:00
Boria138 a81f2dbaa7 Revert "fix PW_WINE_USE on log"
This reverts commit 41908a851a.
2026-05-02 14:17:54 +05:00
Boria138 81671edff3 fix: prioritize LG wine builds on sorting
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-02 11:26:11 +05:00
Boria138 3d6ec69cf4 fix: show LG Wine aliases with resolved versions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-02 11:20:36 +05:00
Boria138 41908a851a fix PW_WINE_USE on log
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-02 10:59:11 +05:00
Boria138 d27c0ed187 fix: remove duplicate debug log variables
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-02 10:42:03 +05:00
Boria138 0ad04b5670 chore: added Fedora 44 builds and drop Fedora 41
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-01 21:34:29 +05:00
Dervart 87eea13f3b fix for commit #27a86bae07 add spacing for scrollbar on portproton_settings page 2026-05-01 21:43:16 +07:00
Dervart 15483f56c5 pre-commit fix 2026-05-01 19:42:17 +07:00
Dervart ad828a3dfc standart theme: remove background for disabled checkbox container 2026-05-01 18:59:16 +07:00
Dervart 27a86bae07 standart theme: add spacing for scrollbar on portproton_settings page 2026-05-01 18:29:58 +07:00
Dervart dd5af74e8f standart theme: remove border-radius for detail_page background 2026-05-01 18:15:58 +07:00
Dervart bb2edcd5f2 standart theme: add min-height to search field 2026-05-01 17:18:03 +07:00
Dervart 6afb39c3bd classic theme: styles for library and card backgrounds 2026-05-01 17:06:44 +07:00
Dervart 85b0c5dcb0 game_card: add left/right padding for icon and label to self.list_layout 2026-05-01 15:45:05 +07:00
Boria138 a65551a5f1 fix: show launch dependency setup status
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-01 10:40:16 +05:00
Gitea Actions 6672cfa3af chore: update steam apps list 2026-05-01T00:01:45Z 2026-05-01 00:01:46 +00:00
Boria138 2fb58fc929 fix: block PortProton data path on filesystems without symlink support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-01 00:41:18 +05:00
Boria138 1685d8e672 chore: disable tray minimize by default
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-01 00:21:11 +05:00
Boria138 9c99dc7b35 fix: align autoinstall list cover cropping
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-01 00:14:44 +05:00
Boria138 8b2c925e7b fix: restore grid card size sliders
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-05-01 00:10:00 +05:00
Boria138 15f0b076e3 chore: temporary drop EGS integration U/C
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-30 18:46:20 +05:00
Boria138 b13869cb6a fix: align autoinstall tab with library view
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-30 11:35:22 +05:00
Boria138 9e2e4585f0 fix: smooth detail page cover loading
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-30 11:13:19 +05:00
Boria138 b9af6578c3 fix: smooth tab switching between library and autoinstall
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-30 11:01:11 +05:00
Boria138 0f1e14b7da feat: mark cards with missing executables
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-29 20:54:20 +05:00
Boria138 be69bcfb46 feat: migrate to new FLATPAK_ID
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-29 20:12:11 +05:00
Boria138 5416e919fc docs: clarify CLI completion update workflow for agents
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-27 14:50:51 +05:00
Boria138 a304c9eaa1 feat: add --silent exe launch mode
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-27 14:48:37 +05:00
Boria138 b0e11679c6 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-27 14:42:01 +05:00
Boria138 3cdd1eb4f5 feat: split animations module and add new UI animation modes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-27 14:26:46 +05:00
Boria138 15faff3218 refactor(config): fully remove legacy config layer
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-26 21:21:17 +05:00
Mikhail Tergoev 17a1597dec fix wine re-upload 2026-04-26 18:20:56 +03:00
Mikhail Tergoev b5f19b932f add check portdata_path from PortProtonQt.conf 2026-04-26 18:00:41 +03:00
Mikhail Tergoev 22304ede65 Merge branch 'scripts-melon' into scripts 2026-04-26 17:28:31 +03:00
Boria138 fa2e15e3cb chore(AGENTS): drop SPDX
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-26 18:38:15 +05:00
Boria138 1561c44cd9 chore: drop screensaver inhibit from pygame
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-26 18:09:21 +05:00
Boria138 cac38d20eb fix: avoid gamepad None race in monitoring loop
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-26 17:44:40 +05:00
Boria138 7c8fbb93fb fix: always prefer current repo start.sh for env Exec
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-26 16:04:08 +05:00
Boria138 d961ffa231 refactor: rewrite gamepad input around pygame
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-26 13:21:32 +05:00
Boria138 9e9e38fec2 chore(todo): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-25 16:52:04 +05:00
Boria138 5f5c1042c9 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-25 16:50:34 +05:00
Boria138 1650302a26 fix: avoid redundant network requests with local metadata cache
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-25 16:26:00 +05:00
Boria138 0d3106aa29 fix: enable virtual keyboard slide animation globally
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-25 11:02:15 +05:00
Boria138 9f7498fd04 fix: enable Steam flows in economy mode without cover downloads
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-25 10:57:58 +05:00
Boria138 9aeeebcf82 feat(file-explorer): add folder actions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-25 10:49:27 +05:00
Boria138 911540ccfe fix: enable context menu in port data path dialog
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-24 22:47:53 +05:00
Boria138 d01ca79ce2 feat(scripts): added fix for MelonLoader
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-24 19:53:22 +05:00
Boria138 536273bc56 Revert "fix(system): add PipeWire backend detection and pw-cli node parsing"
This reverts commit 934edc09a6.
2026-04-24 17:02:40 +05:00
Boria138 cad8444dbc fix(audio): show PipeWire output candidates in playback list
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 23:30:23 +05:00
Boria138 475f3c465e fix: avoid UI freeze when bluetooth adapter is missing
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 23:16:28 +05:00
Boria138 809086fed2 chore(appimage): deploy scripts in data_dir
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 22:01:44 +05:00
Boria138 369b329eec chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 21:42:01 +05:00
Boria138 8c8b0522fc chore(appimage): install PKGBUILD optdepends in build script
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 21:32:13 +05:00
Boria138 934edc09a6 fix(system): add PipeWire backend detection and pw-cli node parsing
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 21:26:55 +05:00
Boria138 1ebababba7 chore(build): drop unused build_i586_req_dummy
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 16:45:13 +05:00
Boria138 12c2e1b187 Merge branch 'scripts' 2026-04-23 16:13:31 +05:00
Boria138 b4508ff8a6 fix: fail pre-commit on CRLF shebang in script DB files
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 16:03:37 +05:00
Boria138 c8710cb778 chore: rename classic autoinstalls covers
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 11:10:54 +05:00
Boria138 18f8ffa3e8 fix: fallback autoinstall icons in economy mode
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 10:57:43 +05:00
Boria138 0a82312d98 fix: extract PORT_DATA_PATH selector and bootstrap gamepad UI 2026-04-23 10:34:44 +05:00
Boria138 bd1208e54f chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-23 00:04:32 +05:00
Boria138 428f7eadc5 feat: allow selecting PortProton data folder
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-22 23:44:50 +05:00
Codeberg TranslateandBoria138 03ab9ad489 Translated using Weblate (Russian)
Currently translated at 100.0% (658 of 658 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-04-22 18:16:16 +00:00
Boria138 8714849b00 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-22 23:14:40 +05:00
Boria138 aff95eba9e chore(build): package scripts too
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-22 23:13:30 +05:00
Boria138 5af4f580b1 fix: support PortProton scripts in Flatpak and AppImage layouts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-22 23:08:16 +05:00
Boria138 fed5b46a0a Merge branch 'scripts' 2026-04-22 23:04:01 +05:00
Dervart a20260e421 Fix extra empty space in QComboBox dropdown by setting min-height on list items 2026-04-22 22:16:18 +07:00
Boria138 ffc0b04699 refactor(scripts): drop locale/vulkaninfo/xrandr/gamescope/glxinfo
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-22 12:42:23 +05:00
Boria138 2a7405b246 fix: rename standart badge icons and hide overflowing badges on list themes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-22 12:20:39 +05:00
Mikhail Tergoev cce0958f44 fix PW_GPU_USE disabled in settings and harden vulkan ext check 2026-04-21 22:44:12 +03:00
Mikhail Tergoev d0a84b610e drop ... 2026-04-21 22:21:53 +03:00
Boria138 392b66fce2 feat: simplify detail page in economy mode and harden UI updates
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-21 23:42:46 +05:00
Boria138 77b182797a Merge branch 'main' into scripts 2026-04-21 23:24:04 +05:00
Boria138 3aef1db0c2 fix(settings): show description tooltip only when clipped
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-21 23:23:19 +05:00
Boria138 df6c0bb46e feat(theme): add configurable card stripe/fill hover styles
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-21 23:01:09 +05:00
Boria138 db171e6d52 chore: start of make classic theme
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-21 20:26:46 +05:00
Boria138 2277cf807a chore(renovate): drop automerge
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-21 19:30:39 +05:00
Boria138 8349db3c10 chore: update code to Qt 6.11
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-21 19:22:52 +05:00
Renovate Bot 86055b86c7 fix(deps): update python dependencies 2026-04-21 14:16:31 +00:00
Mikhail Tergoev 3e895b55ad return DISABLE_EDIT_DB_LIST 2026-04-21 12:03:42 +03:00
Mikhail Tergoev 70c011632e fix update ppdb file 2026-04-21 11:38:09 +03:00
Mikhail Tergoev 598194c4a2 add PW_GPU_USE=disabled for user.conf 2026-04-21 11:16:43 +03:00
Mikhail Tergoev d70a3eeae4 rename start-stop portwine to portproton 2026-04-21 04:07:06 +03:00
Mikhail Tergoev 272a32895b yad no more! 2026-04-21 03:49:40 +03:00
Mikhail Tergoev baad92d97c move update gamescope args to pw_init_db 2026-04-21 03:11:12 +03:00
Mikhail Tergoev e50ca1f0da drop yad from gui_proton_downloader 2026-04-21 02:18:22 +03:00
Mikhail Tergoev 4a0d2d4ab6 add PORT_IMG_PATH variable 2026-04-21 01:55:47 +03:00
Mikhail Tergoev ad0af96600 add notify svg 2026-04-21 01:48:41 +03:00
Mikhail Tergoev cf9243e67e fix error masages 2026-04-21 01:45:23 +03:00
Mikhail Tergoev b2705c4ed7 drop legacy variables 2026-04-21 01:12:37 +03:00
Mikhail Tergoev 069cb781a6 closer interaction with ppqt 2026-04-21 01:11:28 +03:00
Mikhail Tergoev a86dee1008 replace PW_USER_TEMP to PORT_WINE_TMP_PATH 2026-04-21 01:09:30 +03:00
Mikhail Tergoev 4f003b6108 drop find and update ppdb functions 2026-04-21 00:21:26 +03:00
Mikhail Tergoev c8badbcf65 move base functions to cli case 2026-04-21 00:05:33 +03:00
Mikhail Tergoev f7a33d64ce global cleanup of scripts again 2026-04-20 23:42:18 +03:00
Mikhail Tergoev 707fd261d5 drop legacy emulators scripts 2026-04-20 22:39:19 +03:00
Renovate Bot 2a9f67ec75 chore(deps): update archlinux:base-devel docker digest to c528201 2026-04-20 18:09:37 +00:00
Renovate Bot 8ea369a20a chore(deps): update ghcr.io/renovatebot/renovate:latest docker digest to 2ccc5b1 2026-04-20 05:35:40 +00:00
Renovate Bot 7de1efaf97 chore(config): migrate config renovate.json 2026-04-20 05:24:06 +00:00
Boria138 9f63dd4925 chore: try to return renovate
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-20 10:17:23 +05:00
Boria138 88aa056a18 Merge branch 'main' into scripts 2026-04-20 09:50:11 +05:00
Boria138 b606965d9f chore: migrate links and CI refs to Linux-Gaming repo
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-20 09:48:17 +05:00
Boria138 3739d1f7e0 chore: migrate custom_data to Linux-Gaming/PortProtonQt-Custom-Metadata repo
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-19 20:26:28 +05:00
Boria138 c02a64f5bf fix: stop games via PortProton CLI instead of force kill
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-19 18:08:06 +05:00
Boria138 cd7bf7ba1e feat: enforce LG dist versions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-19 17:13:48 +05:00
Boria138 8e964823f9 refactor: unify scripts path resolution and remove duplicate helpers
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-19 17:09:25 +05:00
Boria138 0e80f60ac7 fix: resolve autoinstall dir from start.sh
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-19 16:53:03 +05:00
Mikhail Tergoev f4cca57a1a add CLI: --stop 2026-04-19 13:43:32 +03:00
Mikhail Tergoev bb64c6d2cd again, and again global cleanup of scripts 2026-04-19 13:33:00 +03:00
Mikhail Tergoev 2774c67b7f global cleanup of scripts again 2026-04-19 11:14:58 +03:00
Mikhail Tergoev 2420c53c25 firt work without PP 2026-04-19 11:00:27 +03:00
Boria138 8e6a338575 feat: resolve PortProton scripts from repo or system paths
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-19 12:13:38 +05:00
Mikhail Tergoev 2999eeeb97 second global cleanup of scripts 2026-04-18 20:43:28 +03:00
Mikhail Tergoev 8543698099 first global cleanup of scripts 2026-04-18 19:17:21 +03:00
Mikhail Tergoev c4081f1933 add scripts from PortWINE (PortProton) 2026-04-18 16:58:06 +03:00
Boria138 d76f06d0b6 fix: use Annotated DBus signatures in bluetooth agent
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-17 15:36:08 +05:00
Boria138 945b8ca24e fix: drop dbus-fast annotations from bluetooth agent
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-17 14:56:46 +05:00
Boria138 300c08626b bump to 0.1.12
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-17 12:52:08 +05:00
Boria138 c573f45337 chore localization update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-16 18:30:37 +05:00
Boria138 4321d215ea chore(settings): drop PW_USE_SAREK_ASYNC
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-16 18:29:55 +05:00
Boria138 662f0bf494 fix(polkit): allow ppqtos child nmcli for VPN import
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-16 14:01:02 +05:00
Boria138 75f216ca6c chore(agents): added sign and license rule
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-16 12:21:48 +05:00
Boria138 c462925477 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-16 12:09:57 +05:00
Boria138 2a34b08a0a chore(system): drop scan from Wi-Fi
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-16 11:47:10 +05:00
Boria138 33fd22af23 chore(system): replace Wi-Fi show hide text to icon
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-16 11:42:57 +05:00
Boria138 a7d43068ed fix(system): migrate to dbus and drop bluetoothctl
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-16 11:34:43 +05:00
Boria138 d522ece132 fix(system): fix bluetooth with passkey
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-16 09:38:10 +05:00
Codeberg TranslateandBoria138 dab39e2821 Translated using Weblate (Russian)
Currently translated at 100.0% (662 of 662 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-04-15 13:31:23 +00:00
Codeberg TranslateandBoria138 d7121db730 Translated using Weblate (Russian)
Currently translated at 100.0% (662 of 662 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-04-15 13:27:49 +00:00
Boria138 4a44d95055 I forget update po oops
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-15 18:25:53 +05:00
Boria138 ae084974dd refactor: trim system i18n keys and simplify UI labels
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-15 18:24:17 +05:00
Codeberg TranslateandBoria138 1cb7d08479 Translated using Weblate (Russian)
Currently translated at 99.3% (660 of 664 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-04-15 13:17:26 +00:00
Boria138 980fb964b7 refactor: reduce i18n scope for system tab and managers
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-15 18:00:22 +05:00
Boria138 7aa3b04ff4 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-15 13:58:50 +05:00
Boria138 68829bc00b chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-15 13:34:36 +05:00
Boria138 71a8ebd89a feat: added system tab with wifi and bluetooth
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-15 08:31:20 +00:00
Boria138 b17575dece fix: open launch file via IPC in existing app instance
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-13 10:29:48 +05:00
Boria138 60135211e5 feat: fix stop icon after wine download during launch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-12 17:37:31 +05:00
Boria138 082be63f7d fix: parse MangoHud and Gamescope toggles from PPDB 2026-04-12 13:57:40 +05:00
Boria138 fc5572a262 fix: prevent badge overlay on app startup
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-09 22:51:11 +05:00
Boria138 ab67e9bf4e fix: allow hidden badge_view_mode from ui config
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-09 22:41:28 +05:00
Codeberg TranslateandBoria138 a7ae3b834f Translated using Weblate (Russian)
Currently translated at 100.0% (619 of 619 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-04-09 16:27:09 +00:00
Boria138 00b0c0fdfc feat: Add hidden badge mode
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-09 21:24:24 +05:00
Boria138 cf46e3b67f feat: Add Steam compat tool toggle to settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-09 21:13:46 +05:00
Boria138 044abe9543 fix: reorder MangoHud Actions section above Presets
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-09 18:27:20 +05:00
Boria138 07da5368b2 chore(build): added dummy dependency linker for ALT Linux
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-09 13:01:14 +05:00
Codeberg TranslateandBoria138 f40b93b6ed Translated using Weblate (Russian)
Currently translated at 100.0% (617 of 617 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-04-08 15:47:09 +00:00
Boria138 4db56869d1 fix: avoid /dev/stdout in autoinstall log
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-08 20:43:33 +05:00
Boria138 0e782b3463 feat: refine MangoHud preset sections
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-08 20:36:55 +05:00
Boria138 9bc1760107 fix: enlarge and center compact badge icons at 1.5x
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-08 20:10:49 +05:00
Boria138 ce6a28c2d9 fix: use anticheat slug for AWACY links and cache refresh
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-08 17:49:35 +05:00
Boria138 a8dfc19b04 chore: drop default WINE button in wine settings tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-07 09:29:52 +05:00
Boria138 8e87c2183c Revert "fix: correct gamepad face button mapping"
This reverts commit 5beec85ee8.
2026-04-07 09:20:28 +05:00
Boria138 5070f1fdc7 fix: refresh library grid after game card deletion
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-07 09:17:27 +05:00
Boria138 5beec85ee8 fix: correct gamepad face button mapping
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-06 18:52:22 +05:00
Boria138 a964b2882e fix: restore library loading after fast cli launch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-05 18:07:25 +05:00
Boria138 14c5b0406a fix: detect bluetooth gamepad scroll axis
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-04 20:34:40 +05:00
Boria138 0adc218908 fix: update GameCard Property declarations for PySide6
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-04 09:47:37 +05:00
Boria138 ccdf79f89f fix(settings): block PW_USE_SAREK_ASYNC for Steam games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-03 14:38:54 +05:00
Boria138 650653399b fix(settings): block D3D Extras and return EAC for Steam games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-03 10:16:31 +05:00
Boria138 ad565ea3e5 fix(settings): block Galium Nine for Steam games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-02 20:03:47 +05:00
Boria138 771fc8990a fix(settings): block EAC and BE runtime for Steam games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-02 19:54:40 +05:00
Boria138 e8cc1f919e fix: remove runtime ExeSettingsDialog cast in Gamescope settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-02 19:06:02 +05:00
Boria138 9a6a83db23 fix: remove runtime ExeSettingsDialog cast in MangoHud settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-02 19:03:56 +05:00
Boria138 4f823d4ebc refactor: move MangoHud layout section below switches
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-02 18:54:37 +05:00
Boria138 28d3333269 fix: preserve toggle settings order in dialog
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-02 18:46:48 +05:00
Boria138 4bce23b83c chore(locale): add localized comments to desktop file
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-02 12:26:07 +05:00
Codeberg TranslateandBoria138 471a9c1099 Translated using Weblate (Russian)
Currently translated at 100.0% (621 of 621 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-04-02 05:41:04 +00:00
Boria138 a291c54e14 feat: add toggle buttons for MangoHud and Gamescope in settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-02 10:37:50 +05:00
Boria138 53bc799e4f refactor: reorder toggle settings in logical groups
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-02 09:17:25 +05:00
Boria138 b48fbd3383 fix: normalize Gamescope args before change detection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-02 00:07:55 +05:00
Boria138 91b434a5d9 chore(data): drop unneded now linux-gaming_topics
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-04-01 11:26:53 +05:00
Gitea Actions ac1ed68b86 chore: update steam apps list 2026-04-01T00:01:47Z 2026-04-01 00:01:48 +00:00
Boria138 50f1fbd1d6 fix: remove deprecated AST node usage in theme checks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-31 20:38:50 +05:00
Boria138 fa93eacd3a rework blocked check style
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-31 20:34:10 +05:00
Boria138 1f72d6edb6 Revert "fix(theme-security): harden custom theme loading and validation"
This reverts commit 605b80850f.
2026-03-31 19:05:52 +05:00
Boria138 605b80850f fix(theme-security): harden custom theme loading and validation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-30 21:52:01 +05:00
Boria138 78d04a7a5f Reapply "fix: improve theme fallbacks for preloader and custom themes"
This reverts commit 02ab53c996.
2026-03-30 21:10:55 +05:00
Boria138 007713f1be chore: drop renovate i'm too lazy for fix rate limit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-30 10:23:41 +05:00
Boria138 a28465fd7f fix: simplify file URI handling in CLI path normalization
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-30 10:13:41 +05:00
Boria138 21696eea9b feat(settings): add custom preset buttons for Gamescope
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-29 19:06:02 +05:00
Boria138 4d732c8f22 fix(cli): support file:// URIs from pcmanfm for launch files
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-29 19:02:23 +05:00
Boria138 8cee173ed2 feat: add remove Steam compat tool CLI flag 2026-03-29 16:15:33 +05:00
Boria138 02ab53c996 Revert "fix: improve theme fallbacks for preloader and custom themes"
This reverts commit 04ca284807.
2026-03-29 15:27:06 +05:00
Boria138 04ca284807 fix: improve theme fallbacks for preloader and custom themes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-29 15:20:55 +05:00
Boria138 c12e1996cb feat(cli): add reinstall option to shell completions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 23:51:38 +05:00
Boria138 76e922a431 feat(cli): added --reinstall-steam-compat-tool
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 23:45:40 +05:00
Codeberg TranslateandBoria138 51e903e961 Translated using Weblate (Russian)
Currently translated at 100.0% (615 of 615 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
Translation: PortProtonQt/PortProtonQt
2026-03-28 17:34:27 +00:00
Codeberg TranslateandBoria138 052a804c14 Translated using Weblate (Spanish)
Currently translated at 1.3% (8 of 615 strings)

Co-authored-by: Boria138 <boria138@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
Translation: PortProtonQt/PortProtonQt
2026-03-28 17:34:27 +00:00
Boria138 f2a2013ba7 chore: clean MangoHud preview warnings ignore
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 20:16:55 +05:00
Boria138 0f394b8974 Translated using Weblate (Russian)
Currently translated at 100.0% (617 of 617 strings)

Translation: PortProtonQt/PortProtonQt
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
2026-03-28 14:42:47 +00:00
Boria138 a1817abe65 chore(localization): unify
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 19:42:25 +05:00
Boria138 1a48635582 chore(localization): simplify Mangohud preview error text
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 19:32:22 +05:00
Boria138 183dbb8253 Translated using Weblate (Russian)
Currently translated at 100.0% (614 of 614 strings)

Translation: PortProtonQt/PortProtonQt
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
2026-03-28 14:27:45 +00:00
Boria138 d2f21aa585 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 19:27:13 +05:00
Boria138 eb6e4dcb40 feat: add default WINE button in wine settings tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 19:25:56 +05:00
Boria138 a1f2913e88 feat(mangohud): added preview
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 17:45:51 +05:00
Boria138 841da7eed0 feat(settings): block gstreamer/runtime/dgvoodoo2 for Steam games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 12:33:51 +05:00
Boria138 bb1f3ba1ee chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 10:53:58 +05:00
Boria138 a3b9e8b5e1 fix: make virtual keyboard width responsive
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-28 10:49:58 +05:00
Boria138 c7f3ee79bb fix(input_manager): resolve combobox tab-switch regression from 169ff00 2026-03-27 21:41:32 +05:00
Boria138 2aab2b0286 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-27 20:56:39 +05:00
Boria138 ca3fd2947a refactor: remove screenshot captions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-27 20:54:56 +05:00
Boria138 627d708e81 fix: keep PPQt settings tab active after save
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-27 20:04:12 +05:00
Boria138 513c9872da Revert "fix: drop from Steam LD_LIBRARY_PATH only curl"
This reverts commit 26aa44c0d4.
2026-03-27 12:44:27 +05:00
Boria138 26aa44c0d4 fix: drop from Steam LD_LIBRARY_PATH only curl
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-26 21:18:15 +05:00
Boria138 53664b2ab7 fix: lock 3D Api field in Steam game settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-25 16:15:45 +05:00
Boria138 6e07e56741 Translated using Weblate (Russian)
Currently translated at 100.0% (612 of 612 strings)

Translation: PortProtonQt/PortProtonQt
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
2026-03-25 06:57:34 +00:00
Boria138 dd22838e25 chore: drop PPQT_GUI
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-24 20:49:20 +05:00
Boria138 fa721ad84c fix(locales): update only entries
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-24 10:53:27 +05:00
Boria138 8a1a1582a2 fix: lock prefix field in Steam game settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-24 10:45:12 +05:00
Boria138 4a2649a33d chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-24 10:41:36 +05:00
Boria138 cd39183e47 fix: replace Steam Add Game button with Open Game Folder
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-24 10:39:16 +05:00
Boria138 de004667d4 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-23 23:53:36 +05:00
Boria138 8c0f8bb657 feat: add MangoHud system config export button
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-23 23:53:04 +05:00
Boria138 ae8c264da7 fix: dont unset ld preload
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-23 20:51:28 +05:00
Boria138 b1f5b001b2 chore: Prefer 7zz over 7z when extracting ISO files.
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-23 19:33:16 +05:00
Boria138 cf80c92a5d fix: replace udisks ISO flow with pure 7z extraction
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-23 19:25:46 +05:00
Boria138 2c1cd96e43 chore(build): added udisks2 dep for ISO mount
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-23 18:33:55 +05:00
Boria138 ca0293474b chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-23 18:23:07 +05:00
Boria138 3408d71003 feat: add ISO launch support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-23 18:21:26 +05:00
Boria138 4a0378686d fix: start from steam
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-23 12:53:39 +05:00
Boria138 30ddac4cab chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-23 10:56:49 +05:00
Boria138 cb2c3baf10 fix: resolve .desktop lookup via custom_data metadata 2026-03-23 10:35:53 +05:00
Boria138 bf65f451d1 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 22:27:54 +05:00
Boria138 7a02b6b666 fix: resolve stats by exact exe path and clean on delete
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 22:27:48 +05:00
Boria138 0b5013df2b chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 21:08:00 +05:00
Boria138 2e7a977fec fix: refresh tray submenus on tray menu open
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 21:06:49 +05:00
Boria138 dc0a402113 fix: sync autostart checkbox with desktop file presence
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 17:13:03 +05:00
Boria138 d53a5f7ce9 fix: prioritize custom/steam/sgdb/exe cover on CLI launch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 16:56:19 +05:00
Boria138 b0b1bf2fcb chore(localization): compile locales after extract
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 16:32:44 +05:00
Boria138 7de71798b9 chore(build): fix locales generate
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 16:18:02 +05:00
Simple16 39e92cf437 Translated using Weblate (Russian)
Currently translated at 100.0% (609 of 609 strings)

Translation: PortProtonQt/PortProtonQt
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
2026-03-22 09:54:54 +00:00
Boria138 d7071c84e7 Translated using Weblate (Spanish)
Currently translated at 0.6% (4 of 609 strings)

Translation: PortProtonQt/PortProtonQt
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
2026-03-22 09:54:54 +00:00
Boria138 4dcd845978 fix: use direct venv binary in xdg autostart Exec
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 14:54:29 +05:00
Boria138 4dcf257a38 i18n: reduce Weblate conflicts in l10n updates
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 14:24:51 +05:00
Boria138 9782de831b Translated using Weblate (Russian)
Currently translated at 100.0% (609 of 609 strings)

Translation: PortProtonQt/PortProtonQt
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/ru/
2026-03-22 09:08:17 +00:00
Boria138 4d367abcc5 chore(localization): drop mo for avoid weblate conflict
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 14:02:44 +05:00
Boria138 ced8e6a2b9 chore(localization): fix dev script
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 13:51:12 +05:00
Boria138 72821f1ac6 chore(localization): update pot
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-22 09:56:33 +05:00
Boria138 a46959f7db Revert "chore(localization): add initial es AI translate for test Codeberg sync"
This reverts commit 813275a049.
2026-03-22 09:55:19 +05:00
Boria138 31f28eba1e fix: route autoinstall process output to stdout
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-21 20:47:25 +05:00
Boria138 33f26f9559 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-21 19:23:35 +05:00
Boria138 28884e56c1 feat: add xdg autostart and start-in-tray settings 2026-03-21 19:18:17 +05:00
Boria138 9bdbbb6b30 fix: handle clicked bool in run-after exe selector 2026-03-21 12:58:20 +05:00
Boria138 24eb968371 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-21 12:19:14 +05:00
Boria138 89090409a4 feat: add PW_RUN_AFTER_EXE picker in exe settings 2026-03-21 12:17:04 +05:00
Boria138 813275a049 chore(localization): add initial es AI translate for test Codeberg sync
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-20 22:16:42 +05:00
Boria138 674bcec476 build: add Codeberg Translate url to metainfo
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-20 14:08:39 +05:00
Boria138 4210f43130 docs: add Codeberg Translate widget and update localization guide
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-20 14:04:53 +05:00
Boria138 7518e948e7 chore(localization): fix weblate checks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-20 13:49:45 +05:00
Boria138 1543b3b42b chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-20 13:39:34 +05:00
Boria138 5a9bd455e1 chore(tranlations): drop unneded tranlate
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-20 13:38:44 +05:00
Boria138 239ace42c9 Translated using Weblate (Russian)
Currently translated at 100.0% (605 of 605 strings)

Translation: PotrtProtonQt/PortProtonQt
Translate-URL: https://translate.codeberg.org/projects/potrtprotonqt/portprotonqt/ru/
2026-03-20 08:30:57 +00:00
Boria138 6c43289c85 Translated using Weblate (Spanish)
Currently translated at 0.3% (2 of 605 strings)

Translation: PortProtonQt/PortProtonQt
Translate-URL: https://translate.codeberg.org/projects/portprotonqt/portprotonqt/es/
2026-03-20 07:27:08 +00:00
Simple16 ca32ce4e25 Boria138 small fib about translations. Updating the translation 2026-03-19 17:42:48 +00:00
Boria138 3fbabc0267 docs: add fish shell instruction to README
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-19 22:37:41 +05:00
Boria138 ef5a302ff5 fix: use custom_data cover for CLI launched games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-19 20:12:34 +05:00
Boria138 d05665be15 fix: improve dialog and detail page controller navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-19 20:10:06 +05:00
Boria138 b51174c172 fix: use saved Exec line for edited shortcut actions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-19 19:56:43 +05:00
Boria138 169ff005ce feat(detail_page): added add game and edit shortcut
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-19 19:53:42 +05:00
Boria138 6792abdac6 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-19 18:51:36 +05:00
Boria138 f2f11b608e feat: add compact badge mode with hover accordion text 2026-03-19 18:47:31 +05:00
Boria138 2fd91b9556 fix: skip cover copy when source and destination match
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-19 18:23:52 +05:00
Boria138 40b50de937 chore: use horizontal layout for checkbox in add game dialog
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-19 15:58:35 +05:00
Boria138 f39267e979 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-19 15:38:55 +05:00
Boria138 710c876374 feat: add shortcut toggles to add game dialog with state sync 2026-03-19 15:36:34 +05:00
Boria138 d00d789246 perf: reduce git requests and stream autoinstall asset updates
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-19 14:49:14 +05:00
Boria138 edcdb7cef4 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-18 23:45:08 +05:00
Boria138 03cf25492f fix: disable accidental wheel scrolling on comboboxes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-18 23:43:32 +05:00
Boria138 9f84d2e9c3 fix: unify desktop entry generation and enforce 0755 perms
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-18 23:34:24 +05:00
Boria138 38c162f38a fix: run downloader callbacks in Qt thread to avoid cross-thread UI
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-18 23:25:06 +05:00
Boria138 41046f3439 chore(downloader): added user-agent
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-18 22:27:20 +05:00
Boria138 5428cd311b chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-18 22:01:31 +05:00
Boria138 21580d76ba feat: use Yandex as primary server for internet connectivity check
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-18 21:59:50 +05:00
Boria138 174e439509 fix: skip SGDB and SteamCDN covers when custom_data exists
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-18 16:58:26 +05:00
Boria138 b7f8e1edf2 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-18 16:50:22 +05:00
Boria138 b52785791a fix: constrain theme tab gamepad focus and add visible focus styles 2026-03-18 16:49:09 +05:00
Boria138 b280dc1f54 fix: reduce SGDB timeout to avoid startup delays 2026-03-17 14:42:24 +05:00
Boria138 1775911416 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-16 14:19:04 +05:00
Boria138 9f47dafb24 feat: normalize wine tool prefix to uppercase before cli launch 2026-03-15 21:36:53 +05:00
Boria138 0996b90ba3 fix: normalize PW_PREFIX_NAME and prefix directory names
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-15 18:13:40 +05:00
Renovate Bot 07e3850bce chore(deps): update archlinux:base-devel docker digest to b3c1ff7 2026-03-15 11:43:14 +00:00
Simple16 4536ce09bd Updating the translation of the Gamescope settings 2026-03-15 07:58:12 +05:00
Simple16 4d61cb3316 merge upstream 2026-03-14 19:02:01 +00:00
Boria138 c40caeae5c feat(gamescope): rework layout
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-14 17:48:27 +05:00
Boria138 74085a2d0b feat: clean user.conf CLI
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-14 17:32:26 +05:00
Simple16 3d55994962 Updating the translation of the MangoHud and Gamescope settings 2026-03-14 10:09:48 +00:00
Simple16 769c84edbd Updating the translation of the main Gamescope settings 2026-03-14 10:09:48 +00:00
Simple16 4ec1174bcd Updating the translation of the MangoHud setting №2 2026-03-14 10:09:48 +00:00
Simple16 6fe2fe08ba Updating the translation of the MangoHud settings №1 2026-03-14 10:09:48 +00:00
Simple16 cda1340293 Updating the translation of the MangoHud and Gamescope settings 2026-03-14 14:55:41 +05:00
Simple16 773569773e Updating the translation of the main Gamescope settings 2026-03-14 13:13:33 +05:00
Simple16 f9cd038aa1 Updating the translation of the MangoHud setting №2 2026-03-14 12:11:49 +05:00
Boria138 c0bae645e4 feat: hide unsupported gamescope options and handle aliases
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-14 11:02:35 +05:00
Boria138 6c63815ec3 feat: force PW_GAMESCOPE and PW_MANGOHUD on tab save
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-14 10:46:03 +05:00
Simple16 5c006a5b7e Updating the translation of the MangoHud settings №1 2026-03-14 09:21:26 +05:00
Boria138 c6a9031ee2 Reapply "fix: use short gamescope args for PortProton compatibility"
This reverts commit 3f6a4f538d.
2026-03-13 15:43:15 +05:00
Boria138 91a3cb4c26 refactor: switch user.conf helpers to PortProton CLI
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-13 14:14:52 +05:00
Boria138 c93f10c2a2 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-13 14:02:20 +05:00
Boria138 ab055f3708 fix: wrap control hints in small window sizes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-13 14:00:48 +05:00
Boria138 823fff912e chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-13 13:57:16 +05:00
Boria138 100556e1d0 fix: use two-column layout for prefix backup action buttons
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-13 13:53:50 +05:00
Dervart d639283db5 fix scroll for exe settings 2026-03-12 09:59:24 +00:00
Dervart 7f4d06f825 fix end of file 2026-03-12 09:59:24 +00:00
Dervart b4baf8e230 Unified styles for comboboxes, checkboxes, input fields, scrollbars, and titlebars. 2026-03-12 09:59:24 +00:00
Boria138 3f6a4f538d Revert "fix: use short gamescope args for PortProton compatibility"
This reverts commit 0ac7959031.
2026-03-12 10:40:45 +05:00
Boria138 0ac7959031 fix: use short gamescope args for PortProton compatibility
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-12 10:06:08 +05:00
Boria138 3397e633c6 chore(completion): drop .bash ext
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-12 09:53:04 +05:00
Boria138 9abeddfb51 chore(compltion): added fish and zsh
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-12 00:22:20 +05:00
Boria138 754fc039f9 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 23:36:13 +05:00
Boria138 0b9b2f6e48 feat(gamescope): added gamepad navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 23:35:11 +05:00
Boria138 b8fd7aff1b refactor: unify toggle grid layout for mangohud and gamescope
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 23:22:14 +05:00
Boria138 92f84d9c9c chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 23:19:33 +05:00
Boria138 228db2bbf1 refactor: centralize settings context menu and tooltip handling
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 23:17:36 +05:00
Boria138 5277f88b80 revert: remove gamescope screen-size validation on parse
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 23:04:52 +05:00
Boria138 f0de078dcd ui: move gamescope presets and toggles above resolution
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 23:02:55 +05:00
Boria138 ff20458ffb fix: drop invalid gamescope short resolution args
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 22:58:43 +05:00
Dervart 22956d7140 add styles for editable QComboBox 2026-03-11 15:33:39 +00:00
Dervart f31c8409cc remove background in checkbox container 2026-03-11 15:33:39 +00:00
Boria138 dc2eaa71ba feat(gamescope): added initial
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 20:33:17 +05:00
Boria138 e66dffeef0 feat: added create pfx
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 17:42:20 +05:00
Boria138 eac9583252 refactor: extract MangoHud settings into separate dialog module
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 10:10:18 +05:00
Boria138 39df4d7946 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 09:54:16 +05:00
Boria138 9ffb563280 fix: keep focused input visible when virtual keyboard opens 2026-03-11 09:46:08 +05:00
Boria138 c0c4eea813 fix(mangohud): fix gamepad navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 09:40:58 +05:00
Boria138 27ea663f7d chore(mangohud): added Default value placeholder
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-11 09:17:21 +05:00
Boria138 ca851735e6 docs: clarify and align AGENTS.md policy rules
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-10 23:59:01 +05:00
Boria138 ac1270a7fd refactor: move hardcoded styles to theme files
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-10 23:33:22 +05:00
Boria138 8e76ee8789 chore(mangohud): drop translate from MANGOHUD_TOGGLE_SPECS
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-10 23:05:02 +05:00
Boria138 f11f7d594b chore: rework custom tooltip
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-10 23:02:33 +05:00
Boria138 2014a89c27 feat(mangohud): added gpu_list
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-10 22:38:46 +05:00
Boria138 4ae38a1f55 chore(mangohud): use gamepad tooltip insted system tooltip
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-10 20:58:57 +05:00
Boria138 a3853ef1a6 feat(mangohud): added short description to button
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-10 20:21:29 +05:00
Boria138 f3ac329e54 fix(mangohud): fix gamepad navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-10 20:06:27 +05:00
Boria138 94f2c6df2e chore(mangohud): fix preset Layout
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-10 11:42:52 +05:00
Dervart 7fccaa4b0d Styles for mangohud settings 2026-03-09 20:56:28 +07:00
Boria138 9c1a80add5 feat(mangohud): added background_alpha and round_corners
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-09 13:47:39 +05:00
Boria138 6b859f6bdf fix MANGOHUD_VALUE_SPECS
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-09 13:19:03 +05:00
Boria138 aacabd81d9 chore(mangohud): rework layout
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-09 13:15:30 +05:00
Simple16 b1dc9d87dd Updating the translation of the main MangoHud settings. FIX 2026-03-09 09:38:49 +05:00
Simple16 63b8d26b1c Updating the translation of the main MangoHud settings 2026-03-09 09:21:53 +05:00
Boria138 858314a21c feat(mangohud): added network
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-08 23:45:16 +05:00
Boria138 622baaa31c feat(mangohud): added device_battery
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-08 23:09:33 +05:00
Boria138 2e93af677c feat(mangohud): added gamepad navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-08 22:47:18 +05:00
Boria138 f55701b963 chore(mangohud): replace QPlainTextEdit to QLineEdit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-08 22:21:47 +05:00
Boria138 188f2925ba chor(mangohud): hide font size
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-08 22:18:30 +05:00
Boria138 ce334fb232 chore(mangohud): added custom preset system
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-08 22:04:01 +05:00
Boria138 f4eca46112 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-08 21:45:54 +05:00
Boria138 811083748c chore: update screenshots
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-08 21:44:06 +05:00
Dervart 6bd8593300 Increased the width of setting titles 2026-03-08 23:13:38 +07:00
Dervart aa629e79a2 Separated checkbox and combobox classes for settings titles 2026-03-08 23:12:37 +07:00
Dervart 3508248e53 Added font styles for tab titles in get_wine & winetricks 2026-03-08 15:49:14 +00:00
Dervart abe8ee0575 Removed underline in block title. 2026-03-08 15:49:14 +00:00
Dervart d0e9d721d1 Increased the width of the combobox in the game settings as requested by @Simple16 2026-03-08 15:49:14 +00:00
Dervart 343ed115a1 styles for PortProton settings tab 2026-03-08 15:49:14 +00:00
Boria138 9f78196c8d feat: added initial mangohud settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-08 19:49:38 +05:00
Renovate Bot bc4748ca56 chore(deps): update archlinux:base-devel docker digest to a4e49d3 2026-03-08 10:12:10 +00:00
Renovate Bot 5718584809 chore(deps): update https://gitea.com/actions/setup-node digest to 53b8394 2026-03-08 00:01:20 +00:00
Simple16 1fb4ced62f Update of Russian localization 2026-03-07 20:49:14 +05:00
Boria138 98cfa3e50e chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-07 20:21:02 +05:00
Boria138 006b6a6dd1 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-07 20:16:30 +05:00
Boria138 8ab3b796f3 fix: translate QMessageBox Yes/No buttons
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-07 20:16:29 +05:00
Boria138 3730fa1183 refactor: Unify cache management with CacheManager
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-07 16:43:42 +05:00
Boria138 d6d415d184 feat: Add --resolution CLI argument for custom window size
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-07 16:07:05 +05:00
Boria138 af90c5fdff chore(todo): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-07 16:06:21 +05:00
Boria138 e8e3fefbf0 fix: Correct locale links in localization guide
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-07 15:39:35 +05:00
Simple16 9c29a66314 Update of English and Russian strings. Update of Russian localization 2026-03-06 22:27:18 +05:00
Simple16 c26dd358e5 Update of English and Russian strings. Update of Russian localization 2026-03-06 21:34:21 +05:00
Simple16 ad469c6755 Update locale 2026-03-06 21:06:17 +05:00
Boria138 fad86df55f fix: add setuptools package discovery config for uv build
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-06 20:22:56 +05:00
Boria138 20ebb51f9a fix: restore project.scripts entry point for uv installation 2026-03-06 19:45:40 +05:00
Boria138 85b7f6a70c chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-06 12:29:06 +05:00
Boria138 7542be7bfd chore: simplify pyproject.toml for uv-only usage
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-06 12:25:39 +05:00
Boria138 9dce0bc2ef revert broken hook
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-05 13:44:34 +05:00
Boria138 d813be7e29 fix: added exclude for pre-commit hooks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-05 13:32:25 +05:00
Boria138 b460fd507e chore(localization): sync russian and english strings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-05 13:20:22 +05:00
Boria138 b377759db4 chore localization update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-05 12:44:06 +05:00
Boria138 ba3233dabf chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-05 11:49:39 +05:00
Boria138 aeaef9b6d7 feat: add cancel button to ProtonManager dialog
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-05 11:47:41 +05:00
Boria138 08808cf975 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-04 23:42:30 +05:00
Boria138 b23a83c96d feat: lazy load autoinstall
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-04 23:31:57 +05:00
Boria138 69e38452bf feat: batch download for autoinstall assets with rate limiting 2026-03-04 22:34:37 +05:00
Boria138 dd66585c52 fix: reduce CPU load and memory leak on card resize
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-04 20:38:38 +05:00
Boria138 b8e0359367 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-04 13:31:40 +05:00
Boria138 8d264ac743 fix: avoid library hang and reduce asset requests 2026-03-04 13:07:11 +05:00
Boria138 732f5e5f60 style: update PortProton Settings tab layout 2026-03-03 18:18:32 +05:00
Boria138 2b735aadbd perf: incremental library render 2026-03-03 13:41:02 +05:00
Boria138 0cef434c2e chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-03 12:44:12 +05:00
Boria138 757bd34885 fix: Steam CEF API detection and restart-free add/remove 2026-03-03 12:07:51 +05:00
Boria138 da79f07780 fix: fix get anticheat status for Steam Games
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-02 14:32:42 +05:00
Boria138 55d5b097d9 debug: add SGDB cache logging and reduce URL log verbosity 2026-03-02 13:39:38 +05:00
Boria138 650844c704 fix: check local cache before SteamCDN request to prevent redundant network calls
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-02 13:12:18 +05:00
Boria138 c4e3e30bf7 fix: remove blocking SGDB and URL check calls to prevent UI freeze 2026-03-02 00:56:48 +05:00
Boria138 97d6d54c93 fix: detect VDF format by first byte to avoid load errors 2026-03-02 00:56:42 +05:00
Boria138 be09e152e4 refactor: split steam_api.py into package with separate modules
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-03-02 00:56:36 +05:00
Renovate Bot 54df09f94a chore(deps): update archlinux:base-devel docker digest to f7227ef 2026-03-01 05:40:01 +00:00
Gitea Actions eb39264578 chore: update steam apps list 2026-03-01T00:01:59Z 2026-03-01 00:01:59 +00:00
Simple16 f9ea5e992b Update the Russian translation in the settings menu 2026-02-28 15:30:53 +00:00
Boria138 81637c3729 feat: auto-add MANGOHUD_CONFIG from var when enabling PW_MANGOHUD
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-28 20:29:15 +05:00
Boria138 80a79ed45b feat: add settings button for Steam games using PortProtonQt 2026-02-28 13:25:40 +05:00
Boria138 c6b997366f feat: launch games directly in Steam compatibility mode 2026-02-28 09:53:24 +05:00
Boria138 2bdcf107f2 feat: skip desktop file creation for steamapps/common games 2026-02-27 21:35:14 +05:00
Boria138 25f3e526ae feat: prioritize var.log for environment variables 2026-02-27 16:23:09 +05:00
Boria138 d081ae68db refactor: extract common process.log parsing function
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-27 16:13:56 +05:00
Boria138 d1b8f0fa93 feat: add PW_USE_INHIBIT_SLEEP_INFO setting 2026-02-27 16:10:39 +05:00
Boria138 23e19a14d0 feat: add Wine download progress monitoring
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-27 16:05:15 +05:00
Boria138 f9ef6751dd fix: tray use correct exec line 2026-02-27 15:23:18 +05:00
Boria138 6363c08781 refactor: extract dialogs to separate package and fix UI updates
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-26 23:26:11 +05:00
Boria138 7eb2934b44 fix: Run initial PortProton command in QThread to avoid UI blocking 2026-02-26 22:14:37 +05:00
Boria138 2519ccd6d0 fix: create UInput mouse in QThread to avoid blocking UI 2026-02-26 22:08:11 +05:00
Boria138 da204786c1 refactor: remove redundant branch input from nightly build workflow 2026-02-26 21:41:43 +05:00
Boria138 f6e871feaf fix: PKGBUILD steam-compat directory delete 2026-02-26 20:29:38 +05:00
Boria138 a9e0304437 fix: resolve file conflict between main and steam-compat packages 2026-02-26 19:50:56 +05:00
Boria138 994769d3cf feat: Add Steam compatibility tool as separate package 2026-02-26 17:58:54 +05:00
Boria138 6fd2e9b34a feat: Add CLI option to install PortProtonQt as Steam compatibility tool 2026-02-26 17:42:53 +05:00
Boria138 387133b87f feat: add direct exe launch via CLI 2026-02-26 17:22:49 +05:00
Boria138 8bd6e30e0b refactor: split config_utils into config package with validation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-24 20:30:40 +05:00
Boria138 b168e32fc8 refactor: split detail_pages into package 2026-02-24 13:02:22 +05:00
Boria138 1812b8de5f refactor: split debug_utils into submodules
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-22 16:40:43 +05:00
Boria138 cfc4532edd fix: CSS comment syntax validation and winetricks.py typos 2026-02-22 16:03:52 +05:00
Boria138 50d6d952dd fix: invalid CSS comments in combobox styles
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-22 15:53:15 +05:00
Boria138 18f277e707 fix: adaptive width for PortProton settings tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-22 13:20:30 +05:00
Boria138 a769263aa1 refactor: split get_graphics_info_detailed into small functions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-22 12:57:44 +05:00
Boria138 159cd49a16 chore(agents): update again
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-22 12:57:38 +05:00
Renovate Bot 68c8ca07b9 chore(deps): update archlinux:base-devel docker digest to 839e930 2026-02-22 00:01:07 +00:00
Boria138 ee22a5d8fb docs(agents): add dev-scripts exemption policy 2026-02-20 13:55:43 +05:00
Boria138 48f156e433 refactor: replace print() with logger and add exception logging 2026-02-20 13:50:00 +05:00
Boria138 85b199d5ea chore: translate comments to English and clean up TODOs
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-20 11:26:24 +05:00
Boria138 8d0bab134e feat(agents): finalize AI Governance Policy and consolidate LLM restrictions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-20 11:08:57 +05:00
Boria138 5525a6988a docs(agents): remove redundant manual lint commands 2026-02-20 10:28:40 +05:00
Boria138 d6dc7db5e4 chore(agents): rework agents rules
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-19 23:49:07 +05:00
Boria138andQwen-Coder 09313e30cf fix(pre-commit): fix pyright exclude pattern for theme files
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-19 17:41:46 +05:00
Boria138 8d539469a3 fix(agents): rewrite pre-commit manual start
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-19 17:39:40 +05:00
Boria138 45f9b2950f fix(build): Fix vk_gpu_info Fedora BR
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-19 15:17:22 +05:00
Boria138 0d6df9ed6c chore: added AI Instruction (CLAUDE, GEMINI, QWEN, CURSOR, CODEX, OPENCODE)
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-19 15:09:32 +05:00
Boria138 b92eb1fe9d chore(portproton_settings): drop favorites adaptive
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-19 11:14:29 +05:00
Boria138 b200d73879 feat(portproton_settings): make it adaptive
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-19 11:12:44 +05:00
Boria138 335f3223db feat(detail_page): make it adaptive
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-19 10:32:14 +05:00
Boria138 bcc6f1c2ce fix typo on arch PKGBUILD
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-18 13:15:00 +05:00
Boria138 b88ed89136 bump to 0.1.11
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-18 13:03:41 +05:00
Boria138 78d4c820e4 docs(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-18 13:01:43 +05:00
Boria138 47c84ceb67 fix: hide settings and log buttons for Steam/EGS games in detail page
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-18 12:56:37 +05:00
Boria138 e882a94395 chore: fix typos in CHANGELOG
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-17 23:22:33 +05:00
Boria138 4c372ad083 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-17 20:10:38 +05:00
Boria138 0a1f0dfdf1 chore: use Qt on open_ppdb_file
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-17 20:06:02 +05:00
Boria138 228e3262c8 fix: fix advanced settings translate
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-17 20:00:58 +05:00
Boria138 017c56227a chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-15 14:10:20 +05:00
Boria138 0f28c0dbeb chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-15 14:08:36 +05:00
Boria138 80c51198b9 feat: added system_wine to dist options
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-15 13:56:33 +05:00
Boria138 c5a46780df feat: Remove PW prefix from settings display and add Open PPDB button 2026-02-15 13:37:00 +05:00
Boria138 f729e10e20 chore(screenshots): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-14 21:27:18 +05:00
Boria138 1affd68159 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-14 21:16:34 +05:00
Boria138 c597c37610 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-14 20:53:38 +05:00
Boria138 ffc040c8af fix(get_wine_module): clear selected assets after download completion
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-14 20:35:21 +05:00
Boria138 f676ab6abe chore: drop amd vulkan driver from settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-14 20:13:16 +05:00
Boria138 8ac7cf235a feat: added hint for mouse emulation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-13 16:44:03 +05:00
Boria138 0a231e6664 feat(input_manager): make mouse emulation work regardless of window focus state
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-13 16:35:04 +05:00
Boria138 461df5006d feat(debug_utils): added device type to log
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-13 14:18:04 +05:00
Boria138 3cb04d0d42 fix(build): fix ternary operator usage in udev rules installation 2026-02-11 23:03:24 +05:00
Boria138 e6b94ef907 chore(build): added udev_rulesdir for rpm based
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-11 22:48:47 +05:00
Boria138 d6a58ecd60 chore: drop xdg-utils from deps
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-11 22:37:15 +05:00
Boria138 bdfc18203b chore(build): added sitelib for rpm based
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-11 18:24:04 +05:00
Boria138 0814326624 chore(build): fixes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-11 18:03:53 +05:00
Boria138 bcfb69bd08 chore(renovate): fix rate-limit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-11 16:23:20 +05:00
Renovate Bot 5ad70b1d5a chore(deps): update archlinux:base-devel docker digest to 7c81df5 2026-02-11 10:44:18 +00:00
Renovate Bot f10de90210 chore(deps): update https://gitea.com/actions/checkout digest to de0fac2 2026-02-11 10:38:37 +00:00
Boria138 4b33637846 chore: drop xrandr dependency
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-11 15:13:57 +05:00
Boria138 e309bb4f10 feat(debug_utils): use own vk_gpu_info
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-11 12:02:53 +05:00
Boria138 52572b85c7 chore: added simply vulkan-info file
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-11 11:47:18 +05:00
Boria138 1c952c009a chore: clean code and deps
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-10 22:13:09 +05:00
Boria138 0a0fbf47b1 Revert "feat(debug_utils): drop vulkaninfo from deps"
This reverts commit 7b703f5bf1.
2026-02-10 22:09:03 +05:00
Boria138 d29e144d4e feat(debug_utils): drop xdpyinfo from deps
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-10 22:02:31 +05:00
Boria138 7b703f5bf1 feat(debug_utils): drop vulkaninfo from deps
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-10 21:53:35 +05:00
Boria138 1a44bc00af feat: added PW_GPU_USE to PortProton Settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-09 17:53:08 +05:00
Boria138 1cdde3ada8 feat(detail_pages): added log auto-save conditions 2026-02-09 13:13:01 +05:00
Boria138 e7cbff82fd chore(build): added muvm to Fedora
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-09 12:51:33 +05:00
Boria138 dcf1748976 chore(build): added log dependency
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-09 12:49:07 +05:00
Boria138 cc9a585c74 fix(debug_utils): replace FLATPAK is used to FLATPAK in used
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-09 00:38:04 +05:00
Boria138 11835e0337 feat(debug_utils): remove caching and improve PW_VULKAN_USE detection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-09 00:08:26 +05:00
Boria138 97e41be7b7 feat(debug_utils): filter PW_USE_RUNTIME when Flatpak is used and read from default if PPDB missing 2026-02-08 19:57:12 +05:00
Boria138 73d99a6aec chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-08 15:22:54 +05:00
Boria138 2ebecc96bc chore(portproton_api): clean
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-08 15:19:49 +05:00
Boria138 63f8201098 feat(completions): add --force-muvm and URL arg to bash completion 2026-02-08 14:55:13 +05:00
Boria138 48a066eee8 feat(cli): add --force-muvm flag to run under muvm regardless of platform 2026-02-08 14:51:59 +05:00
Boria138 da52f7e821 fix: preserve muvm when restarting after theme change 2026-02-08 14:45:53 +05:00
Boria138 8fe1f35433 fix(ui): prevent hidden auto-install tab from breaking navigation and indexes 2026-02-08 14:37:39 +05:00
Boria138 9daabff516 chore(docs): update localization guide to mention only Poedit and GTranslator 2026-02-08 14:14:32 +05:00
Boria138 d3c21fef3f chore(localization): change locale directory lookup order to prioritize local directory first 2026-02-08 14:09:15 +05:00
Boria138 c123514ce5 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-08 14:02:46 +05:00
Simple16 3c1c9dffe8 Updating the Russian localization 2026-02-08 12:23:15 +05:00
Boria138 aed6492c25 fix: theme loading for custom themes with relative imports 2026-02-08 01:19:32 +05:00
Boria138 66583f52f4 feat: restructure icon themes with organized subdirectories 2026-02-08 00:30:22 +05:00
Boria138 b64670d8b3 feat: added ppdb.linux-gaming.ru handler
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-07 19:25:17 +05:00
Boria138 9d16105c8a fix(docs): correct grammar mistakes in CHANGELOG.md 2026-02-07 17:45:28 +05:00
Boria138 ee23957f43 fix(appimage): fix locale
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-06 11:16:12 +05:00
Boria138 b414147bbd chore(meson): clean
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-05 16:03:36 +05:00
Boria138 a2b42ac0ed chore(workflow): make release job continue on error 2026-02-05 13:00:01 +05:00
Boria138 92caf0dbb1 feat(ui): add setting to hide auto-install tab 2026-02-04 23:10:56 +05:00
Boria138 fc36dd7983 feat(debug_utils): add Flatpak detection to get_runtime_status 2026-02-04 11:24:24 +05:00
Boria138 643f914f6d fix(config_utils): prioritize Flatpak version in get_portproton_start_command 2026-02-04 11:05:24 +05:00
Boria138 8c3fc1307c fix(get_graphics_info_detailed): I forget about AMD and Intel
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-03 20:37:17 +05:00
Boria138 e0195856a8 feat(build): add muvm as aarch64 depend for Asahi Linux support 2026-02-03 16:15:55 +05:00
Boria138 04583c2586 feat: add Asahi Linux support via muvm re-execution 2026-02-03 16:09:11 +05:00
Boria138 bd8d280561 chore(log): make log async
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-03 16:00:36 +05:00
Boria138 48bfb308dd chore(log): rename PPQT to PortProtonQt
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-01 20:50:49 +05:00
Boria138 dcfa307fcd chore(log): enhance vulkaninfo output with API and driver versions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-01 20:49:22 +05:00
Boria138 3509701b1a chore(log): remove vkcube subprocess call 2026-02-01 20:49:17 +05:00
Boria138 04c723e4cc chore(log): add anonymization for /run/media/barry and /media/barry paths
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-02-01 20:48:54 +05:00
Gitea Actions 63de266289 chore: update steam apps list 2026-02-01T00:02:12Z 2026-02-01 00:02:13 +00:00
Boria138 4d20626f80 chore(log): delete PortProton.log before PW_LOG and PPQT.log save
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-31 22:44:08 +05:00
Boria138 3a59f1af76 fix: prevert log coruption
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-31 22:33:25 +05:00
Boria138 abc3b0b716 chore(log): fixed musl libc detect
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-31 19:05:23 +05:00
Boria138 9159b63000 chore(log): added musl libc detect support
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-31 15:37:52 +05:00
Boria138 296476afa3 chore(log): copy portproton format
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-31 13:31:22 +05:00
Boria138 17f938ded4 chore: update log
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-30 18:12:34 +05:00
Boria138 5ccd47d461 feat: add meson.build linter with comprehensive syntax checks
Add pre-commit hook to validate meson.build files:
   - Check for unbalanced brackets: (), [], {}
   - Detect unclosed quotes: ', "
   - Find missing/double commas between list items
   - Validate control structures (if/endif, foreach/endforeach)
   - Check for invalid operators (===, !==, :=, ;)
   - Detect common typos in meson functions
   - Verify all Python files are included in install_data

Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-29 22:56:21 +05:00
Boria138 35e449f730 feat: initial add log
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-29 22:27:48 +05:00
Boria138 b6062f1ee0 fix(gamecard): correct argument order when creating GameCard
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-26 23:28:06 +05:00
Boria138 651040de70 feat: replace linux-gaming topics to ppdb.linux-gaming.ru api calls
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-26 23:09:02 +05:00
Renovate Bot 3f0b3d65ad chore(deps): update archlinux:base-devel docker digest to d2bd09b 2026-01-26 12:17:08 +00:00
Renovate Bot ec449f12d1 chore(deps): update https://gitea.com/actions/setup-python digest to a309ff8 2026-01-26 12:16:50 +00:00
Boria138 2d5932f144 fix: prevent QMessageBox from closing immediately on gamepad 2026-01-26 17:16:05 +05:00
Boria138 0a9381b1d2 fix: open virtual keyboard on all QLineEdit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-26 17:12:02 +05:00
Boria138 20fb7174c1 fix: update virtual keyboard icons on change gamepad type
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-26 17:07:22 +05:00
Boria138 8f9e6ea958 chore(build): switch from pyproject to meson build system
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-19 06:19:04 +00:00
Renovate Bot 19aecd75c4 chore(deps): update archlinux:base-devel docker digest to 84c36fa 2026-01-18 05:56:49 +00:00
Renovate Bot 905ebe1d61 chore(deps): update https://gitea.com/actions/setup-node digest to 6044e13 2026-01-18 00:01:59 +00:00
Boria138 ae0b3a0f1a chore(build): added qt6-svg
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-14 18:08:32 +05:00
Boria138 678f28ed30 bump ver to 0.1.10
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-14 17:37:42 +05:00
Boria138 e7d2860c0e chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-14 17:36:58 +05:00
Boria138 55a7f77a33 fix(detail_pages): handle RuntimeError on detail page exit animation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-13 14:29:37 +05:00
Boria138 8e6c0aafd1 fix(image_utils): remove corrupted cached images on load failure
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-13 14:21:11 +05:00
Boria138 dd65021976 fix(time_utils): make playtime parsing robust to malformed data
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-13 14:13:59 +05:00
Boria138 5f3a451c50 chore(locale): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-12 21:03:51 +05:00
Boria138 c33813dae5 feat(get_wine): added total size to update_selection_display
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-12 20:56:41 +05:00
Boria138 88a436c29f fix(locales): clean fuzzy in poedit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-12 20:40:08 +05:00
Simple16 9ca4b38a14 Обновление русской локализации в окне "Управление версиями WINE" 2026-01-12 19:58:42 +05:00
Dervart 7fdd260868 window width for get_wine module 2026-01-12 20:07:49 +07:00
Boria138 091780bf9f feat(get_wine): make it async
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-12 11:19:21 +05:00
Boria138 1729f553bc feat(get_wine): unify tabble code
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-12 11:07:51 +05:00
Dervart b79d6e0331 styles fix for get_wine module 2026-01-11 22:58:29 +07:00
Boria138 96766643b7 feat(get_wine): added Installed tab for wine remove
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-11 20:02:50 +05:00
Boria138 f08becdbde fix(input_manager): handle common UI elements like QMessageBox, QMenu, etc. first
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-11 12:04:55 +05:00
Renovate Bot c2ab0c5d6c chore(deps): update archlinux:base-devel docker digest to ebcaeca 2026-01-11 00:01:02 +00:00
Boria138 df62b76bf1 chore: remove DPAD left/right navigation for tabs
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-09 16:03:43 +05:00
Boria138 eaaf726f15 chore(input_manager): drop unneded code
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-08 22:16:58 +05:00
Boria138 4b50cd4da1 fix(input_manager): fixed card increase_size on BT and added BTN_TRIGGER_HAPPY to switch tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-08 22:13:35 +05:00
Boria138 f07fbeee9e chore: drop delete_wine_module
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-08 19:47:41 +05:00
Boria138 59aecbc6e8 chore(input_manager): clean code
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-08 17:26:11 +05:00
Dervart bbfc51f908 styles for get_wine module 2026-01-07 15:31:35 +07:00
Boria138 7e44ec67d8 fix: fix dist sorting on Wine Settings tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-06 12:02:44 +05:00
Boria138 224f88aebd feat: rework proton sort
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-06 11:51:53 +05:00
Boria138 9bb7e45b27 feat: use alphabeth and number sort on prefixes and dist
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-05 21:54:31 +05:00
Boria138 59093f743c chore(appimage): use debloated packages later
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-05 21:14:09 +05:00
Boria138 a7c8977dab feat: use QFileSystemWatcher to dist and prefixes update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-05 11:42:15 +05:00
Boria138 ff744fc581 chore(flow_layout): drop very heavy numpy
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-05 00:02:17 +05:00
Simple16 05de549d07 Updating the Russian translation 2026-01-04 21:24:18 +05:00
Boria138 3e74cbdcf5 chore(locales): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-03 20:34:42 +05:00
Boria138 a9b97e3a4b feat(get_wine): make unpack progress real
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-03 16:13:19 +05:00
Boria138 b9fe0250ed chore: unify get and delete wine
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-03 16:13:14 +05:00
Simple16 4dcfca919f Updating the Russian translation 2026-01-03 01:31:28 +05:00
Boria138 66c23db29c fix(animations): resolve memory leaks in GameCardAnimations and DetailPageAnimations
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-02 21:11:41 +05:00
Boria138 e7a7300665 chore(get_wine): simplify archive extraction using libarchive native API
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-02 14:21:22 +05:00
Boria138 2521f7d2f4 fix(get_wine): handle symlinks too
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-02 12:14:08 +05:00
Simple16 5df0b8783f Updating the translation for the WINE download window 2026-01-02 00:10:09 +05:00
Boria138 044ea7d151 feat(get_wine): added CPU filtering
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-01 19:03:46 +05:00
Boria138 cd93f9ebfe chore(tabbles): disable edititng
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-01 16:19:38 +05:00
Boria138 1b9595ca95 chore(build): added python-libarchive-c to dependency
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2026-01-01 15:50:58 +05:00
Gitea Actions 4dff545c0f chore: update steam apps list 2026-01-01T00:00:54Z 2026-01-01 00:00:54 +00:00
Boria138 69d8e53c7b feat: reworked wine download
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-31 13:50:52 +05:00
Renovate Bot 40769bfdf6 fix(deps): lock file maintenance python dependencies 2025-12-30 15:58:37 +00:00
Renovate Bot b3adef68d3 chore(deps): update archlinux:base-devel docker digest to f6b259c 2025-12-30 15:56:27 +00:00
Renovate Bot df707a84bc chore(deps): update ghcr.io/renovatebot/renovate:latest docker digest to eec497d 2025-12-30 15:52:48 +00:00
Renovate Bot 4c340c13ab chore(deps): pin archlinux docker tag to f6b259c 2025-12-30 15:48:13 +00:00
Boria138 a81cef4457 feat(appimage): use AnyLinux Appimage to support musl-libc systems
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-30 15:44:59 +00:00
Boria138 4c537248f1 Revert "fix(animations): prevent memory leaks by properly clearing animation references"
This reverts commit 55dcda738b.
2025-12-30 11:06:15 +05:00
Boria138 55dcda738b fix(animations): prevent memory leaks by properly clearing animation references
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-29 11:17:09 +05:00
Boria138 aa0c0a5675 fix: fix slider size on autoinstall
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-27 00:13:13 +05:00
Boria138 613b28a751 chore(localization): added translate support to theme name, description and screenshots
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-26 13:02:45 +05:00
Boria138 a9e9f4e4e3 get_other_wine: added initial
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-26 00:23:07 +05:00
Boria138 61c59814a5 feat(security): strengthen theme security against multiple attack vectors
- Detect dangerous modules, functions, attributes, and system/network operations
- Prevent code execution via dynamic imports, reflection, and importlib
- Block f-string injection and dangerous expressions
- Detect obfuscated code patterns, including string concatenation (im+port, ev+al),
  Base64-encoded payloads, and character code arrays
- Validate image files using extension checks, magic bytes, and size limits
- Implement AST-based analysis for deep code inspection

Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-25 16:02:34 +05:00
Boria138 80d3b69311 chore(themes): reorgonize it to submodules
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-25 12:30:27 +05:00
Boria138 ac09ac1e36 fix: handle None steam data in egs_api callbacks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-23 00:27:18 +05:00
Boria138 7cdc7264cd chore(steam_api): returned partially search oops
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-23 00:22:27 +05:00
Boria138 94f61b1124 perf: optimize Steam and anti-cheat metadata caching
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-23 00:15:45 +05:00
Boria138 58bbff8e69 chore: clean all vulture 80% confidence dead code
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-21 19:34:32 +05:00
Renovate Bot 6457084d56 chore(deps): update ghcr.io/renovatebot/renovate:latest docker digest to e09f710 2025-12-21 10:19:52 +00:00
Renovate Bot 3c83a90721 fix(deps): lock file maintenance python dependencies 2025-12-21 04:54:36 +00:00
Renovate Bot c76b80586a chore(deps): update archlinux:base-devel docker digest to 9414f5b 2025-12-21 00:00:43 +00:00
Boria138 b30ade6e1e fix(tests): fix ruff and pyright
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-20 15:42:18 +05:00
Boria138 7a5b467490 feat(autoinstalls): added detail page
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-19 16:28:50 +05:00
Boria138 6f82068864 chore: bump to 0.1.9
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-08 11:47:25 +05:00
Boria138 d4672ecb0e chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-08 11:47:19 +05:00
Renovate Bot 087ac8eda2 chore(deps): update https://gitea.com/actions/setup-node digest to 395ad32 2025-12-07 10:48:27 +00:00
Renovate Bot 0a9acaf5da chore(deps): update https://gitea.com/actions/checkout digest to 8e8c483 2025-12-07 10:48:16 +00:00
Boria138 d0fad6a3c9 fix: added correct parent to GameCard
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-07 15:46:27 +05:00
Boria138 468887110c fix(qt): prevent RuntimeError from accessing deleted Qt C++ objects
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-07 12:45:37 +05:00
Boria138 32e4950a00 Revert "chore: bump ver to 0.1.9"
This reverts commit 29d25cec01.
2025-12-06 14:26:04 +05:00
Boria138 b16074fa5c fix: Add protection against accessing deleted Qt objects in async callbacks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-06 14:22:41 +05:00
Boria138 1bd7c23419 fix(settings): Remove surrounding quotes from the value if present
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-04 11:53:54 +05:00
Boria138 f4275dd465 fix(get_portproton_start_command): Check if flatpak command exists before trying to run it
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-02 18:44:47 +05:00
Boria138 c8b91c4687 fix(settings): update keyboard navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-02 18:40:27 +05:00
Boria138 4aaeb2e809 fix: dont start game by Enter
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-02 18:23:49 +05:00
Boria138 b6ea9350fa fix: fix gamecard refrefresh regression after 0889aa8
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-02 17:52:19 +05:00
Boria138 29d25cec01 chore: bump ver to 0.1.9
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-01 20:29:45 +05:00
Boria138 a634de5462 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-01 20:27:12 +05:00
Boria138 1ba1781994 feat(settings): added preloader because flatpak is too slow
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-01 17:06:20 +05:00
Boria138 0aae292f61 fix(settings): fix work on Flatpak
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-01 16:59:43 +05:00
Boria138 3ef433af0c fix: Only handle menu button if our main window is currently active
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-12-01 12:08:55 +05:00
Gitea Actions 9fe33e02d8 chore: update steam apps list 2025-12-01T00:01:44Z 2025-12-01 00:01:44 +00:00
Boria138 2ac91a759d chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-30 13:20:33 +05:00
Boria138 2c82bff204 fix(main_window): remove redundant loading status and improve loading flow
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-30 13:14:38 +05:00
Boria138 0889aa883e fix: refresh button refresh custom data too now
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-30 12:59:32 +05:00
Boria138 7780dcfc4d chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-29 23:12:31 +05:00
Boria138 9ef39ae2b6 fix: save cover images from URL to custom_data folder
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-29 23:08:54 +05:00
Boria138 86fb2b2d7c chore: added refresh hint
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-29 11:33:07 +05:00
Dervart 9d469f0a12 add horizontal scroll styles for exe settings 2025-11-28 13:54:25 +00:00
Boria138 665a4df322 perf(search): implement full async + indexed search system with major performance gains
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-28 13:48:17 +05:00
Boria138 3abaccb1e0 fix(startup): prevent main thread hangs and optimize resource loading
- run start_sh initialization via QTimer.singleShot with timeout
- add timeout protection to load_theme_fonts()
- load Steam/EGS/PortProton games in parallel instead of sequential
- delay game loading until UI is fully initialized
- fix callback chaining to avoid blocking operations
- add proper timeout + error handling for all Steam/EGS network requests
- add timeouts for flatpak subprocess calls
- improve file I/O error handling to avoid UI freeze
- optimize theme font loading:
  - delay font loading via QTimer.singleShot
  - load fonts in batches of 10
  - reduce font load timeout to 3s
  - remove fonts only when switching themes

Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-28 12:00:00 +05:00
Boria138 77b025f580 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-27 16:03:43 +05:00
Renovate Bot 42e2025e54 fix(deps): lock file maintenance python dependencies 2025-11-27 10:58:16 +00:00
Renovate Bot 8f84bbce31 chore(deps): update https://gitea.com/actions/setup-python digest to 83679a8 2025-11-27 10:55:42 +00:00
Boria138 3026e7da4e fix: fix code work with pyside 6.10
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-27 15:54:08 +05:00
Boria138 3522764c3e fix(detail-page): prevent crash on exit by adding robust widget/animation safety checks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-26 21:43:18 +05:00
Boria138 fd456e5330 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-26 18:02:48 +05:00
Boria138 99a963d60c chore: drop all pyright ignore
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-26 17:34:24 +05:00
Boria138 0b36e73bce chore(build): fix build on arch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-26 16:59:04 +05:00
Boria138 4baa2e8684 chore(themes): delete unused fonts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-26 16:57:56 +05:00
Boria138 4344bbca70 feat: added combination for Update Grid
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-26 14:54:15 +05:00
Boria138 0a8a290d2d chore: ignore pyright
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-25 20:49:58 +05:00
Boria138 92652e8faa fix(mouse_emulations): ignore triggers
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-25 20:32:44 +05:00
Boria138 4f2afaed24 fix: use kernel for detect_gamepad_axes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-25 14:39:52 +05:00
Boria138 1751e01e47 feat: added setfocus to gamedetail page
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-25 10:22:27 +05:00
Boria138 0f74a47aed chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-24 23:49:29 +05:00
Boria138 666ec654a0 fix(ui): prevent text truncation in show_gamepad_tooltip
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-24 23:34:57 +05:00
Boria138 0c25cc9fd2 chore(settings): rework tabble
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-24 23:23:56 +05:00
Boria138 5de83dbf49 fix(settings): drop .ppdb from show-ppdb
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-24 23:03:31 +05:00
Dervart 1821faadf6 styles for virtual keyboard 2025-11-24 16:47:41 +00:00
Boria138 17f0a6b0ea fix(ui): prevent segfault by validating widget existence in async callbacks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-24 16:27:02 +05:00
Boria138 e9c75b998f chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-23 15:43:59 +05:00
Boria138 bbfbc00c11 fix(settings): fix virtual keyboard
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-23 15:28:30 +05:00
Boria138 b7804fdd01 fix(ui): unify handling of QMessageBox and QMenu in controller
- Added _handle_common_ui_elements() for QMessageBox, QMenu, etc.
- Fixed A/B behavior for single- and multi-button QMessageBox dialogs
- Improved D-pad navigation and focused-button selection
- Removed duplicated logic in specialized handlers

Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-23 15:13:21 +05:00
Renovate Bot 043da2cf5d chore(deps): update https://gitea.com/actions/checkout action to v6 2025-11-23 00:01:25 +00:00
Boria138 2fa10e7db3 feat(settings): added tooltip to desc
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-22 23:34:11 +05:00
Boria138 b1b9706272 chore(input_manager): clean dialogs code
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-22 22:36:37 +05:00
Boria138 9c11d33c0a chore(setting): add human readeble value to PW_VULKAN_USE
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-22 19:52:36 +05:00
Boria138 173e1cb88e fix(settings): fix PW_WINE_USE_LIST
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-22 11:53:24 +05:00
Boria138 30606c7ec1 Revert "fix: eliminate blocking calls causing startup freezes and UI hangs"
This reverts commit b2a1046f9d.
2025-11-22 11:21:25 +05:00
Boria138 873e8b050e chore(settings): added disable style to comboboxes
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-22 00:28:15 +05:00
Boria138 59dad21945 chore(settings): adjust virtual keyboard button width (40 → 50)
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-22 00:16:14 +05:00
Boria138 b0c4e943ae feat(settings): added blocked style to advanced tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-22 00:05:46 +05:00
Boria138 19e01bba17 Fix: normalize disabled value for PW_AMD_VULKAN_USE
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-21 23:43:36 +05:00
Boria138 836e6cdd36 feat(settings): added initial gamepad navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-21 00:08:02 +05:00
Boria138 b2a1046f9d fix: eliminate blocking calls causing startup freezes and UI hangs
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-20 10:55:35 +05:00
Boria138 80a2c06b5a feat: added refresh button
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-16 17:07:58 +05:00
Boria138 f0a4ace735 perf: add config and icon caching to reduce I/O and improve UI responsiveness
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-16 16:57:40 +05:00
Boria138 7dfaee6831 feat(settings): added proton, 3d_api and prefixes settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-16 13:35:35 +05:00
Boria138 5481cd80d7 chore: added null pixmaps check
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-16 12:25:01 +05:00
Boria138 a016cfa810 chore: convert list to set for optimize
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-16 12:13:42 +05:00
Boria138 8fc097ccaf chore: remove broken styles
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-16 12:03:18 +05:00
Boria138 ad3eeb6e06 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-15 21:39:05 +05:00
Boria138 92631cd2c6 chore: separate settings list to new module
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-15 21:39:03 +05:00
Boria138 4477679f2d chore: replace emulataion buttons to xbox + start
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-15 21:38:07 +05:00
Renovate Bot b6644eeee5 fix(deps): update dependency pillow to v12 2025-11-15 21:38:07 +05:00
Renovate Bot 2e921226c4 chore(deps): update https://gitea.com/actions/setup-python action to v6 2025-11-15 21:38:06 +05:00
Renovate Bot 4fc1ea73d3 chore(deps): update https://gitea.com/actions/setup-node action to v6 2025-11-15 21:38:06 +05:00
Renovate Bot 3c15cbe495 chore(deps): update archlinux:base-devel docker digest to 943bdad 2025-11-15 21:38:06 +05:00
Boria138 fed6aafed5 feat: trigger emulation by Xbox + B
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-15 21:38:06 +05:00
Dervart 2e8be13437 WINETRICKS_TABBLE_STYLE more fixes 2025-11-15 16:22:59 +07:00
Dervart ea272c29b6 WINETRICKS_TABBLE_STYLE reworked 2025-11-13 15:43:13 +07:00
Dervart 17262f6c9f Play Button & Settings Button in row 2025-11-07 12:17:36 +07:00
Boria138 e07f3f06bc chore(build): return QtSvg to appimage
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-04 12:28:09 +05:00
Boria138 16a3f4e09a chore(build): added udev rule to allow create virtual devices
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-04 11:14:17 +05:00
Boria138 a448ba29b0 feat(input_manager): added mouse emulation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-03 12:34:27 +05:00
Boria138 06e55db54d feat(settings): update styles
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-02 16:05:22 +05:00
Boria138 5fce23f261 chore: disable pre-commit auto update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-11-02 15:31:01 +05:00
Renovate Bot 96ad40d625 chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.14.3 2025-11-02 00:01:26 +00:00
Gitea Actions a30f6f2e74 chore: update steam apps list 2025-11-01T00:01:57Z 2025-11-01 00:01:58 +00:00
Boria138 0231073b19 feat(settings): added advanced
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-30 16:27:45 +05:00
Boria138 dec24429f5 chore: separate start.sh to new function
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-28 15:34:01 +05:00
Boria138 4a758f3b3c chore: use flatpak run for flatpak not start.sh
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-27 23:13:48 +05:00
Boria138 0853dd1579 chore: use CLI for clear pfx
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-27 22:36:14 +05:00
Boria138 bbb87c0455 feat(settings): added icon to button thanks to @Dervart
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-27 12:17:00 +05:00
Boria138 b32a71a125 feat(settings): block settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-27 12:16:54 +05:00
Renovate Bot bddf9f850a chore(deps): update pre-commit hook astral-sh/uv-pre-commit to v0.9.5 2025-10-26 00:01:29 +00:00
Renovate Bot a9c3cfa167 chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.14.2 2025-10-26 00:01:19 +00:00
Boria138 7675bc4cdc feat: added initial exe settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-26 00:12:00 +05:00
Boria138 ffa203f019 feat: restore instance from tray
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-22 15:46:57 +05:00
Boria138 3eed25ecee feat: update grid on update_favorite_icon
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-21 20:41:21 +05:00
Boria138 3736bb279e feat: use SGDB for cover too
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-20 13:07:09 +05:00
Renovate Bot b59ee5ae8e chore(deps): update archlinux:base-devel docker digest to 87a967f 2025-10-19 12:07:20 +00:00
Boria138 33176590fd feat: Make autoinstall games loading asynchronous with caching
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-19 17:03:26 +05:00
Boria138 8046065929 refactor(gamepad): replace busy-wait with threading.Event for monitor readiness
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-19 11:00:22 +05:00
Renovate Bot fbad5add6c chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.14.1 2025-10-19 00:01:23 +00:00
Boria138 438e9737ea chore(release): drop sha256 sums
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-18 21:07:37 +05:00
Boria138 2d39a4c740 fix: fix CloseEvent on native package
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-18 21:06:23 +05:00
Boria138 567203b0b0 chore: bump to 0.1.8
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-18 18:22:32 +05:00
Boria138 502cbc5030 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-18 18:20:50 +05:00
Boria138 9b61215152 chore(theme): update screenshots
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-18 18:17:47 +05:00
Boria138 10d3fe8ab4 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-18 13:40:56 +05:00
Boria138 a568ad9ef8 fix(add_game_dialog): prevent overwriting manually entered game name
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-18 13:09:58 +05:00
Boria138 f074843fc8 fix: prevent udev monitor hang by using non-blocking poll with timeout
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-18 12:53:47 +05:00
Boria138 4ab078b93e fix: sync card_width between GameLibraryManager and MainWindow to prevent config overwrite
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-18 12:17:17 +05:00
Boria138 7df6ad3b80 feat(autoinstalls): added slider
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-17 13:55:17 +05:00
Boria138 464ad0fe9c chore: optimize and clean code
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-17 13:09:02 +05:00
Boria138 cde92885d4 feat(virtual_keybord): added gamepad hint
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-17 00:04:47 +05:00
Boria138 120c7b319c fix: improve gamepad detection using udev ID_INPUT_JOYSTICK property 2025-10-16 23:20:48 +05:00
Boria138 596aed0077 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-16 14:54:30 +05:00
Boria138 6fc6cb1e02 feat: added minimize to tray
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-16 14:53:08 +05:00
Boria138 186e28a19b fix(gamepad): resolve MonitorObserver blocking issue causing application hang
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-16 14:43:49 +05:00
Boria138 28e4d1e77c Revert "chore: broke autorelease for tasting purpose"
This reverts commit fff1f888c4.
2025-10-16 14:11:36 +05:00
Boria138 fff1f888c4 chore: broke autorelease for tasting purpose
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-16 12:48:21 +05:00
Boria138 fdd5a0a3d5 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-16 10:44:30 +05:00
Boria138 792e52d981 feat(dialogs): added controller hints
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-16 10:39:24 +05:00
Boria138 84d5e46a74 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-15 22:53:08 +05:00
Boria138 4bc764d568 partially revert b1047ba18e
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-15 22:31:35 +05:00
Boria138 9a18aa037e feat(autoinstall): no restart on autoinstall finished
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-15 21:58:40 +05:00
Boria138 ed62d2d1c4 fix: resolve lambda variable capture issue in switchTab method
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-15 21:47:14 +05:00
Boria138 accc9b18b6 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-15 15:31:56 +05:00
Boria138 82249d7eab feat(settings): Added Gamepad type settings
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-15 15:30:31 +05:00
Boria138 476c896940 chore(TODO): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-15 12:44:01 +05:00
Boria138 b1047ba18e fix: fix card overlap on display_filter change
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-13 12:14:54 +05:00
Boria138 987199d8e6 chore(release): enable node experimental-fetch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-13 11:52:43 +05:00
Renovate Bot ef1acd4581 chore(deps): update archlinux:base-devel docker digest to 06ab929 2025-10-12 17:46:27 +00:00
Boria138 96f884904c chore: bump ver to v0.1.7
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 17:33:56 +05:00
Boria138 b856a2afae chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 17:33:12 +05:00
Boria138 55ef0030e6 feat: added version and commit on WindowTitle
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 17:31:23 +05:00
Boria138 8aaeaa4824 chore(localization): add localization for auto-install progress status message
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 17:14:06 +05:00
Boria138 f55372b480 fix(autoinstall): fix scrollbar sticking to the right edge
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 17:10:44 +05:00
Boria138 4d6f32f053 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 15:25:04 +05:00
Boria138 a2f5141b20 chore localization update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 15:21:14 +05:00
Boria138 e3cb2857e7 fix(pyright): fix pyright errors
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 15:14:02 +05:00
Boria138 efe8a35832 feat(autoinstall): rework gamepad navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 14:57:43 +05:00
Boria138 61fae97dad fix(autoinstall): fix virtual keyboard open
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 14:45:52 +05:00
Boria138 5442100f64 feat: use GameCard on autonstall tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 13:56:18 +05:00
Boria138 2d6ef84798 chore: rename metadata to use pw_create_unique_exe
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 12:14:31 +05:00
Renovate Bot f4aee15b5d chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.14.0 2025-10-12 00:01:35 +00:00
Boria138 87a65108a5 feat(autoinstall): added covers
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-12 00:48:09 +05:00
Boria138 bb617708ac feat: initial add of autoinstall tab
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-11 19:19:47 +05:00
Boria138 1cf332cd87 feat(winetab): added progress bar
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-11 13:24:58 +05:00
Boria138 577ad4d3a3 feat: adapt WineTab to new cli
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-10 23:07:48 +05:00
Boria138 ef3f2d6e96 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 21:01:30 +05:00
Boria138 657d7728a6 fix(gamepad): exit fullscreen on disconnect only if auto-fullscreen enabled and fullscreen disabled
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 20:59:51 +05:00
Boria138 9452bfda2e chore(changelog): update
Check Translations (disabled until yaspeller is fixed) / check-translations (pull_request) Has been skipped
Code check / Check code (pull_request) Successful in 1m22s
Check Translations (disabled until yaspeller is fixed) / check-translations (push) Has been skipped
Code check / Check code (push) Successful in 1m13s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 7eb2db0d68 chore localization update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 6ef7a03366 feat: added search to controller hints
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 e5af354b56 fix(virtual-keyboard): turn off caps lock when disabling shift while caps is enabled
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 e6e5f6c8ea feat(virtual_keyboard): make keyboard bigger
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 84306bb31b feat(virtual_keyboard): added dpad reapeat movement
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 60af4d1482 feat(virtual_keyboard): press X to backspace
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 692e11b21d chore(virtual_keyboard): move styles to style.py
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 b1a804811e chore(keyboard): drop connect_keyboard_to_lineedit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 9a30cfaea7 chore(keyboard): drop unneded key events
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 5dd2f71f5e feat: added virtual keyboard
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 11:41:53 +00:00
Boria138 dba172361b fix(ui): resolve layout issues during search filtering
Code check / Check code (push) Successful in 1m20s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 12:52:34 +05:00
Boria138 a9c70b8818 chore(winetricks): use curl for download
Code check / Check code (push) Successful in 1m11s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 08:59:03 +05:00
Boria138 135ace732f chore(deps): added Winetricks deps copied from upstream control
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-09 08:47:22 +05:00
Boria138 8b727f64e1 chore(changelog): update
Code check / Check code (push) Successful in 1m8s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-08 19:26:21 +05:00
Boria138 a8eb591da5 fix: update ControlHints and NavButtons together
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-08 19:23:58 +05:00
Boria138 fe4ca1ee87 fix: revert signals to pyside 6.9.1
Code check / Check code (push) Successful in 1m15s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-08 19:12:37 +05:00
Boria138 ffe3e9d3d6 chore(deps): revert Pyside6 to 6.9.1
Code check / Check code (push) Failing after 1m21s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-08 19:04:45 +05:00
Boria138 49d39b5d61 chore(pyright): fix code for new version
Code check / Check code (push) Successful in 1m13s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-08 18:37:31 +05:00
Renovate Bot 03566da704 fix(deps): lock file maintenance python dependencies 2025-10-08 18:21:53 +05:00
Renovate Bot 7f996ab6a0 chore(deps): update archlinux:base-devel docker digest to b380991
Code check / Check code (push) Successful in 1m3s
2025-10-08 12:09:42 +00:00
Renovate Bot 9e17978155 chore(deps): update ghcr.io/renovatebot/renovate:latest docker digest to 17c8966
Code check / Check code (pull_request) Successful in 1m6s
Code check / Check code (push) Has been cancelled
2025-10-08 12:05:09 +00:00
Boria138 5d0185b1b4 feat(winetricks): added preloader to tabble
Code check / Check code (push) Successful in 1m9s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-08 16:41:32 +05:00
Boria138 5c134be04e chore(changelog): update
Check Translations (disabled until yaspeller is fixed) / check-translations (push) Has been skipped
Code check / Check code (push) Failing after 4s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-07 15:54:05 +05:00
Boria138 8c66695192 chore(winetricks): fix typo on translate and added forget icon
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-07 15:49:48 +05:00
Boria138 7a141d8e46 fix(winetricks): resolve QProcess channel mode warning in install handler
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-07 15:43:16 +05:00
Boria138 abb2377fb7 fix(winetricks): remove duplicate entries in winetricks.log
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-07 15:37:41 +05:00
Boria138 75f4f346de chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-07 15:27:31 +05:00
Boria138 87a9f85272 feat(wine settings): make winetricks work with gamepad
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-07 15:18:48 +05:00
Boria138 240f685ece feat(wine settings): make winetricks work
Code check / Check code (push) Successful in 1m10s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-07 12:06:35 +05:00
Boria138 af4e3e95bb chore(localization): update
Check Translations (disabled until yaspeller is fixed) / check-translations (push) Has been skipped
Code check / Check code (push) Successful in 1m17s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-06 17:57:52 +05:00
Boria138 017d9a42cf feat(wine settings): make prefix and wine delete work
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-06 17:55:24 +05:00
Boria138 18b7c4054b chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-06 17:47:45 +05:00
Boria138 dd7f71b70a feat(wine settings): make pfx_backup work
Code check / Check code (push) Successful in 1m8s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-06 17:29:06 +05:00
Boria138 8fd44c575b fix: expose gamesListWidget from GameLibraryManager to fix gamepad navigation
Code check / Check code (push) Successful in 3m29s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-06 13:21:58 +05:00
Boria138 65b43c1572 chore(changelog): update
Code check / Check code (push) Successful in 1m15s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-06 00:04:55 +05:00
Boria138 f35276abfe fix: reject candidate if normalized name equals "game"
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-06 00:02:06 +05:00
Boria138 6fea9a9a7e chore(wine settings): rework layout
Code check / Check code (push) Successful in 1m10s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-05 20:01:00 +05:00
Boria138 5189474631 feat(wine settings): initial introdouce
Code check / Check code (push) Successful in 1m36s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-05 16:19:06 +05:00
Renovate Bot 416cc6a268 chore(deps): update archlinux:base-devel docker digest to 5d95edc
Code check / Check code (push) Successful in 1m12s
2025-10-05 08:20:07 +00:00
Renovate Bot 3b44ed5252 chore(deps): update ghcr.io/renovatebot/renovate:latest docker digest to e459af1
Code check / Check code (pull_request) Successful in 1m21s
Code check / Check code (push) Has been cancelled
2025-10-05 00:01:07 +00:00
Boria138 c8c45dda06 chore(readme): drop Those Awesome Guys
renovate / renovate (push) Successful in 1m1s
Code check / Check code (push) Successful in 1m8s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-04 20:54:57 +05:00
Dervart 3f9f794e6f hint icons
Code check / Check code (pull_request) Successful in 1m21s
2025-10-04 22:12:10 +07:00
Boria138 ba9d8b76d8 chore(changelog): update
Code check / Check code (push) Successful in 1m8s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-02 16:31:01 +05:00
Boria138 e99c71c1f8 feat: optimize search
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-02 16:29:18 +05:00
Boria138 baec62d1cb chore(changelog): update
Code check / Check code (push) Successful in 1m20s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-01 11:19:52 +05:00
Boria138 cb76961e4f feat: optimize add and remove game
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-10-01 11:19:37 +05:00
Gitea Actions 081cd07253 chore: update steam apps list 2025-10-01T00:01:41Z 2025-10-01 00:01:42 +00:00
Boria138 b5efee29ea chore: cleanup MainWindow class
Code check / Check code (push) Successful in 1m8s
Fetch Data / build (push) Successful in 1m34s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-30 15:43:11 +05:00
wmigor 69360f7e7e touchscreen scrolling
Code check / Check code (pull_request) Successful in 1m49s
Code check / Check code (push) Successful in 1m5s
2025-09-28 16:04:11 +03:00
Renovate Bot 39712f0591 chore(deps): update https://gitea.com/actions/setup-node action to v5
Code check / Check code (push) Successful in 1m6s
2025-09-28 07:43:25 +00:00
Renovate Bot 60b508af18 chore(deps): update https://gitea.com/actions/checkout action to v5
Code check / Check code (push) Has been cancelled
Code check / Check code (pull_request) Successful in 1m18s
2025-09-28 07:40:23 +00:00
Renovate Bot b6637b4163 chore(deps): update ghcr.io/renovatebot/renovate:latest docker digest to dd5721b
Code check / Check code (push) Successful in 1m11s
2025-09-28 07:34:37 +00:00
Renovate Bot 6d9eed42f8 chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.13.2
Code check / Check code (pull_request) Successful in 1m5s
Code check / Check code (push) Successful in 1m3s
2025-09-28 00:01:38 +00:00
Boria138 7372e3b7f5 chore: added zstd comp to appimage
renovate / renovate (push) Successful in 1m9s
Code check / Check code (push) Successful in 1m4s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-27 17:52:32 +05:00
Boria138 e0d5bd7993 chore: update appimage fork
Code check / Check code (push) Successful in 1m5s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-27 07:11:11 +00:00
Renovate Bot 12f8067af1 chore(deps): update ghcr.io/renovatebot/renovate:latest docker digest to 2098143
Code check / Check code (push) Successful in 1m6s
2025-09-24 17:38:45 +00:00
Renovate Bot 716a813ca9 chore(deps): update pre-commit hook astral-sh/uv-pre-commit to v0.8.22
Code check / Check code (push) Has been cancelled
Code check / Check code (pull_request) Successful in 1m11s
2025-09-24 17:37:21 +00:00
Boria138 c62cc6853f chore(check-translation): disable untill yaspeller fixed
Code check / Check code (push) Successful in 1m10s
Check Translations (disabled until yaspeller is fixed) / check-translations (push) Has been skipped
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 22:31:19 +05:00
Boria138 2e018b4690 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 22:27:15 +05:00
Boria138 ad5b25f713 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 22:17:29 +05:00
Boria138 3fb8201305 feat(file explorer): added ThumbnailLoader class
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 22:14:13 +05:00
Boria138 04d8302d6c chore(logs): start translate
Code check / Check code (push) Successful in 2m27s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 21:05:58 +05:00
Renovate Bot f868b21178 chore(deps): update ghcr.io/renovatebot/renovate:latest docker digest to 06348c5
Code check / Check code (push) Successful in 1m8s
2025-09-23 12:10:57 +00:00
Renovate Bot ebe25b41d8 chore(deps): update pre-commit hook astral-sh/uv-pre-commit to v0.8.20
Code check / Check code (pull_request) Successful in 1m8s
Code check / Check code (push) Successful in 1m5s
2025-09-23 12:07:17 +00:00
Renovate Bot fae6cad52d chore(deps): update ghcr.io/renovatebot/renovate:latest docker digest to edaa35b
Code check / Check code (push) Successful in 1m15s
2025-09-23 07:14:54 +00:00
Renovate Bot 42bce11ada chore(deps): update archlinux:base-devel docker digest to 0589aa8
Code check / Check code (pull_request) Successful in 1m2s
Code check / Check code (push) Has been cancelled
2025-09-23 07:12:08 +00:00
Boria138 f088c01768 chore(renovate): validate and fix renovate.json configuration
Code check / Check code (push) Successful in 1m5s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 12:10:19 +05:00
Boria138 e7eee85ed4 feat(dev-scripts): regenerate uv.lock on bump ver
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 11:58:10 +05:00
Boria138 ecfe252ae3 v0.1.6
Build AppImage, Arch and Fedora Packages / Build AppImage (push) Successful in 2m28s
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (43) (push) Successful in 2m56s
Code check / Check code (push) Successful in 1m16s
Build AppImage, Arch and Fedora Packages / Build Arch Package (push) Successful in 1m23s
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (42) (push) Successful in 47s
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (rawhide) (push) Successful in 58s
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (41) (push) Successful in 2m4s
Build AppImage, Arch and Fedora Packages / Create and Publish Release (push) Failing after 35s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 11:45:36 +05:00
Boria138 1ad19bff6a chore: hide legendary login
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 10:51:33 +05:00
Boria138 98f07a9792 chore(changelog): update
Code check / Check code (push) Successful in 1m9s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 00:20:58 +05:00
Boria138 d5c53ed1aa feat(completion): added --debug-level
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 00:19:40 +05:00
Boria138 5a2ab36b60 feat(cli): added --debug-level= argument
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-23 00:14:51 +05:00
Boria138 8e25c04f56 chore(logs): start rework
renovate / renovate (push) Successful in 24s
Code check / Check code (push) Successful in 1m22s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-18 17:29:38 +05:00
Boria138 f249b01dc6 chore(readme): fix logo path
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-17 12:53:38 +05:00
Boria138 9f32afe6a3 fix: dialog navigation on gamepad
Code check / Check code (push) Successful in 2m11s
renovate / renovate (push) Successful in 25s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 21:30:57 +05:00
Boria138 f475e6e0b2 chore(changelog): update
Code check / Check code (push) Successful in 2m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 17:03:21 +05:00
Boria138 43a7c37e91 feat: use mouse extra button to back
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 17:01:43 +05:00
Boria138 f1cf0ffd68 fix ecodes again meh
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 16:40:10 +05:00
Boria138 70ed3abcb5 fix add game dialog navigation on keyboard
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 16:28:19 +05:00
Boria138 f061b1597e chore(changelog): update
Code check / Check code (push) Successful in 1m31s
Check Translations / check-translations (push) Successful in 43s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 12:17:57 +05:00
Boria138 0f37a8fc6f fix: disable input manager if window is not focused
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 12:15:12 +05:00
Boria138 850bc57a16 chore: added prompts license to readme
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 11:55:52 +05:00
Boria138 0dcc3ea13f chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 11:51:38 +05:00
Boria138 1c82b34e36 feat: added ps controllers hint
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 11:46:48 +05:00
Boria138 a8c4ae6f7b chore: clean icons
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-13 10:24:34 +05:00
Boria138 dd4f658b66 feat: rework createControlHintsWidget
Code check / Check code (push) Successful in 1m37s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-12 15:07:25 +05:00
Boria138 bff6b7fd34 chore(build): update setuptools
Code check / Check code (push) Successful in 1m25s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-09 10:59:41 +05:00
Boria138 1e191bbba3 chore(build): added fedora 43 build
Code check / Check code (push) Successful in 1m15s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-09 10:07:52 +05:00
Boria138 4356e653b8 feat: added control hint
Code check / Check code (push) Successful in 1m11s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-08 20:48:03 +05:00
Boria138 4fc95511f1 docs(changelog): update
Code check / Check code (push) Successful in 1m11s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-08 18:47:23 +05:00
Boria138 4d4e14ea52 fix: Prevent fullscreen toggle on 'Select' button press during game launch
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-08 18:45:30 +05:00
Boria138 c39f5ad83b chore(changelog): update
Code check / Check code (push) Successful in 1m8s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-07 22:58:15 +05:00
Boria138 f3325ca35f feat(theme-manager): implement singleton and caching for improved theme handling
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-07 22:54:25 +05:00
Boria138 50645066dd chore(changelog): update
Code check / Check code (push) Successful in 1m16s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-07 22:30:16 +05:00
Boria138 7945dd8980 fix(input_manager): exclude ASRock LED controller from gamepad detection
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-07 22:28:34 +05:00
Boria138 59c38f9c57 chore(changelog): update
renovate / renovate (push) Successful in 28s
Code check / Check code (push) Successful in 1m15s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-06 12:44:43 +05:00
Boria138 a2d5d28884 fix(cache): add cleanup of related cache files on JSON updates
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-06 12:43:22 +05:00
Boria138 16af4b410a chore(renovate): disable almost python-version update
Code check / Check code (push) Successful in 1m7s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-03 19:17:13 +05:00
Boria138 e8e42b5a86 chore(renovate): disable python-version update
Code check / Check code (push) Successful in 1m7s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-03 19:08:58 +05:00
Boria138 d16e2cdf43 chore(renovate): dont update github-runners
Code check / Check code (push) Successful in 1m44s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-02 22:56:03 +05:00
Renovate Bot b60fd0d593 chore(deps): pin dependencies
Code check / Check code (pull_request) Successful in 2m16s
Code check / Check code (push) Successful in 1m36s
2025-09-02 17:31:21 +00:00
Boria138 d93f23fe8c chore(renovate): added GITHUB_TOKEN
Code check / Check code (push) Successful in 1m15s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-02 22:28:10 +05:00
Boria138 5423ada8f1 fix(theme-security): check standart theme too
Code check / Check code (push) Successful in 1m12s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-02 17:05:35 +05:00
Boria138 2547c7c78d chore(changelog): update
Code check / Check code (push) Successful in 1m9s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-02 00:11:35 +05:00
Boria138 2e93073446 feat(theme-security): add theme safety checks and unify loading via ThemeManager
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-01 23:58:38 +05:00
Gitea Actions 9657ff20d3 chore: update steam apps list 2025-09-01T15:10:40Z 2025-09-01 15:10:40 +00:00
Boria138 849333c283 feat(dev-scripts): add import and function safety checks to theme pre-commit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-09-01 11:42:06 +05:00
Boria138 8e11dac987 chore: v0.1.5
Build AppImage, Arch and Fedora Packages / Build AppImage (push) Successful in 3m15s
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (41) (push) Successful in 1m14s
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (rawhide) (push) Successful in 1m53s
Build AppImage, Arch and Fedora Packages / Create and Publish Release (push) Failing after 48s
Code check / Check code (push) Successful in 1m27s
Build AppImage, Arch and Fedora Packages / Build Arch Package (push) Successful in 1m50s
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (42) (push) Successful in 1m6s
Fetch Data / build (push) Failing after 20s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-31 16:08:43 +05:00
Boria138 358afbdbdb chore(localization): update
Check Translations / check-translations (push) Successful in 46s
Code check / Check code (push) Successful in 1m21s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-31 12:29:11 +05:00
Boria138 83730499e2 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-31 12:23:55 +05:00
Boria138 84f560ed30 feat(tray): add modal game launch dialog with process detection and cancellation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-31 12:20:52 +05:00
Boria138 888c9ac387 chore(theme): drop unstable mark from scale animation
Code check / Check code (push) Successful in 1m26s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-31 11:11:07 +05:00
Boria138 68d06ca05c fix(FlowLayout): Align incomplete rows with the first card of the longest row
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-31 11:09:24 +05:00
Boria138 6923a5f05c chore(theme): change placeholder aspect ratio
Code check / Check code (push) Successful in 1m44s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-31 10:03:30 +05:00
Boria138 f3f85441d8 fix: scale animation is less unstable
Code check / Check code (push) Successful in 1m38s
renovate / renovate (push) Successful in 1m9s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-30 21:21:15 +05:00
Boria138 eb90836710 chore: change cover aspect ratio
Code check / Check code (push) Successful in 1m14s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-30 10:59:18 +05:00
Boria138 dd125c975b fix(input_manager): revert dpad navigation to focusNextChild
Code check / Check code (push) Successful in 1m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-29 14:46:42 +05:00
Boria138 4521d3ca1c chore(changelog): update
Code check / Check code (push) Successful in 1m41s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-28 17:15:34 +05:00
Boria138 dd044dbd95 feat(tray_manager): added themes select to tray
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-28 17:12:31 +05:00
Boria138 0047b29cd2 chore(changelog): update
Code check / Check code (push) Successful in 1m19s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-28 14:58:37 +05:00
Boria138 d0fbc79168 fix(input_manager): fix keyboard and dpad navigation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-28 14:56:55 +05:00
Boria138 57f6ac9c4b feat: center cards in FlowLayout with equal margins
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-28 14:53:14 +05:00
Boria138 60271f7a13 chore(changelog): update
Code check / Check code (push) Successful in 1m53s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-28 10:55:02 +05:00
Boria138 38ab4acc86 chore(documentation): chore card_animation_type
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-28 10:53:01 +05:00
Boria138 8f54f4814c feat: added scale animation to game card hover and focus
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-28 10:48:55 +05:00
Boria138 37254b89f1 chore(changelog): update
Code check / Check code (push) Successful in 1m37s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-27 11:22:23 +05:00
Boria138 893e33bdce feat(tray_manager): implement double-click to toggle main window visibility
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-27 11:14:14 +05:00
Boria138 1ee784d890 chore(changelog): update
Check Translations / check-translations (push) Failing after 35s
Code check / Check code (push) Successful in 1m25s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-26 13:22:26 +05:00
Boria138 39f505079c chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-26 13:18:19 +05:00
Boria138 46253115ff feat: returned tray and added favorites and recent to it
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-26 13:00:16 +05:00
Boria138 31a7ef3e7e chore(deps): update lock file
Code check / Check code (push) Successful in 1m11s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-24 22:44:17 +05:00
Renovate Bot cb07904c1b fix(deps): lock file maintenance python dependencies
Code check / Check code (pull_request) Successful in 1m18s
renovate/artifacts Artifact file update failure
2025-08-24 17:39:06 +00:00
Boria138 05e0d9d846 fix(renovate): disable poetry (bug in upstream)
Code check / Check code (push) Successful in 1m25s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-24 22:35:30 +05:00
Boria138 81433d3c56 chore(changelog): update
Code check / Check code (push) Successful in 1m38s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-24 22:13:50 +05:00
Boria138 0ff66e282b fix(input_manager): enable Escape key to close dialogs
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-24 22:10:39 +05:00
Boria138 831b7739ba fix(input-manager): enable drive list navigation with arrow keys in FileExplorer
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-24 22:05:33 +05:00
Boria138 50e1dfda57 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-24 20:56:41 +05:00
Boria138 fcf04e521d feat(file-explorer): add automatic scrolling for drives layout
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-24 20:54:50 +05:00
Boria138 74d0700d7c chore(renovate): use . for source uv
Code check / Check code (push) Successful in 1m18s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-24 17:40:36 +05:00
Boria138 0435c77630 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-24 17:39:52 +05:00
Boria138 1cf93a60c8 feat: added favorites to file explorer
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-24 17:37:59 +05:00
Boria138 31247d21c3 chore(changelog): update
renovate / renovate (push) Failing after 1m1s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 21:35:23 +05:00
Boria138 c6017a7dce fix(file explorer): don't skip /run/media
Code check / Check code (push) Successful in 1m22s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 21:23:39 +05:00
Boria138 c74d209dbd chore(ci): replace uv github action to manual install
Code check / Check code (pull_request) Successful in 1m25s
Code check / Check code (push) Successful in 1m20s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 21:04:59 +05:00
Boria138 5b257d3b62 fix(ci): disable cache from node
Code check / Check code (push) Successful in 1m59s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 20:53:17 +05:00
Boria138 4dcf1dbe6d fix(ci): I forget @
Code check / Check code (push) Failing after 54s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 20:50:47 +05:00
Boria138 8d6fe4aa65 chore(ci): install node 20 for uv
Code check / Check code (push) Failing after 4s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 20:48:40 +05:00
Boria138 022eb3f1e9 chore(changelog): update
Check Translations / check-translations (push) Successful in 46s
Code check / Check code (push) Failing after 10s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 20:41:42 +05:00
Boria138 11b847ed05 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 20:36:02 +05:00
Boria138 1e4e0127a4 fix(i18n): add translation for File Explorer window title
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 20:33:19 +05:00
Boria138 c045aa7a56 fix(input_manager): correct button mappings for increase/decrease size actions
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 20:31:22 +05:00
Boria138 f18e7bae6b chore(changelog): update
Code check / Check code (push) Failing after 15s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 11:28:02 +05:00
Boria138 dcf8904037 feat(input_manager): enable cursor movement in QLineEdit with left/right arrows
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 11:25:26 +05:00
Boria138 f9d24e385d fix(input_manager): prevent tab switching when using left/right arrows in QLineEdit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 11:22:06 +05:00
Boria138 09028931be feat: use Backspace for move to parent directory in FileExplorer
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-23 11:12:15 +05:00
Boria138 0294c90c54 chore(changelog): update
Code check / Check code (push) Successful in 2m43s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-19 17:54:40 +05:00
Boria138 17dfef2d27 chore(tray): drop
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-19 17:52:09 +05:00
Renovate Bot f0690f8811 fix(deps): lock file maintenance python dependencies
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-14 22:33:43 +05:00
Boria138 ac20447ba3 chore(renovate): skip broken packages
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-14 22:19:25 +05:00
Boria138 ba143c15a8 chore(renovate): added uv to container
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-14 22:02:04 +05:00
Boria138 13068f3959 chore(renovate): fix work with uv
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-14 22:02:04 +05:00
Alex Smith c8360d08ca fix(downloader): Clear cache entry for non-existent file 2025-08-14 21:42:18 +05:00
Boria138 b070ff1fca fix(animations): fix all Qpainter conflicts
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-14 13:14:28 +05:00
Boria138 b5a2f41bdf chore(pre-commit): update all hooks
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-13 13:11:33 +05:00
Boria138 9a37f31841 chore(renovate): use config from remote repo
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-13 12:55:51 +05:00
Boria138 aeed0112cd chore(renovate): use latest container allways
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-13 12:52:13 +05:00
Boria138 027ae68d4d chore(renovate): added pre-commit
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-13 12:50:39 +05:00
Boria138 37d41fef8d feat: use cef on EGS too
Code check / Check code (push) Successful in 1m34s
renovate / renovate (push) Successful in 57s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-10 13:02:39 +05:00
Boria138 e37422fc95 chore(todo): update
Code check / Check code (push) Successful in 1m38s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-10 12:45:41 +05:00
Boria138 d7951e8587 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-10 12:44:22 +05:00
Boria138 556533785a chore(build): added python-websocket-client to dependency
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-10 12:39:41 +05:00
Boria138 a13aca4d84 fix: websocket-client dependency
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-10 12:36:59 +05:00
Boria138 35736e1723 chore: replace json to orjson
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-10 12:35:12 +05:00
Alex Smith 24a7c2e657 feat(steam): using steam cef when deleting a shortcut 2025-08-10 12:25:19 +05:00
Alex Smith 279f7ec36b feat(steam): added support steam cef 2025-08-10 12:25:05 +05:00
Boria138 41f6943998 chore(changelog): update
Code check / Check code (push) Successful in 2m2s
renovate / renovate (push) Successful in 40s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-07 15:15:16 +05:00
Boria138 3bf10dc4cd chore(documentation): fix anchors
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-07 15:13:52 +05:00
Boria138 33b96d3185 chore(documentation): mention goBackDetailPage animation in theme guide
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-07 15:05:39 +05:00
Boria138 3573b8e373 chore: temporary drop standart-light theme
Code check / Check code (push) Successful in 1m59s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-07 14:23:35 +05:00
Boria138 582ddd2218 feat: added animation to goBackDetailPage
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-07 14:22:22 +05:00
Boria138 2753e53a4d refactor: move animations to separate module
Code check / Check code (push) Successful in 1m50s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-07 10:29:13 +05:00
Boria138 46973f35e1 chore: drop none from animation
Code check / Check code (push) Successful in 1m45s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-04 09:57:56 +05:00
Boria138 8e34c92385 chore(changelog): update
Code check / Check code (push) Successful in 1m33s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-03 20:36:12 +05:00
Boria138 d50b63bca7 fix(steam_api): re-download json lists if it is broken
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-03 20:33:00 +05:00
Boria138 6966253e9b fix(add_game_dialog): check exe path before add game
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-03 20:14:02 +05:00
Boria138 13f3af7a42 fix(hltb): return None if all time zero
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-03 20:03:15 +05:00
Boria138 c7bed80570 chore(changelog): update
renovate / renovate (push) Successful in 31s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-02 14:04:48 +05:00
Boria138 6fde7c18db chore(documentation): fix anchors
Code check / Check code (push) Successful in 1m39s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-02 11:57:01 +05:00
Boria138 37782d4375 chore(documentation): mention animation
Code check / Check code (push) Successful in 1m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-02 11:51:28 +05:00
Boria138 0a8a7c538c added more animation to detail_page
Code check / Check code (push) Successful in 1m37s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-08-02 11:35:23 +05:00
Gitea Actions 9cc4b8c51d chore: update steam apps list 2025-08-01T13:12:19Z 2025-08-01 13:12:19 +00:00
Boria138 397dede2be feat: use devicePixelRatio for image scale
Code check / Check code (push) Successful in 1m29s
Fetch Data / build (push) Failing after 49s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-29 12:15:22 +05:00
Boria138 6a66f37ba1 fix: fix open context menu on gamepad
Code check / Check code (push) Successful in 1m24s
renovate / renovate (push) Successful in 1m3s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-25 12:22:24 +05:00
Boria138 4db1cce32c chore(changelog): update
Code check / Check code (push) Successful in 1m29s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-25 11:44:43 +05:00
Boria138 edaeca4f11 feat: set focus on first item of context menu
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-25 11:39:40 +05:00
Boria138 11d44f091d fix(egs): prevent legendary list call when user.json is missing
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-25 11:32:14 +05:00
Boria138 09d9c6510a chore: reduced duration of card opening animation
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-25 11:13:54 +05:00
Boria138 272be51bb0 feat(dev-script): added appimage cleaner script
Build Check - AppImage, Arch, Fedora / Build AppImage (pull_request) Successful in 2m22s
Code check / Check code (push) Successful in 1m28s
Build Check - AppImage, Arch, Fedora / changes (pull_request) Successful in 28s
Build Check - AppImage, Arch, Fedora / Build Fedora RPM (42) (pull_request) Has been skipped
Build Check - AppImage, Arch, Fedora / Build Fedora RPM (41) (pull_request) Has been skipped
Build Check - AppImage, Arch, Fedora / Build Fedora RPM (rawhide) (pull_request) Has been skipped
Build Check - AppImage, Arch, Fedora / Build Arch Package (pull_request) Has been skipped
Code check / Check code (pull_request) Successful in 1m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-22 14:17:16 +05:00
Boria138 63933172f9 chore: pulse dropped from autoinstals
Code check / Check code (push) Successful in 1m27s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-21 19:22:05 +05:00
Boria138 85e9aba836 bump ver
Build AppImage, Arch and Fedora Packages / Build Arch Package (push) Successful in 1m19s
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (41) (push) Successful in 58s
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (42) (push) Successful in 1m1s
Build AppImage, Arch and Fedora Packages / Create and Publish Release (push) Successful in 49s
Build AppImage, Arch and Fedora Packages / Build AppImage (push) Successful in 2m52s
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (rawhide) (push) Successful in 52s
Code check / Check code (push) Successful in 1m27s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-21 15:09:15 +05:00
Boria138 4d3499d2c1 chore(appimage): use appimage builder from git
Build Check - AppImage, Arch, Fedora / Build AppImage (pull_request) Successful in 2m55s
Build Check - AppImage, Arch, Fedora / Build Fedora RPM (41) (pull_request) Has been skipped
Build Check - AppImage, Arch, Fedora / Build Fedora RPM (42) (pull_request) Has been skipped
Build Check - AppImage, Arch, Fedora / Build Arch Package (pull_request) Has been skipped
Build Check - AppImage, Arch, Fedora / changes (pull_request) Successful in 20s
Code check / Check code (pull_request) Successful in 1m24s
Build Check - AppImage, Arch, Fedora / Build Fedora RPM (rawhide) (pull_request) Has been skipped
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-21 14:55:23 +05:00
Boria138 a13c15bc28 chore(ci): add Gitea workflow for AppImage, Arch & Fedora builds test
Build AppImage, Arch and Fedora Packages / Build AppImage (push) Has been cancelled
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (41) (push) Has been cancelled
Code and build check / Build with uv (push) Successful in 49s
Build AppImage, Arch and Fedora Packages / Build Arch Package (push) Has been cancelled
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (rawhide) (push) Has been cancelled
Build AppImage, Arch and Fedora Packages / Create and Publish Release (push) Has been cancelled
Build AppImage, Arch and Fedora Packages / Build Fedora RPM (42) (push) Has started running
Code and build check / Check code (push) Successful in 1m26s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-20 23:48:40 +05:00
Boria138 83076d3dfc chore(changelog): update
Code and build check / Check code (push) Successful in 1m25s
Code and build check / Build with uv (push) Successful in 48s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-20 12:34:06 +05:00
Boria138 04aaf68e36 fix: Allow context menu for PortProton games without valid exe
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-20 12:31:36 +05:00
Boria138 e91037708a fix(main_window): prevent RuntimeError when modifying deleted QVBoxLayout in HLTB callback
Code and build check / Build with uv (push) Successful in 52s
renovate / renovate (push) Successful in 22s
Code and build check / Check code (push) Successful in 1m35s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-18 20:54:45 +05:00
Boria138 1b743026c2 chore(build): clean appimage more agressive
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-18 15:26:51 +05:00
Boria138 30b4cec4d1 chore(todo): fix typos
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-18 00:02:11 +05:00
Boria138 db68c9050c chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-16 20:16:02 +05:00
Boria138 1a93d5b82c chore(build): rework appimage dependency list
Code and build check / Build with uv (push) Successful in 50s
Code and build check / Check code (push) Successful in 1m31s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-16 20:04:56 +05:00
Boria138 cc0690cf9e fix: added perllib to appimage for fix exiftool work
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-16 19:58:56 +05:00
Boria138 809ba2c976 chore(readme): mention all licences
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-16 19:42:22 +05:00
Boria138 68c9636e10 chore(todo): update
Code and build check / Check code (push) Successful in 2m28s
Code and build check / Build with uv (push) Successful in 53s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-16 16:56:18 +05:00
Boria138 f0df1f89be chore(changelog): update
Code and build check / Build with uv (push) Successful in 53s
Code and build check / Check code (push) Successful in 1m34s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-14 20:04:34 +05:00
Boria138 f25224b668 refactor(cli): remove unused --session flag
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-14 20:00:43 +05:00
Boria138 0cda47fdfd fix(input_manager): disable fullscreen toggle from keyboard/gamepad in gamescope session
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-14 19:58:05 +05:00
Boria138 1a8c733580 chore(todo): update
Code and build check / Check code (push) Successful in 1m35s
Code and build check / Build with uv (push) Successful in 53s
Check Translations / check-translations (push) Successful in 17s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-14 13:23:44 +05:00
Boria138 2476bea32a chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-14 13:19:36 +05:00
Boria138 1bbc95a5c1 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-14 13:18:40 +05:00
Boria138 d12b801191 feat: added data from How Long To Beat to GameCard
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-14 13:15:17 +05:00
Boria138 233dab1269 feat: added module for work with howlongtobeat.com
Code and build check / Build with uv (push) Successful in 54s
Code and build check / Check code (push) Successful in 1m32s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-13 08:52:15 +05:00
Boria138 700a478598 chore(changelog): update
Code and build check / Check code (push) Successful in 1m34s
Code and build check / Build with uv (push) Successful in 52s
renovate / renovate (push) Successful in 22s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-12 11:49:43 +05:00
Boria138 0fe727331f fix: portprotonqt-session-select path
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-12 11:48:39 +05:00
Boria138 599644c4f6 fix(portproton-api): use normalize name from steam-api
Code and build check / Build with uv (push) Successful in 50s
Code and build check / Check code (push) Successful in 1m31s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-11 13:49:26 +05:00
Gitea Actions 409e06f531 chore: update steam apps list 2025-07-11T08:34:58Z 2025-07-11 08:34:59 +00:00
Boria138 4818cf5b67 fix(dev-scripts): parse all topics from linux-gaming
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-11 13:31:28 +05:00
Boria138 59bfcdbbba feat(dev-scripts): add DEBUG_MODE to disable SSL verification
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-11 10:39:06 +05:00
Boria138 989af36e5b feat(dev-scripts): add environment-based source toggling
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-11 10:29:17 +05:00
Boria138 8300857aaa chore(changelog): update
Code and build check / Check code (push) Successful in 1m36s
Code and build check / Build with uv (push) Successful in 52s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-10 23:09:34 +05:00
Boria138 aea1a36cfd feat: open ppdb on portproton badge click
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-10 23:07:18 +05:00
Boria138 f7a4fa6a17 chore(docs): move TODOs from README to TODO.md
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-10 22:01:49 +05:00
Boria138 230ce904d9 chore(build): drop update-information from appimage
Code and build check / Check code (push) Successful in 1m33s
Code and build check / Build with uv (push) Successful in 54s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-07 18:11:11 +05:00
Boria138 23d5aaf0ce chore(changelog): update
Code and build check / Build with uv (push) Successful in 51s
Code and build check / Check code (push) Successful in 1m30s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-07 11:24:41 +05:00
Boria138 37e099d0b0 fix(downloader): enable proxy support for legendary GitHub API requests
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-07 11:22:35 +05:00
Boria138 bd6fc73d6f feat: add game assets downloading from repository
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-07 11:17:38 +05:00
Boria138 341e6e048f chore(licence): merge all licenses to one
Code and build check / Check code (push) Successful in 1m36s
Code and build check / Build with uv (push) Successful in 54s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-07 10:24:43 +05:00
Boria138 e57770f796 chore(changelog): update
Check Translations / check-translations (push) Successful in 18s
Code and build check / Check code (push) Successful in 1m43s
Code and build check / Build with uv (push) Successful in 1m0s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 17:58:30 +05:00
Boria138 49cd77ee38 chore(localization): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 17:56:57 +05:00
Boria138 d26b9774a0 feat(add_game): download cover if link is provided
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 17:54:53 +05:00
Boria138 9a27d67dc0 chore(changelog): update
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 17:14:29 +05:00
Boria138 b0fff5af0c ci(pre-commit): exclude QSS themes from pyright and target them in qss check
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 17:11:35 +05:00
Boria138 e54fac8aa4 feat: exclude custom_data from package
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 17:08:40 +05:00
Boria138 f111674260 feat: rename launchers custom_data
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 17:05:07 +05:00
Boria138 a5df7f0477 chore(changelog): update
Code and build check / Check code (push) Successful in 1m35s
Code and build check / Build with uv (push) Successful in 58s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 13:19:13 +05:00
Boria138 f2954497d9 chore(readme): update todo
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 13:18:04 +05:00
Boria138 80bbab692d chore(documentation): mention localization in custom data
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 13:17:07 +05:00
Boria138 731e919884 feat: added translate support to custom data
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-06 13:10:37 +05:00
Boria138 0efc3a8701 chore(changelog): update
renovate / renovate (push) Successful in 28s
Code and build check / Check code (push) Successful in 1m50s
Code and build check / Build with uv (push) Successful in 1m8s
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
2025-07-05 15:43:46 +05:00
Dervart fa847d167b optimize covers to reduce file size thanks to @Vector_null
Code and build check / Check code (pull_request) Successful in 1m41s
Code and build check / Build with uv (pull_request) Successful in 1m1s
2025-07-05 17:02:18 +07:00
903 changed files with 289077 additions and 26881 deletions

No files matched your search

-131
View File
@@ -1,131 +0,0 @@
name: Nightly Build - AppImage, Arch, Fedora
on:
workflow_dispatch:
env:
PKGDEST: "/tmp/portprotonqt"
PACKAGE: "portprotonqt"
jobs:
build-appimage:
name: Build AppImage
runs-on: ubuntu-22.04
steps:
- uses: https://gitea.com/actions/checkout@v4
- name: Install required dependencies
run: |
sudo apt update
sudo apt install -y binutils coreutils desktop-file-utils gtk-update-icon-cache fakeroot fuse libgdk-pixbuf2.0-dev patchelf python3-pip python3-dev python3-setuptools squashfs-tools strace util-linux zsync
- name: Install tools
run: pip3 install appimage-builder uv
- name: Build AppImage
run: |
cd build-aux
sed -i '/app_info:/,/- exec:/ s/^\(\s*version:\s*\).*/\1"0"/' AppImageBuilder.yml
appimage-builder
- name: Upload AppImage
uses: https://gitea.com/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-AppImage
path: build-aux/PortProtonQt*.AppImage
build-fedora:
name: Build Fedora RPM
runs-on: ubuntu-latest
strategy:
matrix:
fedora_version: [41, 42, rawhide]
container:
image: fedora:${{ matrix.fedora_version }}
options: --privileged
steps:
- name: Install build dependencies
run: |
dnf install -y git rpmdevtools python3-devel python3-wheel python3-pip \
python3-build pyproject-rpm-macros python3-setuptools \
redhat-rpm-config nodejs npm
- name: Setup rpmbuild environment
run: |
useradd rpmbuild -u 5002 -g users || true
mkdir -p /home/rpmbuild/{BUILD,RPMS,SPECS,SRPMS,SOURCES}
chown -R rpmbuild:users /home/rpmbuild
echo '%_topdir /home/rpmbuild' > /home/rpmbuild/.rpmmacros
- name: Checkout repo
uses: https://gitea.com/actions/checkout@v4
- name: Copy fedora.spec
run: |
cp build-aux/fedora-git.spec /home/rpmbuild/SPECS/${{ env.PACKAGE }}.spec
chown -R rpmbuild:users /home/rpmbuild
- name: Build RPM
run: |
su rpmbuild -c "rpmbuild -ba /home/rpmbuild/SPECS/${{ env.PACKAGE }}.spec"
- name: Upload RPM package
uses: https://gitea.com/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-RPM-Fedora-${{ matrix.fedora_version }}
path: /home/rpmbuild/RPMS/**/*.rpm
build-arch:
name: Build Arch Package
runs-on: ubuntu-22.04
container:
image: archlinux:base-devel
volumes:
- /usr:/usr-host
- /opt:/opt-host
options: --privileged
steps:
- name: Prepare container
run: |
pacman -Sy --noconfirm --disable-download-timeout --needed git wget gnupg nodejs npm
sed -i 's/#MAKEFLAGS="-j2"/MAKEFLAGS="-j$(nproc) -l$(nproc)"/g' /etc/makepkg.conf
sed -i 's/OPTIONS=(.*)/OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge lto)/g' /etc/makepkg.conf
yes | pacman -Scc
pacman-key --init
pacman -S --noconfirm archlinux-keyring
mkdir -p /__w/portproton-repo
pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com
pacman-key --lsign-key 3056513887B78AEB
pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst'
pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'
cat << EOM >> /etc/pacman.conf
[chaotic-aur]
Include = /etc/pacman.d/chaotic-mirrorlist
EOM
pacman -Syy
useradd -m user -G wheel && echo "user ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
echo "PACKAGER=\"Boris Yumankulov <boria138@altlinux.org>\"" >> /etc/makepkg.conf
chown user -R /tmp
chown user -R ..
- name: Build
run: |
cd /__w/portproton-repo
git clone https://git.linux-gaming.ru/Boria138/PortProtonQt.git
cd /__w/portproton-repo/PortProtonQt/build-aux
chown user -R ..
su user -c "yes '' | makepkg --noconfirm -s -p PKGBUILD-git"
- name: Checkout
uses: https://gitea.com/actions/checkout@v4
- name: Upload Arch package
uses: https://gitea.com/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-Arch
path: ${{ env.PKGDEST }}/*
@@ -0,0 +1,56 @@
name: Build vk_gpu_info on Debian 11
on:
workflow_dispatch:
push:
branches:
- main
- scripts
paths:
- 'build-aux/src/vk_gpu_info.c'
- '.gitea/workflows/build-vk-gpu-info-debian.yml'
jobs:
build-debian11:
name: Build vk_gpu_info on Debian 11
runs-on: ubuntu-latest
container:
image: debian:11
options: --privileged
steps:
- name: Install dependencies
run: |
apt-get update
apt-get install -y build-essential pkg-config libvulkan-dev git curl wget nodejs npm
- name: Set up Node.js
uses: https://git.linux-gaming.ru/actions/setup-node@v2
with:
node-version: 20
- name: Checkout code
uses: https://git.linux-gaming.ru/actions/checkout@v3
- name: Compile vk_gpu_info
run: |
mkdir -p build-aux/bin
gcc -o build-aux/bin/vk_gpu_info build-aux/src/vk_gpu_info.c -lvulkan
- name: Test vk_gpu_info execution
run: |
# Check if the executable was created
if [ -f "build-aux/bin/vk_gpu_info" ]; then
echo "vk_gpu_info executable created successfully"
# Try to run it (may fail if no Vulkan devices present, but that's OK for build test)
timeout 10s build-aux/bin/vk_gpu_info || echo "vk_gpu_info ran but may have failed due to lack of Vulkan hardware (expected in CI)"
else
echo "ERROR: vk_gpu_info executable was not created"
exit 1
fi
- name: Upload vk_gpu_info binary
uses: https://git.linux-gaming.ru/actions/gitea-upload-artifact@v4
with:
name: vk_gpu_info-debian11-binary
path: build-aux/bin/vk_gpu_info
+97 -36
View File
@@ -1,58 +1,77 @@
name: Build AppImage, Arch and Fedora Packages
name: Build AppImage, Arch, Fedora and Debian Packages
on:
workflow_dispatch:
inputs:
mode:
description: "Run mode"
required: true
default: "hotfix"
type: choice
options:
- hotfix
- release
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+'
- 'v[0-9]*.[0-9]*'
env:
# Common version, will be used for tagging the release
VERSION: 0.1.3
VERSION: 1.4.1
PKGDEST: "/tmp/portprotonqt"
PACKAGE: "portprotonqt"
GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
RUN_MODE: ${{ github.event_name == 'workflow_dispatch' && inputs.mode || 'release' }}
jobs:
build-appimage:
name: Build AppImage
runs-on: ubuntu-22.04
container:
image: archlinux:base-devel
options: --privileged --device /dev/fuse
steps:
- uses: https://gitea.com/actions/checkout@v4
- name: Prepare container
uses: https://git.linux-gaming.ru/actions/anylinux-setup-action@7278cbb7c3692fce7241d427614ef7984192f138 # v3
- name: Install required dependencies
- name: Install CI dependencies
run: pacman -S --noconfirm --needed nodejs npm
- uses: https://git.linux-gaming.ru/actions/checkout@v4
- name: Install appimage dependencies
run: |
sudo apt update
sudo apt install -y binutils coreutils desktop-file-utils gtk-update-icon-cache fakeroot fuse libgdk-pixbuf2.0-dev patchelf python3-pip python3-dev python3-setuptools squashfs-tools strace util-linux zsync
- name: Install tools
run: pip3 install appimage-builder uv
cd build-aux/AppImage
chmod +x get-dependencies.sh portprotonqt-appimage.sh
if [ "${{ env.RUN_MODE }}" = "hotfix" ]; then
./get-dependencies.sh --branch "${{ github.ref_name }}"
elif [ "${{ github.event_name }}" = "push" ]; then
./get-dependencies.sh --tag "${{ github.ref_name }}"
else
./get-dependencies.sh
fi
- name: Build AppImage
run: |
cd build-aux
appimage-builder
cd build-aux/AppImage
./portprotonqt-appimage.sh
- name: Upload AppImage
uses: https://gitea.com/actions/gitea-upload-artifact@v4
uses: https://git.linux-gaming.ru/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-AppImage
path: build-aux/PortProtonQt*.AppImage*
path: build-aux/AppImage/dist/*.AppImage*
build-arch:
name: Build Arch Package
runs-on: ubuntu-22.04
container:
image: archlinux:base-devel
volumes:
- /usr:/usr-host
- /opt:/opt-host
options: --privileged
steps:
- name: Prepare container
run: |
pacman -Sy --noconfirm --disable-download-timeout --needed git wget gnupg nodejs npm
pacman -Syuu --noconfirm --disable-download-timeout --needed git wget gnupg nodejs npm
sed -i 's/#MAKEFLAGS="-j2"/MAKEFLAGS="-j$(nproc) -l$(nproc)"/g' /etc/makepkg.conf
sed -i 's/OPTIONS=(.*)/OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge lto)/g' /etc/makepkg.conf
yes | pacman -Scc
@@ -74,19 +93,22 @@ jobs:
chown user -R /tmp
chown user -R ..
- name: Checkout
uses: https://git.linux-gaming.ru/actions/checkout@v4
- name: Build
run: |
cd /__w/portproton-repo
git clone https://git.linux-gaming.ru/Boria138/PortProtonQt.git
cp -r "$GITHUB_WORKSPACE" PortProtonQt
cd /__w/portproton-repo/PortProtonQt/build-aux
if [ "${{ env.RUN_MODE }}" = "hotfix" ]; then
sed -i "s|^source=.*|source=(\"git+https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt.git#branch=${{ github.ref_name }}\")|" PKGBUILD
fi
chown user -R ..
su user -c "yes '' | makepkg --noconfirm -s"
- name: Checkout
uses: https://gitea.com/actions/checkout@v4
- name: Upload Arch package
uses: https://gitea.com/actions/gitea-upload-artifact@v4
uses: https://git.linux-gaming.ru/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-Arch
path: ${{ env.PKGDEST }}/*
@@ -97,7 +119,7 @@ jobs:
strategy:
matrix:
fedora_version: [41, 42, rawhide]
fedora_version: [43, 44, 45, rawhide]
container:
image: fedora:${{ matrix.fedora_version }}
@@ -106,9 +128,11 @@ jobs:
steps:
- name: Install build dependencies
run: |
dnf install -y git rpmdevtools python3-devel python3-wheel python3-pip \
python3-build pyproject-rpm-macros python3-setuptools \
redhat-rpm-config nodejs npm
dnf upgrade -y --exclude=openh264,mozilla-openh264
dnf install -y --disablerepo=fedora-cisco-openh264 \
git rpmdevtools meson ninja-build python3-devel \
systemd-rpm-macros vulkan-loader-devel redhat-rpm-config nodejs npm \
gcc gettext 'pkgconfig(sdl3)'
- name: Setup rpmbuild environment
run: |
@@ -118,11 +142,14 @@ jobs:
echo '%_topdir /home/rpmbuild' > /home/rpmbuild/.rpmmacros
- name: Checkout repo
uses: https://gitea.com/actions/checkout@v4
uses: https://git.linux-gaming.ru/actions/checkout@v4
- name: Copy fedora.spec
run: |
cp build-aux/fedora.spec /home/rpmbuild/SPECS/${{ env.PACKAGE }}.spec
if [ "${{ env.RUN_MODE }}" = "hotfix" ]; then
sed -i "s|git checkout v%{pypi_version}|git checkout ${{ github.ref_name }}|" /home/rpmbuild/SPECS/${{ env.PACKAGE }}.spec
fi
chown -R rpmbuild:users /home/rpmbuild
- name: Build RPM
@@ -130,17 +157,47 @@ jobs:
su rpmbuild -c "rpmbuild -ba /home/rpmbuild/SPECS/${{ env.PACKAGE }}.spec"
- name: Upload RPM package
uses: https://gitea.com/actions/gitea-upload-artifact@v4
uses: https://git.linux-gaming.ru/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-RPM-Fedora-${{ matrix.fedora_version }}
path: /home/rpmbuild/RPMS/**/*.rpm
build-debian:
name: Build Debian Package
runs-on: ubuntu-latest
container:
image: debian:13
options: --privileged
steps:
- name: Install build dependencies
run: |
apt-get update
apt-get install -y build-essential debhelper dpkg-dev gettext git \
libsdl3-dev libvulkan-dev meson ninja-build nodejs npm \
pkgconf python3
- name: Checkout
uses: https://git.linux-gaming.ru/actions/checkout@v4
- name: Build Debian package
run: |
DEB_BUILD_OPTIONS=noautodbgsym dpkg-buildpackage -us -uc -b
mkdir -p dist/deb
mv ../*.deb dist/deb/
- name: Upload Debian package
uses: https://git.linux-gaming.ru/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-DEB-Debian-13
path: dist/deb/*
release:
name: Create and Publish Release
needs: [build-appimage, build-arch, build-fedora]
if: github.event_name != 'workflow_dispatch' || inputs.mode == 'release'
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://git.linux-gaming.ru/actions/checkout@v4
- name: Install required dependencies
run: |
@@ -148,7 +205,8 @@ jobs:
sudo apt install -y original-awk unzip
- name: Download all artifacts
uses: https://gitea.com/actions/download-artifact@v3
uses: https://git.linux-gaming.ru/actions/download-artifact@v3
continue-on-error: true
with:
path: release/
@@ -157,6 +215,7 @@ jobs:
mkdir -p extracted
find release/ -name '*.zip' -exec unzip -o {} -d extracted/ \;
find extracted/ -type f -exec mv {} release/ \;
find release/ -name '*.zip' -delete
rm -rf extracted/
- name: Extract changelog for version
@@ -166,11 +225,13 @@ jobs:
awk "/^## \\[$VERSION\\]/ {flag=1; next} /^## \\[/ || /^---/ {flag=0} flag" CHANGELOG.md > changelog.txt
- name: Release
uses: https://gitea.com/actions/gitea-release-action@v1
uses: https://git.linux-gaming.ru/actions/gitea-release-action@v1
env:
NODE_OPTIONS: '--experimental-fetch' # if nodejs < 18
with:
body_path: changelog.txt
token: ${{ env.GITEA_TOKEN }}
tag_name: v${{ env.VERSION }}
prerelease: true
prerelease: false
files: release/**/*
sha256sum: true
sha256sum: false
-29
View File
@@ -1,29 +0,0 @@
name: Check Translations
run-name: Check spelling in translation files
on:
push:
branches: [main]
paths:
- 'portprotonqt/locales/**'
pull_request:
paths:
- 'portprotonqt/locales/**'
workflow_dispatch:
jobs:
check-translations:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: https://gitea.com/actions/checkout@v4
- name: Set up Python
uses: https://gitea.com/actions/setup-python@v5
with:
python-version-file: "pyproject.toml"
- name: Install Python dependencies
run: pip install pyaspeller babel
- name: Run spell check
run: python dev-scripts/l10n.py --spellcheck
+13 -25
View File
@@ -1,31 +1,36 @@
name: Code and build check
name: Code check
on:
pull_request:
branches: [main]
branches: [main, scripts]
paths-ignore:
- "data/**"
- "*.md"
- "dev-scripts/**"
- "portprotonqt/locales/**"
push:
branches: [main]
branches: [main, scripts]
paths-ignore:
- "data/**"
- "*.md"
- "dev-scripts/**"
- "portprotonqt/locales/**"
workflow_dispatch:
jobs:
pre-commit:
name: Check code
runs-on: ubuntu-latest
container:
image: archlinux:base-devel@sha256:4894f5a268c696fad671966f383175a13faf433c9d9c88cdd4e32eaa2d18838b
steps:
- uses: https://gitea.com/actions/checkout@v4
- name: Install system dependencies
run: |
pacman -Syuu --noconfirm --disable-download-timeout
pacman -S --noconfirm --needed git nodejs npm mesa libarchive sdl3 pyside6 qt6-svg qt6-imageformats uv
pacman -Scc --noconfirm
- name: Install uv
uses: https://github.com/astral-sh/setup-uv@v6
with:
enable-cache: true
- uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
- name: Sync dependencies into venv
run: uv sync --all-extras --dev
@@ -35,20 +40,3 @@ jobs:
run: |
source .venv/bin/activate
pre-commit run --show-diff-on-failure --color=always --all-files
build-uv:
name: Build with uv
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- name: Install uv
uses: https://github.com/astral-sh/setup-uv@v6
with:
enable-cache: true
- name: Sync dependencies
run: uv sync
- name: Build project
run: uv build
+22
View File
@@ -0,0 +1,22 @@
name: Download stats
on:
schedule:
- cron: '0 0 1 * *'
workflow_dispatch: {}
jobs:
stats:
runs-on: ubuntu-latest
steps:
- uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
with:
fetch-depth: 0
- name: Update download stats
env:
GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
GITEA_ACTOR: ${{ gitea.actor }}
GITEA_SERVER: "git.linux-gaming.ru"
GITEA_REPOSITORY: ${{ gitea.repository }}
run: bash dev-scripts/get_download_stats.sh
+3 -3
View File
@@ -7,14 +7,14 @@ on:
jobs:
build:
if: gitea.repository == 'Boria138/PortProtonQt'
if: gitea.repository == 'Linux-Gaming/PortProtonQt'
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: https://gitea.com/actions/checkout@v4
uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
- name: Set up Python
uses: https://gitea.com/actions/setup-python@v5
uses: https://git.linux-gaming.ru/actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7
with:
python-version-file: "pyproject.toml"
+285
View File
@@ -0,0 +1,285 @@
name: Package Build - AppImage, Arch, Fedora, Debian
on:
workflow_dispatch:
pull_request:
paths:
- 'build-aux/AppImage/**'
- 'build-aux/fedora-git.spec'
- 'build-aux/PKGBUILD-git'
- 'debian/**'
- '.gitea/workflows/package-build.yml'
env:
BUILD_BRANCH: ${{ github.ref_name }}
PKGDEST: "/tmp/portprotonqt"
PACKAGE: "portprotonqt"
PR_REPO_URL: ${{ github.event.pull_request.head.repo.clone_url }}
PR_BRANCH: ${{ github.head_ref }}
jobs:
changes:
runs-on: ubuntu-latest
outputs:
appimage: ${{ steps.check.outputs.appimage }}
fedora: ${{ steps.check.outputs.fedora }}
arch: ${{ steps.check.outputs.arch }}
debian: ${{ steps.check.outputs.debian }}
steps:
- uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
if: github.event_name == 'pull_request'
with:
fetch-depth: 0
- name: Ensure git is installed
if: github.event_name == 'pull_request'
run: |
sudo apt update
sudo apt install -y git
- name: Check changed files
if: github.event_name == 'pull_request'
id: check
run: |
git diff --name-only ${{ github.event.pull_request.base.sha }}...${{ github.event.pull_request.head.sha }} > changed_files.txt
echo "Changed files:"
cat changed_files.txt
if grep -q "build-aux/AppImage/" changed_files.txt; then
echo "appimage=true" >> $GITHUB_OUTPUT
else
echo "appimage=false" >> $GITHUB_OUTPUT
fi
if grep -q "build-aux/fedora-git.spec" changed_files.txt; then
echo "fedora=true" >> $GITHUB_OUTPUT
else
echo "fedora=false" >> $GITHUB_OUTPUT
fi
if grep -q "build-aux/PKGBUILD-git" changed_files.txt; then
echo "arch=true" >> $GITHUB_OUTPUT
else
echo "arch=false" >> $GITHUB_OUTPUT
fi
if grep -q "debian/" changed_files.txt; then
echo "debian=true" >> $GITHUB_OUTPUT
else
echo "debian=false" >> $GITHUB_OUTPUT
fi
- name: Skip change detection
if: github.event_name == 'workflow_dispatch'
run: true
build-appimage:
name: Build AppImage
runs-on: ubuntu-22.04
needs: changes
if: needs.changes.outputs.appimage == 'true' || github.event_name == 'workflow_dispatch'
container:
image: archlinux:base-devel@sha256:4894f5a268c696fad671966f383175a13faf433c9d9c88cdd4e32eaa2d18838b
options: --privileged --device /dev/fuse
steps:
- name: Prepare container
uses: https://git.linux-gaming.ru/actions/anylinux-setup-action@7ff2bdc2fe97f9a4c6a4007f5f42fb4941f49fee # v4
- name: Install CI dependencies
run: pacman -S --noconfirm --needed nodejs npm
- uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
if: github.event_name == 'pull_request'
- uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
if: github.event_name == 'workflow_dispatch'
with:
ref: ${{ env.BUILD_BRANCH }}
- name: Install appimage dependencies
run: |
cd build-aux/AppImage
chmod +x get-dependencies.sh portprotonqt-appimage.sh
if [ "${{ github.event_name }}" = "pull_request" ]; then
./get-dependencies.sh --local --branch "${{ env.PR_BRANCH }}" --repo "${{ env.PR_REPO_URL }}"
else
./get-dependencies.sh --local --branch "${{ env.BUILD_BRANCH }}"
fi
- name: Build AppImage
run: |
cd build-aux/AppImage
./portprotonqt-appimage.sh
- name: Upload AppImage
uses: https://git.linux-gaming.ru/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-AppImage
path: build-aux/AppImage/dist/*.AppImage*
build-fedora:
name: Build Fedora RPM
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.fedora == 'true' || github.event_name == 'workflow_dispatch'
strategy:
matrix:
fedora_version: [43, 44, 45, rawhide]
container:
image: fedora:${{ matrix.fedora_version }}
options: --privileged
steps:
- name: Install build dependencies
run: |
dnf upgrade -y --exclude=openh264,mozilla-openh264
dnf install -y --disablerepo=fedora-cisco-openh264 \
git rpmdevtools meson ninja-build python3-devel \
systemd-rpm-macros vulkan-loader-devel redhat-rpm-config nodejs npm \
gcc gettext 'pkgconfig(sdl3)'
- name: Setup rpmbuild environment
run: |
useradd rpmbuild -u 5002 -g users || true
mkdir -p /home/rpmbuild/{BUILD,RPMS,SPECS,SRPMS,SOURCES}
chown -R rpmbuild:users /home/rpmbuild
echo '%_topdir /home/rpmbuild' > /home/rpmbuild/.rpmmacros
- name: Checkout PR
uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
if: github.event_name == 'pull_request'
- name: Checkout branch
uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
if: github.event_name == 'workflow_dispatch'
with:
ref: ${{ env.BUILD_BRANCH }}
- name: Copy fedora.spec
run: |
if [ "${{ github.event_name }}" = "pull_request" ]; then
sed "s|git clone https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt.git|git clone -b ${{ env.PR_BRANCH }} ${{ env.PR_REPO_URL }}|" \
build-aux/fedora-git.spec > /home/rpmbuild/SPECS/${{ env.PACKAGE }}.spec
else
sed "s|git clone https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt.git|git clone -b ${{ env.BUILD_BRANCH }} https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt.git|" \
build-aux/fedora-git.spec > /home/rpmbuild/SPECS/${{ env.PACKAGE }}.spec
fi
chown -R rpmbuild:users /home/rpmbuild
- name: Build RPM
run: |
su rpmbuild -c "rpmbuild -ba /home/rpmbuild/SPECS/${{ env.PACKAGE }}.spec"
- name: Upload RPM package
uses: https://git.linux-gaming.ru/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-RPM-Fedora-${{ matrix.fedora_version }}
path: /home/rpmbuild/RPMS/**/*.rpm
build-arch:
name: Build Arch Package
runs-on: ubuntu-22.04
needs: changes
if: needs.changes.outputs.arch == 'true' || github.event_name == 'workflow_dispatch'
container:
image: archlinux:base-devel@sha256:4894f5a268c696fad671966f383175a13faf433c9d9c88cdd4e32eaa2d18838b
steps:
- name: Prepare container
run: |
pacman -Syuu --noconfirm --disable-download-timeout --needed git wget gnupg nodejs npm
sed -i 's/#MAKEFLAGS="-j2"/MAKEFLAGS="-j$(nproc) -l$(nproc)"/g' /etc/makepkg.conf
sed -i 's/OPTIONS=(.*)/OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge lto)/g' /etc/makepkg.conf
yes | pacman -Scc
pacman-key --init
pacman -S --noconfirm archlinux-keyring
mkdir -p /__w/portproton-repo
pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com
pacman-key --lsign-key 3056513887B78AEB
pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst'
pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'
cat << EOM >> /etc/pacman.conf
[chaotic-aur]
Include = /etc/pacman.d/chaotic-mirrorlist
EOM
pacman -Syy
useradd -m user -G wheel && echo "user ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
echo "PACKAGER=\"Boris Yumankulov <boria138@altlinux.org>\"" >> /etc/makepkg.conf
chown user -R /tmp
chown user -R ..
- name: Checkout PR
uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
if: github.event_name == 'pull_request'
- name: Checkout branch
uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
if: github.event_name == 'workflow_dispatch'
with:
ref: ${{ env.BUILD_BRANCH }}
- name: Build
run: |
cd /__w/portproton-repo
if [ "${{ github.event_name }}" = "pull_request" ]; then
git clone -b ${{ env.PR_BRANCH }} ${{ env.PR_REPO_URL }} PortProtonQt
else
cp -r "$GITHUB_WORKSPACE" PortProtonQt
fi
cd /__w/portproton-repo/PortProtonQt/build-aux
if [ "${{ github.event_name }}" = "pull_request" ]; then
sed -i "s|source=(\"git+https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt.git\")|source=(\"git+${{ env.PR_REPO_URL }}#branch=${{ env.PR_BRANCH }}\")|" PKGBUILD-git
else
sed -i "s|source=(\"git+https://git.linux-gaming.ru/Boria138/PortProtonQt.git\")|source=(\"git+https://git.linux-gaming.ru/Boria138/PortProtonQt.git#branch=${{ env.BUILD_BRANCH }}\")|" PKGBUILD-git
fi
chown user -R ..
su user -c "yes '' | makepkg --noconfirm -s -p PKGBUILD-git"
- name: Upload Arch package
uses: https://git.linux-gaming.ru/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-Arch
path: ${{ env.PKGDEST }}/*
build-debian:
name: Build Debian Package
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.debian == 'true' || github.event_name == 'workflow_dispatch'
container:
image: debian:trixie-20260918@sha256:9cc080028c43b27d2074d63a5f9caf7166d731494965616c1a6d2827a004585c
options: --privileged
steps:
- name: Install build dependencies
run: |
apt-get update
apt-get install -y build-essential debhelper dpkg-dev gettext git \
libsdl3-dev libvulkan-dev meson ninja-build nodejs npm \
pkgconf python3
- name: Checkout PR
uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
if: github.event_name == 'pull_request'
- name: Checkout branch
uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
if: github.event_name == 'workflow_dispatch'
with:
ref: ${{ env.BUILD_BRANCH }}
- name: Build Debian package
run: |
DEB_BUILD_OPTIONS=noautodbgsym dpkg-buildpackage -us -uc -b
mkdir -p dist/deb
mv ../*.deb dist/deb/
- name: Upload Debian package
uses: https://git.linux-gaming.ru/actions/gitea-upload-artifact@v4
with:
name: PortProtonQt-DEB-Debian-13
path: dist/deb/*
+28 -4
View File
@@ -8,11 +8,35 @@ on:
jobs:
renovate:
runs-on: ubuntu-latest
container: ghcr.io/renovatebot/renovate:41.1.4
container: ghcr.io/renovatebot/renovate:latest@sha256:47421f2f3f82048e969b5195dd808d5ac2c5f69d43d192191c4a3dca390afe06
steps:
- uses: https://gitea.com/actions/checkout@v4
- run: renovate
- uses: https://git.linux-gaming.ru/actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
- name: Set up Node.js
uses: https://git.linux-gaming.ru/actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7
with:
node-version: 20
- name: Install uv manually
run: |
curl -LsSf https://astral.sh/uv/install.sh | sh
. $HOME/.local/bin/env
uv --version
- name: Download external renovate config
run: |
mkdir -p /tmp/renovate-config
curl -fsSL "https://git.linux-gaming.ru/Linux-Gaming/renovate-config/raw/branch/main/config.js" \
-o /tmp/renovate-config/config.js
- name: Run Renovate
run: |
. $HOME/.local/bin/env
uv --version
renovate
env:
RENOVATE_CONFIG_FILE: "/workspace/Boria138/PortProtonQt/config.js"
RENOVATE_CONFIG_FILE: "/tmp/renovate-config/config.js"
RENOVATE_BINARY_SOURCE: "global"
GITHUB_COM_TOKEN: ${{ secrets.GITHUB_COM_TOKEN }}
LOG_LEVEL: "debug"
RENOVATE_TOKEN: ${{ secrets.RENOVATE_TOKEN }}
+12
View File
@@ -6,6 +6,10 @@ dist/
wheels/
*.egg-info
# Meson
builddir/
build-deb/
# Virtual environments
.venv
venv
@@ -33,3 +37,11 @@ Thumbs.db
.vscode
.ropeproject
.zed
# Compiled gettext catalogs
portprotonqt/locales/*/LC_MESSAGES/*.mo
# AI
.codex
CODE_QUALITY_PLAN.md
.repowise
+37 -9
View File
@@ -1,9 +1,9 @@
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
exclude: '(data/|documentation/|portprotonqt/locales/|dev-scripts/|\.venv/|venv/|.*\.svg$)'
exclude: '(data/|documentation/|portprotonqt/locales/|portprotonqt/custom_data/|dev-scripts/|\.venv/|venv/|.*\.svg$)'
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
rev: v6.0.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
@@ -11,24 +11,33 @@ repos:
- id: check-yaml
- repo: https://github.com/astral-sh/uv-pre-commit
rev: 0.6.14
rev: 0.9.5
hooks:
- id: uv-lock
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.11.5
rev: v0.14.3
hooks:
- id: ruff
args: [--fix]
- id: ruff-check
- repo: local
hooks:
- id: pyright
name: pyright
entry: pyright
entry: uv run pyright
language: system
'types_or': [python, pyi]
types_or: [python, pyi]
require_serial: true
exclude: 'themes/.*/styles\.py$'
- repo: local
hooks:
- id: bash-n
name: bash -n
entry: ./dev-scripts/check_bash_scripts.sh
language: system
files: ^build-aux/share/portproton/scripts/
types: [file]
- repo: local
hooks:
@@ -37,5 +46,24 @@ repos:
entry: ./dev-scripts/check_qss_properties.py
language: system
types: [file]
files: \.py$
files: ^portprotonqt/themes/[^/]+/styles\.py$
pass_filenames: false
- repo: local
hooks:
- id: check-meson
name: Check meson.build syntax and file inclusion
entry: ./dev-scripts/check_meson_files.py
language: system
files: (^portprotonqt/.*\.py$|^build-aux/share/portproton/|meson\.build$)
pass_filenames: false
- repo: local
hooks:
- id: pytest
name: pytest
entry: uv run pytest tests/ -x -q --tb=line
language: system
types: [python]
files: ^(tests/|portprotonqt/)
pass_filenames: false
+1 -1
View File
@@ -1 +1 @@
3.10
3.11
+1078
View File
File diff suppressed because it is too large. Load diff
+908 -86
View File
File diff suppressed because it is too large. Load diff
Symlink
+1
View File
@@ -0,0 +1 @@
AGENTS.md
Symlink
+1
View File
@@ -0,0 +1 @@
AGENTS.md
+12
View File
@@ -0,0 +1,12 @@
[Desktop Entry]
Name=Install PortProtonQt
Name[ru]=Установить PortProtonQt
Name[es]=Instalar PortProtonQt
Comment=Download and install the latest PortProtonQt AppImage
Comment[ru]=Скачать и установить последнюю версию PortProtonQt AppImage
Exec=sh -c "(curl -fsSL https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/main/install.sh || curl -fsSL https://raw.githubusercontent.com/linux-gaming-ru/PortProtonQt/main/install.sh) | sh"
Icon=system-software-install
StartupNotify=false
Terminal=true
Type=Application
Categories=Game;
+13 -228
View File
@@ -1,232 +1,17 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
+---------------------------------------------------+
| PortProtonQt - Licensing - Read carefully |
+---------------------------------------------------+
Copyright © 2007 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Preamble
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
The GNU General Public License is a free, copyleft license for software and other kinds of works.
The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions.
Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and modification follow.
TERMS AND CONDITIONS
0. Definitions.
“This License” refers to version 3 of the GNU General Public License.
“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks.
“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations.
To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work.
A “covered work” means either the unmodified Program or a work based on the Program.
To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well.
To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion.
1. Source Code.
The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work.
A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language.
The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it.
The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work.
The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source.
The Corresponding Source for a work in source code form is that same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures.
When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified it, and giving a relevant date.
b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”.
c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so.
A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways:
a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b.
d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d.
A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work.
A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product.
“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made.
If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM).
The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying.
7. Additional Terms.
“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or authors of the material; or
e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors.
All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11).
However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.
Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License.
An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it.
11. Patents.
A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”.
A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version.
In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party.
If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it.
A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation.
If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program.
Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found.
PortProtonQt
Copyright (C) 2025 Boria138
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode:
PortProtonQt Copyright (C) 2025 Boria138
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”.
You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see <https://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read <https://www.gnu.org/philosophy/why-not-lgpl.html>.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Symlink
+1
View File
@@ -0,0 +1 @@
AGENTS.md
+48 -105
View File
@@ -1,137 +1,80 @@
📘 Эта документация также доступна на [русском](README.ru.md)
---
<div align="center">
<img src="https://git.linux-gaming.ru/Boria138/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/theme_logo.svg" width="64">
<img src="build-aux/share/icons/hicolor/scalable/apps/ru.linux_gaming.PortProtonQt.svg" width="64">
<h1 align="center">PortProtonQt</h1>
<p align="center">Удобный графический интерфейс для управления и запуска игр из PortProton, Steam и Epic Games Store. Оно объединяет библиотеки игр в единый центр для лёгкой навигации и организации. Лёгкая структура и кроссплатформенная поддержка обеспечивают цельный игровой опыт без необходимости использования нескольких лаунчеров. Интеграция с PortProton упрощает запуск Windows-игр на Linux с минимальной настройкой.</p>
<a href="https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/releases"><img src="https://img.shields.io/badge/Downloads-12.8k-green?style=flat-square" alt="Total Downloads"></a>
<p align="center">A modern and convenient interface for managing and launching games from PortProton, Steam, Epic Games Store, and GOG. It brings libraries together in one place and simplifies launching Windows games on Linux.</p>
</div>
## В планах
- [X] Адаптировать структуру проекта для поддержки инструментов сборки
- [X] Добавить возможность управления с геймпада
- [ ] Добавить возможность управления с тачскрина
- [X] Добавить возможность управления с мыши и клавиатуры
- [X] Добавить систему тем [Документация](documentation/theme_guide)
- [X] Вынести все константы, такие как уровень закругления карточек, в темы (частично выполнено)
- [X] Добавить метаданные для тем (скриншоты, описание, домашняя страница и автор)
- [ ] Продумать систему вкладок вместо текущей
- [ ] [Добавить сессию Gamescope, аналогичную той, что используется в SteamOS](https://git.linux-gaming.ru/Boria138/gamescope-session-portprotonqt)
- [X] Разобраться почему теряется часть стилей в Gamescope
- [ ] Разработать адаптивный дизайн (за эталон берётся Steam Deck с разрешением 1280×800)
- [ ] Переделать скриншоты для соответствия [гайдлайнам Flathub](https://docs.flathub.org/docs/for-app-authors/metainfo-guidelines/quality-guidelines#screenshots)
- [X] Получать описания и названия игр из базы данных Steam
- [X] Получать обложки для игр из SteamGridDB или CDN Steam
- [X] Оптимизировать работу со Steam API для ускорения времени запуска
- [X] Улучшить функцию поиска в Steam API для исправления некорректного определения ID (например, Graven определялся как ENGRAVEN или GRAVENFALL, Spore — как SporeBound или Spore Valley)
- [ ] Убрать логи Steam API в релизной версии, так как они замедляют выполнение кода
- [X] Решить проблему с ограничением Steam API в 50 тысяч игр за один запрос (иногда нужные игры не попадают в выборку и остаются без обложки)
- [X] Избавиться от вызовов yad
- [X] Реализовать собственный механизм запрета ухода в спящий режим вместо использования механизма PortProton (оставлено для [PortProton 2.0](https://github.com/Castro-Fidel/PortProton_2.0))
- [X] Реализовать собственный системный трей вместо использования трея PortProton
- [X] Добавить экранную клавиатуру в поиск (реализация собственной клавиатуры слишком затратна, поэтому используется встроенная в DE клавиатура: Maliit в KDE, gjs-osk в GNOME, Squeekboard в Phosh, клавиатура SteamOS и т.д.)
- [X] Добавить сортировку карточек по различным критериям (доступны: по недавности, количеству наигранного времени, избранному или алфавиту)
- [X] Добавить индикацию запуска приложения
- [X] Достигнуть паритета функциональности с Ingame
- [ ] Достигнуть паритета функциональности с PortProton
- [X] Добавить возможность изменения названия, описания и обложки через файлы `.local/share/PortProtonQT/custom_data/exe_name/{desc,name,cover}`
- [X] Добавить встроенное переопределение названия, описания и обложки, например, по пути `portprotonqt/custom_data` [Документация](documentation/metadata_override/)
- [ ] Добавить переводы в переопределения
- [ ] Придумать как переопределять launcher.exe
- [X] Добавить в карточку игры сведения о поддержке геймпада
- [X] Добавить в карточки данные с ProtonDB
- [X] Добавить в карточки данные с AreWeAntiCheatYet
- [X] Продублировать бейджи с карточки на страницу с деталями игры
- [X] Добавить парсинг ярлыков из Steam
- [X] Добавить парсинг ярлыков из EGS
- [ ] Избавиться от бинарника legendary
- [X] Добавить запуск игр из EGS
- [ ] Добавить скачивание игр из EGS
- [ ] Добавить поддержку запуска сторонних игр из EGS
- [ ] Добавить авторизацию в EGS через WebView вместо ручного ввода
- [X] Получать описания для игр из EGS через их [API](https://store-content.ak.epicgames.com/api)
- [X] Получать slug через GraphQL [запрос](https://launcher.store.epicgames.com/graphql)
- [X] Добавить на карточку бейдж, указывающий, что игра из Steam
- [X] Добавить поддержку версий Steam для Flatpak и Snap
- [X] Отображать данные о самом последнем пользователе Steam, а не первом попавшемся
- [X] Исправить склонения в детальном выводе времени, например, не «3 часов назад», а «3 часа назад»
- [X] Добавить перевод через gettext [Документация](documentation/localization_guide)
- [X] Отображать описания игр и другие данные на языке системы
- [X] Добавить недокументированные параметры конфигурации в GUI (time_detail_level, games_sort_method, games_display_filter)
- [X] Добавить систему избранного для карточек
- [X] Заменить все `print` на `logging`
- [ ] Привести все логи к единому языку
- [X] Уменьшить количество подстановок в переводах
- [X] Стилизовать все элементы без стилей (QMessageBox, QSlider, QDialog)
- [X] Убрать жёсткую привязку путей к стрелочкам QComboBox в `styles.py`
- [X] Исправить частичное применение тем на лету
- [X] Исправить наложение подписей скриншотов при первом перелистывании в полноэкранном режиме
- [ ] Добавить поддержку GOG (?)
- [X] Определиться с названием (PortProtonQt или PortProtonQT или вообще третий вариант)
- [ ] Добавить данные с HowLongToBeat на страницу с деталями игры (?)
- [X] Добавить виброотдачу на геймпаде при запуске игры
- [X] Исправить некорректную работу слайдера увеличения размера карточек([Последствия регрессии после этого коммита](https://github.com/Boria138/PortProtonQt/commit/aebdd60b5537280f06a922ff80469cd4ab27bc63)
- [X] Исправить баг с наложением карточек друг на друга при изменении фильтра отображения ([Последствия регрессии после этого коммита](https://github.com/Boria138/PortProtonQt/commit/aebdd60b5537280f06a922ff80469cd4ab27bc63))
- [X] Скопировать логику управления с D-pad на стрелки с клавиатуры
- [ ] Доделать светлую тему
- [ ] Добавить подсказки к управлению с геймпада
- [ ] Добавить загрузку звуков в темы например для добавления звука запуска в тему и тд
- [X] Добавить миниатюры к выбору файлов в диалоге добавления игры
- [X] Добавить быстрый доступ к смонтированным дискам к выбору файлов в диалоге добавления игры
### Установка (devel)
### Installation (devel)
```sh
uv python install 3.10
uv python install 3.11
uv sync
source .venv/bin/activate
source .venv/bin/activate # For bash/zsh
# or
source .venv/bin/activate.fish # For fish
```
Запуск производится по команде portprotonqt
Launch the application using the `portprotonqt` command.
### Установка (release)
### Installation (release)
Выберите подходящий пакет для вашей системы или AppImage.
Choose the appropriate package for your system or the AppImage.
Запуск производится по команде portprotonqt или по ярлыку в меню
Launch using the `portprotonqt` command or via the shortcut in your application menu.
### Разработка
### Development
В проект встроен линтер (ruff), статический анализатор (pyright) и проверка lock файла, если эти проверки не пройдут PR не будет принят, поэтому перед коммитом введите такую команду
To automatically prepare the environment (install Python 3.11, dependencies, pre-commit hooks, and generate translations), run the following script:
```sh
uv python install 3.10
uv sync --all-extras --dev
source .venv/bin/activate
pre-commit install
./dev-scripts/prepare_env.sh
```
pre-commit сам запустится при коммите, если вы хотите запустить его вручную введите команду
Then activate the virtual environment. The activation command for your shell will be displayed at the end of the script execution. Usually, it is:
```sh
source .venv/bin/activate # For bash/zsh
# or
source .venv/bin/activate.fish # For fish
```
`pre-commit` will automatically run on every commit. If you want to run it manually, use:
```sh
pre-commit run --all-files
```
## Авторы
## Authors
* [Boria138](https://git.linux-gaming.ru/Boria138) - Основной разработчик
* [BlackSnaker](https://git.linux-gaming.ru/BlackSnaker) - Автор идеи, а так же начальной реализации проекта
* [Mikhail Tergoev (Castro-Fidel)](https://git.linux-gaming.ru/CastroFidel) - Автор оригинального проекта PortProton
* [Boria138](https://git.linux-gaming.ru/Boria138) - Lead Developer
* [BlackSnaker](https://git.linux-gaming.ru/BlackSnaker) - Author of the idea and initial implementation
* [Mikhail Tergoev (Castro-Fidel)](https://git.linux-gaming.ru/CastroFidel) - Author of the original PortProton project
### Контрибьюторы
### Contributors
Мы благодарим всех, кто внёс вклад в развитие PortProtonQt, включая тех, кто участвует через коммиты, а также тех, кто помогает другими способами (тестирование, идеи, переводы, документация и т.д.). Полный список участников, можно найти в [списке активности репозитория](https://git.linux-gaming.ru/Boria138/PortProtonQt/activity/contributors). Дополнительные участники также перечислены в файле [CHANGELOG.md](CHANGELOG.md). Если вы внесли вклад, но не указаны, свяжитесь с основными разработчиками, чтобы мы могли вас отметить!
We thank everyone who has contributed to the development of PortProtonQt, including those who participate through commits as well as those who help in other ways (testing, ideas, translations, documentation, etc.). A full list of participants can be found in the [repository activity list](https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/activity/contributors). Additional participants are also listed in the [CHANGELOG.md](CHANGELOG.md) file. If you have contributed but are not listed, please contact the lead developers so we can acknowledge you!
## Зависимости и лицензии
## Dependencies and Licenses
PortProtonQt использует код и зависимости от следующих проектов:
PortProtonQt uses code and dependencies from the following projects:
- [Legendary](https://github.com/derrod/legendary) — инструмент для работы с Epic Games Store, лицензия [GPL-3.0](https://www.gnu.org/licenses/gpl-3.0.html).
- [Icoextract](https://github.com/jlu5/icoextract) — библиотека для извлечения иконок, лицензия [MIT](https://opensource.org/licenses/MIT).
- [PortProton 2.0](https://git.linux-gaming.ru/CastroFidel/PortProton_2.0) — библиотека для взаимодействия с PortProton, лицензия [MIT](https://opensource.org/licenses/MIT).
- [Icoextract](https://github.com/jlu5/icoextract) — icon extraction library, [MIT](https://github.com/jlu5/icoextract/blob/master/LICENSE) license.
- [HowLongToBeat Python API](https://github.com/ScrappyCocco/HowLongToBeat-PythonAPI) — library for interacting with HowLongToBeat, [MIT](https://github.com/ScrappyCocco/HowLongToBeat-PythonAPI/blob/master/LICENSE.md) license.
- [Iso9660 Analyzer Tool (IAT)](https://sourceforge.net/projects/iat.berlios/) — library for converting mdf and nrg to iso, GPLv2 license.
- [heroic-gogdl](https://github.com/Heroic-Games-Launcher/heroic-gogdl) — GOG downloading module, [GPLv3](https://github.com/Heroic-Games-Launcher/heroic-gogdl/blob/main/LICENSE) license.
- [Legendary](https://github.com/Heroic-Games-Launcher/legendary) — Epic Games launcher alternative, [GPLv3](https://github.com/Heroic-Games-Launcher/legendary/blob/master/LICENSE) license.
- [pyte](https://github.com/selectel/pyte) — ANSI escape code parser, [LGPLv3](https://github.com/selectel/pyte?tab=LGPL-3.0-1-ov-file) license.
- [gjs-osk](https://github.com/Vishram1123/gjs-osk) — base for virtual keyboard layout data, GPLv3 license.
- [omikuji](https://github.com/omikuji-launcher/omikuji) — inspiration and source material for the procedural detail page backgrounds, [GPLv3](https://github.com/omikuji-launcher/omikuji/blob/master/LICENSE) license.
- [Bottles](https://github.com/bottlesdevs/Bottles) — source of the compatibility analysis rules, GPL-3.0-only license.
Полный текст лицензий см. в файлах [LICENSE](LICENSE), [LICENSE-icoextract](documentation/licenses/icoextract), [LICENSE-portproton](documentation/licenses/portproton), [LICENSE-legendary](documentation/licenses/legendary).
PortProtonQt is licensed under the terms in [LICENSE](LICENSE). See
[THIRD_PARTY_NOTICES](THIRD_PARTY_NOTICES) for third-party licenses.
> [!WARNING]
> Проект находится на стадии WIP (work in progress) корректная работоспособность не гарантирована
> [!WARNING]
> **Будьте осторожны!** Если вы берёте тему не из официального репозитория или надёжного источника, убедитесь, что в её файле `styles.py` нет вредоносного или нежелательного кода. Поскольку `styles.py` — это обычный Python-файл, он может содержать любые инструкции. Всегда проверяйте содержимое чужих тем перед использованием.
> **Be careful!** If you are using a theme not from the official repository or a trusted source, make sure its `styles.py` file does not contain malicious or unwanted code. Since `styles.py` is a regular Python file, it can contain any instructions. Always check the contents of third-party themes before use.
+80
View File
@@ -0,0 +1,80 @@
📖 This documentation is also available in [English](README.md)
---
<div align="center">
<img src="build-aux/share/icons/hicolor/scalable/apps/ru.linux_gaming.PortProtonQt.svg" width="64">
<h1 align="center">PortProtonQt</h1>
<a href="https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/releases"><img src="https://img.shields.io/badge/%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8-12.8k-green?style=flat-square" alt="Всего загрузок"></a>
<p align="center">Современный и удобный интерфейс для управления и запуска игр из PortProton, Steam, Epic Games Store и GOG. Объединяет библиотеки в одном месте и упрощает запуск Windows-игр на Linux.</p>
</div>
### Установка (devel)
```sh
uv python install 3.11
uv sync
source .venv/bin/activate # For bash/zsh
# or
source .venv/bin/activate.fish # For fish
```
Запуск производится по команде portprotonqt
### Установка (release)
Выберите подходящий пакет для вашей системы или AppImage.
Запуск производится по команде portprotonqt или по ярлыку в меню
### Разработка
Для автоматической подготовки окружения (установка Python 3.11, зависимостей, pre-commit хуков и генерация переводов) выполните скрипт:
```sh
./dev-scripts/prepare_env.sh
```
Затем активируйте виртуальное окружение. Команда активации для вашей оболочки будет выведена в конце работы скрипта. Обычно это:
```sh
source .venv/bin/activate # Для bash/zsh
# или
source .venv/bin/activate.fish # Для fish
```
pre-commit сам запустится при коммите, если вы хотите запустить его вручную введите команду:
```sh
pre-commit run --all-files
```
## Авторы
* [Boria138](https://git.linux-gaming.ru/Boria138) - Основной разработчик
* [BlackSnaker](https://git.linux-gaming.ru/BlackSnaker) - Автор идеи, а так же начальной реализации проекта
* [Mikhail Tergoev (Castro-Fidel)](https://git.linux-gaming.ru/CastroFidel) - Автор оригинального проекта PortProton
### Контрибьюторы
Мы благодарим всех, кто внёс вклад в развитие PortProtonQt, включая тех, кто участвует через коммиты, а также тех, кто помогает другими способами (тестирование, идеи, переводы, документация и т.д.). Полный список участников, можно найти в [списке активности репозитория](https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/activity/contributors). Дополнительные участники также перечислены в файле [CHANGELOG.md](CHANGELOG.md). Если вы внесли вклад, но не указаны, свяжитесь с основными разработчиками, чтобы мы могли вас отметить!
## Зависимости и лицензии
PortProtonQt использует код и зависимости от следующих проектов:
- [Icoextract](https://github.com/jlu5/icoextract) — библиотека для извлечения иконок, лицензия [MIT](https://github.com/jlu5/icoextract/blob/master/LICENSE).
- [HowLongToBeat Python API](https://github.com/ScrappyCocco/HowLongToBeat-PythonAPI) — библиотека для взаимодействия с HowLongToBeat, лицензия [MIT](https://github.com/ScrappyCocco/HowLongToBeat-PythonAPI/blob/master/LICENSE.md).
- [Iso9660 Analyzer Tool (IAT)](https://sourceforge.net/projects/iat.berlios/) — библиотека для конвертации mdf и nrg в iso, лицензия GPLv2
- [heroic-gogdl](https://github.com/Heroic-Games-Launcher/heroic-gogdl) — модуль загрузки игр GOG, лицензия [GPLv3](https://github.com/Heroic-Games-Launcher/heroic-gogdl/blob/main/LICENSE).
- [Legendary](https://github.com/Heroic-Games-Launcher/legendary) — альтернатива Epic Games Launcher, лицензия [GPLv3](https://github.com/Heroic-Games-Launcher/legendary/blob/master/LICENSE).
- [pyte](https://github.com/selectel/pyte) — разбор ANSI escape-кодов, лицензия [LGPLv3](https://github.com/selectel/pyte?tab=LGPL-3.0-1-ov-file)
- [gjs-osk](https://github.com/Vishram1123/gjs-osk) — основа данных раскладок виртуальной клавиатуры, лицензия GPLv3.
- [omikuji](https://github.com/omikuji-launcher/omikuji) — источник вдохновения и материалов для процедурных фонов детальной страницы, лицензия [GPLv3](https://github.com/omikuji-launcher/omikuji/blob/master/LICENSE).
- [Bottles](https://github.com/bottlesdevs/Bottles) — источник правил анализа совместимости, лицензия GPL-3.0-only.
Условия лицензии PortProtonQt приведены в файле [LICENSE](LICENSE). Лицензии
сторонних проектов приведены в файле [THIRD_PARTY_NOTICES](THIRD_PARTY_NOTICES).
> [!WARNING]
> **Будьте осторожны!** Если вы берёте тему не из официального репозитория или надёжного источника, убедитесь, что в её файле `styles.py` нет вредоносного или нежелательного кода. Поскольку `styles.py` — это обычный Python-файл, он может содержать любые инструкции. Всегда проверяйте содержимое чужих тем перед использованием.
@@ -1,7 +1,611 @@
We make use of various projects, some of which require their license to be preserved. Here's their respective licenses:
-----------------------------------------------------------------------------------------------------------------------
===============
= icoextract: =
===============
MIT License
Copyright (c) 2015-2016 Fadhil Mandaga
Copyright (c) 2019-2025 James Lu <james@overdrivenetworks.com>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
==============
= PortProton =
==============
MIT License
Copyright (c) 2025 Mikhail Tergoev
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
===============================
= HowLongToBeat-Python-API : =
===============================
MIT License
Copyright (c) 2020 JaeguKim
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=================================
= Iso9660 Analyzer Tool (IAT): =
=================================
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.
=====================================================================
========
= pyte =
========
Copyright (c) 2011-2012 Selectel
Copyright (c) 2012-2017 pyte authors and contributors
pyte is licensed under the GNU Lesser General Public License version 3.
GNU LESSER GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies of this license
document, but changing it is not allowed.
This version of the GNU Lesser General Public License incorporates the terms
and conditions of version 3 of the GNU General Public License, supplemented
by the additional permissions listed below.
0. Additional Definitions.
As used herein, "this License" refers to version 3 of the GNU Lesser General
Public License, and the "GNU GPL" refers to version 3 of the GNU General Public
License.
"The Library" refers to a covered work governed by this License, other than
an Application or a Combined Work as defined below.
An "Application" is any work that makes use of an interface provided by the
Library, but which is not otherwise based on the Library. Defining a subclass
of a class defined by the Library is deemed a mode of using an interface provided
by the Library.
A "Combined Work" is a work produced by combining or linking an Application
with the Library. The particular version of the Library with which the Combined
Work was made is also called the "Linked Version".
The "Minimal Corresponding Source" for a Combined Work means the Corresponding
Source for the Combined Work, excluding any source code for portions of the
Combined Work that, considered in isolation, are based on the Application,
and not on the Linked Version.
The "Corresponding Application Code" for a Combined Work means the object
code and/or source code for the Application, including any data and utility
programs needed for reproducing the Combined Work from the Application, but
excluding the System Libraries of the Combined Work.
1. Exception to Section 3 of the GNU GPL.
You may convey a covered work under sections 3 and 4 of this License without
being bound by section 3 of the GNU GPL.
2. Conveying Modified Versions.
If you modify a copy of the Library, and, in your modifications, a facility
refers to a function or data to be supplied by an Application that uses the
facility (other than as an argument passed when the facility is invoked),
then you may convey a copy of the modified version:
a) under this License, provided that you make a good faith effort to ensure
that, in the event an Application does not supply the function or data, the
facility still operates, and performs whatever part of its purpose remains
meaningful, or
b) under the GNU GPL, with none of the additional permissions of this License
applicable to that copy.
3. Object Code Incorporating Material from Library Header Files.
The object code form of an Application may incorporate material from a header
file that is part of the Library. You may convey such object code under terms
of your choice, provided that, if the incorporated material is not limited
to numerical parameters, data structure layouts and accessors, or small macros,
inline functions and templates (ten or fewer lines in length), you do both
of the following:
a) Give prominent notice with each copy of the object code that the Library
is used in it and that the Library and its use are covered by this License.
b) Accompany the object code with a copy of the GNU GPL and this license document.
4. Combined Works.
You may convey a Combined Work under terms of your choice that, taken together,
effectively do not restrict modification of the portions of the Library contained
in the Combined Work and reverse engineering for debugging such modifications,
if you also do each of the following:
a) Give prominent notice with each copy of the Combined Work that the Library
is used in it and that the Library and its use are covered by this License.
b) Accompany the Combined Work with a copy of the GNU GPL and this license
document.
c) For a Combined Work that displays copyright notices during execution, include
the copyright notice for the Library among these notices, as well as a reference
directing the user to the copies of the GNU GPL and this license document.
d) Do one of the following:
0) Convey the Minimal Corresponding Source under the terms of this License,
and the Corresponding Application Code in a form suitable for, and under terms
that permit, the user to recombine or relink the Application with a modified
version of the Linked Version to produce a modified Combined Work, in the
manner specified by section 6 of the GNU GPL for conveying Corresponding Source.
1) Use a suitable shared library mechanism for linking with the Library. A
suitable mechanism is one that (a) uses at run time a copy of the Library
already present on the user's computer system, and (b) will operate properly
with a modified version of the Library that is interface-compatible with the
Linked Version.
e) Provide Installation Information, but only if you would otherwise be required
to provide such information under section 6 of the GNU GPL, and only to the
extent that such information is necessary to install and execute a modified
version of the Combined Work produced by recombining or relinking the Application
with a modified version of the Linked Version. (If you use option 4d0, the
Installation Information must accompany the Minimal Corresponding Source and
Corresponding Application Code. If you use option 4d1, you must provide the
Installation Information in the manner specified by section 6 of the GNU GPL
for conveying Corresponding Source.)
5. Combined Libraries.
You may place library facilities that are a work based on the Library side
by side in a single library together with other library facilities that are
not Applications and are not covered by this License, and convey such a combined
library under terms of your choice, if you do both of the following:
a) Accompany the combined library with a copy of the same work based on the
Library, uncombined with any other library facilities, conveyed under the
terms of this License.
b) Give prominent notice with the combined library that part of it is a work
based on the Library, and explaining where to find the accompanying uncombined
form of the same work.
6. Revised Versions of the GNU Lesser General Public License.
The Free Software Foundation may publish revised and/or new versions of the
GNU Lesser General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to address
new problems or concerns.
Each version is given a distinguishing version number. If the Library as you
received it specifies that a certain numbered version of the GNU Lesser General
Public License "or any later version" applies to it, you have the option of
following the terms and conditions either of that published version or of
any later version published by the Free Software Foundation. If the Library
as you received it does not specify a version number of the GNU Lesser General
Public License, you may choose any version of the GNU Lesser General Public
License ever published by the Free Software Foundation.
If the Library as you received it specifies that a proxy can decide whether
future versions of the GNU Lesser General Public License shall apply, that
proxy's public statement of acceptance of any version is permanent authorization
for you to choose that version for the Library.
=====================================================================
===========
= Bottles =
===========
Copyright 2026 mirkobrombin <brombin94@gmail.com>
Bottles is licensed under the GNU General Public License version 3 only.
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -645,7 +1249,7 @@ the "copyright" line and a pointer to where the full notice is found.
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
along with this program. If not, see <http://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
@@ -664,11 +1268,11 @@ might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<https://www.gnu.org/licenses/>.
<http://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<https://www.gnu.org/licenses/why-not-lgpl.html>.
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
+114
View File
@@ -0,0 +1,114 @@
#!/bin/sh
set -eu
# Initialize variables
LOCAL_MODE=false
BRANCH="main"
USE_BRANCH=false
TAG=""
REPO_URL="https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt.git"
# Parse arguments
while [ $# -gt 0 ]; do
case "$1" in
--local|-l)
LOCAL_MODE=true
;;
--branch)
if [ -n "${2:-}" ] && [ "${2#-}" = "$2" ]; then
BRANCH="$2"
USE_BRANCH=true
shift
else
echo "Error: --branch requires an argument"
exit 1
fi
;;
--tag)
if [ -n "${2:-}" ] && [ "${2#-}" = "$2" ]; then
TAG="$2"
shift
else
echo "Error: --tag requires an argument"
exit 1
fi
;;
--repo)
if [ -n "${2:-}" ] && [ "${2#-}" = "$2" ]; then
REPO_URL="$2"
shift
else
echo "Error: --repo requires an argument"
exit 1
fi
;;
*)
echo "Unknown option: $1"
exit 1
;;
esac
shift
done
ARCH="$(uname -m)"
if [ "$LOCAL_MODE" = true ]; then
echo "Using local PKGBUILD-git from repository..."
PPQT_PKGBUILD=""
elif [ -n "$TAG" ]; then
echo "Using stable version of PortProtonQt from $TAG tag..."
PPQT_PKGBUILD="https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/tag/$TAG/build-aux/PKGBUILD"
else
echo "Using stable version of PortProtonQt from $BRANCH branch..."
PPQT_PKGBUILD="https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/$BRANCH/build-aux/PKGBUILD"
fi
echo "Tweak makepkg..."
echo "---------------------------------------------------------------"
# Disable creating debug packages
sed -i 's/OPTIONS=(.*)/OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge lto)/g' /etc/makepkg.conf
# Setup packager name
sed -i 's/#PACKAGER=".*"/PACKAGER="Linux Gaming Team"/g' /etc/makepkg.conf
# Use all threads for building
sed -i 's/#MAKEFLAGS="-j2"/MAKEFLAGS="-j$(nproc) -l$(nproc)"/g' /etc/makepkg.conf
# makepkg cannot not as root by default
sed -i -e 's|EUID == 0|EUID == 69|g' /usr/bin/makepkg
# always disable this nonsense that was recently added to makepkg
sed -i -e 's/(( ${#arch\[@\]} != $(printf "%s\\n" ${arch\[@\]} | sort -u | wc -l) ))/false/' /usr/share/makepkg/lint_pkgbuild/arch.sh 2>/dev/null || :
echo "Tweak pacman..."
echo "---------------------------------------------------------------"
pacman-key --init
pacman -S --noconfirm archlinux-keyring
# Disable locale noextract
sed -i -E 's@[[:space:]]*usr/share/locale/\*@@g; s@[[:space:]]+@ @g; s@[[:space:]]+$@@' /etc/pacman.conf
pacman -Syyu --noconfirm --disable-download-timeout
echo "Building PortProtonQt from PKGBUILD..."
echo "---------------------------------------------------------------"
if [ "$LOCAL_MODE" = true ]; then
cp ../PKGBUILD-git ./PKGBUILD
else
wget --retry-connrefused --tries=30 "$PPQT_PKGBUILD" -O ./PKGBUILD
fi
if [ "$USE_BRANCH" = true ]; then
sed -i "s|^source=.*|source=(\"git+${REPO_URL}#branch=$BRANCH\")|" PKGBUILD
elif [ -n "$TAG" ]; then
sed -i "s|^source=.*|source=(\"git+${REPO_URL}#tag=$TAG\")|" PKGBUILD
fi
makepkg -si --noconfirm
echo "Installing debloated packages..."
echo "---------------------------------------------------------------"
get-debloated-pkgs --add-common --prefer-nano
if [ "$LOCAL_MODE" = true ]; then
# For git version, we use portprotonqt-git
pacman -Q portprotonqt-git | awk '{print $2}' | cut -d- -f1 > ~/version
else
# For stable version, we use portprotonqt
pacman -Q portprotonqt | awk '{print $2}' | cut -d- -f1 > ~/version
fi
+101
View File
@@ -0,0 +1,101 @@
#!/bin/sh
set -eu
ARCH="$(uname -m)"
VERSION="$(cat ~/version)"
export ARCH VERSION
export OUTPATH=./dist
export DESKTOP=/usr/share/applications/ru.linux_gaming.PortProtonQt.desktop
export ICON=/usr/share/icons/hicolor/scalable/apps/ru.linux_gaming.PortProtonQt.svg
export OUTNAME=PortProtonQt-"$VERSION"-anylinux-"$ARCH".AppImage
export UPINFO="gitea-releases-zsync|git.linux-gaming.ru|Linux-Gaming|PortProtonQt|latest|*$ARCH.AppImage.zsync"
export DEPLOY_OPENGL=1
export DEPLOY_SDL=1
export DEPLOY_PYTHON=1
export MAIN_BIN=portprotonqt
export OPTIMIZE_LAUNCH=1
# Adjust comp settings to bypass oom-killer
export DWARFS_COMP="zstd:level=15 -S22 -B5"
# Add udev rules
mkdir -p ./AppDir/etc/udev/rules.d
cp /usr/lib/udev/rules.d/60-portprotonqt.rules ./AppDir/etc/udev/rules.d
# Add PortProton scripts
# Copy manually to avoid tracing 208 .ppdb files with quick-sharun
mkdir -p ./AppDir/share
cp -r /usr/share/portproton ./AppDir/share
# QSoundEffect only needs PCM WAV and PulseAudio. Remove the optional native
# PipeWire path and FFmpeg media backend before quick-sharun scans Qt plugins.
pacman -Rdd --noconfirm libpipewire qt6-multimedia-ffmpeg
# Deploy dependencies
# Qt libs have to be passed manually due to the app being a python script
GAMEPAD_LIBRARY=$(find /usr/lib -type f \
-path '*/site-packages/portprotonqt/libportprotonqt_gamepad.so' \
-print -quit)
test -n "$GAMEPAD_LIBRARY"
quick-sharun \
/usr/bin/portprotonqt* \
/usr/bin/bash \
/usr/bin/update-desktop-database \
/usr/bin/update-mime-database \
/usr/bin/vk_gpu_info \
"$GAMEPAD_LIBRARY" \
/usr/lib/libQt6Core.so* \
/usr/lib/libQt6Gui.so* \
/usr/lib/libQt6Multimedia.so* \
/usr/lib/libQt6Network.so* \
/usr/lib/qt6/plugins/imageformats/libqwebp.so \
/usr/lib/7zip/7z*
# quick-sharun removes MIME package XML files during dependency deployment
mkdir -p ./AppDir/share/mime/packages
cp /usr/share/mime/packages/ru.linux_gaming.PortProtonQt.xml \
./AppDir/share/mime/packages
# DEPLOY_PYTHON copies the distro's complete Python installation. Remove
# build/development content and PySide bindings not imported by PortProtonQt.
PYTHON_DIR=$(find ./AppDir/lib -maxdepth 1 -type d -name 'python3.*' -print -quit)
PYTHON_SITE=$PYTHON_DIR/site-packages
PYSIDE_DIR=$PYTHON_SITE/PySide6
rm -rf \
"$PYTHON_DIR"/ensurepip \
"$PYTHON_DIR"/idlelib \
"$PYTHON_DIR"/pydoc_data \
"$PYTHON_DIR"/tkinter \
"$PYTHON_DIR"/turtledemo \
"$PYTHON_DIR"/venv \
"$PYTHON_SITE"/Cython \
"$PYTHON_SITE"/cython.py \
"$PYTHON_SITE"/mesonbuild \
"$PYTHON_SITE"/pygments \
"$PYTHON_SITE"/pyximport \
"$PYTHON_SITE"/setuptools \
"$PYTHON_SITE"/vapoursynth \
"$PYTHON_SITE"/wheel \
"$PYTHON_SITE"/cython-*.dist-info \
"$PYTHON_SITE"/meson-*.dist-info \
"$PYTHON_SITE"/pygments-*.dist-info \
"$PYTHON_SITE"/setuptools-*.dist-info \
"$PYTHON_SITE"/vapoursynth-*.dist-info \
"$PYTHON_SITE"/wheel-*.dist-info
find "$PYTHON_DIR" -depth -type d \( -name test -o -name tests \) \
-exec rm -rf {} +
find "$PYTHON_SITE" -type f -name '*.pyi' -delete
for module in "$PYSIDE_DIR"/Qt*.so; do
case "${module##*/}" in
QtCore.*|QtGui.*|QtMultimedia.*|QtNetwork.*|QtSvg.*|QtWidgets.*) continue ;;
esac
rm -f "$module"
done
rm -rf "$PYSIDE_DIR"/QtAsyncio
# Turn AppDir into AppImage
quick-sharun --make-appimage
-58
View File
@@ -1,58 +0,0 @@
version: 1
script:
# 1) чистим старый AppDir
- rm -rf AppDir || true
# 2) создаём структуру каталога
- mkdir -p AppDir/usr/local/lib/python3.10/dist-packages
# 3) UV: создаём виртуальное окружение и устанавливаем зависимости из pyproject.toml
- uv venv
- uv pip install --no-cache-dir ../
# 4) копируем всё из .venv в AppDir
- cp -r .venv/lib/python3.10/site-packages/* AppDir/usr/local/lib/python3.10/dist-packages
- cp -r share AppDir/usr
# 5) чистим от ненужных модулей и бинарников
- rm -rf AppDir/usr/local/lib/python3.10/dist-packages/PySide6/Qt/qml/
- rm -f AppDir/usr/local/lib/python3.10/dist-packages/PySide6/{assistant,designer,linguist,lrelease,lupdate}
- rm -f AppDir/usr/local/lib/python3.10/dist-packages/PySide6/{Qt3D*,QtBluetooth*,QtCharts*,QtConcurrent*,QtDataVisualization*,QtDesigner*,QtHelp*,QtMultimedia*,QtNetwork*,QtOpenGL*,QtPositioning*,QtPrintSupport*,QtQml*,QtQuick*,QtRemoteObjects*,QtScxml*,QtSensors*,QtSerialPort*,QtSql*,QtStateMachine*,QtTest*,QtWeb*,QtXml*}
- shopt -s extglob
- rm -rf AppDir/usr/local/lib/python3.10/dist-packages/PySide6/Qt/lib/!(libQt6Core*|libQt6Gui*|libQt6Widgets*|libQt6OpenGL*|libQt6XcbQpa*|libQt6Wayland*|libQt6Egl*|libicudata*|libicuuc*|libicui18n*|libQt6DBus*|libQt6Svg*|libQt6Qml*|libQt6Network*)
AppDir:
path: ./AppDir
app_info:
id: ru.linux_gaming.PortProtonQt
name: PortProtonQt
icon: ru.linux_gaming.PortProtonQt
version: 0.1.3
exec: usr/bin/python3
exec_args: "-m portprotonqt.app $@"
apt:
arch: amd64
sources:
- sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse'
key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c'
include:
- python3
- python3-pkg-resources
- libopengl0
- libk5crypto3
- libkrb5-3
- libgssapi-krb5-2
- libxcb-cursor0
- libimage-exiftool-perl
- xdg-utils
exclude: []
runtime:
env:
PYTHONHOME: '${APPDIR}/usr'
PYTHONPATH: '${APPDIR}/usr/local/lib/python3.10/dist-packages'
AppImage:
update-information: gh-releases-zsync|Boria138|PortProtonQt|latest|PortProtonQt-*x86_64.AppImage.zsync
sign-key: None
arch: x86_64
+31 -15
View File
@@ -1,23 +1,39 @@
pkgname=portprotonqt
pkgver=0.1.3
pkgname=('portprotonqt')
pkgver=1.4.1
pkgrel=1
pkgdesc="Modern GUI for managing and launching games from PortProton, Steam, and Epic Games Store"
arch=('any')
url="https://git.linux-gaming.ru/Boria138/PortProtonQt"
pkgdesc="Modern GUI for managing and launching games from PortProton and Steam"
arch=('x86_64')
url="https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt"
license=('GPL-3.0')
depends=('python-numpy' 'python-requests' 'python-babel' 'python-evdev' 'python-pyudev' 'python-orjson'
'python-psutil' 'python-tqdm' 'python-vdf' 'pyside6' 'icoextract' 'python-pillow' 'perl-image-exiftool' 'xdg-utils')
makedepends=('python-'{'build','installer','setuptools','wheel'})
source=("git+https://git.linux-gaming.ru/Boria138/PortProtonQt#tag=v$pkgver")
depends=('python-requests' 'python-babel' 'python-evdev' 'python-orjson'
'python-psutil' 'python-tqdm' 'python-vdf' 'python-libarchive-c' 'pyside6' 'python-rapidfuzz' 'python-pefile' 'python-pillow' 'perl-image-exiftool' 'python-websocket-client' 'cabextract' 'unzip' 'curl' 'file' 'findutils' 'gawk' 'grep' 'tar' 'xz' 'zstd' 'gzip' 'unrar' 'qt6-svg' 'qt6-imageformats' 'qt6-multimedia' 'pciutils' 'mesa-utils' 'vulkan-icd-loader' 'procps-ng' 'psmisc' '7zip' 'python-dbus-fast' 'sdl3' 'desktop-file-utils')
makedepends=('meson' 'ninja' 'vulkan-headers' 'gettext')
conflicts=("portprotonqt-steam-compat")
provides=('portprotonqt-steam-compat')
replaces=('portprotonqt-steam-compat')
source=("git+https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt#tag=v$pkgver")
sha256sums=('SKIP')
build() {
cd "$srcdir/PortProtonQt"
python -m build --wheel --no-isolation
arch-meson PortProtonQt build
meson compile -C build
}
package() {
cd "$srcdir/PortProtonQt"
python -m installer --destdir="$pkgdir" dist/*.whl
cp -r build-aux/share "$pkgdir/usr/"
package_portprotonqt() {
pkgdesc="Modern GUI for managing and launching games from PortProton and Steam"
optdepends=(
'networkmanager: System tab network management'
'bluez: System tab bluetooth management'
'upower: System tab bluetooth battery level'
'libpulse: System tab audio volume/output management'
'python-qrcode: Wi-Fi QR code generation'
'squashfs-tools: for legacy PortProton prefix backup support'
)
DESTDIR="$pkgdir" meson install -C build --skip-subprojects
bash "$srcdir/PortProtonQt/dev-scripts/generate-completions.sh"
install -Dpm 0644 "$srcdir/PortProtonQt/completions/portprotonqt" -t "$pkgdir/usr/share/bash-completion/completions"
install -Dpm 0644 "$srcdir/PortProtonQt/completions/portprotonqt.fish" -t "$pkgdir/usr/share/fish/vendor_completions.d"
install -Dpm 0644 "$srcdir/PortProtonQt/completions/_portprotonqt" -t "$pkgdir/usr/share/zsh/site-functions"
}
+30 -14
View File
@@ -1,14 +1,17 @@
pkgname=portprotonqt-git
pkgname=('portprotonqt-git')
pkgver=.
pkgrel=1
pkgdesc="Modern GUI for managing and launching games from PortProton, Steam, and Epic Games Store.(developerment build)"
arch=('any')
url="https://git.linux-gaming.ru/Boria138/PortProtonQt"
pkgdesc="Modern GUI for managing and launching games from PortProton and Steam (development build)"
arch=('x86_64')
url="https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt"
license=('GPL-3.0')
depends=('python-numpy' 'python-requests' 'python-babel' 'python-evdev' 'python-pyudev' 'python-orjson'
'python-psutil' 'python-tqdm' 'python-vdf' 'pyside6' 'icoextract' 'python-pillow' 'perl-image-exiftool' 'xdg-utils')
makedepends=('python-'{'build','installer','setuptools','wheel'})
source=("git+https://git.linux-gaming.ru/Boria138/PortProtonQt.git")
depends=('python-requests' 'python-babel' 'python-evdev' 'python-orjson'
'python-psutil' 'python-tqdm' 'python-vdf' 'python-libarchive-c' 'pyside6' 'python-rapidfuzz' 'python-pefile' 'python-pillow' 'perl-image-exiftool' 'python-websocket-client' 'cabextract' 'unzip' 'curl' 'file' 'findutils' 'gawk' 'grep' 'tar' 'xz' 'zstd' 'gzip' 'unrar' 'qt6-svg' 'qt6-imageformats' 'qt6-multimedia' 'pciutils' 'mesa-utils' 'vulkan-icd-loader' 'procps-ng' 'psmisc' '7zip' 'python-dbus-fast' 'sdl3' 'desktop-file-utils')
makedepends=('meson' 'ninja' 'vulkan-headers' 'gettext')
conflicts=("portprotonqt-steam-compat")
provides=('portprotonqt-steam-compat')
replaces=('portprotonqt-steam-compat')
source=("git+https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt.git")
sha256sums=('SKIP')
pkgver() {
@@ -17,12 +20,25 @@ pkgver() {
}
build() {
cd "$srcdir/PortProtonQt"
python -m build --wheel --no-isolation
arch-meson PortProtonQt build -Dnightly=true
meson compile -C build
}
package() {
cd "$srcdir/PortProtonQt"
python -m installer --destdir="$pkgdir" dist/*.whl
cp -r build-aux/share "$pkgdir/usr/"
package_portprotonqt-git() {
pkgdesc="Modern GUI for managing and launching games from PortProton and Steam (development build)"
optdepends=(
'networkmanager: System tab network management'
'bluez: System tab bluetooth management'
'upower: System tab bluetooth battery level'
'libpulse: System tab audio volume/output management'
'python-qrcode: Wi-Fi QR code generation'
'squashfs-tools: for legacy PortProton prefix backup support'
)
DESTDIR="$pkgdir" meson install -C build --skip-subprojects
bash "$srcdir/PortProtonQt/dev-scripts/generate-completions.sh"
install -Dpm 0644 "$srcdir/PortProtonQt/completions/portprotonqt" -t "$pkgdir/usr/share/bash-completion/completions"
install -Dpm 0644 "$srcdir/PortProtonQt/completions/portprotonqt.fish" -t "$pkgdir/usr/share/fish/vendor_completions.d"
install -Dpm 0644 "$srcdir/PortProtonQt/completions/_portprotonqt" -t "$pkgdir/usr/share/zsh/site-functions"
}
BIN
View File
Binary file not shown.
+81 -27
View File
@@ -1,73 +1,127 @@
%global pypi_name portprotonqt
%global pypi_version 0.1.1
%global pypi_version 1.4.1
%global oname PortProtonQt
%global build_timestamp %(date +"%Y%m%d")
%global _python_no_extras_requires 1
%global rel_build 1.git.%{build_timestamp}%{?dist}
Name: python-%{pypi_name}-git
Name: %{pypi_name}-git
Version: %{pypi_version}
Release: %{rel_build}
Summary: Modern GUI for managing and launching games from PortProton, Steam, and Epic Games Store (development build)
Summary: Modern GUI for managing and launching games from PortProton and Steam (development build)
License: GPL-3.0
URL: https://git.linux-gaming.ru/Boria138/PortProtonQt
BuildArch: noarch
URL: https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt
ExclusiveArch: x86_64
BuildRequires: meson >= 0.61.2
BuildRequires: ninja-build
BuildRequires: python3-devel
BuildRequires: python3-wheel
BuildRequires: python3-pip
BuildRequires: python3-build
BuildRequires: pyproject-rpm-macros
BuildRequires: python3dist(setuptools)
BuildRequires: git
BuildRequires: gettext
BuildRequires: systemd-rpm-macros
BuildRequires: vulkan-loader-devel
BuildRequires: pkgconfig(sdl3)
BuildRequires: gcc
%description
%{summary}
Obsoletes: python3-%{pypi_name}-git < %{version}-%{release}
Provides: python3-%{pypi_name}-git = %{version}-%{release}
%package -n python3-%{pypi_name}-git
Summary: %{summary}
%{?python_provide:%python_provide python3-%{pypi_name}}
Requires: python3-babel
Requires: python3-evdev
Requires: python3-icoextract
Requires: python3-numpy
Requires: python3-websocket-client
Requires: python3-orjson
Requires: python3-psutil
Requires: python3-pyside6
Requires: python3-pyudev
Requires: python3-requests
Requires: python3-tqdm
Requires: python3-vdf
Requires: python3-pefile
Requires: python3-pillow
Requires: python3-pillow-qt
Requires: python3-rapidfuzz
Requires: python3-libarchive-c
Requires: perl-Image-ExifTool
Requires: xdg-utils
Requires: qt6-qtsvg
Requires: qt6-qtimageformats
Requires: qt6-qtmultimedia
Requires: cabextract
Requires: gzip
Requires: unzip
Requires: curl
Requires: file
Requires: findutils
Requires: gawk
Requires: grep
Requires: tar
Requires: xz
Requires: zstd
Requires: unrar
Requires: glx-utils
Requires: pciutils
Requires: vulkan-loader
Requires: procps-ng
Requires: psmisc
Requires: 7zip
Requires: python3-dbus-fast
Requires: desktop-file-utils
%description -n python3-%{pypi_name}-git
This application provides a sleek, intuitive graphical interface for managing and launching games from PortProton, Steam, and Epic Games Store. It consolidates your game libraries into a single, user-friendly hub for seamless navigation and organization. Its lightweight structure and cross-platform support deliver a cohesive gaming experience, eliminating the need for multiple launchers. Unique PortProton integration enhances Linux gaming, enabling effortless play of Windows-based titles with minimal setup.
# System Tab
Recommends: NetworkManager
Recommends: bluez
Recommends: upower
Recommends: pulseaudio-utils
Recommends: python3-qrcode
# For legacy PortProton prefix backup support
Recommends: squashfs-tools
Obsoletes: %{pypi_name}-steam-compat < %{?epoch:%{epoch}:}%{version}-%{release}
Provides: %{pypi_name}-steam-compat = %{?epoch:%{epoch}:}%{version}-%{release}
%description
A modern and intuitive interface for managing and launching games from PortProton and Steam. Combines libraries in one place and simplifies running Windows games on Linux.
%{?python_disable_dependency_generator}
%prep
git clone https://git.linux-gaming.ru/Boria138/PortProtonQt.git
git clone https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt.git
%build
cd %{oname}
%pyproject_wheel
%meson \
-Dnightly=true \
-Dpython_purelibdir=%{python3_sitelib} \
-Dudev_rulesdir=%{_udevrulesdir}
%meson_build
%install
cd %{oname}
%pyproject_install
%pyproject_save_files %{pypi_name}
cp -r build-aux/share %{buildroot}/usr/
%meson_install
bash ./dev-scripts/generate-completions.sh
install -Dpm 0644 ./completions/portprotonqt -t %{buildroot}%{bash_completions_dir}
install -Dpm 0644 ./completions/portprotonqt.fish -t %{buildroot}%{fish_completions_dir}
install -Dpm 0644 ./completions/_portprotonqt -t %{buildroot}%{zsh_completions_dir}
%find_lang %{pypi_name}
%files -n python3-%{pypi_name}-git -f %{pyproject_files}
%files -f %{oname}/%{pypi_name}.lang
%{_bindir}/%{pypi_name}
%{_bindir}/vk_gpu_info
%{python3_sitelib}/%{pypi_name}/
%{_datadir}/icons/hicolor/scalable/apps/ru.linux_gaming.PortProtonQt.svg
%{_metainfodir}/ru.linux_gaming.PortProtonQt.metainfo.xml
%{_udevrulesdir}/60-portprotonqt.rules
%{_sysusersdir}/portprotonqt.conf
%{_datadir}/polkit-1/rules.d/ru.linux_gaming.PortProtonQt.rules
%{_datadir}/applications/ru.linux_gaming.PortProtonQt.desktop
%{_datadir}/applications/ru.linux_gaming.PortProtonQt.log.desktop
%{_datadir}/applications/ru.linux_gaming.PortProtonQt.silent.desktop
%{_datadir}/mime/packages/ru.linux_gaming.PortProtonQt.xml
%{_datadir}/portproton/scripts/
%{_datadir}/portproton/conf/
%{bash_completions_dir}/portprotonqt
%{fish_completions_dir}/portprotonqt.fish
%{zsh_completions_dir}/_portprotonqt
%changelog
+80 -27
View File
@@ -1,72 +1,125 @@
%global pypi_name portprotonqt
%global pypi_version 0.1.3
%global pypi_version 1.4.1
%global oname PortProtonQt
%global _python_no_extras_requires 1
Name: python-%{pypi_name}
Name: %{pypi_name}
Version: %{pypi_version}
Release: 1%{?dist}
Summary: Modern GUI for managing and launching games from PortProton, Steam, and Epic Games Store
Summary: Modern GUI for managing and launching games from PortProton and Steam
License: GPL-3.0
URL: https://git.linux-gaming.ru/Boria138/PortProtonQt
BuildArch: noarch
URL: https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt
ExclusiveArch: x86_64
BuildRequires: meson >= 0.61.2
BuildRequires: ninja-build
BuildRequires: python3-devel
BuildRequires: python3-wheel
BuildRequires: python3-pip
BuildRequires: python3-build
BuildRequires: pyproject-rpm-macros
BuildRequires: python3dist(setuptools)
BuildRequires: git
BuildRequires: gettext
BuildRequires: systemd-rpm-macros
BuildRequires: vulkan-loader-devel
BuildRequires: pkgconfig(sdl3)
BuildRequires: gcc
%description
%{summary}
Obsoletes: python3-%{pypi_name} < %{version}-%{release}
Provides: python3-%{pypi_name} = %{version}-%{release}
%package -n python3-%{pypi_name}
Summary: %{summary}
%{?python_provide:%python_provide python3-%{pypi_name}}
Requires: python3-babel
Requires: python3-evdev
Requires: python3-icoextract
Requires: python3-numpy
Requires: python3-websocket-client
Requires: python3-orjson
Requires: python3-psutil
Requires: python3-pyside6
Requires: python3-pyudev
Requires: python3-requests
Requires: python3-tqdm
Requires: python3-vdf
Requires: python3-pefile
Requires: python3-pillow
Requires: python3-pillow-qt
Requires: python3-rapidfuzz
Requires: python3-libarchive-c
Requires: perl-Image-ExifTool
Requires: xdg-utils
Requires: qt6-qtsvg
Requires: qt6-qtimageformats
Requires: qt6-qtmultimedia
Requires: cabextract
Requires: gzip
Requires: unzip
Requires: curl
Requires: file
Requires: findutils
Requires: gawk
Requires: grep
Requires: tar
Requires: xz
Requires: zstd
Requires: unrar
Requires: glx-utils
Requires: pciutils
Requires: vulkan-loader
Requires: procps-ng
Requires: psmisc
Requires: 7zip
Requires: python3-dbus-fast
Requires: desktop-file-utils
%description -n python3-%{pypi_name}
This application provides a sleek, intuitive graphical interface for managing and launching games from PortProton, Steam, and Epic Games Store. It consolidates your game libraries into a single, user-friendly hub for seamless navigation and organization. Its lightweight structure and cross-platform support deliver a cohesive gaming experience, eliminating the need for multiple launchers. Unique PortProton integration enhances Linux gaming, enabling effortless play of Windows-based titles with minimal setup.
# System Tab
Recommends: NetworkManager
Recommends: bluez
Recommends: upower
Recommends: pulseaudio-utils
Recommends: python3-qrcode
# For legacy PortProton prefix backup support
Recommends: squashfs-tools
Obsoletes: %{pypi_name}-steam-compat < %{?epoch:%{epoch}:}%{version}-%{release}
Provides: %{pypi_name}-steam-compat = %{?epoch:%{epoch}:}%{version}-%{release}
%description
A modern and intuitive interface for managing and launching games from PortProton and Steam. Combines libraries in one place and simplifies running Windows games on Linux.
%{?python_disable_dependency_generator}
%prep
git clone https://git.linux-gaming.ru/Boria138/PortProtonQt
git clone https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt
cd %{oname}
git checkout v%{pypi_version}
%build
cd %{oname}
%pyproject_wheel
%meson \
-Dpython_purelibdir=%{python3_sitelib} \
-Dudev_rulesdir=%{_udevrulesdir}
%meson_build
%install
cd %{oname}
%pyproject_install
%pyproject_save_files %{pypi_name}
cp -r build-aux/share %{buildroot}/usr/
%meson_install
bash ./dev-scripts/generate-completions.sh
install -Dpm 0644 ./completions/portprotonqt -t %{buildroot}%{bash_completions_dir}
install -Dpm 0644 ./completions/portprotonqt.fish -t %{buildroot}%{fish_completions_dir}
install -Dpm 0644 ./completions/_portprotonqt -t %{buildroot}%{zsh_completions_dir}
%find_lang %{pypi_name}
%files -n python3-%{pypi_name} -f %{pyproject_files}
%files -f %{oname}/%{pypi_name}.lang
%{_bindir}/%{pypi_name}
%{_bindir}/vk_gpu_info
%{python3_sitelib}/%{pypi_name}/
%{_datadir}/icons/hicolor/scalable/apps/ru.linux_gaming.PortProtonQt.svg
%{_metainfodir}/ru.linux_gaming.PortProtonQt.metainfo.xml
%{_udevrulesdir}/60-portprotonqt.rules
%{_sysusersdir}/portprotonqt.conf
%{_datadir}/polkit-1/rules.d/ru.linux_gaming.PortProtonQt.rules
%{_datadir}/applications/ru.linux_gaming.PortProtonQt.desktop
%{_datadir}/applications/ru.linux_gaming.PortProtonQt.log.desktop
%{_datadir}/applications/ru.linux_gaming.PortProtonQt.silent.desktop
%{_datadir}/mime/packages/ru.linux_gaming.PortProtonQt.xml
%{_datadir}/portproton/scripts/
%{_datadir}/portproton/conf/
%{bash_completions_dir}/portprotonqt
%{fish_completions_dir}/portprotonqt.fish
%{zsh_completions_dir}/_portprotonqt
%changelog
Binary file not shown.
@@ -0,0 +1 @@
g portprotonqt - -
@@ -0,0 +1 @@
KERNEL=="uinput", SUBSYSTEM=="misc", OPTIONS+="static_node=uinput", TAG+="uaccess"
+8
View File
@@ -0,0 +1,8 @@
#!/usr/bin/env python3
import sys
from portprotonqt.app import main
if __name__ == "__main__":
sys.exit(main())
@@ -1,9 +1,14 @@
[Desktop Entry]
Name=PortProtonQt
Exec=portprotonqt
Exec=portprotonqt %u
Type=Application
Comment=A modern GUI for PortProton project
Comment[ru]=Современный графический интерфейс для проекта PortProton
Comment[es]=Una interfaz gráfica moderna para el proyecto PortProton
Comment[pt]=Uma interface gráfica moderna para o projeto PortProton
Comment[de]=Eine moderne grafische Benutzeroberfläche für das PortProton-Projekt
Terminal=false
Icon=ru.linux_gaming.PortProtonQt
StartupWMClass=ru.linux_gaming.PortProtonQt
Categories=Game;Utility;
MimeType=x-scheme-handler/portproton;x-scheme-handler/portprotonqt;application/x-portproton-prefix-backup;application/x-portproton-autoinstall;application/x-ms-dos-exec;application/x-ms-dos-executable;application/x-msdos-program;application/vnd.microsoft.portable-executable;application/x-ms-dos-batch;application/x-bat;application/x-msi;text/x-ms-regedit;application/x-dosexec;application/x-iso9660-image;application/x-cd-image;application/x-raw-disk-image;application/x-mdf;application/x-mds;application/x-nrg;
@@ -0,0 +1,20 @@
[Desktop Entry]
Name=PortProtonQt (log)
Name[ru]=PortProtonQt (режим лога)
Name[es]=PortProtonQt (modo de registro)
Name[pt]=PortProtonQt (modo de registro)
Name[de]=PortProtonQt (Protokollmodus)
Exec=portprotonqt --log %u
Type=Application
Comment=Launch Windows applications with logging through PortProtonQt
Comment[ru]=Запуск Windows-приложений с записью лога через PortProtonQt
Comment[es]=Ejecuta aplicaciones de Windows con registro mediante PortProtonQt
Comment[pt]=Executa aplicativos do Windows com registro pelo PortProtonQt
Comment[de]=Startet Windows-Anwendungen mit Protokollierung über PortProtonQt
Terminal=false
Icon=ru.linux_gaming.PortProtonQt
StartupWMClass=ru.linux_gaming.PortProtonQt
Categories=Game;
NoDisplay=true
MimeType=application/x-ms-dos-executable;application/x-msdos-program;application/x-ms-dos-exec;application/x-dosexec;application/vnd.microsoft.portable-executable;
StartupNotify=true
@@ -0,0 +1,20 @@
[Desktop Entry]
Name=PortProtonQt (silent)
Name[ru]=PortProtonQt (тихий режим)
Name[es]=PortProtonQt (modo silencioso)
Name[pt]=PortProtonQt (modo silencioso)
Name[de]=PortProtonQt (stiller Modus)
Exec=portprotonqt --silent %u
Type=Application
Comment=Launch Windows applications silently through PortProtonQt
Comment[ru]=Тихий запуск Windows-приложений через PortProtonQt
Comment[es]=Ejecuta aplicaciones de Windows silenciosamente mediante PortProtonQt
Comment[pt]=Executa aplicativos do Windows silenciosamente pelo PortProtonQt
Comment[de]=Startet Windows-Anwendungen lautlos über PortProtonQt
Terminal=false
Icon=ru.linux_gaming.PortProtonQt
StartupWMClass=ru.linux_gaming.PortProtonQt
Categories=Game;
NoDisplay=true
MimeType=application/x-ms-dos-executable;application/x-msdos-program;application/x-ms-dos-exec;application/x-dosexec;application/vnd.microsoft.portable-executable;
StartupNotify=true
@@ -1,19 +0,0 @@
_portprotonqt() {
local cur prev
_init_completion || return
case $prev in
--help|-h)
return
;;
esac
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '--fullscreen --session' -- "$cur" ) )
return 0
fi
return 0
}
complete -F _portprotonqt portprotonqt
@@ -4,72 +4,171 @@
<id>ru.linux_gaming.PortProtonQt</id>
<metadata_license>CC0-1.0</metadata_license>
<project_license>GPL-3.0-or-later</project_license>
<summary>Modern GUI for managing and launching games from PortProton, Steam, and Epic Games Store</summary>
<summary xml:lang="ru">Современный графический интерфейс для управления и запуска игр из PortProton, Steam и Epic Games Store</summary>
<summary>Modern GUI for managing and launching games from PortProton, Steam, and GOG</summary>
<summary xml:lang="ru">Современный интерфейс для управления и запуска игр из PortProton, Steam и GOG</summary>
<description>
<p>
This application provides a sleek, intuitive graphical interface for managing and launching games from PortProton, Steam, and Epic Games Store. It consolidates your game libraries into a single, user-friendly hub for seamless navigation and organization. Its lightweight structure and cross-platform support deliver a cohesive gaming experience, eliminating the need for multiple launchers. Unique PortProton integration enhances Linux gaming, enabling effortless play of Windows-based titles with minimal setup.</p>
A modern and intuitive interface for managing and launching games from PortProton, Steam, and GOG. Combines libraries in one place and simplifies running Windows games on Linux.
</p>
<p xml:lang="ru">
Это приложение предоставляет стильный и интуитивно понятный графический интерфейс для управления и запуска игр из PortProton, Steam и Epic Games Store. Оно объединяет ваши игровые библиотеки в одном удобном хабе для простой навигации и организации. Лёгкая структура и кроссплатформенная поддержка обеспечивают целостный игровой опыт, устраняя необходимость в использовании нескольких лаунчеров. Уникальная интеграция с PortProton улучшает игровой процесс на Linux, позволяя с лёгкостью запускать Windows-игры с минимальными настройками.
</p>
Современный и удобный интерфейс для управления и запуска игр из PortProton, Steam и GOG. Объединяет библиотеки в одном месте и упрощает запуск Windows-игр на Linux.
</p>
</description>
<launchable type="desktop-id">ru.linux_gaming.PortProtonQt.desktop</launchable>
<developer id="ru.linux_gaming">
<name>Boria138</name>
</developer>
<releases>
<release version="1.4.1" date="2026-08-26">
<description></description>
</release>
<release version="1.4.0" date="2026-08-23">
<description/>
</release>
<release version="1.3.2" date="2026-08-10">
<description/>
</release>
<release version="1.3.1" date="2026-07-17">
<description/>
</release>
<release version="1.3.0" date="2026-07-13">
<description/>
</release>
<release version="1.2.0" date="2026-06-10">
<description/>
</release>
<release version="1.1.0" date="2026-05-26">
<description/>
</release>
<release version="1.0" date="2026-05-23">
<description/>
</release>
<release version="0.1.12" date="2026-04-17" type="development">
<description/>
</release>
<release version="0.1.11" date="2026-02-18" type="development">
<description/>
</release>
<release version="0.1.10" date="2026-01-14" type="development">
<description/>
</release>
<release version="0.1.9" date="2025-12-08" type="development">
<description/>
</release>
<release version="0.1.8" date="2025-10-18" type="development">
<description/>
</release>
<release version="0.1.7" date="2025-10-12" type="development">
<description/>
</release>
<release version="0.1.6" date="2025-09-23" type="development">
<description/>
</release>
<release version="0.1.5" date="2025-08-31" type="development">
<description/>
</release>
<release version="0.1.4" date="2025-07-21" type="development">
<description/>
</release>
<release version="0.1.3" date="2025-07-05" type="development">
<description/>
</release>
<release version="0.1.2" date="2025-06-15" type="development">
<description/>
</release>
<release version="0.1.1" date="2025-05-17" type="development">
<description/>
</release>
</releases>
<recommends>
<control>keyboard</control>
<control>pointing</control>
<control>touch</control>
<control>gamepad</control>
</recommends>
<branding>
<color type="primary" scheme_preference="light">#007AFF</color>
<color type="primary" scheme_preference="dark">#09BEC8</color>
</branding>
<categories>
<category>Game</category>
<category>Utility</category>
</categories>
<url type="homepage">https://git.linux-gaming.ru/Boria138/PortProtonQt</url>
<url type="bugtracker">https://git.linux-gaming.ru/Boria138/PortProtonQt/issues</url>
<url type="homepage">https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt</url>
<url type="bugtracker">https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/issues</url>
<url type="translate">https://translate.codeberg.org/engage/portprotonqt</url>
<screenshots>
<screenshot type="default">
<image>https://git.linux-gaming.ru/Boria138/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D0%BE%D1%82%D0%B5%D0%BA%D0%B0.png</image>
<image>https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/1_library.png</image>
<caption>Library</caption>
<caption xml:lang="ru">Библиотека</caption>
</screenshot>
<screenshot>
<image>https://git.linux-gaming.ru/Boria138/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/%D0%9A%D0%B0%D1%80%D1%82%D0%BE%D1%87%D0%BA%D0%B0.png</image>
<caption>Card detail page</caption>
<caption xml:lang="ru">Детали игры</caption>
</screenshot>
<screenshot>
<image>https://git.linux-gaming.ru/Boria138/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B8.png</image>
<caption>Settings</caption>
<caption xml:lang="ru">Настройки</caption>
</screenshot>
<screenshot>
<image>https://git.linux-gaming.ru/Boria138/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%BA%D1%81%D1%82%D0%BD%D0%BE%D0%B5%20%D0%BC%D0%B5%D0%BD%D1%8E.png</image>
<image>https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/2_context_menu.png</image>
<caption>Context Menu</caption>
<caption xml:lang="ru">Контекстное меню</caption>
</screenshot>
<screenshot>
<image>https://git.linux-gaming.ru/Boria138/PortProtonQt/src/branch/main/portprotonqt/themes/standart/images/screenshots/%D0%9E%D0%B2%D0%B5%D1%80%D0%BB%D0%B5%D0%B9.png</image>
<caption>Overlay</caption>
<caption xml:lang="ru">Оверлей</caption>
<image>https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/3_auto_installs.png</image>
<caption>Auto installs</caption>
<caption xml:lang="ru">Автоустановки</caption>
</screenshot>
<screenshot>
<image>https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/4_game_card.png</image>
<caption>Card detail page</caption>
<caption xml:lang="ru">Детали игры</caption>
</screenshot>
<screenshot>
<image>https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/5_portproton_settings.png</image>
<caption>Settings</caption>
<caption xml:lang="ru">Настройки</caption>
</screenshot>
<screenshot>
<image>https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/6_wine_settings.png</image>
<caption>Wine Settings</caption>
<caption xml:lang="ru">Настройки Wine</caption>
</screenshot>
<screenshot>
<image>https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/7_exe_settings.png</image>
<caption>Exe Settings</caption>
<caption xml:lang="ru">Настройки exe</caption>
</screenshot>
<screenshot>
<image>https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/8_exe_settings_mangohud.png</image>
<caption>MangoHud Settings</caption>
<caption xml:lang="ru">Настройки MangoHud</caption>
</screenshot>
<screenshot>
<image>https://git.linux-gaming.ru/Linux-Gaming/PortProtonQt/raw/branch/main/portprotonqt/themes/standart/images/screenshots/9_exe_settings_gamescope.png</image>
<caption>Gamescope Settings</caption>
<caption xml:lang="ru">Настройки Gamescope</caption>
</screenshot>
</screenshots>
<keywords>
<keyword translate="no">wine</keyword>
<keyword translate="no">proton</keyword>
<keyword translate="no">steam</keyword>
<keyword translate="no">windows</keyword>
<keyword translate="no">epic games store</keyword>
<keyword translate="no">egs</keyword>
<keyword translate="no">qt</keyword>
<keyword translate="no">linux gaming</keyword>
<keyword translate="no">portproton</keyword>
<keyword>game launcher</keyword>
<keyword>compatibility tool</keyword>
<keyword>games</keyword>
</keywords>
<content_rating type="oars-1.1" />
<keyword xml:lang="ru">игры</keyword>
<keyword xml:lang="ru">лаунчер игр</keyword>
<keyword xml:lang="ru">запуск игр</keyword>
</keywords>
<content_rating type="oars-1.1"/>
</component>
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="application/x-portproton-prefix-backup">
<comment>PortProton prefix backup</comment>
<comment xml:lang="ru">Резервная копия префикса PortProton</comment>
<glob pattern="*.ppack"/>
</mime-type>
<mime-type type="application/x-portproton-autoinstall">
<comment>PortProton auto install script</comment>
<comment xml:lang="ru">Скрипт автоустановки PortProton</comment>
<glob pattern="*.ppai"/>
</mime-type>
<mime-type type="application/x-portproton-ppdb">
<comment>PortProton configuration</comment>
<comment xml:lang="ru">Конфигурация PortProton</comment>
<sub-class-of type="text/plain"/>
<glob pattern="*.ppdb" weight="100"/>
</mime-type>
<mime-type type="application/x-portproton-user-conf">
<comment>PortProton user configuration</comment>
<comment xml:lang="ru">Пользовательская конфигурация PortProton</comment>
<sub-class-of type="text/plain"/>
<glob pattern="user.conf" weight="100"/>
</mime-type>
</mime-info>
@@ -0,0 +1,15 @@
polkit.addRule(function(action, subject) {
if (!subject.local || !subject.active ||
!subject.isInGroup("portprotonqt")) {
return polkit.Result.NOT_HANDLED;
}
if (action.id === "org.freedesktop.NetworkManager.settings.modify.system" ||
action.id === "org.freedesktop.udisks2.filesystem-mount-system" ||
action.id === "org.freedesktop.udisks2.filesystem-mount-other-seat" ||
action.id === "org.freedesktop.udisks2.filesystem-unmount-others") {
return polkit.Result.YES;
}
return polkit.Result.NOT_HANDLED;
});
+679
View File
@@ -0,0 +1,679 @@
# Expose the HDR10 ColorSpace (DXGI_COLOR_SPACE_RGB_FULL_G2084_NONE_P2020)
# to the application by default.
# This shows to the game that the global Windows 'HDR Mode' is enabled.
# Many (broken) games will need this to be set to consider exposing HDR output
# as determine it based on the DXGIOutput's current ColorSpace instead of
# using CheckColorSpaceSupport.
# This defaults to the value of the DXVK_HDR environment variable.
#
# Supported values: True, False
# dxgi.enableHDR = True
# Create the VkSurface on the first call to IDXGISwapChain::Present,
# rather than when creating the swap chain. Some games that start
# rendering with a different graphics API may require this option,
# or otherwise the window may stay black.
#
# Supported values: True, False
# dxgi.deferSurfaceCreation = False
# d3d9.deferSurfaceCreation = False
# Enforce a stricter maximum frame latency. Overrides the application
# setting specified by calling IDXGIDevice::SetMaximumFrameLatency.
# Setting this to 0 will have no effect.
#
# Supported values : 0 - 16
# dxgi.maxFrameLatency = 0
# d3d9.maxFrameLatency = 0
# Enables frame rate limiter. The main purpose of this is to work around
# bugs in games that have physics or other simulation tied to their frame
# rate, but do not provide their own limiter.
#
# Supported values : Any non-negative integer
# dxgi.maxFrameRate = 0
# d3d9.maxFrameRate = 0
# Override PCI vendor and device IDs reported to the application. Can
# cause the app to adjust behaviour depending on the selected values.
#
# Supported values: Any four-digit hex number.
# dxgi.customDeviceDesc = "NVIDIA GeForce RTX 4090"
# dxgi.customDeviceId = 2684
# dxgi.customVendorId = 10de
# dxgi.hideAmdGpu = True
# dxgi.hideNvidiaGpu = False
# Override the reported device description
#
# Supported values: Any string.
# d3d9.customDeviceDesc = "NVIDIA GeForce RTX 4090"
# d3d9.customDeviceId = 2684
# d3d9.customVendorId = 10de
# Report Nvidia GPUs as AMD GPUs. Unless NVAPI support is explicitly
# enabled through Proton, this is done by default in order to work
# around crashes or low performance with Nvidia-speciic code paths
# in games, especially Unreal Engine.
#
# Supported values: Auto, True, False
# dxgi.hideNvidiaGpu = Auto
# Report Nvidia GPUs running on NVK as AMD GPUs.
#
# Supported values: Auto, True, False
# dxgi.hideNvkGpu = Auto
# Report AMD GPUs as Nvidia GPUs. This is only done for games that are
# known to have issues with AMDAGS or other AMD-specific code paths.
#
# Supported values: Auto, True, False
# dxgi.hideAmdGpu = Auto
# Report Intel GPUs as AMD GPUs. This is only done for games that are
# known to have issues with Intel-specific libraries such as XESS.
#
# Supported values: Auto, True, False
# dxgi.hideIntelGpu = Auto
# Override maximum amount of device memory and shared system memory
# reported to the application. This may fix texture streaming issues
# in games that do not support cards with large amounts of VRAM.
# This is not a hard cap and applications can choose to ignore it.
#
# Supported values: Any number in Megabytes.
# dxgi.maxDeviceMemory = 0
# dxgi.maxSharedMemory = 0
# Some games think we are on Intel given a lack of NVAPI or
# AGS/atiadlxx support. Report our device memory as shared memory,
# and some small amount for a "carveout".
# Supported values: True, False
# dxgi.emulateUMA = False
# Override back buffer count for the Vulkan swap chain.
# Setting this to 0 or less will have no effect.
#
# Supported values: Any number greater than or equal to 2.
# dxgi.numBackBuffers = 0
# d3d9.numBackBuffers = 0
# Overrides synchronization interval (Vsync) for presentation.
# Setting this to 0 disables vertical synchronization entirely.
# A positive value 'n' will enable Vsync and repeat the same
# image n times, and a negative value will have no effect.
#
# Supported values: Any non-negative number
# dxgi.syncInterval = -1
# d3d9.presentInterval = -1
# True enables the mailbox present mode in case regular Vsync is disabled.
# This should avoid tearing, but may be unsupported on some systems
# or require setting dxgi.numBackBuffers to a higher value in order
# to work properly.
#
# False enables the relaxed fifo present mode in case regular Vsync is enabled.
# This should result in tearing but reduce stutter if FPS are too low,
# but may be unsupported on some systems.
#
# Please do not report issues with this option.
#
# Supported values: Auto, True, False
# dxvk.tearFree = Auto
# Assume single-use mode for command lists created on deferred contexts.
# This may need to be disabled for some applications to avoid rendering
# issues, which may come at a significant performance cost.
#
# Supported values: True, False
# d3d11.dcSingleUseMode = True
# Override the maximum feature level that a D3D11 device can be created
# with. Setting this to a higher value may allow some applications to run
# that would otherwise fail to create a D3D11 device.
#
# Supported values: 9_1, 9_2, 9_3, 10_0, 10_1, 11_0, 11_1, 12_0, 12_1
# d3d11.maxFeatureLevel = 12_1
# Overrides the maximum allowed tessellation factor. This can be used to
# improve performance in titles which overuse tessellation.
#
# Supported values: Any number between 8 and 64
# d3d11.maxTessFactor = 0
# Enables relaxed pipeline barriers around UAV writes.
#
# This may improve performance in some games, but may also introduce
# rendering issues. Please don't report bugs with the option enabled.
#
# Supported values: True, False
# d3d11.relaxedBarriers = False
# Ignores barriers around UAV writes from fragment shaders.
#
# This may improve performance in some games, but may also introduce
# rendering issues. Please don't report bugs with the option enabled.
#
# Supported values: True, False
# d3d11.ignoreGraphicsBarriers = False
# Overrides anisotropic filtering for all samplers. Set this to a positive
# value to enable AF for all samplers in the game, or to 0 in order to
# disable AF entirely. Negative values will have no effect.
#
# Supported values: Any number between 0 and 16
# d3d11.samplerAnisotropy = -1
# d3d9.samplerAnisotropy = -1
# Changes the mipmap LOD bias for all samplers. The given number will be
# added to the LOD bias provided by the application, rather than replacing
# it entirely. Positive values will reduce texture detail, while negative
# values may increase sharpness at the cost of shimmer.
#
# Supported values: Any number between -2.0 and 1.0
# d3d11.samplerLodBias = 0.0
# d3d9.samplerLodBias = 0.0
# Clamps any negative LOD bias to 0. Applies after samplerLodBias has been
# applied. May help with games that use a high negative LOD bias by default.
#
# Supported values: True, False
# d3d11.clampNegativeLodBias = False
# d3d9.clampNegativeLodBias = False
# Declares vertex positions as invariant in order to solve
# potential Z-fighting issues at a small performance cost.
#
# Supported values: True, False
# d3d11.invariantPosition = True
# d3d9.invariantPosition = True
# Forces per-sample rate shading when MSAA is enabled, rather than per-pixel
# shading. May improve visual clarity at a significant performance cost, but
# may also introduce visual issues in some games.
#
# Supported values: True, False
# d3d11.forceSampleRateShading = False
# d3d9.forceSampleRateShading = False
# Forces the sample count of all textures to 1, and performs
# the needed fixups in resolve operations and shaders.
#
# Supported values: True, False
# d3d11.disableMsaa = False
# Clears workgroup memory in compute shaders to zero. Some games don't do
# this and rely on undefined behaviour. Enabling may reduce performance.
#
# Supported values: True, False
# d3d11.zeroWorkgroupMemory = False
# Resource size limit for implicit discards, in kilobytes. For small staging
# resources mapped with MAP_WRITE, DXVK will sometimes allocate new backing
# storage in order to avoid GPU synchronization, so setting this too high
# may cause memory issues, setting it to -1 disables the feature.
# d3d11.maxImplicitDiscardSize = 256
# Resource size limit for buffer-mapped dynamic images, in kilobytes.
# A higher threshold may reduce memory usage and PCI-E bandwidth in
# some games, but may also increase GPU synchronizations. Setting it
# to -1 disables the feature.
# d3d11.maxDynamicImageBufferSize = -1
# Allocates dynamic resources with the given set of bind flags in
# cached system memory rather than uncached memory or host-visible
# VRAM, in order to allow fast readback from the CPU. This is only
# useful for buggy applications, and may reduce GPU-bound performance.
#
# Supported values: Any combination of the following:
# - v: Vertex buffers
# - i: Index buffers
# - c: Constant buffers
# - r: Shader resources
# - a: All dynamic resources
# d3d11.cachedDynamicResources = ""
# Force-enables the D3D11 context lock via the ID3D10Multithread
# interface. This may be useful to debug race conditions.
#
# Supported values: True, False
# d3d11.enableContextLock = False
# Exposes or hides support for driver command lists
#
# Some games use the feature flag to decide whether to use deferred
# contexts or not. We enable this by default, but in some situations
# this can lead to issues if games detect an AMD GPU where command
# lists are not natively supported on Windows.
#
# Supported values: True, False
# d3d11.exposeDriverCommandLists = True
# Sets number of pipeline compiler threads.
#
# If the graphics pipeline library feature is enabled, the given
# number of threads will be used for shader compilation. Some of
# these threads will be reserved for high-priority work.
#
# Supported values:
# - 0 to use all available CPU cores
# - any positive number to enforce the thread count
# dxvk.numCompilerThreads = 0
# Toggles raw SSBO usage.
#
# Uses storage buffers to implement raw and structured buffer
# views. Enabled by default on hardware which has a storage
# buffer offset alignment requirement of 4 Bytes (e.g. AMD).
# Enabling this may improve performance, but is not safe on
# hardware with higher alignment requirements.
#
# Supported values:
# - Auto: Don't change the default
# - True, False: Always enable / disable
# dxvk.useRawSsbo = Auto
# Changes memory chunk size.
#
# Can be used to override the maximum memory chunk size.
#
# Supported values:
# - 0 to use the defaults
# - any positive integer to limit the chunk size, in MiB
# dxvk.maxChunkSize = 0
# Controls graphics pipeline library behaviour
#
# Can be used to change VK_EXT_graphics_pipeline_library usage for
# debugging purpose. Doing so will likely result in increased stutter
# or degraded performance.
#
# Supported values:
# - Auto: Enable if supported, and compile optimized pipelines in the background
# - True: Enable if supported, but do not compile optimized pipelines
# - False: Always disable the feature
# dxvk.enableGraphicsPipelineLibrary = Auto
# Controls pipeline lifetime tracking
#
# If enabled, pipeline libraries will be freed aggressively in order
# save memory and address space. Has no effect if graphics pipeline
# libraries are not supported or disabled.
#
# Supported values:
# - Auto: Enable tracking for 32-bit applications only
# - True: Always enable tracking
# - False: Always disable tracking
# dxvk.trackPipelineLifetime = Auto
# Sets enabled HUD elements
#
# Behaves like the DXVK_HUD environment variable if the
# environment variable is not set, otherwise it will be
# ignored. The syntax is identical.
# dxvk.hud =
# Reported shader model
#
# The shader model to state that we support in the device
# capabilities that the applicatation queries.
#
# Supported values:
# - 1: Shader Model 1
# - 2: Shader Model 2
# - 3: Shader Model 3
# d3d9.shaderModel = 3
# DPI Awareness
#
# Decides whether we should call SetProcessDPIAware on device
# creation. Helps avoid upscaling blur in modern Windows on
# Hi-DPI screens/devices.
#
# Supported values:
# - True, False: Always enable / disable
# d3d9.dpiAware = True
# Strict Constant Copies
#
# Decides whether we should always copy defined constants to
# the UBO when relative addressing is used, or only when the
# relative addressing starts a defined constant.
#
# Supported values:
# - True, False: Always enable / disable
# d3d9.strictConstantCopies = False
# Strict Pow
#
# Decides whether we have an opSelect for handling pow(0,0) = 0
# otherwise it becomes undefined.
#
# Supported values:
# - True, False: Always enable / disable
# d3d9.strictPow = True
# Lenient Clear
#
# Decides whether or not we fastpath clear anyway if we are close enough to
# clearing a full render target.
#
# Supported values:
# - True, False: Always enable / disable
# d3d9.lenientClear = False
# Max available memory
#
# Changes the max initial value used in tracking and GetAvailableTextureMem
# Value in Megabytes
#
# Supported values:
# - Max Available Memory: Any int32_t
# - Memory Tracking Testing: True, False
# d3d9.maxAvailableMemory = 4096
# d3d9.memoryTrackTest = False
# Force enable/disable floating point quirk emulation
#
# Force toggle anything * 0 emulation
# Setting it to True will use a faster but less accurate approach that works for most games.
# Supported values:
# - True: Use a faster but less accurate approach. Good enough for most games
# - False: Disable float emulation completely
# - Strict: Use a slower but more correct approach. Necessary for some games
# - Auto: DXVK will pick automatically
# d3d9.floatEmulation = Auto
# Enable dialog box mode
#
# Changes the default state of dialog box mode.
# *Disables* exclusive fullscreen when enabled.
#
# Supported values:
# - True, False: Always enable / disable
# d3d9.enableDialogMode = False
# Overrides the application's MSAA level on the swapchain
#
# Supported values: -1 (application) and 0 to 16 (user override)
# d3d9.forceSwapchainMSAA = -1
# Long Mad
#
# Should we make our Mads a FFma or do it the long way with an FMul and an FAdd?
# This solves some rendering bugs in games that have z-pass shaders which
# don't match entirely to the regular vertex shader in this way.
#
# Supported values:
# - True/False
# d3d9.longMad = False
# Device Local Constant Buffers
#
# Enables using device local, host accessible memory for constant buffers in D3D9.
# This tends to actually be slower for some reason on AMD,
# and the exact same performance on NVIDIA.
#
# Supported values:
# - True/False
# d3d9.deviceLocalConstantBuffers = False
# Support DF formats
#
# Support the vendor extension DF floating point depth formats
#
# Supported values:
# - True/False
# d3d9.supportDFFormats = True
# Use D32f for D24
#
# Useful for reproducing AMD issues on other hw.
#
# Supported values:
# - True/False
# d3d9.useD32forD24 = False
# Support X4R4G4B4
#
# Support the X4R4G4B4 format.
# The Sims 2 is a very broken game.
#
# Supported values:
# - True/False
# d3d9.supportX4R4G4B4 = True
# Support D32
#
# Support the D32 format.
#
# Supported values:
# - True/False
# d3d9.supportD32 = True
# Disable A8 as a Render Target
#
# Disable support for A8 format render targets
# Once again, The Sims 2 is a very broken game.
#
# Supported values:
# - True/False
# d3d9.disableA8RT = False
# Support for VCache Query
#
# Support for the vcache query
# Not very important as a user config.
# Used internally.
#
# Supported values:
# - True/False
# Defaults to True if vendorId == 0x10de
# d3d9.supportVCache = True
# Force Sampler Type Spec Constants
#
# Useful if games use the wrong image and sampler
# type combo like Halo: CE or Spellforce.
# Can fix rendering in older, broken games in some instances.
#
# Supported values:
# - True/False
# d3d9.forceSamplerTypeSpecConstants = False
# Force Aspect Ratio
#
# Only exposes modes with a given aspect ratio.
# Useful for titles that break if they see ultra-wide.
#
# Supported values:
# - Any ratio, ie. "16:9", "4:3"
# d3d9.forceAspectRatio = ""
# Enumerate by Displays
#
# Whether we should enumerate D3D9 adapters by display (windows behaviour)
# or by physical adapter.
# May be useful in PRIME setups.
#
# Supported values:
# - True/False
# d3d9.enumerateByDisplays = True
# Cached Dynamic Buffers
#
# Allocates dynamic resources in D3DPOOL_DEFAULT in
# cached system memory rather than uncached memory or host-visible
# VRAM, in order to allow fast readback from the CPU. This is only
# useful for buggy applications, and may reduce GPU-bound performance.
#
# Supported values:
# - True/False
# d3d9.cachedDynamicBuffers = False
# Seamless Cubes
#
# Don't use non seamless cube maps even if they are supported.
# Non seamless cubes are correct d3d9 behavior, but can produce worse looking edges.
#
# Supported values:
# - True/False
# d3d9.seamlessCubes = False
# Debug Utils
#
# Enables debug utils as this is off by default, this enables user annotations like BeginEvent()/EndEvent().
# Alternatively could be enabled with DXVK_DEBUG=markers environment variable.
#
# Supported values:
# - True/False
# dxvk.enableDebugUtils = False
# Memory limit for locked D3D9 textures
#
# How much virtual memory will be used for textures (in MB).
# 0 to disable the limit.
# THIS DOES NOT IMPACT ACTUAL MEMORY CONSUMPTION OR TEXTURE QUALITY.
# DO NOT CHANGE THIS UNLESS YOU HAVE A VERY GOOD REASON.
# d3d9.textureMemory = 100
# Hide integrated graphics from applications
#
# Only has an effect when dedicated GPUs are present on the system. It is
# not recommended to use this option at all unless absolutely necessary for
# a game to work; prefer using DXVK_FILTER_DEVICE_NAME whenever possible.
#
# Supported values:
# - True/False
# dxvk.hideIntegratedGraphics = False
# Trigger DEVICELOST when losing focus
#
# D3D9 requires the application to call Device::Reset after
# it loses focus in fullscreen.
# Some games rely on observing a D3DERR_DEVICELOST or D3DERR_NOTRESET.
# Others don't handle it correctly.
#
# Supported values:
# - True/False
# d3d9.deviceLossOnFocusLoss = False
# Reject Device::Reset if any losable resource is still alive
#
# D3D9 rejects Device::Reset if there's still any alive resources of specific types.
# (State blocks, additional swapchains, D3DPOOL_DEFAULT resources)
# Some games leak resources leading to a hang.
#
# Supported values:
# - True/False
# d3d9.countLosableResources = True
+60
View File
@@ -0,0 +1,60 @@
reshadeTexturePath = /run/pressure-vessel/pv-from-host/reshade/textures
reshadeIncludePath = /run/pressure-vessel/pv-from-host/reshade
FilmGrain2 = /run/pressure-vessel/pv-from-host/reshade/shaders/FilmGrain2.fx
Curves = /run/pressure-vessel/pv-from-host/reshade/shaders/Curves.fx
FakeHDR = /run/pressure-vessel/pv-from-host/reshade/shaders/FakeHDR.fx
LevelsPlus = /run/pressure-vessel/pv-from-host/reshade/shaders/LevelsPlus.fx
Colourfulness = /run/pressure-vessel/pv-from-host/reshade/shaders/Colourfulness.fx
Bloom = /run/pressure-vessel/pv-from-host/reshade/shaders/Bloom.fx
SMAA = /run/pressure-vessel/pv-from-host/reshade/shaders/SMAA.fx
ChromaticAberration = /run/pressure-vessel/pv-from-host/reshade/shaders/ChromaticAberration.fx
Denoise = /run/pressure-vessel/pv-from-host/reshade/shaders/Denoise.fx
Clarity = /run/pressure-vessel/pv-from-host/reshade/shaders/Clarity.fx
Emphasize = /run/pressure-vessel/pv-from-host/reshade/shaders/Emphasize.fx
FakeMotionBlur = /run/pressure-vessel/pv-from-host/reshade/shaders/FakeMotionBlur.fx
FilmicAnamorphSharpen = /run/pressure-vessel/pv-from-host/reshade/shaders/FilmicAnamorphSharpen.fx
FilmicPass = /run/pressure-vessel/pv-from-host/reshade/shaders/FilmicPass.fx
GaussianBlur = /run/pressure-vessel/pv-from-host/reshade/shaders/GaussianBlur.fx
Glitch = /run/pressure-vessel/pv-from-host/reshade/shaders/Glitch.fx
HighPassSharpen = /run/pressure-vessel/pv-from-host/reshade/shaders/HighPassSharpen.fx
HQ4X = /run/pressure-vessel/pv-from-host/reshade/shaders/HQ4X.fx
HSLShift = /run/pressure-vessel/pv-from-host/reshade/shaders/HSLShift.fx
Layer = /run/pressure-vessel/pv-from-host/reshade/shaders/Layer.fx
LiftGammaGain = /run/pressure-vessel/pv-from-host/reshade/shaders/LiftGammaGain.fx
LumaSharpen = /run/pressure-vessel/pv-from-host/reshade/shaders/LumaSharpen.fx
LUT = /run/pressure-vessel/pv-from-host/reshade/shaders/LUT.fx
MagicBloom = /run/pressure-vessel/pv-from-host/reshade/shaders/MagicBloom.fx
Monochrome = /run/pressure-vessel/pv-from-host/reshade/shaders/Monochrome.fx
MultiLUT = /run/pressure-vessel/pv-from-host/reshade/shaders/MultiLUT.fx
MXAO = /run/pressure-vessel/pv-from-host/reshade/shaders/MXAO.fx
NightVision = /run/pressure-vessel/pv-from-host/reshade/shaders/NightVision.fx
Nostalgia = /run/pressure-vessel/pv-from-host/reshade/shaders/Nostalgia.fx
PerfectPerspective = /run/pressure-vessel/pv-from-host/reshade/shaders/PerfectPerspective.fx
PPFX_Bloom = /run/pressure-vessel/pv-from-host/reshade/shaders/PPFX_Bloom.fx
PPFX_Godrays = /run/pressure-vessel/pv-from-host/reshade/shaders/PPFX_Godrays.fx
Prism = /run/pressure-vessel/pv-from-host/reshade/shaders/Prism.fx
ReflectiveBumpMapping = /run/pressure-vessel/pv-from-host/reshade/shaders/ReflectiveBumpMapping.fx
Sepia = /run/pressure-vessel/pv-from-host/reshade/shaders/Sepia.fx
Splitscreen = /run/pressure-vessel/pv-from-host/reshade/shaders/Splitscreen.fx
StageDepth = /run/pressure-vessel/pv-from-host/reshade/shaders/StageDepth.fx
SurfaceBlur = /run/pressure-vessel/pv-from-host/reshade/shaders/SurfaceBlur.fx
Technicolor = /run/pressure-vessel/pv-from-host/reshade/shaders/Technicolor.fx
Technicolor2 = /run/pressure-vessel/pv-from-host/reshade/shaders/Technicolor2.fx
TiltShift = /run/pressure-vessel/pv-from-host/reshade/shaders/TiltShift.fx
Tonemap = /run/pressure-vessel/pv-from-host/reshade/shaders/Tonemap.fx
TriDither = /run/pressure-vessel/pv-from-host/reshade/shaders/TriDither.fx
UIDetect = /run/pressure-vessel/pv-from-host/reshade/shaders/UIDetect.fx
UIMask = /run/pressure-vessel/pv-from-host/reshade/shaders/UIMask.fx
Vibrance = /run/pressure-vessel/pv-from-host/reshade/shaders/Vibrance.fx
Vignette = /run/pressure-vessel/pv-from-host/reshade/shaders/Vignette.fx
AdaptiveSharpen = /run/pressure-vessel/pv-from-host/reshade/shaders/AdaptiveSharpen.fx
ColorMatrix = /run/pressure-vessel/pv-from-host/reshade/shaders/ColorMatrix.fx
Cartoon = /run/pressure-vessel/pv-from-host/reshade/shaders/Cartoon.fx
3DFX = /run/pressure-vessel/pv-from-host/reshade/shaders/3DFX.fx
Border = /run/pressure-vessel/pv-from-host/reshade/shaders/Border.fx
AspectRatio = /run/pressure-vessel/pv-from-host/reshade/shaders/AspectRatio.fx
casSharpness = 0.5
toggleKey = Home
effects = FakeHDR:cas
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: xuser
#AC4BFSP.exe
#Rating=1-5
#####################examples###########################
export PW_VULKAN_USE=1
export PW_USE_FSYNC=0
export PW_USE_ESYNC=0
@@ -0,0 +1,27 @@
#!/usr/bin/env bash
#Author: xuser
#ACIII.exe
#ACLiberation.exe
#Rating=1-5
#####################examples###########################
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG_9-12-2"
export PW_USE_ESYNC="0"
export PW_USE_FSYNC="1"
export PW_WINE_FULLSCREEN_FSR="1"
export PW_HIDE_NVIDIA_GPU="0"
export PW_VIRTUAL_DESKTOP="0"
export PW_USE_TERMINAL="0"
export PW_USE_D3D_EXTRAS="1"
export PW_FIX_VIDEO_IN_GAME="0"
export PW_REDUCE_PULSE_LATENCY="0"
export PW_USE_US_LAYOUT="0"
export PW_USE_GSTREAMER="1"
export PW_USE_SHADER_CACHE="1"
export PW_USE_WINE_DXGI="0"
export PW_DINPUT_PROTOCOL="0"
export LAUNCH_PARAMETERS=""
export PW_WINDOWS_VER="10"
export PW_DLL_INSTALL=""
export PW_WINE_CPU_TOPOLOGY="disabled"
export PW_MESA_GL_VERSION_OVERRIDE="disabled"
@@ -0,0 +1,9 @@
#!/usr/bin/env bash
#Author: Alek V., Dervart
#ACOdyssey.exe
#Rating=4
#####################examples###########################
export PW_USE_ESYNC="1"
export PW_USE_GSTREAMER="0"
export PW_PREFIX_NAME="ACO"
export PW_WINE_USE="WINE_LG"
@@ -0,0 +1,11 @@
#!/usr/bin/env bash
#Author: Mels
#ACOrigins.exe
#Rating=1-5
export PW_VULKAN_USE="2"
export PW_WINE_USE="PROTON_LG"
export PORTPROTON_NAME="ACOrigins"
export PW_USE_ESYNC="1"
export PW_USE_FSYNC="1"
export PW_WINE_FULLSCREEN_FSR="1"
export PW_USE_GSTREAMER="0"
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: anonymous
#ACValhalla.exe
#Rating=1-5
#####################examples###########################
export PW_DLL_INSTALL="vcrun2019" # Install DLL in port prefix (used winetricks)
export PW_VULKAN_USE=1
export NOSTSTDIR="\"${PATH_TO_GAME}\""
@@ -0,0 +1,6 @@
#!/usr/bin/env bash
#Author: xuser
#ALOTInstaller.exe
#Rating=1-5
#####################examples###########################
export PW_VULKAN_USE=0
@@ -0,0 +1,31 @@
#!/usr/bin/env bash
#Author: deck
#APlagueTaleInnocence_x64.exe
#Rating=1-5
export PW_VULKAN_USE="2"
export PW_WINE_USE="PROTON_LG"
export PW_PREFIX_NAME="PLAGUE"
export PORTPROTON_NAME="A Plague Tale: Innocence"
export PW_USE_ESYNC="1"
export PW_USE_FSYNC="0"
export PW_WINE_FULLSCREEN_FSR="1"
export PW_HIDE_NVIDIA_GPU="0"
export PW_VIRTUAL_DESKTOP="0"
export PW_USE_TERMINAL="0"
export PW_USE_D3D_EXTRAS="1"
export PW_FIX_VIDEO_IN_GAME="0"
export PW_REDUCE_PULSE_LATENCY="0"
export PW_USE_US_LAYOUT="0"
export PW_USE_GSTREAMER="1"
export PW_USE_SHADER_CACHE="1"
export PW_USE_WINE_DXGI="0"
export PW_DINPUT_PROTOCOL="0"
export PW_USE_NATIVE_WAYLAND="0"
export LAUNCH_PARAMETERS=""
export PW_WINDOWS_VER="10"
export PW_DLL_INSTALL="vcrun2017"
export WINEDLLOVERRIDES=""
export PW_WINE_CPU_TOPOLOGY="disabled"
export PW_MESA_GL_VERSION_OVERRIDE="disabled"
export PW_VKD3D_FEATURE_LEVEL="disabled"
export PW_LOCALE_SELECT="disabled"
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: deck
#APlagueTaleRequiem_x64.exe
#Rating=1-5
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="PLAGUE"
export PORTPROTON_NAME="A Plague Tale: Requiem"
@@ -0,0 +1,9 @@
#!/usr/bin/env bash
#Author: Eljeyna
#ActOfWar.exe
#ActOfWar_HighTreason.exe
#Rating=1-5
export PW_WINE_USE="WINE-9.14-AMD64"
export PW_PREFIX_NAME="ACT_OF_WAR"
gui_proton_downloader "$PW_WINE_USE"
@@ -0,0 +1,10 @@
#!/usr/bin/env bash
#Author: vano
#AliceMadnessReturns.exe
#Rating=5
#####################examples###########################
export PW_WINDOWS_VER="10"
export PW_USE_FSYNC="0"
export PW_USE_ESYNC="0"
export PW_USE_GSTREAMER="1"
export PW_WINE_USE="PROTON_LG"
@@ -0,0 +1,33 @@
#!/usr/bin/env bash
#Author: ducksomecode
#AloneInTheDark-Win64-Shipping.exe
#Rating=1-5
#####################examples###########################
export PW_WINDOWS_VER="10"
export PW_DLL_INSTALL=""
export WINEDLLOVERRIDES=""
export LAUNCH_PARAMETERS=""
export PW_VULKAN_USE="2"
export PW_HIDE_NVIDIA_GPU="0"
export PW_VIRTUAL_DESKTOP="0"
export PW_USE_FSYNC="1"
export PW_USE_ESYNC="0"
export PW_USE_GSTREAMER="1"
export PW_REDUCE_PULSE_LATENCY="0"
export PW_USE_TERMINAL="0"
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="ALONE_IN_THE_DARK"
export PW_WINE_FULLSCREEN_FSR="0"
export PW_USE_D3D_EXTRAS="1"
export PW_FIX_VIDEO_IN_GAME="0"
export PW_USE_SHADER_CACHE="1"
export PW_USE_WINE_DXGI="0"
export PW_USE_GALLIUM_ZINK="0"
export PW_USE_RUNTIME="1"
export PW_WINE_CPU_TOPOLOGY="disabled"
export PORTPROTON_NAME="Alone in the Dark"
export PW_DINPUT_PROTOCOL="1"
export PW_USE_NATIVE_WAYLAND="0"
export PW_MESA_GL_VERSION_OVERRIDE="disabled"
export PW_VKD3D_FEATURE_LEVEL="disabled"
export PW_LOCALE_SELECT="disabled"
@@ -0,0 +1,5 @@
#!/usr/bin/env bash
#Author: Eljeyna
#Animal Well.exe
#Rating=1-5
export PW_WINE_USE="WINE_LG"
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: fidel
#Ankama Launcher.exe
#Rating=1-5
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="ANKAMA"
export PORTPROTON_NAME="Ankama "
export FILE_DESCRIPTION="Ankama Launcher"
@@ -0,0 +1,18 @@
#!/usr/bin/env bash
#Author: xuser
#Anno4.exe
#Rating=1-5
#####################examples###########################
if [[ "$LANGUAGE" == "ru" ]] ; then
export PW_COMMENT_DB="Если после первого запуска вы увидите черный экран, просто перезапустите игру."
else
export PW_COMMENT_DB="If after the first launch you see a black screen,\njust restart the game."
fi
export PW_VULKAN_USE=1
add_in_start_portproton () {
if [[ -d "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming/Ubisoft/Anno1404/Config/" ]] ; then
sed -i 's/<DirectXVersion>0<\/DirectXVersion>/<DirectXVersion>9<\/DirectXVersion>/' "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming/Ubisoft/Anno1404/Config/Engine.ini"
fi
}
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: stalker
#AnomalyLauncher.exe
#Rating=1-5
#####################examples###########################
export PW_DLL_INSTALL="d3dx10 d3dx11_42 d3dx11_43" # Install DLL in port prefix (used winetricks)
export PW_VULKAN_USE=1
export PW_USE_WINE_DXGI=1
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
#Author: chal55rus
#AnomalyZone.exe
#Rating=1-5
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="DEFAULT"
@@ -0,0 +1,10 @@
#!/usr/bin/env bash
#Author: rosakodu
#GS456.exe
#Rating=1-5
export PW_VULKAN_USE="2"
export PW_WINE_USE="PROTON_LG_7-54"
export PW_PREFIX_NAME="APOLLO_JUSTICE"
export WINEDLLOVERRIDES="winmm.dll=n,b"
gui_proton_downloader "$PW_WINE_USE"
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
#Author: akai
#Arthur.exe
#Rating=1-5
#####################examples###########################
export PW_REDUCE_PULSE_LATENCY=1
export PW_VULKAN_USE=2
@@ -0,0 +1,6 @@
#!/usr/bin/env bash
#Author: Сергей 33 (46)
#BF2.exe
#Rating=4
################################################
export PW_WINDOWS_VER="7"
@@ -0,0 +1,23 @@
#!/usr/bin/env bash
#Author: dez
#Battle.net Launcher.exe
#Battle.net-Setup.exe
#Battle.net.exe
#Rating=5
################################################
export PW_VULKAN_USE="2"
export LAUNCH_PARAMETERS=""
export WINEDLLOVERRIDES="locationapi="
export PW_DLL_INSTALL="vcrun2019 d3dx11_42 d3dx11_43"
export PW_WINDOWS_VER="10"
export PW_WINE_FULLSCREEN_FSR="0"
export PW_WINE_USE="PROTON_LG"
export WINE_SIMULATE_WRITECOPY="1"
add_in_start_portproton () {
rm -fr "${PORT_DATA_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/ProgramData/Agent/data"
rm -fr "${PORT_DATA_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/${USER}/Blizzard Entertainment/Battle.net/Cache"
rm -fr "${PORT_DATA_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/Public/Blizzard Entertainment/Battle.net/Cache"
try_remove_file "${PORT_DATA_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/sourcehansans.ttc"
# sed -i 's/"GrabFullscreen"="Y"/"GrabFullscreen"="N"/' "${PORT_DATA_PATH}/data/prefixes/${PW_PREFIX_NAME}/user.reg"
}
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: Mels
#BeyondTwoSouls.exe
#Rating=1-5
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG"
export PORTPROTON_NAME="BeyondTwoSouls"
export PW_USE_SHADER_CACHE="0"
@@ -0,0 +1,20 @@
#!/usr/bin/env bash
#Author: Alek V., Eljeyna
#div.exe
#Rating=1-5
#####################examples###########################
export PW_WINE_USE="WINE_LG"
export PW_DGVOODOO2="1"
export PW_DGV2_DISABLE_D3D="1"
export PW_DGV2_VRAM="1024"
export PW_DGV2_RESOLUTION="1280x720"
export PW_DGV2_VIDEOCARD="dgVoodoo2 Virtual 3D"
add_in_start_portproton () {
if [[ -f "${PATH_TO_GAME}/fontlist.txt" ]] ; then
if grep -q "charset russian" "${PATH_TO_GAME}/fontlist.txt" ; then
sed -i 's/DEFINE $TTFONTNAME "BDFont"/DEFINE $TTFONTNAME "Arial"/g' "${PATH_TO_GAME}/fontlist.txt"
sed -i 's/DEFINE $TTFONTANAME "BDFont"/DEFINE $TTFONTANAME "Arial"/g' "${PATH_TO_GAME}/fontlist.txt"
fi
fi
}
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
#Author: kosta
#Biomutant.exe
#Rating=1-5
#####################examples###########################
export PW_VULKAN_USE=1
export PW_DLL_INSTALL="vcrun2019" # Install DLL in port prefix (used winetricks)
@@ -0,0 +1,17 @@
#!/usr/bin/env bash
#Author: deck
#Bioshock2HD.exe
#Rating=5
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="DEFAULT"
export PW_VKBASALT="1"
export PW_USE_ESYNC="0"
export PW_USE_FSYNC="0"
export PW_USE_D3D_EXTRAS="1"
export PW_USE_GSTREAMER="1"
export PW_USE_SHADER_CACHE="1"
export PW_USE_WINE_DXGI="0"
export PW_USE_EAC_AND_BE="0"
export PW_VKBASALT_EFFECTS="FilmGrain2:Curves:cas"
export PW_VKBASALT_FFX_CAS="1"
@@ -0,0 +1,17 @@
#!/usr/bin/env bash
#Author: deck
#BioshockHD.exe
#Rating=5
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="DEFAULT"
export PW_VKBASALT="1"
export PW_USE_ESYNC="0"
export PW_USE_FSYNC="0"
export PW_USE_D3D_EXTRAS="1"
export PW_USE_GSTREAMER="1"
export PW_USE_SHADER_CACHE="1"
export PW_USE_WINE_DXGI="0"
export PW_USE_EAC_AND_BE="0"
export PW_VKBASALT_EFFECTS="FilmGrain2:Curves:cas"
export PW_VKBASALT_FFX_CAS="1"
@@ -0,0 +1,12 @@
#!/usr/bin/env bash
#Author: fidel
#BlackDesertLauncher.exe
#Rating=1-5
#####################examples###########################
export PW_WINDOWS_VER="10"
export PW_WINE_USE="PROTON_LG"
export PW_PREFIX_NAME="DOTNET"
export PORTPROTON_NAME="BlackDesertLauncher"
export FILE_DESCRIPTION="BlackDesertLauncher"
export WINE_DISABLE_KERNEL_WRITEWATCH="1"
export DXVK_CONFIG="dxgi.syncInterval=0"
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
#Author:
#Botanicula.exe
#Rating=5
################################################
export PW_VULKAN_USE=0
export LAUNCH_PARAMETERS=""
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
#Author: Eljeyna
#BrightMemoryInfinite-Win64-Shipping.exe
#Rating=1-5
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG"
export PW_USE_SHADER_CACHE="0"
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
#Author:PortWINE
#Brokgame.exe
#Rating=5
################################################
export PW_VULKAN_USE=0
export LAUNCH_PARAMETERS=""
@@ -0,0 +1,16 @@
#!/usr/bin/env bash
#Author: fidel
#BsgLauncher.exe
#EscapeFromTarkov.exe
#EscapeFromTarkov_BE.exe
#Rating=1-5
#####################examples###########################
export PW_USE_FSYNC="0"
export PW_USE_ESYNC="0"
export PW_PREFIX_NAME="DOTNET"
# add_in_start_portproton () {
# if [[ ! -f "${PATH_TO_GAME}/dxvk.conf" ]] ; then
# echo "d3d9.shaderModel = 1" > "${PATH_TO_GAME}/dxvk.conf"
# fi
# }
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: fidel
#CWClientLauncher.exe
#Rating=1-5
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="CONTRACT_WARS"
export PORTPROTON_NAME="CWClient"
export FILE_DESCRIPTION="CWClientLauncher"
@@ -0,0 +1,10 @@
#!/usr/bin/env bash
#Author: fidel
#caliber_launcher_pp.exe
#Rating=1-5
#####################examples###########################
export PW_VULKAN_USE="2"
export PW_WINE_USE="PROTON_LG"
export PW_PREFIX_NAME="CALIBER"
# export DISABLE_CP_DEFPFX="1"
export WINEDLLOVERRIDES="xaudio2_7=n,b"
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
#Author:
#CoJBiBGame_x86.exe
#Rating=5
################################################
export LAUNCH_PARAMETERS=""
export PW_DLL_INSTALL="d3dx9" # Install DLL in port prefix (used winetricks)
@@ -0,0 +1,10 @@
#!/usr/bin/env bash
#Author: fidel
#CatsLauncher.exe
#Rating=5
#####################examples###########################
export PW_WINDOWS_VER="10"
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="DOTNET"
# export WINEDLLOVERRIDES="libglesv2="
@@ -0,0 +1,6 @@
#!/usr/bin/env bash
#Author: xuser
#Cinebench.exe
#Rating=1-5
#####################examples###########################
export PW_VULKAN_USE=1
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
#Author: user
#Control_DX12.exe
#Rating=1-5
#####################examples###########################
export PW_COMMENT_DB="Control (DX12)"
export WINEDLLOVERRIDES="d3d12,d3d_rmdwin10_f,renderer_rmdwin10_f,apw_rmdwin10_f,input_rmdwin10_f,renderer_rmdwin10_f,physics_rmdwin10_f,snd_rmdwin10_f,ui_rmdwin10_f=n"
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
#Author: xuser
#CyberShadow.exe
#Rating=1-5
################################################
export PW_VULKAN_USE=0
export LAUNCH_PARAMETERS=""
@@ -0,0 +1,9 @@
#!/usr/bin/env bash
#Author: xuser
#Cyberpunk2077.exe
#Rating=1-5
#####################examples###########################
export WINEDLLOVERRIDES="Crash*,REDEngineErrorReporter.exe="
export PW_REDUCE_PULSE_LATENCY=1
export LAUNCH_PARAMETERS="--launcher-skip"
export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
@@ -0,0 +1,6 @@
#!/usr/bin/env bash
#Author: xuser
#DAOriginsLauncher.exe
#Rating=1-5
#####################examples###########################
export PW_VULKAN_USE=1
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: linux-gaming.ru
#DOOMEternalx64vk.exe
#Rating=?
################################################
export PW_VULKAN_USE=1
export PW_REDUCE_PULSE_LATENCY=1
export LAUNCH_PARAMETERS="+in_terminal 1 +com_skipIntroVideo 1 +com_skipSignInManager 1"
@@ -0,0 +1,10 @@
#!/usr/bin/env bash
#Author: nix
#DOOMx64.exe
#DOOMx64vk.exe
#Rating=1-5
#####################examples###########################
export PW_COMMENT_DB="DOOM 2016"
export PW_DLL_INSTALL="xact xact_x64 vcrun2019"
export WINEDLLOVERRIDES="xaudio2_8=n"
export PW_VULKAN_USE=1
@@ -0,0 +1,12 @@
#!/usr/bin/env bash
#Author: xuser
#DXHRDC.exe
#DXHumanRevolutionDC.exe
#DXHumanRevolutionDC_s.exe
#Rating=5
#####################examples###########################
export WINEDLLOVERRIDES="WINMM=n,b"
export PW_VULKAN_USE=1
export PW_USE_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
export PW_USE_ESYNC=1 # Do not use eventfd-based in-process synchronization primitives
export PW_USE_GSTREAMER=0 # 0 - disabled use winegstreamer
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: xuser
#DaysGone.exe
#Rating=1-5
#####################examples###########################
export PW_DLL_INSTALL="vcrun2019" # Install DLL in port prefix (used winetricks)
export PW_USE_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
export PW_USE_ESYNC=1 # Do not use eventfd-based in-process synchronization primitives
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
#Author:
#Dead Space.exe
#Rating=1-5
################################################
export PW_VULKAN_USE=0
export LAUNCH_PARAMETERS=""
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author:
#ds.exe
#Rating=5
################################################
export PW_VULKAN_USE=1
export LAUNCH_PARAMETERS=""
export WINEDLLOVERRIDES="d3dcompiler_47,dxcompiler=n,b"
@@ -0,0 +1,18 @@
#!/usr/bin/env bash
#Author: Eljeyna
#Deathloop.exe
#Rating=4
#####################examples###########################
if [[ "$LANGUAGE" == "ru" ]] ; then
export PW_COMMENT_DB="При использовании DualSense следует оставить параметры нетронутыми\nЕсли проявляются проблемы с определением геймпада, выключите DINPUT PROTOCOL"
else
export PW_COMMENT_DB="If you use DualSense do not recommended change settings\nBut if you have problems with gamepad controls, turn off DINPUT PROTOCOL parameter"
fi
export PW_VULKAN_USE="1"
export WINEDLLOVERRIDES="xaudio2_8,xaudio2_9="
export PW_DINPUT_PROTOCOL="1"
export PW_WINDOWS_VER="10"
export PW_USE_ESYNC="0"
export PW_USE_FSYNC="0"
export PW_PREFIX_NAME="DEATHLOOP"
export PW_WINE_USE="PROTON_LG"
@@ -0,0 +1,6 @@
#!/usr/bin/env bash
#Author: xuser
#Deponia.exe
#Rating=1-5
#####################examples###########################
export PW_VULKAN_USE=0
@@ -0,0 +1,6 @@
#!/usr/bin/env bash
#Author: spider
#Diablo II.exe
#Rating=1-5
#####################examples###########################
export PW_VULKAN_USE=0
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: deck
#Dishonored2.exe
#Rating=1-5
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="DISHONORED"
export PORTPROTON_NAME="VoidEngine"
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: deck
#DyingLightGame.exe
#Rating=1-5
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="DL"
export PORTPROTON_NAME="DyingLight"
@@ -0,0 +1,10 @@
#!/usr/bin/env bash
#Author: PortWINE
#EALauncher.exe
#EADesktop.exe
#Rating=5
#####################examples###########################
export PW_WINE_USE="PROTON_LG"
export PW_PREFIX_NAME="EAAPP"
export WINE_SIMULATE_WRITECOPY="1"
add_in_start_portproton () { export LC_CTYPE=C ;}
@@ -0,0 +1,15 @@
#!/usr/bin/env bash
#Author: PortWINE
#EpicGamesLauncher.exe
#Rating=5
##############################################
#export PW_COMMENT_DB="PortWINE database file for Epic Games Launcher"
export LAUNCH_PARAMETERS="-SkipBuildPatchPrereq"
export PW_DLL_INSTALL="vcrun2012 vcrun2013 vcrun2019"
export PW_WINE_USE="PROTON_LG"
export PW_USE_ESYNC="1"
export PW_USE_FSYNC="1"
export WINEDLLOVERRIDES="vulkan-1=n,b"
# add_in_start_portproton () {
# regdlloverrides "RDR2.exe:vulkan-1=n,b"
# }
@@ -0,0 +1,6 @@
#!/usr/bin/env bash
#Author: fff555w
#Esprit Games.exe
#Rating=1-5
#####################examples###########################
export PW_WINDOWS_VER=7 # Set windows version 10, 7 or XP
@@ -0,0 +1,10 @@
#!/usr/bin/env bash
#Author: xuser
#FL.exe
#FL64.exe
#Rating=1-5
#####################examples###########################
export PW_VULKAN_USE=0
export WINEDLLOVERRIDES="FLEngine,FLEngine_x64=n"
export PW_USE_FSYNC=0 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
export PW_USE_ESYNC=0 # Do not use eventfd-based in-process synchronization primitives
@@ -0,0 +1,9 @@
#!/usr/bin/env bash
#Author: linux-gaming.ru
#FarCry.exe
#Rating=5
#################################
export PW_VULKAN_USE=0
export WINEDLLOVERRIDES="cgD3D9,cgD3D9d=n"
export PW_USE_FSYNC=0 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
export PW_USE_ESYNC=0 # Do not use eventfd-based in-process synchronization primitives
@@ -0,0 +1,8 @@
#!/usr/bin/env bash
#Author: deck
#FarCry5.exe
#Rating=1-5
export PW_VULKAN_USE="2"
export PW_WINE_USE="WINE_LG"
export PW_PREFIX_NAME="FARCRY"
export PORTPROTON_NAME="Far Cry 5"
Loaded 100 of 903 files, more files were not shown because too many files have changed in this diff. Show more