From f4c8b70bd08b8ccad83ad41e0da033578917a9bc Mon Sep 17 00:00:00 2001 From: Boris Yumankulov Date: Wed, 18 Jun 2025 22:44:43 +0500 Subject: [PATCH] feat: add --session CLI argument for start gamescope Signed-off-by: Boris Yumankulov --- portprotonqt/app.py | 9 +++++++++ portprotonqt/cli.py | 5 +++++ 2 files changed, 14 insertions(+) diff --git a/portprotonqt/app.py b/portprotonqt/app.py index 071955d..0c3dfa4 100644 --- a/portprotonqt/app.py +++ b/portprotonqt/app.py @@ -1,4 +1,6 @@ import sys +import os +import subprocess from PySide6.QtCore import QLocale, QTranslator, QLibraryInfo from PySide6.QtWidgets import QApplication from PySide6.QtGui import QIcon @@ -33,6 +35,13 @@ def main(): window = MainWindow() + if args.session: + gamescope_cmd = os.getenv("GAMESCOPE_CMD", "gamescope -f --xwayland-count 2") + cmd = f"{gamescope_cmd} -- portprotonqt" + logger.info(f"Executing: {cmd}") + subprocess.Popen(cmd, shell=True) + sys.exit(0) + if args.fullscreen: logger.info("Launching in fullscreen mode due to --fullscreen flag") save_fullscreen_config(True) diff --git a/portprotonqt/cli.py b/portprotonqt/cli.py index f781dfc..2003602 100644 --- a/portprotonqt/cli.py +++ b/portprotonqt/cli.py @@ -13,4 +13,9 @@ def parse_args(): action="store_true", help="Запустить приложение в полноэкранном режиме и сохранить эту настройку" ) + parser.add_argument( + "--session", + action="store_true", + help="Запустить приложение с использованием gamescope" + ) return parser.parse_args()