diff --git a/data_from_portwine/changelog_eng b/data_from_portwine/changelog_eng
index c4491e3..e1dd82e 100755
--- a/data_from_portwine/changelog_eng
+++ b/data_from_portwine/changelog_eng
@@ -2,6 +2,10 @@ You can help us in the development of the project on the website: https://linux-
----------------------------------------
Changelog:
+###Scripts version 2236### Date: 07.12.2023 / Download update size: 8 megabytes
+* the ability to enable GAMESCOPE has been added to the settings before starting the game (provided that it is installed on the system)
+* the installation of the Citra emulator has been fixed
+
###Scripts version 2235### Date: 06.12.2023 / Download update size: 8 megabytes
* Fixed the missing osu icon! in the list of installed applications
* updated Panzar auto-installation and fixed icon creation
diff --git a/data_from_portwine/changelog_rus b/data_from_portwine/changelog_rus
index 54864c6..c7ac267 100755
--- a/data_from_portwine/changelog_rus
+++ b/data_from_portwine/changelog_rus
@@ -2,12 +2,16 @@
-----------------------------------------
История изменений:
+###Scripts version 2236### Дата: 07.12.2023 / Размер скачиваемого обновления: 8 мегабайт
+* в настройках перед запуском игры добавлена возможность включения GAMESCOPE (при условии что он установлен в системе)
+* исправлена установка эмулятора Citra
+
###Scripts version 2235### Дата: 06.12.2023 / Размер скачиваемого обновления: 8 мегабайт
* исправлено отсутствие иконки osu! в списке установленных приложений
* обновлена автоустановка Panzar и исправлено создание иконки
* обновлена автоустановка GOG Galaxy
- добавлено автоматическое определение актуальной версии для установки
- - утановка производится в отдельный префикс GOG
+ - уcтановка производится в отдельный префикс GOG
- автоустановка снова производится в тихом режиме (без вопросов)
###Scripts version 2234### Дата: 03.12.2023 / Размер скачиваемого обновления: 200 мегабайт
diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper
index 06a69b0..0f1f8ac 100755
--- a/data_from_portwine/scripts/functions_helper
+++ b/data_from_portwine/scripts/functions_helper
@@ -924,6 +924,8 @@ pw_init_db () {
check_hybrid_graphicks && check_variables PW_PRIME_RENDER_OFFLOAD "1"
fi
[[ "${START_FROM_STEAM}" == 1 ]] && export PW_GUI_DISABLED_CS=1
+
+ [[ -z "$GAMESCOPE_ARGS" ]] && export GAMESCOPE_ARGS="-F fsr"
return 0
}
diff --git a/data_from_portwine/scripts/lang b/data_from_portwine/scripts/lang
index 92e5bc9..780d65b 100755
--- a/data_from_portwine/scripts/lang
+++ b/data_from_portwine/scripts/lang
@@ -263,6 +263,32 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export loc_gui_mango_fps="Ограничить FPS"
export loc_gui_mango_fps_help="Включение ограничения количества кадров в секунду средстами MANGOHUD встроенного в PortProton."
+ export loc_gui_arg_gamescope="Добавить аргументы для GAMESCOPE:"
+ export loc_gui_arg_gamescope_help="Аргументы:
+
+-W, -H: установите разрешение, используемое game scope. Изменение размера окна gamescope обновит эти настройки. Если указано -H, а -W нет, предполагается соотношение сторон 16:9. По умолчанию установлено значение 1280×720.
+-w, -h: установите разрешение, используемое в игре. Если указано -h, а -w нет, предполагается соотношение сторон 16:9. По умолчанию используются значения, указанные в -W и -H.
+-r: установите ограничение частоты кадров для игры. По умолчанию значение неограниченно.
+-F fsr: используйте Fidelity FX Super Resolution 1.0 для увеличения масштаба
+-F nis: используйте NVIDIA Image Scaling версии 1.0.3 для увеличения масштаба
+-S integer: используйте целочисленное масштабирование
+-S stretch: используйте масштабирование по ширине, игра заполнит окно. (например, с 4:3 до 16:9)
+-b: создайте окно без полей.
+-f: создайте полноэкранное окно."
+
+ export PW_USE_GAMESCOPE_INFO="Включение использования gamescope для запуска приложения.
+Горячие клавиши:
+
+Super + F: Переключение полноэкранного режима
+Super + N: Переключение фильтрации
+Super + U: Переключение масштабирования на FSR
+Super + Y: Переключение масштабирования на NIS
+Super + I: Увеличение резкости FSR на 1
+Super + O: Уменьшение резкости FSR на 1
+Super + S: Сделайте снимок экрана (находится в /tmp/gamescope_DATE.png)
+Super + G: Переключите захват клавиатуры
+Super + C: Обновить буфер обмена"
+
export loc_gui_cpu_limit="Ограничить использование ядер процессора"
export loc_gui_cpu_limit_help="Ограничения количества ядер процессора полезно для игр на движке Unity (Рекомендуется выставить значение равное 8)"
@@ -547,6 +573,30 @@ A brief instruction:
export loc_gui_mango_fps="MANGOHUD FPS LIMIT"
export loc_gui_mango_fps_help="Enabling FPS limits using MANGOHUD built into ${portname}"
+ export loc_gui_arg_gamescope="Add arguments for GAMESCOPE:"
+ export loc_gui_arg_gamescope_help="
+-W, -H: set the resolution used by gamescope. Resizing the gamescope window will update these settings. Ignored in embedded mode. If -H is specified but -W isn't, a 16:9 aspect ratio is assumed. Defaults to 1280×720.
+-w, -h: set the resolution used by the game. If -h is specified but -w isn't, a 16:9 aspect ratio is assumed. Defaults to the values specified in -W and -H.
+-r: set a frame-rate limit for the game. Specified in frames per second. Defaults to unlimited.
+-o: set a frame-rate limit for the game when unfocused. Specified in frames per second. Defaults to unlimited.
+-F fsr: use AMD FidelityFX™ Super Resolution 1.0 for upscaling
+-F nis: use NVIDIA Image Scaling v1.0.3 for upscaling
+-S integer: use integer scaling.
+-S stretch: use stretch scaling, the game will fill the window. (e.g. 4:3 to 16:9)
+-b: create a border-less window.
+-f: create a full-screen window."
+
+ export PW_USE_GAMESCOPE_INFO="
+Super + F : Toggle fullscreen
+Super + N : Toggle nearest neighbour filtering
+Super + U : Toggle FSR upscaling
+Super + Y : Toggle NIS upscaling
+Super + I : Increase FSR sharpness by 1
+Super + O : Decrease FSR sharpness by 1
+Super + S : Take screenshot (currently goes to /tmp/gamescope_DATE.png)
+Super + G : Toggle keyboard grab
+Super + C : Update clipboard"
+
export loc_gui_cpu_limit="Limit the use of processor cores"
export loc_gui_cpu_limit_help="Limiting the number of CPU cores is useful for Unity games (It is recommended to set the value equal to 8)"
diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_CITRA b/data_from_portwine/scripts/pw_autoinstall/PW_CITRA
index dc11bd6..59a09d9 100755
--- a/data_from_portwine/scripts/pw_autoinstall/PW_CITRA
+++ b/data_from_portwine/scripts/pw_autoinstall/PW_CITRA
@@ -3,17 +3,26 @@
########################################################################
#export LAUNCH_PARAMETERS=("")
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/citra-setup-windows.exe"
+export PORTWINE_CREATE_SHORTCUT_NAME="Citra"
+
start_portwine
+
if try_download_game "github.com/citra-emu/citra-web/releases/download/1.0/citra-setup-windows.exe" "${PW_AUTOINSTALL_EXE}"
then
pw_start_progress_bar_block "${loc_gui_installing_the} Citra. ${loc_gui_please_wait} "
pw_run "${PW_AUTOINSTALL_EXE}"
- portwine_exe="$WINEPREFIX/drive_c/users/steamuser/AppData/Local/Citra/nightly-mingw/citra-qt.exe"
+ if [[ -f "$WINEPREFIX/drive_c/users/steamuser/AppData/Local/Citra/nightly/citra-qt.exe" ]] ; then
+ export portwine_exe="$WINEPREFIX/drive_c/users/steamuser/AppData/Local/Citra/nightly/citra-qt.exe"
+ elif [[ -f "$WINEPREFIX/drive_c/users/steamuser/AppData/Local/Citra/canary/citra-qt.exe" ]] ; then
+ export portwine_exe="$WINEPREFIX/drive_c/users/steamuser/AppData/Local/Citra/canary/citra-qt.exe"
+ else
+ export portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "citra-qt.exe"`
+ fi
try_remove_file "${PW_AUTOINSTALL_EXE}"
try_remove_file "${portwine_exe}.ppdb"
kill_portwine
pw_stop_progress_bar
- export PORTWINE_CREATE_SHORTCUT_NAME="Citra"
portwine_create_shortcut
fi
+
stop_portwine
diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib
index 289029b..d8c15f9 100755
--- a/data_from_portwine/scripts/runlib
+++ b/data_from_portwine/scripts/runlib
@@ -114,6 +114,17 @@ start_portwine () {
var_vkd3d_config_update single_queue
fi
+ if [[ "${PW_USE_GAMESCOPE}" == 1 ]] && command -v gamescope &>/dev/null ; then
+ if [[ ! -z "$GAMESCOPE_ARGS" ]]
+ then export PW_RUN_GAMESCOPE="gamescope -o 30 ${GAMESCOPE_ARGS} --"
+ else export PW_RUN_GAMESCOPE="gamescope -o 30 --"
+ fi
+ export PW_WINE_FULLSCREEN_FSR=0
+ else
+ export PW_USE_GAMESCOPE=0
+ unset PW_RUN_GAMESCOPE
+ fi
+
enabled_fake_nvidia_videocard ()
{
if [[ "${1}" == 1 ]] ; then
@@ -660,6 +671,7 @@ pw_run () {
echo ""
print_debug "Log from RUNTIME and WINE:"
${PW_GAMEMODERUN_SLR} \
+ ${PW_RUN_GAMESCOPE} \
${pw_runtime} \
env ${PW_MANGOHUD_SLR} \
PATH="${PATH}" \
@@ -676,6 +688,7 @@ pw_run () {
echo ""
print_debug "Log from RUNTIME and WINE:"
${PW_GAMEMODERUN_SLR} \
+ ${PW_RUN_GAMESCOPE} \
${pw_runtime} \
env ${PW_MANGOHUD_SLR} \
PATH="${PATH}" \
diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh
index 90cbe51..f34cb50 100755
--- a/data_from_portwine/scripts/start.sh
+++ b/data_from_portwine/scripts/start.sh
@@ -468,7 +468,7 @@ pw_edit_db () {
PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP PW_USE_TERMINAL \
PW_GUI_DISABLED_CS PW_USE_GAMEMODE PW_DX12_DISABLE PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME \
PW_REDUCE_PULSE_LATENCY PW_USE_US_LAYOUT PW_USE_GSTREAMER PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE \
- PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK
+ PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_GAMESCOPE
if [ "$?" == 0 ] ; then
print_info "Restarting PP after update ppdb file..."
/usr/bin/env bash -c ${pw_full_command_line[*]} &
diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var
index ee693b1..6fbfe05 100755
--- a/data_from_portwine/scripts/var
+++ b/data_from_portwine/scripts/var
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#Author: Castro-Fidel (linux-gaming.ru)
-#SCRIPTS_NEXT_VERSION=2235
+#SCRIPTS_NEXT_VERSION=2236
########################################################################
export PW_MANGOHUD=0
export MANGOHUD_CONFIG=cpu_stats,cpu_temp,cpu_mhz,cpu_color=2e97cb,cpu_text=CPU,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,gpu_name,gpu_color=2e9762,gpu_text=GPU,vram,vram_color=ad64c1,ram,ram_color=c26693,io_color=a491d3,frame_timing=1,frametime_color=00ff00,time,arch,wine,wine_color=eb5b5b,engine_color=eb5b5b,background_alpha=0.2,font_size=24,background_color=020202,text_color=ffffff,toggle_hud=Shift_R+F12,resolution,vkbasalt
@@ -32,6 +32,7 @@ export PW_MANGOHUD_x32="0"
export PW_USE_EAC_AND_BE="1"
export PW_USE_US_LAYOUT="0"
export PW_GPU_USE="disabled"
+export PW_USE_GAMESCOPE="0"
###GTK_CONFIG###
# export GTK_DATA_PREFIX=
# export GTK_THEME="Adwaita:dark"
diff --git a/data_from_portwine/scripts/zen_yad_gui b/data_from_portwine/scripts/zen_yad_gui
index 6779b44..e7933ec 100755
--- a/data_from_portwine/scripts/zen_yad_gui
+++ b/data_from_portwine/scripts/zen_yad_gui
@@ -217,8 +217,10 @@ pw_gui_for_edit_db () {
--field=":LBL" "" \
--field="${loc_gui_cpu_limit}!${loc_gui_cpu_limit_help} :CB" "${CPU_LIMIT_VAR}!disabled!${GET_LOGICAL_CORE}" \
--field="${loc_gui_gpu_select}!${loc_gui_gpu_select_help} :CB" "${GPU_VAR}!disabled!${GET_GPU_NAMES}" \
- --field="${loc_gui_mango_fps}!${loc_gui_mango_fps_help} :CB" "${FPS_LIMIT_VAR}!disabled!${GET_REFRASH_RATE}" 2>/dev/null 1> "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" 2>/dev/null &
- "${pw_yad_v12_3}" --paned --key="$KEY_EDIT_DB_GUI" --title "EDIT_DB" --text-align=center --height="750" \
+ --field="${loc_gui_mango_fps}!${loc_gui_mango_fps_help} :CB" "${FPS_LIMIT_VAR}!disabled!${GET_REFRASH_RATE}" \
+ --field="${loc_gui_arg_gamescope}!${loc_gui_arg_gamescope_help} :CBE" "\\${GAMESCOPE_ARGS}!-r 60 -F fsr!" 2>/dev/null 1> "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" 2>/dev/null &
+
+ "${pw_yad_v12_3}" --paned --key="$KEY_EDIT_DB_GUI" --title "EDIT_DB" --text-align=center --height="800" \
--text "${loc_gui_edit_db} ${PORTWINE_DB}\n ${loc_gui_edit_db_help}" --separator=" " --borders=3 \
--window-icon="$PW_GUI_ICON_PATH/port_proton.png" \
--button="${loc_gui_cancel}"!!"${loc_gui_cancel_help}":1 \
@@ -250,6 +252,7 @@ pw_gui_for_edit_db () {
CPU_LIMIT="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $7}'`"
PW_GPU_USE="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $8}'`"
FPS_LIMIT="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $9}'`"
+ GAMESCOPE_ARGS="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $10}'`"
# PW_AMD_VULKAN_USE="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $10}'`"
if [[ "${FPS_LIMIT}" != "disabled" ]] && [[ "${FPS_LIMIT_VAR}" != "disabled" ]] ; then
@@ -267,7 +270,7 @@ pw_gui_for_edit_db () {
export PW_WINE_CPU_TOPOLOGY="disabled"
fi
echo "pw_gui_for_edit_db PORTWINE_DB_FILE=$PORTWINE_DB_FILE"
- edit_db_from_gui $@ MANGOHUD_CONFIG LAUNCH_PARAMETERS PW_WINDOWS_VER PW_DLL_INSTALL WINEDLLOVERRIDES PW_WINE_CPU_TOPOLOGY
+ edit_db_from_gui $@ MANGOHUD_CONFIG LAUNCH_PARAMETERS PW_WINDOWS_VER PW_DLL_INSTALL WINEDLLOVERRIDES PW_WINE_CPU_TOPOLOGY GAMESCOPE_ARGS
edit_user_conf_from_gui PW_GPU_USE
# PW_AMD_VULKAN_USE
return 0