From 9e339aca43f75199a39c356aab29225fade9cbbe Mon Sep 17 00:00:00 2001 From: Mikhail Tergoev Date: Thu, 7 Dec 2023 20:27:03 +0300 Subject: [PATCH] Scripts version 2236 --- data_from_portwine/changelog_eng | 4 ++ data_from_portwine/changelog_rus | 6 ++- data_from_portwine/scripts/functions_helper | 2 + data_from_portwine/scripts/lang | 50 +++++++++++++++++++ .../scripts/pw_autoinstall/PW_CITRA | 13 ++++- data_from_portwine/scripts/runlib | 13 +++++ data_from_portwine/scripts/start.sh | 2 +- data_from_portwine/scripts/var | 3 +- data_from_portwine/scripts/zen_yad_gui | 9 ++-- 9 files changed, 94 insertions(+), 8 deletions(-) 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