From 99168479d316b7f18d7a2e7a3e1a64f6ec3852d4 Mon Sep 17 00:00:00 2001 From: Htylol Date: Wed, 11 Sep 2024 18:55:15 +0500 Subject: [PATCH 01/17] Added reset function for mangohud,vkbasalt,dgvoodoo2 gui --- data_from_portwine/scripts/functions_helper | 90 ++++++++++----------- 1 file changed, 42 insertions(+), 48 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index b3b80ecd..8f7a9c0a 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -3739,7 +3739,7 @@ gui_edit_db () { # PW_FORCE_USE_VSYNC PW_HEAP_DELAY_FREE -if [[ "${SKIP_EDIT_DB_TEXT_INFO}" != 1 ]] ; then +if [[ "${SKIP_EDIT_DB_TEXT_INFO}" != "1" ]] ; then export PW_DGVOODOO2_INFO=$(gettext 'Enable dgVoodoo2. Forced use all dgVoodoo2 libs (Glide 2.11-3.1, DirectDraw 1-7, Direct3D 2-9) on all 3D API. For WineD3D OpenGL need use WineLG (For Gallium Nine and Zink use too)') export PW_DINPUT_PROTOCOL_INFO=$(gettext 'Force use DirectInput protocol instead of XInput') export PW_USE_NATIVE_WAYLAND_INFO=$(gettext 'Enable experemental native Wayland support (need special wine build to work)') @@ -3788,7 +3788,7 @@ if [[ "${SKIP_EDIT_DB_TEXT_INFO}" != 1 ]] ; then Super + G : Toggle keyboard grab Super + C : Update clipboard') - export SKIP_EDIT_DB_TEXT_INFO=1 + export SKIP_EDIT_DB_TEXT_INFO="1" fi case "${PW_VULKAN_USE}" in @@ -3984,7 +3984,7 @@ gui_vkbasalt () { LIST_FX=($(grep -E '.fx$|.fxh$' "${FILE_VKBASALT_CONF}" | awk '{print $1}')) GET_FX_IN_FILE=($(echo ${PW_VKBASALT_EFFECTS} | sed s/"cas:"// | sed s/":"/" "/g)) -if [[ "${SKIP_VKBASALT_TEXT_INFO}" != 1 ]] ; then +if [[ "${SKIP_VKBASALT_TEXT_INFO}" != "1" ]] ; then export PW_3DFX_INFO=$(gettext 'Simulation of an old 3dfx graphics accelerator (adds horizontal stripes)') export PW_AdaptiveSharpen_INFO=$(gettext 'Sharpness increase, can be used with CAS') export PW_Bloom_INFO=$(gettext 'Adds glow from bright light sources in the game') @@ -4041,7 +4041,7 @@ if [[ "${SKIP_VKBASALT_TEXT_INFO}" != 1 ]] ; then export PW_StageDepth_INFO=$(gettext 'Allows you to add new elements to the 3d space inside the game and apply custom textures') export PW_PPFX_Bloom_INFO=$(gettext 'Adds a Bloom effect') - export SKIP_VKBASALT_TEXT_INFO=1 + export SKIP_VKBASALT_TEXT_INFO="1" fi unset ADD_GUI_FX GUI_FX_RESULT @@ -4082,18 +4082,24 @@ fi --gui-type="settings-paned" \ --separator=" " --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ --button="$(gettext "CANCEL THE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Cancel the current changes and return to the previous menu")":1 \ + --button="$(gettext "RESET") VKBASALT"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Restore default settings for") vkBasalt":178 \ --button="$(gettext "DISABLE") VKBASALT"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Disable vkBasalt and go to the previous menu")":180 \ --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":182 2>/dev/null YAD_VKBASALT_STATUS="$?" + export SKIP_CHECK_UPDATES="1" + case "${YAD_VKBASALT_STATUS}" in 1|252) - export SKIP_CHECK_UPDATES="1" + /usr/bin/env bash -c ${pw_full_command_line[*]} & + exit 0 ;; + 178) + sed -i '/VKBASALT/d' "$portwine_exe".ppdb /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 ;; 180) - export PW_VKBASALT=0 ;; + export PW_VKBASALT="0" ;; 182) - export PW_VKBASALT=1 ;; + export PW_VKBASALT="1" ;; esac YAD_BASALT_SET=$(<"${PW_TMPFS_PATH}/tmp_yad_basalt_set") YAD_CAS_SET=$(cat "${PW_TMPFS_PATH}/tmp_yad_cas_set" | sed s/" "//g) @@ -4116,8 +4122,8 @@ fi then export PW_VKBASALT_FFX_CAS="0.0$YAD_CAS_SET" else export PW_VKBASALT_FFX_CAS="0.$YAD_CAS_SET" fi + edit_db_from_gui PW_VKBASALT_EFFECTS PW_VKBASALT_FFX_CAS PW_VKBASALT - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 } @@ -4137,7 +4143,7 @@ gui_mangohud () { time version vkbasalt vram vulkan_driver wine ) -if [[ "${SKIP_MANGOHUD_TEXT_INFO}" != 1 ]] ; then +if [[ "${SKIP_MANGOHUD_TEXT_INFO}" != "1" ]] ; then export PW_MH_arch_INFO=$(gettext 'Show if the application is 32- or 64-bit') export PW_MH_battery_INFO=$(gettext 'Display current battery percent and energy consumption') export PW_MH_battery_icon_INFO=$(gettext 'Display battery icon instead of percent') @@ -4193,7 +4199,7 @@ if [[ "${SKIP_MANGOHUD_TEXT_INFO}" != 1 ]] ; then export PW_MH_frametime_INFO=$(gettext 'Display frametime next to FPS text') export PW_MH_wine_INFO=$(gettext 'Show current Wine or Proton version in use') - export SKIP_MANGOHUD_TEXT_INFO=1 + export SKIP_MANGOHUD_TEXT_INFO="1" fi unset ADD_GUI_MH GUI_MH_RESULT ADD_GUI_MH_FPS GUI_MH_FPS_RESULT PW_FPS_LIMIT_VAR PW_MANGOHUD_CONFIG @@ -4244,26 +4250,28 @@ fi --separator=" " --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --sensitive \ --gui-type="settings-paned" \ --button="$(gettext "CANCEL THE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Cancel the current changes and return to the previous menu")":1 \ - --button="$(gettext "DISABLE") MANGOHUD"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Disable MangoHud and go to the previous menu")":182 \ + --button="$(gettext "RESET") MANGOHUD"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Restore default settings for") MangoHud":180 \ --button="$(gettext "PREVIEW CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Start vkcube for preview changes")":184 \ + --button="$(gettext "DISABLE") MANGOHUD"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Disable MangoHud and go to the previous menu")":182 \ --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":186 2>/dev/null - YAD_MANGOHUD_STATUS="$?" + export SKIP_CHECK_UPDATES="1" + case "${YAD_MANGOHUD_STATUS}" in 1|252) - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 ;; - 182) - export PW_MANGOHUD=0 - edit_db_from_gui PW_MANGOHUD FPS_LIMIT - export SKIP_CHECK_UPDATES="1" + 180) + sed -i '/FPS_LIMIT/d' "$portwine_exe".ppdb + sed -i '/MANGOHUD/d' "$portwine_exe".ppdb /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + exit 0 ;; + 182) + export PW_MANGOHUD="0" ;; 186) - export PW_MANGOHUD=1 + export PW_MANGOHUD="1" ;; esac @@ -4322,6 +4330,7 @@ fi edit_db_from_gui MANGOHUD_CONFIG PW_MANGOHUD FPS_LIMIT if [[ "${YAD_MANGOHUD_STATUS}" == "184" ]] ; then + PW_MANGOHUD="1" pw_init_runtime pw_mangohud_check ${pw_runtime} \ @@ -4332,7 +4341,6 @@ fi gui_mangohud fi - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 } @@ -4346,7 +4354,7 @@ gui_dgvoodoo2 () { PW_DGV2_INACTIVE_APP_STATE " -if [[ "${SKIP_DGVOODOO2_TEXT_INFO}" != 1 ]] ; then +if [[ "${SKIP_DGVOODOO2_TEXT_INFO}" != "1" ]] ; then export PW_DGV2_USE_DX12_INFO=$(gettext 'Use DirectX12 for dgVoodoo2. Doesnt always work better. (Working only on newest and stable dxvk/vkd3d) (Direct3D and Glide settings)') export PW_DGV2_FORCE_VSYNC_INFO=$(gettext 'Force the vertical sync to avoid tearing or prevent the GPU from rendering at crazy high speed. Keep in mind that some application need unforced vSync because of synchronization reasons. (Direct3D settings)') export PW_DGV2_DGVOODOO_WATERMARK_INFO=$(gettext 'Shows the dgVoodoo watermark in-game when enabled. (Direct3D settings)') @@ -4367,7 +4375,7 @@ if [[ "${SKIP_DGVOODOO2_TEXT_INFO}" != 1 ]] ; then export PW_DGV2_3DFX_SPLASH_SCREEN_INFO=$(gettext 'The 3Dfx splash screen is seen when an application starts, disabling this option prevents this animation from playing. (Glide settings)') export PW_DGV2_INACTIVE_APP_STATE_INFO=$(gettext 'Enabling inactive state prevents the application from detecting losing the application focus. Most of the Glide applications close or deactivate themself when losing focus, so this can be used to let the application run in the background. (Glide settings)') - export SKIP_DGVOODOO2_TEXT_INFO=1 + export SKIP_DGVOODOO2_TEXT_INFO="1" fi # fix @@ -4451,31 +4459,25 @@ fi --button="$(gettext "DISABLE") DGVOODOO2"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Disable dgVoodoo2 and go to the previous menu")":164 \ --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":166 \ 2>/dev/null - YAD_DGV2_STATUS="$?" + export SKIP_CHECK_UPDATES="1" + case "${YAD_DGV2_STATUS}" in 1|252) - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 ;; 162) sed -i '/PW_DGV2/d' "$portwine_exe".ppdb - export PW_DGVOODOO2=0 - edit_db_from_gui PW_DGVOODOO2 - export SKIP_CHECK_UPDATES="1" + sed -i '/DGVOODOO2/d' "$portwine_exe".ppdb /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 ;; 164) - export PW_DGVOODOO2=0 - edit_db_from_gui PW_DGVOODOO2 - export SKIP_CHECK_UPDATES="1" - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + export PW_DGVOODOO2="0" ;; 166) - export PW_DGVOODOO2=1 + export PW_DGVOODOO2="1" ;; esac @@ -4510,7 +4512,6 @@ fi PW_DGV2_FPS_LIMIT PW_DGV2_BIT_DEPTH PW_DGV2_BRIGHTNESS PW_DGV2_COLOR PW_DGV2_CONTRAST PW_DGV2_VIDEOCARD PW_DGV2_DISPLAY_ROI \ PW_DGV2_CURSOR_SCALE PW_DGV2_RESAMPLING - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 } @@ -4547,7 +4548,7 @@ gui_gamescope () { rm_from_var PW_GS_LIST "PW_GS_FORCE_GRAB_KEYBOARD" fi -if [[ "${SKIP_GAMESCOPE_TEXT_INFO}" != 1 ]] ; then +if [[ "${SKIP_GAMESCOPE_TEXT_INFO}" != "1" ]] ; then export PW_GS_FULLSCREEN_INFO=$(gettext 'Make the window fullscreen') export PW_GS_FORCE_FULLSCREEN_INFO=$(gettext 'Force windows inside of gamescope to be the size of the nested display (fullscreen)') export PW_GS_BORDERLESS_WINDOW_INFO=$(gettext 'Make the window borderless. Working only with backend sdl or X11 session.') @@ -4568,7 +4569,7 @@ if [[ "${SKIP_GAMESCOPE_TEXT_INFO}" != 1 ]] ; then export PW_GS_SDL_VIDEODRIVER_X11_INFO=$(gettext 'Force use sdl videodriver x11, works with BACKEND SDL. (Default is wayland)') export PW_GS_FIX_AMD_AND_INTEL_INFO=$(gettext 'Fixes artifacts on AMD and Intel video cards. (Use only when necessary).') - export SKIP_GAMESCOPE_TEXT_INFO=1 + export SKIP_GAMESCOPE_TEXT_INFO="1" fi unset ADD_CHK_BOX_GS @@ -4657,31 +4658,25 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate." --button="$(gettext "DISABLE") GAMESCOPE"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Disable GameScope and go to the previous menu")":164 \ --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":166 \ 2>/dev/null - YAD_GAMESCOPE_STATUS="$?" + export SKIP_CHECK_UPDATES="1" + case "${YAD_GAMESCOPE_STATUS}" in 1|252) - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 ;; 162) sed -i '/PW_GS/d' "$portwine_exe".ppdb - export PW_GAMESCOPE=0 - edit_db_from_gui PW_GAMESCOPE - export SKIP_CHECK_UPDATES="1" + sed -i '/GAMESCOPE/d' "$portwine_exe".ppdb /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 ;; 164) - export PW_GAMESCOPE=0 - edit_db_from_gui PW_GAMESCOPE - export SKIP_CHECK_UPDATES="1" - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + export PW_GAMESCOPE="0" ;; 166) - export PW_GAMESCOPE=1 + export PW_GAMESCOPE="1" ;; esac @@ -4716,7 +4711,6 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate." PW_GS_UPSCALE_SHARPNESS PW_GS_MAX_SCALE_FACTOR PW_GS_MOUSE_SENSITIVITY \ PW_GS_SDR_CONTENT_NITS PW_GS_ITM_SDR_NITS PW_GS_ITM_TARGET_NITS - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 } From 40cb9519e02157a1fe506f0d20c5b69715933ab2 Mon Sep 17 00:00:00 2001 From: Htylol Date: Wed, 11 Sep 2024 18:56:08 +0500 Subject: [PATCH 02/17] Added user.conf settings --- data_from_portwine/scripts/functions_helper | 316 +++++++++++++------- data_from_portwine/scripts/start.sh | 208 +++++++------ 2 files changed, 314 insertions(+), 210 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 8f7a9c0a..5d0cb834 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -661,6 +661,11 @@ pw_clear_pfx () { } pw_reinstall_pp () { + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="4" + else + export TAB_MAIN_MENU="5" + fi if [[ "${PW_REINSTALL_FROM_TERMINAL}" == 1 ]] ; then read -p "Do you want to reinstall PortProton? (Y,y - Yes): " -n 1 -r if [[ ! $REPLY =~ ^[Yy]$ ]] @@ -3408,12 +3413,12 @@ open_changelog () { --filename="${PORT_WINE_PATH}/data/${PW_CHANGELOG_FILE}" &>/dev/null YAD_STATUS="$?" if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] && [[ -z "$WINEPREFIX" ]] ; then - export SKIP_CHECK_UPDATES="1" if [[ -z "${PW_ALL_DF}" ]] ; then export TAB_MAIN_MENU="4" else export TAB_MAIN_MENU="5" fi + export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & print_info "Restarting..." exit 0 @@ -3474,6 +3479,11 @@ pw_tray_icon () { # GUI GET OTHER WINE gui_proton_downloader () { + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="3" + else + export TAB_MAIN_MENU="4" + fi unset VERSION_WINE_GIT VERSION_INSTALLED_WINE URL_VERSION_PROTON_GIT GIVE_WINE_URL try_remove_file "${PW_TMPFS_PATH}/tmp_proton_pw_git" try_remove_file "${PW_TMPFS_PATH}/tmp_wine_kron4ek_git" @@ -3844,22 +3854,6 @@ fi *) ADD_WINVER_EDIT_DB="11!10!7!XP" ;; esac - if [[ ! -z "${PW_SOUND_DRIVER_USE}" ]] \ - && [[ "${PW_SOUND_DRIVER_USE}" != "disabled" ]] - then - SOUND_DRIVER_VAR="${PW_SOUND_DRIVER_USE}" - else - SOUND_DRIVER_VAR="disabled" - fi - - if [[ ! -z "${PW_GPU_USE}" ]] \ - && [[ "${PW_GPU_USE}" != "disabled" ]] - then - GPU_VAR="${PW_GPU_USE}" - else - GPU_VAR="disabled" - fi - if [[ "${PW_WINE_CPU_TOPOLOGY}" == *[0-9]:* ]] \ && [[ "${PW_WINE_CPU_TOPOLOGY}" != "disabled" ]] then @@ -3885,11 +3879,9 @@ A brief instruction: --field="$(gettext "ADD ARGUMENTS FOR .EXE FILE")!$(gettext "Adding an argument after the .exe file, just like you would add an argument in a shortcut on a WINDOWS system") :CBE" "$(combobox_fix --empty "\\${LAUNCH_PARAMETERS[@]}" "-dx11 -skipintro 1")" \ --field=":LBLH" "" \ --field="$(gettext "Limit the use of processor cores")!$(gettext "Limiting the number of CPU cores is useful for Unity games (It is recommended to set the value equal to 8)") :CB" "$(combobox_fix --disabled "${CPU_LIMIT_VAR}" "${GET_LOGICAL_CORE}")" \ - --field="$(gettext "Choose a graphics card to run the game (in user.conf)")!$(gettext "Select which video card will be used to run the game (used for all running games and programs in PortProton)") :CB" "$(combobox_fix --disabled "${GPU_VAR}" "${GET_GPU_NAMES}")" \ --field="$(gettext "Forcibly select the OpenGL version for the game")!$(gettext "You can select the required OpenGL version, some games require a forced Compatibility Profile (COMPAT). (Examples are in the drop-down list)") :CB" "$(combobox_fix --disabled "${PW_MESA_GL_VERSION_OVERRIDE}" "4.6COMPAT!4.6!4.5COMPAT!4.5!3.3COMPAT!3.3")" \ --field="$(gettext "Forcibly select the VKD3D feature level")!$(gettext "You can set a forced feature level VKD3D for games on DirectX12") :${VKD3D_CB}" "$(combobox_fix --disabled "${PW_VKD3D_FEATURE_LEVEL}" "12_2!12_1!12_0!11_1!11_0")" \ --field="$(gettext "Force certain locale for an app:")!$(gettext "Fixes encoding issues in legacy software") :CB" "$(combobox_fix --disabled "${PW_LOCALE_SELECT}" "$LOCALE_LIST")" \ - --field="$(gettext "Choice wine audio driver")!$(gettext "Fixes sound popling if choice alsa") :CB" "$(combobox_fix --disabled "${SOUND_DRIVER_VAR}" "alsa!oss!pulse")" \ 1> "${PW_TMPFS_PATH}/tmp_output_yad_fps_limit" 2>/dev/null & "${pw_yad}" --notebook --key="$KEY_EDIT_DB_GUI" --title "$(gettext "EDIT DB")" --text-align=center \ @@ -3908,14 +3900,17 @@ A brief instruction: case "$YAD_STATUS" in 1|252) - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 - ;; - 2) - try_remove_file "$portwine_exe".ppdb - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 - ;; + /usr/bin/env bash -c ${pw_full_command_line[*]} & + exit 0 + ;; + 2) + try_remove_file "$portwine_exe".ppdb + /usr/bin/env bash -c ${pw_full_command_line[*]} & + exit 0 + ;; + 150) + gui_edit_db_file + ;; esac output_yad_edit_db=($(<"${PW_TMPFS_PATH}/tmp_output_yad_edit_db")) @@ -3936,11 +3931,9 @@ A brief instruction: WINEDLLOVERRIDES="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $3}')" LAUNCH_PARAMETERS="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $5}')" CPU_LIMIT="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $7}')" - PW_GPU_USE="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $8}')" - PW_MESA_GL_VERSION_OVERRIDE="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $9}')" - PW_VKD3D_FEATURE_LEVEL="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $10}')" - PW_LOCALE_SELECT="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $11}')" - PW_SOUND_DRIVER_USE="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $12}')" + PW_MESA_GL_VERSION_OVERRIDE="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $8}')" + PW_VKD3D_FEATURE_LEVEL="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $9}')" + PW_LOCALE_SELECT="$(echo ${PW_ADD_SETTINGS} | awk -F"%" '{print $10}')" if [[ "${CPU_LIMIT}" != "disabled" ]] ; then export PW_WINE_CPU_TOPOLOGY="${CPU_LIMIT}:$(seq -s, 0 $((${CPU_LIMIT} - 1)))" @@ -3962,19 +3955,12 @@ A brief instruction: edit_db_from_gui MANGOHUD_CONFIG fi - edit_user_conf_from_gui PW_GPU_USE PW_SOUND_DRIVER_USE - case "$YAD_STATUS" in - 0) - print_info "Restarting PP after update ppdb file..." - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 - ;; - 150) - print_info "Restarting PP after update ppdb file..." - gui_edit_db_file - ;; - esac + if [[ "$YAD_STATUS" == "0" ]] ; then + print_info "Restarting PP after update ppdb file..." + /usr/bin/env bash -c ${pw_full_command_line[*]} & + exit 0 + fi } # GUI VKBASALT @@ -4715,6 +4701,119 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate." exit 0 } +# GUI USERCONF +gui_userconf () { + if [[ -f "${portwine_exe}" ]] ; then + export PW_YAD_FORM_TAB="1" + export TAB_START="2" + else + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="4" + else + export TAB_MAIN_MENU="5" + fi + fi + + if [[ "$MIRROR" == "CLOUD" ]] + then NEW_MIRROR="GITHUB" + else NEW_MIRROR="CLOUD" + fi + + if [[ "$BRANCH" == "master" ]] + then NEW_BRANCH="DEVEL" + else NEW_BRANCH="STABLE" + fi + + if [[ "$DOWNLOAD_STEAM_GRID" == "1" ]] + then NEW_STEAM_BEHAVIOR="$(gettext "Disable")" + else NEW_STEAM_BEHAVIOR="$(gettext "Enable")" + fi + + if [[ "$PW_GUI_START" == "NOTEBOOK" ]] + then NEW_START_GUI="PANED" + else NEW_START_GUI="NOTEBOOK" + fi + + KEY_USERCONF_GUI=$RANDOM + + "${pw_yad}" --plug=$KEY_USERCONF_GUI --tabnum="1" --form --columns=2 --separator=" " --text-align=center --align-buttons --separator=";" \ + --gui-type-text=${GAMESCOPE_GUI_TYPE_TEXT_UP} --gui-type-layout=${GAMESCOPE_GUI_TYPE_LAYOUT_UP} \ + --field=" $(gettext "Change mirror to") $NEW_MIRROR"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_mirror"' \ + --field=" $(gettext "Change branch to") $NEW_BRANCH"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_branch"' \ + --field=" $(gettext "Change start gui to") $NEW_START_GUI"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_gui_start"' \ + --field=" $NEW_STEAM_BEHAVIOR $(gettext "steam covers download")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_download_grid"' \ + 2>/dev/null & + + if [[ ! -z "${PW_SOUND_DRIVER_USE}" ]] \ + && [[ "${PW_SOUND_DRIVER_USE}" != "disabled" ]] + then + SOUND_DRIVER_VAR="${PW_SOUND_DRIVER_USE}" + else + SOUND_DRIVER_VAR="disabled" + fi + + if [[ ! -z "${PW_GPU_USE}" ]] \ + && [[ "${PW_GPU_USE}" != "disabled" ]] + then + GPU_VAR="${PW_GPU_USE}" + else + GPU_VAR="disabled" + fi + + "${pw_yad}" --plug=$KEY_USERCONF_GUI --tabnum="2" --form --columns=1 --separator="%" --homogeneous-row \ + --gui-type-text=${GAMESCOPE_GUI_TYPE_TEXT_DOWN} --gui-type-layout=${GAMESCOPE_GUI_TYPE_LAYOUT_DOWN} \ + --field="$(gettext "Choose a graphics card to run the game")!$(gettext "Select which video card will be used to run the game (used for all running games and programs in PortProton)") :CB" "$(combobox_fix --disabled "${GPU_VAR}" "${GET_GPU_NAMES}")" \ + --field="$(gettext "Choice wine audio driver")!$(gettext "Fixes sound popling if choice alsa") :CB" "$(combobox_fix --disabled "${SOUND_DRIVER_VAR}" "alsa!oss!pulse")" \ + 1> "${PW_TMPFS_PATH}/tmp_yad_userconf_set_cb" 2>/dev/null & + + "${pw_yad}" --key=$KEY_USERCONF_GUI --paned \ + --title="$(gettext "SETTINGS USER CONFIG")" \ + --separator=" " --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ + --gui-type="settings-paned" \ + --button="$(gettext "CANCEL THE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Cancel the current changes and return to the previous menu")":1 \ + --button="$(gettext "OPEN THE SETTINGS FILE")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Open the user.conf settings file in a system text editor to view and change variables manually")":164 \ + --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":166 \ + 2>/dev/null + YAD_USERCONF_STATUS="$?" + export SKIP_CHECK_UPDATES="1" + + case "$YAD_USERCONF_STATUS" in + 1|252) + echo ${pw_full_command_line[*]} + /usr/bin/env bash -c ${pw_full_command_line[*]} & + exit 0 + ;; + 164) + gui_open_user_conf + ;; + 166) + PW_ADD_SETTINGS_UC=$(head -n 1 "${PW_TMPFS_PATH}/tmp_yad_userconf_set_cb") + PW_GPU_USE="$(echo ${PW_ADD_SETTINGS_UC} | awk -F"%" '{print $1}')" + PW_SOUND_DRIVER_USE="$(echo ${PW_ADD_SETTINGS_UC} | awk -F"%" '{print $2}')" + edit_user_conf_from_gui PW_GPU_USE PW_SOUND_DRIVER_USE + /usr/bin/env bash -c ${pw_full_command_line[*]} & + exit 0 + ;; + esac + + pw_yad_set_form + case "$PW_YAD_SET" in + change_mirror) + change_mirror + ;; + change_branch) + unset SKIP_CHECK_UPDATES + change_branch + ;; + change_gui_start) + change_gui_start + ;; + change_download_grid) + change_download_grid + ;; + esac +} + # RESIZE PNG FILE resize_png () { if [[ -z "$1" ]] || [[ -z "$2" ]] || [[ -z "$3" ]] ; then @@ -5010,6 +5109,11 @@ portwine_missing_shortcut () { # GUI WINETRICKS | GUI PREFIX MANAGER pw_prefix_manager () { + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="3" + else + export TAB_MAIN_MENU="4" + fi update_winetricks start_portwine if [ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" ] ; then @@ -5321,13 +5425,22 @@ portwine_start_debug () { } pw_create_prefix_backup () { + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="3" + else + export TAB_MAIN_MENU="4" + fi cd "$HOME" PW_PREFIX_TO_BACKUP=$("${pw_yad}" --file --directory --width=800 --height=500 \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --title "$(gettext "BACKUP PREFIX TO...")" \ --button="$(gettext "CANCEL")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":1 \ --button="$(gettext "OK")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 2>/dev/null) YAD_STATUS="$?" - if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi + export SKIP_CHECK_UPDATES="1" + if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then + /usr/bin/env bash -c ${pw_full_command_line[*]} & + exit 0 + fi if [[ ! -z "$(grep "/${PW_PREFIX_NAME}/" "${PORT_WINE_PATH}"/*.desktop )" ]] ; then try_remove_file "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.create_shortcut" grep "/${PW_PREFIX_NAME}/" "${PORT_WINE_PATH}"/*.desktop | awk -F"/${PW_PREFIX_NAME}/" '{print $2}' \ @@ -5359,7 +5472,8 @@ EOF else yad_error "$(gettext "An error occurred while backing up the prefix:") $PW_PREFIX_NAME" fi - return 0 + /usr/bin/env bash -c ${pw_full_command_line[*]} & + exit 0 } pw_autoinstall_from_db () { @@ -5382,22 +5496,24 @@ pw_autoinstall_from_db () { } button_click () { - [[ ! -z "$1" ]] && echo "$1" > "${PW_TMPFS_PATH}/tmp_yad_form" if [[ ! -z $(pidof -s yad) ]] || [[ ! -z $(pidof -s yad_gui_pp) ]] ; then - kill -s SIGUSR1 $(pgrep -a yad | grep "\--key=${KEY} \--notebook" | awk '{print $1}') > /dev/null 2>&1 + [[ ! -z "$2" ]] && echo "$2" > "${PW_TMPFS_PATH}/tmp_yad_form" + case "$1" in + --normal) + kill -s SIGUSR1 $(pgrep -a yad | grep "\--key=${KEY} \--notebook" | awk '{print $1}') > /dev/null 2>&1 + ;; + --start) + kill -s SIGUSR1 $(pgrep -a yad | grep "\--key=${KEY_START} \--notebook" | awk '{print $1}') > /dev/null 2>&1 \ + || kill -s SIGUSR1 $(pgrep -a yad | grep "\--key=${KEY_START} \--paned" | awk '{print $1}') > /dev/null 2>&1 + ;; + --userconf) + kill -s SIGUSR1 $(pgrep -a yad | grep "\--key=${KEY_USERCONF_GUI}" | awk '{print $1}') > /dev/null 2>&1 + ;; + esac fi } export -f button_click -button_click_start () { - [[ ! -z "$1" ]] && echo "$1" > "${PW_TMPFS_PATH}/tmp_yad_form" - if [[ ! -z $(pidof -s yad) ]] || [[ ! -z $(pidof -s yad_gui_pp) ]] ; then - kill -s SIGUSR1 $(pgrep -a yad | grep "\--key=${KEY_START} \--notebook" | awk '{print $1}') > /dev/null 2>&1 \ - || kill -s SIGUSR1 $(pgrep -a yad | grep "\--key=${KEY_START} \--paned" | awk '{print $1}') > /dev/null 2>&1 - fi -} -export -f button_click_start - run_desktop_b_click () { [[ ! -z "$1" ]] && echo "$1" > "${PW_TMPFS_PATH}/tmp_yad_form" @@ -5418,6 +5534,11 @@ run_desktop_b_click () { export -f run_desktop_b_click gui_clear_pfx () { + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="3" + else + export TAB_MAIN_MENU="4" + fi if yad_question "$(gettext "Do you want to clear prefix in PortProton?")" ; then pw_clear_pfx print_info "Restarting PP after clearing prefix..." @@ -5441,6 +5562,11 @@ gui_rm_portproton () { export -f gui_rm_portproton gui_pw_update () { + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="4" + else + export TAB_MAIN_MENU="5" + fi try_remove_file "${PORT_WINE_TMP_PATH}/scripts_update_notifier" print_info "Restarting PP for check update..." export SKIP_CHECK_UPDATES="0" @@ -5450,6 +5576,11 @@ gui_pw_update () { export -f gui_pw_update change_loc () { + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="4" + else + export TAB_MAIN_MENU="5" + fi try_remove_file "${PORT_WINE_TMP_PATH}/PortProton_loc" print_info "Restarting PP for change language..." export SKIP_CHECK_UPDATES="1" @@ -5470,12 +5601,7 @@ change_mirror () { fi print_info "Restarting PP for change mirror..." export SKIP_CHECK_UPDATES="1" - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi - /usr/bin/env bash -c ${pw_full_command_line[*]} & + /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & exit 0 } export -f change_mirror @@ -5492,7 +5618,7 @@ change_branch () { yad_info "$(gettext "Branch changed to:") STABLE" fi print_info "Restarting PP for change branch..." - /usr/bin/env bash -c ${pw_full_command_line[*]} & + /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & exit 0 } export -f change_branch @@ -5509,12 +5635,7 @@ change_download_grid () { fi print_info "Restarting PP for change cover download behavior..." export SKIP_CHECK_UPDATES="1" - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi - /usr/bin/env bash -c ${pw_full_command_line[*]} & + /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & exit 0 } export -f change_download_grid @@ -5531,12 +5652,7 @@ change_gui_start () { fi print_info "Restarting PP for change gui start..." export SKIP_CHECK_UPDATES="1" - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi - /usr/bin/env bash -c ${pw_full_command_line[*]} & + /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & exit 0 } export -f change_gui_start @@ -5551,32 +5667,21 @@ gui_open_user_conf () { PW_USERCONF_GUI="$("${pw_yad}" --title="$(gettext "EDIT USER CONFIG")" \ --text-info --editable --width=800 --height=600 \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ - --button="$(gettext "MAIN MENU")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"":1 \ + --button="$(gettext "BACK")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"":1 \ --button="$(gettext "SAVE")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"":2 \ --filename="${PORT_WINE_PATH}/data/user.conf" 2>/dev/null)" YAD_STATUS="$?" + export SKIP_CHECK_UPDATES="1" case "${YAD_STATUS}" in 1|252) - export SKIP_CHECK_UPDATES="1" - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi - /usr/bin/env bash -c ${pw_full_command_line[*]} & + /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & print_info "Restarting..." exit 0 ;; 2) echo "${PW_USERCONF_GUI}" > "${PORT_WINE_PATH}/data/user.conf" - export SKIP_CHECK_UPDATES="1" - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi - /usr/bin/env bash -c ${pw_full_command_line[*]} & + /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & print_info "Restarting..." exit 0 ;; @@ -5588,34 +5693,42 @@ gui_edit_db_file () { GUI_EDIT_DB_FILE="$("${pw_yad}" --title="$(gettext "EDIT DB")" \ --text-info --editable --width=800 --height=600 \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ - --button="$(gettext "SETTINGS")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"":1 \ + --button="$(gettext "BACK")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"":1 \ --button="$(gettext "SAVE")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"":2 \ --filename="${PORTWINE_DB_FILE}" 2>/dev/null)" YAD_STATUS="$?" case "$YAD_STATUS" in 1|252) - /usr/bin/env bash -c ${pw_full_command_line[*]} & + /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_edit_db" & exit 0 ;; 2) echo "${GUI_EDIT_DB_FILE}" > "${PORTWINE_DB_FILE}" - /usr/bin/env bash -c ${pw_full_command_line[*]} & + /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_edit_db" & exit 0 ;; esac } gui_open_scripts_from_backup () { + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="4" + else + export TAB_MAIN_MENU="5" + fi cd "${PORT_WINE_TMP_PATH}/scripts_backup/" || fatal PW_SCRIPT_FROM_BACKUP=$("${pw_yad}" --file --width=650 --height=500 \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --title "SCRIPTS FROM BACKUP" --file-filter="backup_scripts|scripts_v*.tar.gz" 2>/dev/null ) YAD_STATUS="$?" - if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi + export SKIP_CHECK_UPDATES="1" + if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then + /usr/bin/env bash -c ${pw_full_command_line[*]} & + exit 0 + fi unpack "$PW_SCRIPT_FROM_BACKUP" "${PORT_WINE_PATH}/data/" echo "0" > "${PORT_WINE_TMP_PATH}/scripts_update_notifier" print_info "Restarting PP after backup..." - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 } @@ -5623,6 +5736,11 @@ export -f gui_open_scripts_from_backup #GUI CREDITS AND ABOUT gui_credits () { + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="4" + else + export TAB_MAIN_MENU="5" + fi ######################################################################## # grep ';subscription;' stat-subscriptions.csv | awk -F';' '{print $1}' | sort -u | sed "s/\"//g" > thanks ######################################################################## @@ -5709,12 +5827,6 @@ DGVOODOO2: https://dege.fw.hu/" --tab="$(gettext "ABOUT PORTPROTON")" --tab="$(gettext "AUTORS")" --tab="$(gettext "LICENSE")" \ --tab="$(gettext "SPONSORS")" --tab="$(gettext "JOIN")" --tab="$(gettext "THIRD PARTY LIBRARIES")" - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi - echo "Exit from credits" /usr/bin/env bash -c "${pw_full_command_line[*]}" & exit 0 diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index aa796220..8ed796c4 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -562,6 +562,12 @@ if [[ -z "${PORTWINE_DB_FILE}" ]] ; then fi if [[ -f "${portwine_exe}" ]] ; then + unset TAB_MAIN_MENU + if [[ "$1" == "--gui_edit_db" ]] ; then + gui_edit_db + elif [[ "$1" == "--gui_userconf" ]] ; then + gui_userconf + fi if [[ "${PW_GUI_DISABLED_CS}" != 1 ]] ; then pw_create_gui_png grep -il "${portwine_exe}" "${HOME}/.local/share/applications"/*.desktop @@ -584,11 +590,12 @@ if [[ -f "${portwine_exe}" ]] ; then "${pw_yad}" --plug=$KEY_START --tabnum=2 --form --columns="${START_GUI_NOTEBOOK_COLUMNS}" --align-buttons --homogeneous-column \ --gui-type-layout="${START_GUI_TYPE_LAYOUT_NOTEBOOK}" \ - --field=" $(gettext "Base settings")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Edit database file for") ${PORTWINE_DB}":"FBTN" '@bash -c "button_click_start 118"' \ - --field=" vkBasalt"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)")":"FBTN" '@bash -c "button_click_start 120"' \ - --field=" MangoHud"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable Mangohud by default (R_SHIFT + F12 keyboard shortcuts disable Mangohud)")":"FBTN" '@bash -c "button_click_start 122"' \ - --field=" dgVoodoo2"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable dgVoodoo2 by default (This wrapper fixes many compatibility and rendering issues when running old games)")":"FBTN" '@bash -c "button_click_start 124"' \ - --field=" GameScope"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable GameScope by default (Wayland micro compositor)")":"FBTN" '@bash -c "button_click_start 126"' \ + --field=" $(gettext "Base settings")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Edit database file for") ${PORTWINE_DB}":"FBTN" '@bash -c "button_click --start 118"' \ + --field=" $(gettext "Settings user.conf")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Settings for user.conf")":"FBTN" '@bash -c "button_click --start 128"' \ + --field=" vkBasalt"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)")":"FBTN" '@bash -c "button_click --start 120"' \ + --field=" MangoHud"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable Mangohud by default (R_SHIFT + F12 keyboard shortcuts disable Mangohud)")":"FBTN" '@bash -c "button_click --start 122"' \ + --field=" dgVoodoo2"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable dgVoodoo2 by default (This wrapper fixes many compatibility and rendering issues when running old games)")":"FBTN" '@bash -c "button_click --start 124"' \ + --field=" GameScope"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable GameScope by default (Wayland micro compositor)")":"FBTN" '@bash -c "button_click --start 126"' \ 2>/dev/null & if [[ "${PW_YAD_FORM_TAB}" == "1" ]] \ @@ -627,11 +634,12 @@ if [[ -f "${portwine_exe}" ]] ; then "${pw_yad}" --plug=$KEY_START --tabnum=2 --form --columns="${START_GUI_PANED_COLUMNS}" \ --gui-type-layout="${START_GUI_TYPE_LAYOUT_PANED}" \ --align-buttons --homogeneous-row --homogeneous-column \ - --field=" $(gettext "Base settings")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Edit database file for") ${PORTWINE_DB}":"FBTN" '@bash -c "button_click_start 118"' \ - --field=" vkBasalt"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)")":"FBTN" '@bash -c "button_click_start 120"' \ - --field=" MangoHud"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable Mangohud by default (R_SHIFT + F12 keyboard shortcuts disable Mangohud)")":"FBTN" '@bash -c "button_click_start 122"' \ - --field=" dgVoodoo2"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable dgVoodoo2 by default (This wrapper fixes many compatibility and rendering issues when running old games)")":"FBTN" '@bash -c "button_click_start 124"' \ - --field=" GameScope"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable GameScope by default (Wayland micro compositor)")":"FBTN" '@bash -c "button_click_start 126"' \ + --field=" $(gettext "Base settings")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Edit database file for") ${PORTWINE_DB}":"FBTN" '@bash -c "button_click --start 118"' \ + --field=" $(gettext "Settings user.conf")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Settings for user.conf")":"FBTN" '@bash -c "button_click --start 128"' \ + --field=" vkBasalt"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)")":"FBTN" '@bash -c "button_click --start 120"' \ + --field=" MangoHud"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable Mangohud by default (R_SHIFT + F12 keyboard shortcuts disable Mangohud)")":"FBTN" '@bash -c "button_click --start 122"' \ + --field=" dgVoodoo2"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable dgVoodoo2 by default (This wrapper fixes many compatibility and rendering issues when running old games)")":"FBTN" '@bash -c "button_click --start 124"' \ + --field=" GameScope"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable GameScope by default (Wayland micro compositor)")":"FBTN" '@bash -c "button_click --start 126"' \ 2>/dev/null & "${pw_yad}" --key=$KEY_START --paned \ @@ -666,31 +674,19 @@ if [[ -f "${portwine_exe}" ]] ; then portwine_launch fi else - export KEY="$RANDOM" - - if [[ "$MIRROR" == "CLOUD" ]] - then NEW_MIRROR="GITHUB" - else NEW_MIRROR="CLOUD" - fi - - if [[ "$BRANCH" == "master" ]] - then NEW_BRANCH="DEVEL" - else NEW_BRANCH="STABLE" - fi - - if [[ "$DOWNLOAD_STEAM_GRID" == "1" ]] - then NEW_STEAM_BEHAVIOR="$(gettext "Disable")" - else NEW_STEAM_BEHAVIOR="$(gettext "Enable")" - fi - - IFS=$'\n' PW_ALL_DF="$(ls "${PORT_WINE_PATH}"/ | grep .desktop | grep -vE '(PortProton|readme)')" if [[ -z "${PW_ALL_DF}" ]] - then PW_GUI_SORT_TABS=(1 2 3 4 5) - else PW_GUI_SORT_TABS=(2 3 4 5 1) + then export PW_GUI_SORT_TABS=(1 2 3 4 5) + else export PW_GUI_SORT_TABS=(2 3 4 5 1) + fi + if [[ "$1" == "--gui_userconf" ]] ; then + gui_userconf fi - PW_GENERATE_BUTTONS="--field= $(gettext "Create shortcut...")!${PW_GUI_ICON_PATH}/find_48.svg!:FBTN%@bash -c \"button_click pw_find_exe\"%" + export KEY="$RANDOM" + + IFS=$'\n' + PW_GENERATE_BUTTONS="--field= $(gettext "Create shortcut...")!${PW_GUI_ICON_PATH}/find_48.svg!:FBTN%@bash -c \"button_click --normal pw_find_exe\"%" for PW_DESKTOP_FILES in ${PW_ALL_DF} ; do if check_flatpak ; then PW_NAME_D_ICON="$(grep Exec "${PORT_WINE_PATH}/${PW_DESKTOP_FILES}" | awk -F'=' '{print $2}' | @@ -718,19 +714,15 @@ else "${pw_yad}" --plug=$KEY --tabnum="${PW_GUI_SORT_TABS[3]}" --form --columns=3 --align-buttons --separator=";" --homogeneous-column \ --gui-type-layout=${MAIN_MENU_GUI_TYPE_LAYOUT} \ - --field=" $(gettext "Reinstall PortProton")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click gui_pw_reinstall_pp"' \ - --field=" $(gettext "Remove PortProton")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click gui_rm_portproton"' \ - --field=" $(gettext "Update PortProton")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click gui_pw_update"' \ - --field=" $(gettext "Changelog")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click open_changelog"' \ - --field=" $(gettext "Change language")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click change_loc"' \ - --field=" $(gettext "Edit user.conf")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click gui_open_user_conf"' \ - --field=" $(gettext "Scripts from backup")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click gui_open_scripts_from_backup"' \ - --field=" Xterm"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click pw_start_cont_xterm"' \ - --field=" $(gettext "Credits")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click gui_credits"' \ - --field=" $(gettext "Change mirror to") $NEW_MIRROR"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click change_mirror"' \ - --field=" $(gettext "Change branch to") $NEW_BRANCH"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click change_branch"' \ - --field=" $(gettext "Change start gui")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click change_gui_start"' \ - --field=" $NEW_STEAM_BEHAVIOR $(gettext "steam covers download")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click change_download_grid"' \ + --field=" $(gettext "Reinstall PortProton")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal gui_pw_reinstall_pp"' \ + --field=" $(gettext "Remove PortProton")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal gui_rm_portproton"' \ + --field=" $(gettext "Update PortProton")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal gui_pw_update"' \ + --field=" $(gettext "Changelog")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal open_changelog"' \ + --field=" $(gettext "Change language")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal change_loc"' \ + --field=" $(gettext "Settings user.conf")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal 128"' \ + --field=" $(gettext "Scripts from backup")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal gui_open_scripts_from_backup"' \ + --field=" Xterm"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal pw_start_cont_xterm"' \ + --field=" $(gettext "Credits")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal gui_credits"' \ 2>/dev/null & "${pw_yad}" --plug=$KEY --tabnum="${PW_GUI_SORT_TABS[2]}" --form --columns=3 --align-buttons --separator=";" \ @@ -738,77 +730,77 @@ else --field=" 3D API : :CB" "${PW_DEFAULT_VULKAN_USE}" \ --field=" PREFIX : :CBE" "${PW_ADD_PREFIXES_TO_GUI}" \ --field=" WINE : :CB" "$(combobox_fix "${PW_WINE_USE}" "${PW_DEFAULT_WINE_USE}")" \ - --field="$(gettext "Create prefix backup")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"CFBTN" '@bash -c "button_click pw_create_prefix_backup"' \ - --field=" Winetricks"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run winetricks to install additional libraries to the selected prefix")":"FBTN" '@bash -c "button_click WINETRICKS"' \ - --field=" $(gettext "Clear prefix")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Clear the prefix to fix problems")":"FBTN" '@bash -c "button_click gui_clear_pfx"' \ - --field=" $(gettext "Get other Wine")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Open the menu to download other versions of WINE or PROTON")":"FBTN" '@bash -c "button_click gui_proton_downloader"' \ - --field=" $(gettext "Uninstaller")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run the program uninstaller built into wine")":"FBTN" '@bash -c "button_click gui_wine_uninstaller"' \ - --field=" $(gettext "Prefix Manager") "!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run winecfg to edit the settings of the selected prefix")":"FBTN" '@bash -c "button_click WINECFG"' \ - --field=" $(gettext "File Manager")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run wine file manager")":"FBTN" '@bash -c "button_click WINEFILE"' \ - --field=" $(gettext "Command line")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run wine cmd")":"FBTN" '@bash -c "button_click WINECMD"' \ - --field=" $(gettext "Regedit")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run wine regedit")":"FBTN" '@bash -c "button_click WINEREG"' 1> "${PW_TMPFS_PATH}/tmp_yad_form_vulkan" 2>/dev/null & + --field="$(gettext "Create prefix backup")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"CFBTN" '@bash -c "button_click --normal pw_create_prefix_backup"' \ + --field=" Winetricks"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run winetricks to install additional libraries to the selected prefix")":"FBTN" '@bash -c "button_click --normal WINETRICKS"' \ + --field=" $(gettext "Clear prefix")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Clear the prefix to fix problems")":"FBTN" '@bash -c "button_click --normal gui_clear_pfx"' \ + --field=" $(gettext "Get other Wine")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Open the menu to download other versions of WINE or PROTON")":"FBTN" '@bash -c "button_click --normal gui_proton_downloader"' \ + --field=" $(gettext "Uninstaller")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run the program uninstaller built into wine")":"FBTN" '@bash -c "button_click --normal gui_wine_uninstaller"' \ + --field=" $(gettext "Prefix Manager") "!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run winecfg to edit the settings of the selected prefix")":"FBTN" '@bash -c "button_click --normal WINECFG"' \ + --field=" $(gettext "File Manager")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run wine file manager")":"FBTN" '@bash -c "button_click --normal WINEFILE"' \ + --field=" $(gettext "Command line")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run wine cmd")":"FBTN" '@bash -c "button_click --normal WINECMD"' \ + --field=" $(gettext "Regedit")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Run wine regedit")":"FBTN" '@bash -c "button_click --normal WINEREG"' 1> "${PW_TMPFS_PATH}/tmp_yad_form_vulkan" 2>/dev/null & "${pw_yad}" --plug=$KEY --tabnum="${PW_GUI_SORT_TABS[1]}" --form --columns="$MAIN_GUI_COLUMNS" --align-buttons --scroll --homogeneous-column \ --gui-type-layout="${MAIN_MENU_GUI_TYPE_LAYOUT}" \ - --field=" Dolphin 5.0"!"$PW_GUI_ICON_PATH/dolphin.png"!"$(gettext "Emulator for Nintendo game consoles with high compatibility")":"FBTN" '@bash -c "button_click PW_DOLPHIN"' \ - --field=" MAME"!"$PW_GUI_ICON_PATH/mame.png"!"$(gettext "Multi-arcade emulator that allows you to play old arcade games")":"FBTN" '@bash -c "button_click PW_MAME"' \ - --field=" RetroArch"!"$PW_GUI_ICON_PATH/retroarch.png"!"$(gettext "Multi-platform frontend for emulators with extensive settings")":"FBTN" '@bash -c "button_click PW_RETROARCH"' \ - --field=" PPSSPP Windows"!"$PW_GUI_ICON_PATH/ppsspp.png"!"$(gettext "Emulator for the PlayStation Portable (PSP) game console")":"FBTN" '@bash -c "button_click PW_PPSSPP"' \ - --field=" Citra"!"$PW_GUI_ICON_PATH/citra.png"!"$(gettext "Emulator for the Nintendo 3DS game console")":"FBTN" '@bash -c "button_click PW_CITRA"' \ - --field=" Cemu"!"$PW_GUI_ICON_PATH/cemu.png"!"$(gettext "Emulator for the Wii U game console")":"FBTN" '@bash -c "button_click PW_CEMU"' \ - --field=" ePSXe"!"$PW_GUI_ICON_PATH/epsxe.png"!"$(gettext "Emulator for the PlayStation 1 game console with high compatibility")":"FBTN" '@bash -c "button_click PW_EPSXE"' \ - --field=" Project64"!"$PW_GUI_ICON_PATH/project64.png"!"$(gettext "Emulator for the Nintendo 64 game console")":"FBTN" '@bash -c "button_click PW_PROJECT64"' \ - --field=" VBA-M"!"$PW_GUI_ICON_PATH/vba-m.png"!"$(gettext "Emulator for the Game Boy Advance game console")":"FBTN" '@bash -c "button_click PW_VBA-M"' \ - --field=" Yabause"!"$PW_GUI_ICON_PATH/yabause.png"!"$(gettext "Emulator for the Sega Saturn game console")":"FBTN" '@bash -c "button_click PW_YABAUSE"' \ - --field=" Xenia"!"$PW_GUI_ICON_PATH/xenia.png"!"$(gettext "Emulator for the Xbox 360 game console")":"FBTN" '@bash -c "button_click PW_XENIA"' \ - --field=" FCEUX"!"$PW_GUI_ICON_PATH/fceux.png"!"$(gettext "Emulator for the Nintendo Entertainment System (NES or Dendy) game console")":"FBTN" '@bash -c "button_click PW_FCEUX"' \ - --field=" xemu"!"$PW_GUI_ICON_PATH/xemu.png"!"$(gettext "Emulator for the Xbox game console")":"FBTN" '@bash -c "button_click PW_XEMU"' \ - --field=" Demul"!"$PW_GUI_ICON_PATH/demul.png"!"$(gettext "Emulator for the Sega Dreamcast game console")":"FBTN" '@bash -c "button_click PW_DEMUL"' 2>/dev/null & + --field=" Dolphin 5.0"!"$PW_GUI_ICON_PATH/dolphin.png"!"$(gettext "Emulator for Nintendo game consoles with high compatibility")":"FBTN" '@bash -c "button_click --normal PW_DOLPHIN"' \ + --field=" MAME"!"$PW_GUI_ICON_PATH/mame.png"!"$(gettext "Multi-arcade emulator that allows you to play old arcade games")":"FBTN" '@bash -c "button_click --normal PW_MAME"' \ + --field=" RetroArch"!"$PW_GUI_ICON_PATH/retroarch.png"!"$(gettext "Multi-platform frontend for emulators with extensive settings")":"FBTN" '@bash -c "button_click --normal PW_RETROARCH"' \ + --field=" PPSSPP Windows"!"$PW_GUI_ICON_PATH/ppsspp.png"!"$(gettext "Emulator for the PlayStation Portable (PSP) game console")":"FBTN" '@bash -c "button_click --normal PW_PPSSPP"' \ + --field=" Citra"!"$PW_GUI_ICON_PATH/citra.png"!"$(gettext "Emulator for the Nintendo 3DS game console")":"FBTN" '@bash -c "button_click --normal PW_CITRA"' \ + --field=" Cemu"!"$PW_GUI_ICON_PATH/cemu.png"!"$(gettext "Emulator for the Wii U game console")":"FBTN" '@bash -c "button_click --normal PW_CEMU"' \ + --field=" ePSXe"!"$PW_GUI_ICON_PATH/epsxe.png"!"$(gettext "Emulator for the PlayStation 1 game console with high compatibility")":"FBTN" '@bash -c "button_click --normal PW_EPSXE"' \ + --field=" Project64"!"$PW_GUI_ICON_PATH/project64.png"!"$(gettext "Emulator for the Nintendo 64 game console")":"FBTN" '@bash -c "button_click --normal PW_PROJECT64"' \ + --field=" VBA-M"!"$PW_GUI_ICON_PATH/vba-m.png"!"$(gettext "Emulator for the Game Boy Advance game console")":"FBTN" '@bash -c "button_click --normal PW_VBA-M"' \ + --field=" Yabause"!"$PW_GUI_ICON_PATH/yabause.png"!"$(gettext "Emulator for the Sega Saturn game console")":"FBTN" '@bash -c "button_click --normal PW_YABAUSE"' \ + --field=" Xenia"!"$PW_GUI_ICON_PATH/xenia.png"!"$(gettext "Emulator for the Xbox 360 game console")":"FBTN" '@bash -c "button_click --normal PW_XENIA"' \ + --field=" FCEUX"!"$PW_GUI_ICON_PATH/fceux.png"!"$(gettext "Emulator for the Nintendo Entertainment System (NES or Dendy) game console")":"FBTN" '@bash -c "button_click --normal PW_FCEUX"' \ + --field=" xemu"!"$PW_GUI_ICON_PATH/xemu.png"!"$(gettext "Emulator for the Xbox game console")":"FBTN" '@bash -c "button_click --normal PW_XEMU"' \ + --field=" Demul"!"$PW_GUI_ICON_PATH/demul.png"!"$(gettext "Emulator for the Sega Dreamcast game console")":"FBTN" '@bash -c "button_click --normal PW_DEMUL"' 2>/dev/null & "${pw_yad}" --plug=$KEY --tabnum="${PW_GUI_SORT_TABS[0]}" --form --columns="$MAIN_GUI_COLUMNS" --align-buttons --scroll --homogeneous-column \ --gui-type-layout="${MAIN_MENU_GUI_TYPE_LAYOUT}" \ - --field=" Lesta Game Center"!"$PW_GUI_ICON_PATH/lgc.png"!"":"FBTN" '@bash -c "button_click PW_LGC"' \ - --field=" vkPlay Games Center"!"$PW_GUI_ICON_PATH/mygames.png"!"":"FBTN" '@bash -c "button_click PW_VKPLAY"' \ - --field=" Battle.net Launcher"!"$PW_GUI_ICON_PATH/battle_net.png"!"":"FBTN" '@bash -c "button_click PW_BATTLE_NET"' \ - --field=" Epic Games Launcher"!"$PW_GUI_ICON_PATH/epicgames.png"!"":"FBTN" '@bash -c "button_click PW_EPIC"' \ - --field=" GoG Galaxy Launcher"!"$PW_GUI_ICON_PATH/gog.png"!"":"FBTN" '@bash -c "button_click PW_GOG"' \ - --field=" Ubisoft Game Launcher"!"$PW_GUI_ICON_PATH/ubc.png"!"":"FBTN" '@bash -c "button_click PW_UBC"' \ - --field=" EVE Online Launcher"!"$PW_GUI_ICON_PATH/eve.png"!"":"FBTN" '@bash -c "button_click PW_EVE"' \ - --field=" Rockstar Games Launcher"!"$PW_GUI_ICON_PATH/Rockstar.png"!"":"FBTN" '@bash -c "button_click PW_ROCKSTAR"' \ - --field=" Gameforge Client"!"$PW_GUI_ICON_PATH/gameforge.png"!"":"FBTN" '@bash -c "button_click PW_GAMEFORGE"' \ - --field=" World of Sea Battle (x64)"!"$PW_GUI_ICON_PATH/wosb.png"!"":"FBTN" '@bash -c "button_click PW_WOSB"' \ - --field=" CALIBER"!"$PW_GUI_ICON_PATH/caliber.png"!"":"FBTN" '@bash -c "button_click PW_CALIBER"' \ - --field=" Crossout"!"$PW_GUI_ICON_PATH/crossout.png"!"":"FBTN" '@bash -c "button_click PW_CROSSOUT"' \ - --field=" Warframe"!"$PW_GUI_ICON_PATH/warframe.png"!"":"FBTN" '@bash -c "button_click PW_WARFRAME"' \ - --field=" Panzar"!"$PW_GUI_ICON_PATH/panzar.png"!"":"FBTN" '@bash -c "button_click PW_PANZAR"' \ - --field=" STALCRAFT"!"$PW_GUI_ICON_PATH/stalcraft.png"!"":"FBTN" '@bash -c "button_click PW_STALCRAFT"' \ - --field=" CONTRACT WARS"!"$PW_GUI_ICON_PATH/cwc.png"!"":"FBTN" '@bash -c "button_click PW_CWC"' \ - --field=" Stalker Online"!"$PW_GUI_ICON_PATH/so.png"!"":"FBTN" '@bash -c "button_click PW_SO"' \ - --field=" Modern Warships"!"$PW_GUI_ICON_PATH/mw.png"!"":"FBTN" '@bash -c "button_click PW_MW"' \ - --field=" Metal War Online"!"$PW_GUI_ICON_PATH/mwo.png"!"":"FBTN" '@bash -c "button_click PW_MWO"' \ - --field=" Ankama Launcher"!"$PW_GUI_ICON_PATH/ankama.png"!"":"FBTN" '@bash -c "button_click PW_ANKAMA"' \ - --field=" Indiegala Client"!"$PW_GUI_ICON_PATH/igclient.png"!"":"FBTN" '@bash -c "button_click PW_IGCLIENT"' \ - --field=" Plarium Play"!"$PW_GUI_ICON_PATH/plariumplay.png"!"":"FBTN" '@bash -c "button_click PW_PLARIUM_PLAY"' \ - --field=" Wargaming Game Center"!"$PW_GUI_ICON_PATH/wgc.png"!"":"FBTN" '@bash -c "button_click PW_WGC"' \ - --field=" OSU"!"$PW_GUI_ICON_PATH/osu.png"!"":"FBTN" '@bash -c "button_click PW_OSU"' \ - --field=" ITCH.IO"!"$PW_GUI_ICON_PATH/itch.png"!"":"FBTN" '@bash -c "button_click PW_ITCH"' \ - --field=" Steam (unstable)"!"$PW_GUI_ICON_PATH/steam.png"!"":"FBTN" '@bash -c "button_click PW_STEAM"' \ - --field=" Path of Exile"!"$PW_GUI_ICON_PATH/poe.png"!"":"FBTN" '@bash -c "button_click PW_POE"' \ - --field=" Guild Wars 2"!"$PW_GUI_ICON_PATH/gw2.png"!"":"FBTN" '@bash -c "button_click PW_GUILD_WARS_2"' \ - --field=" HoYoPlay"!"$PW_GUI_ICON_PATH/hoyoplay.png"!"":"FBTN" '@bash -c "button_click PW_HO_YO_PLAY"' \ - --field=" EA App (TEST)"!"$PW_GUI_ICON_PATH/eaapp.png"!"":"FBTN" '@bash -c "button_click PW_EAAPP"' \ - --field=" Battle Of Space Raiders"!"$PW_GUI_ICON_PATH/bsr.png"!"":"FBTN" '@bash -c "button_click PW_BSR"' \ - --field=" Black Desert Online (RU)"!"$PW_GUI_ICON_PATH/bdo.png"!"":"FBTN" '@bash -c "button_click PW_BDO"' \ - --field=" Pulse Online"!"$PW_GUI_ICON_PATH/pulseonline.png"!"":"FBTN" '@bash -c "button_click PW_PULSE_ONLINE"' \ - --field=" CatsLauncher (Front Edge)"!"$PW_GUI_ICON_PATH/catslauncher.png"!"":"FBTN" '@bash -c "button_click PW_CATSLAUNCHER"' \ - --field=" Russian Fishing 4"!"$PW_GUI_ICON_PATH/rf4launcher.png"!"":"FBTN" '@bash -c "button_click PW_RUSSIAN_FISHING"' \ - --field=" W3D Hub Launcher"!"$PW_GUI_ICON_PATH/w3dhub.png"!"":"FBTN" '@bash -c "button_click PW_W3D_HUB"' \ - --field=" Anomaly Zone"!"$PW_GUI_ICON_PATH/anomalyzone.png"!"":"FBTN" '@bash -c "button_click PW_ANOMALY_ZONE"' \ + --field=" Lesta Game Center"!"$PW_GUI_ICON_PATH/lgc.png"!"":"FBTN" '@bash -c "button_click --normal PW_LGC"' \ + --field=" vkPlay Games Center"!"$PW_GUI_ICON_PATH/mygames.png"!"":"FBTN" '@bash -c "button_click --normal PW_VKPLAY"' \ + --field=" Battle.net Launcher"!"$PW_GUI_ICON_PATH/battle_net.png"!"":"FBTN" '@bash -c "button_click --normal PW_BATTLE_NET"' \ + --field=" Epic Games Launcher"!"$PW_GUI_ICON_PATH/epicgames.png"!"":"FBTN" '@bash -c "button_click --normal PW_EPIC"' \ + --field=" GoG Galaxy Launcher"!"$PW_GUI_ICON_PATH/gog.png"!"":"FBTN" '@bash -c "button_click --normal PW_GOG"' \ + --field=" Ubisoft Game Launcher"!"$PW_GUI_ICON_PATH/ubc.png"!"":"FBTN" '@bash -c "button_click --normal PW_UBC"' \ + --field=" EVE Online Launcher"!"$PW_GUI_ICON_PATH/eve.png"!"":"FBTN" '@bash -c "button_click --normal PW_EVE"' \ + --field=" Rockstar Games Launcher"!"$PW_GUI_ICON_PATH/Rockstar.png"!"":"FBTN" '@bash -c "button_click --normal PW_ROCKSTAR"' \ + --field=" Gameforge Client"!"$PW_GUI_ICON_PATH/gameforge.png"!"":"FBTN" '@bash -c "button_click --normal PW_GAMEFORGE"' \ + --field=" World of Sea Battle (x64)"!"$PW_GUI_ICON_PATH/wosb.png"!"":"FBTN" '@bash -c "button_click --normal PW_WOSB"' \ + --field=" CALIBER"!"$PW_GUI_ICON_PATH/caliber.png"!"":"FBTN" '@bash -c "button_click --normal PW_CALIBER"' \ + --field=" Crossout"!"$PW_GUI_ICON_PATH/crossout.png"!"":"FBTN" '@bash -c "button_click --normal PW_CROSSOUT"' \ + --field=" Warframe"!"$PW_GUI_ICON_PATH/warframe.png"!"":"FBTN" '@bash -c "button_click --normal PW_WARFRAME"' \ + --field=" Panzar"!"$PW_GUI_ICON_PATH/panzar.png"!"":"FBTN" '@bash -c "button_click --normal PW_PANZAR"' \ + --field=" STALCRAFT"!"$PW_GUI_ICON_PATH/stalcraft.png"!"":"FBTN" '@bash -c "button_click --normal PW_STALCRAFT"' \ + --field=" CONTRACT WARS"!"$PW_GUI_ICON_PATH/cwc.png"!"":"FBTN" '@bash -c "button_click --normal PW_CWC"' \ + --field=" Stalker Online"!"$PW_GUI_ICON_PATH/so.png"!"":"FBTN" '@bash -c "button_click --normal PW_SO"' \ + --field=" Modern Warships"!"$PW_GUI_ICON_PATH/mw.png"!"":"FBTN" '@bash -c "button_click --normal PW_MW"' \ + --field=" Metal War Online"!"$PW_GUI_ICON_PATH/mwo.png"!"":"FBTN" '@bash -c "button_click --normal PW_MWO"' \ + --field=" Ankama Launcher"!"$PW_GUI_ICON_PATH/ankama.png"!"":"FBTN" '@bash -c "button_click --normal PW_ANKAMA"' \ + --field=" Indiegala Client"!"$PW_GUI_ICON_PATH/igclient.png"!"":"FBTN" '@bash -c "button_click --normal PW_IGCLIENT"' \ + --field=" Plarium Play"!"$PW_GUI_ICON_PATH/plariumplay.png"!"":"FBTN" '@bash -c "button_click --normal PW_PLARIUM_PLAY"' \ + --field=" Wargaming Game Center"!"$PW_GUI_ICON_PATH/wgc.png"!"":"FBTN" '@bash -c "button_click --normal PW_WGC"' \ + --field=" OSU"!"$PW_GUI_ICON_PATH/osu.png"!"":"FBTN" '@bash -c "button_click --normal PW_OSU"' \ + --field=" ITCH.IO"!"$PW_GUI_ICON_PATH/itch.png"!"":"FBTN" '@bash -c "button_click --normal PW_ITCH"' \ + --field=" Steam (unstable)"!"$PW_GUI_ICON_PATH/steam.png"!"":"FBTN" '@bash -c "button_click --normal PW_STEAM"' \ + --field=" Path of Exile"!"$PW_GUI_ICON_PATH/poe.png"!"":"FBTN" '@bash -c "button_click --normal PW_POE"' \ + --field=" Guild Wars 2"!"$PW_GUI_ICON_PATH/gw2.png"!"":"FBTN" '@bash -c "button_click --normal PW_GUILD_WARS_2"' \ + --field=" HoYoPlay"!"$PW_GUI_ICON_PATH/hoyoplay.png"!"":"FBTN" '@bash -c "button_click --normal PW_HO_YO_PLAY"' \ + --field=" EA App (TEST)"!"$PW_GUI_ICON_PATH/eaapp.png"!"":"FBTN" '@bash -c "button_click --normal PW_EAAPP"' \ + --field=" Battle Of Space Raiders"!"$PW_GUI_ICON_PATH/bsr.png"!"":"FBTN" '@bash -c "button_click --normal PW_BSR"' \ + --field=" Black Desert Online (RU)"!"$PW_GUI_ICON_PATH/bdo.png"!"":"FBTN" '@bash -c "button_click --normal PW_BDO"' \ + --field=" Pulse Online"!"$PW_GUI_ICON_PATH/pulseonline.png"!"":"FBTN" '@bash -c "button_click --normal PW_PULSE_ONLINE"' \ + --field=" CatsLauncher (Front Edge)"!"$PW_GUI_ICON_PATH/catslauncher.png"!"":"FBTN" '@bash -c "button_click --normal PW_CATSLAUNCHER"' \ + --field=" Russian Fishing 4"!"$PW_GUI_ICON_PATH/rf4launcher.png"!"":"FBTN" '@bash -c "button_click --normal PW_RUSSIAN_FISHING"' \ + --field=" W3D Hub Launcher"!"$PW_GUI_ICON_PATH/w3dhub.png"!"":"FBTN" '@bash -c "button_click --normal PW_W3D_HUB"' \ + --field=" Anomaly Zone"!"$PW_GUI_ICON_PATH/anomalyzone.png"!"":"FBTN" '@bash -c "button_click --normal PW_ANOMALY_ZONE"' \ 2>/dev/null & - # --field=" Secret World Legends (ENG)"!"$PW_GUI_ICON_PATH/swl.png"!"":"FBTN" '@bash -c "button_click PW_SWL"' - # --field=" Bethesda.net Launcher"!"$PW_GUI_ICON_PATH/bethesda.png"!"":"FBTN" '@bash -c "button_click PW_BETHESDA"' - # --field=" League of Legends"!"$PW_GUI_ICON_PATH/lol.png"!"":"FBTN" '@bash -c "button_click PW_LOL"' + # --field=" Secret World Legends (ENG)"!"$PW_GUI_ICON_PATH/swl.png"!"":"FBTN" '@bash -c "button_click --normal PW_SWL"' + # --field=" Bethesda.net Launcher"!"$PW_GUI_ICON_PATH/bethesda.png"!"":"FBTN" '@bash -c "button_click --normal PW_BETHESDA"' + # --field=" League of Legends"!"$PW_GUI_ICON_PATH/lol.png"!"":"FBTN" '@bash -c "button_click --normal PW_LOL"' export START_FROM_PP_GUI="1" if [[ -z ${TAB_MAIN_MENU} ]] ; then @@ -842,7 +834,6 @@ else --tab="$(gettext "PORTPROTON SETTINGS")"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" 2>/dev/null YAD_STATUS="$?" fi - unset TAB_MAIN_MENU if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi pw_yad_set_form @@ -894,6 +885,7 @@ fi 122) gui_mangohud ;; 124) gui_dgvoodoo2 ;; 126) gui_gamescope ;; + 128) gui_userconf ;; pw_create_prefix_backup) pw_create_prefix_backup ;; gui_credits) gui_credits ;; pw_start_cont_xterm) pw_start_cont_xterm ;; From f17da8145d8436c309490c4238f2efc3e7fab8f1 Mon Sep 17 00:00:00 2001 From: Htylol Date: Wed, 11 Sep 2024 19:02:20 +0500 Subject: [PATCH 03/17] SKIP_CHECK_UPDATES=1 is exported once --- data_from_portwine/scripts/functions_helper | 30 +++------------------ data_from_portwine/scripts/start.sh | 3 ++- 2 files changed, 6 insertions(+), 27 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 5d0cb834..c63589e3 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -685,7 +685,7 @@ pw_reinstall_pp () { try_remove_file "${PORT_WINE_TMP_PATH}/scripts_ver" echo print_info "Restarting PP for reinstall files..." - export SKIP_CHECK_UPDATES="0" + unset SKIP_CHECK_UPDATES /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 } @@ -1811,7 +1811,6 @@ pw_find_exe () { YAD_STATUS="$?" if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then if [[ -z "${PW_SET_FIND_EXE}" ]] ; then - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & print_info "Restarting..." fi @@ -1822,7 +1821,6 @@ pw_find_exe () { if [[ ! -z "${PW_SET_FIND_EXE}" ]] ; then portwine_exe="${PW_PATH_FOR_FIND}$(echo "${PW_SET_FIND_EXE}" | awk -F'|' '{print $1}')" portwine_create_shortcut silent - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi @@ -3418,7 +3416,6 @@ open_changelog () { else export TAB_MAIN_MENU="5" fi - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & print_info "Restarting..." exit 0 @@ -3554,7 +3551,6 @@ gui_proton_downloader () { if [[ -z "${PROTON_PW_GIT}" ]] ; then yad_error "$(gettext "Error: check wine.")" - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi @@ -3633,7 +3629,6 @@ gui_proton_downloader () { --button="$(gettext "OK")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"":0 2>/dev/null YAD_WINE_STATUS="$?" if [[ "$YAD_WINE_STATUS" == "1" || "$YAD_WINE_STATUS" == "252" ]] ; then - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi @@ -3648,7 +3643,6 @@ gui_proton_downloader () { && [[ -z "${VERSION_INSTALLED_WINE}" ]] then print_info "Nothing to do." - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi @@ -3692,7 +3686,6 @@ gui_proton_downloader () { try_remove_dir "${PORT_WINE_PATH}/data/dist/${REMOVE_WINE}" done if [[ -z "${VERSION_WINE_GIT}" ]] ; then - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi @@ -3708,7 +3701,6 @@ gui_proton_downloader () { done pw_download_get_wine done - export SKIP_CHECK_UPDATES="1" edit_db_from_gui /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 @@ -3896,7 +3888,6 @@ A brief instruction: --button="$(gettext "OPEN THE SETTINGS FILE")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Open the .ppdb settings file in a system text editor to view and change variables manually")":150 \ --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":0 2>/dev/null YAD_STATUS="$?" - export SKIP_CHECK_UPDATES="1" case "$YAD_STATUS" in 1|252) @@ -4072,7 +4063,6 @@ fi --button="$(gettext "DISABLE") VKBASALT"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Disable vkBasalt and go to the previous menu")":180 \ --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":182 2>/dev/null YAD_VKBASALT_STATUS="$?" - export SKIP_CHECK_UPDATES="1" case "${YAD_VKBASALT_STATUS}" in 1|252) @@ -4241,7 +4231,6 @@ fi --button="$(gettext "DISABLE") MANGOHUD"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Disable MangoHud and go to the previous menu")":182 \ --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":186 2>/dev/null YAD_MANGOHUD_STATUS="$?" - export SKIP_CHECK_UPDATES="1" case "${YAD_MANGOHUD_STATUS}" in 1|252) @@ -4446,7 +4435,6 @@ fi --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":166 \ 2>/dev/null YAD_DGV2_STATUS="$?" - export SKIP_CHECK_UPDATES="1" case "${YAD_DGV2_STATUS}" in 1|252) @@ -4645,7 +4633,6 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate." --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":166 \ 2>/dev/null YAD_GAMESCOPE_STATUS="$?" - export SKIP_CHECK_UPDATES="1" case "${YAD_GAMESCOPE_STATUS}" in 1|252) @@ -4775,7 +4762,6 @@ gui_userconf () { --button="$(gettext "SAVE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Save the current changes, and go to the previous menu")":166 \ 2>/dev/null YAD_USERCONF_STATUS="$?" - export SKIP_CHECK_UPDATES="1" case "$YAD_USERCONF_STATUS" in 1|252) @@ -4986,7 +4972,6 @@ portwine_create_shortcut () { if [[ "$PW_NO_RESTART_PPDB" != "1" ]] ; then print_info "Restarting PP..." unset PW_YAD_FORM_TAB - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi @@ -5436,7 +5421,7 @@ pw_create_prefix_backup () { --button="$(gettext "CANCEL")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":1 \ --button="$(gettext "OK")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 2>/dev/null) YAD_STATUS="$?" - export SKIP_CHECK_UPDATES="1" + if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 @@ -5527,7 +5512,6 @@ run_desktop_b_click () { print_info "Restarting PP after choose desktop file..." # stop_portwine - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c "${PW_EXEC_FROM_DESKTOP}" & exit 0 } @@ -5542,7 +5526,6 @@ gui_clear_pfx () { if yad_question "$(gettext "Do you want to clear prefix in PortProton?")" ; then pw_clear_pfx print_info "Restarting PP after clearing prefix..." - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi @@ -5569,7 +5552,7 @@ gui_pw_update () { fi try_remove_file "${PORT_WINE_TMP_PATH}/scripts_update_notifier" print_info "Restarting PP for check update..." - export SKIP_CHECK_UPDATES="0" + unset SKIP_CHECK_UPDATES /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 } @@ -5583,7 +5566,6 @@ change_loc () { fi try_remove_file "${PORT_WINE_TMP_PATH}/PortProton_loc" print_info "Restarting PP for change language..." - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 } @@ -5600,7 +5582,6 @@ change_mirror () { "$(gettext "Mirror changed to:")" "https://cloud.linux-gaming.ru" fi print_info "Restarting PP for change mirror..." - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & exit 0 } @@ -5634,7 +5615,6 @@ change_download_grid () { "$(gettext "Cover downloads are enabled")" fi print_info "Restarting PP for change cover download behavior..." - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & exit 0 } @@ -5651,7 +5631,6 @@ change_gui_start () { "$(gettext "Gui start changed to:")" "NOTEBOOK" fi print_info "Restarting PP for change gui start..." - export SKIP_CHECK_UPDATES="1" /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & exit 0 } @@ -5671,7 +5650,6 @@ gui_open_user_conf () { --button="$(gettext "SAVE")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"":2 \ --filename="${PORT_WINE_PATH}/data/user.conf" 2>/dev/null)" YAD_STATUS="$?" - export SKIP_CHECK_UPDATES="1" case "${YAD_STATUS}" in 1|252) @@ -5721,7 +5699,7 @@ gui_open_scripts_from_backup () { PW_SCRIPT_FROM_BACKUP=$("${pw_yad}" --file --width=650 --height=500 \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --title "SCRIPTS FROM BACKUP" --file-filter="backup_scripts|scripts_v*.tar.gz" 2>/dev/null ) YAD_STATUS="$?" - export SKIP_CHECK_UPDATES="1" + if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index 8ed796c4..e95e0065 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -403,6 +403,8 @@ if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then fi fi +export SKIP_CHECK_UPDATES="1" + [[ "$MISSING_DESKTOP_FILE" == 1 ]] && portwine_missing_shortcut if [[ ! -z $(basename "${portwine_exe}" | grep .ppack) ]] ; then @@ -659,7 +661,6 @@ if [[ -f "${portwine_exe}" ]] ; then unset PW_YAD_FORM_TAB fi unset PW_NO_RESTART_PPDB PW_DISABLED_CREATE_DB KEY_START portwine_exe - export SKIP_CHECK_UPDATES=1 /usr/bin/env bash -c ${pw_full_command_line[*]} & print_info "Restarting..." exit 0 From 03f374df193ca8710c836cfa33887712396b5007 Mon Sep 17 00:00:00 2001 From: Htylol Date: Wed, 11 Sep 2024 19:14:34 +0500 Subject: [PATCH 04/17] Use case for TAB_MAIN_MENU --- data_from_portwine/scripts/functions_helper | 59 +-------------------- data_from_portwine/scripts/start.sh | 23 +++++++- 2 files changed, 24 insertions(+), 58 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index c63589e3..a9ccb12d 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -661,11 +661,6 @@ pw_clear_pfx () { } pw_reinstall_pp () { - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi if [[ "${PW_REINSTALL_FROM_TERMINAL}" == 1 ]] ; then read -p "Do you want to reinstall PortProton? (Y,y - Yes): " -n 1 -r if [[ ! $REPLY =~ ^[Yy]$ ]] @@ -3410,12 +3405,8 @@ open_changelog () { --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ --filename="${PORT_WINE_PATH}/data/${PW_CHANGELOG_FILE}" &>/dev/null YAD_STATUS="$?" + if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] && [[ -z "$WINEPREFIX" ]] ; then - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi /usr/bin/env bash -c ${pw_full_command_line[*]} & print_info "Restarting..." exit 0 @@ -3476,11 +3467,6 @@ pw_tray_icon () { # GUI GET OTHER WINE gui_proton_downloader () { - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="3" - else - export TAB_MAIN_MENU="4" - fi unset VERSION_WINE_GIT VERSION_INSTALLED_WINE URL_VERSION_PROTON_GIT GIVE_WINE_URL try_remove_file "${PW_TMPFS_PATH}/tmp_proton_pw_git" try_remove_file "${PW_TMPFS_PATH}/tmp_wine_kron4ek_git" @@ -4693,12 +4679,6 @@ gui_userconf () { if [[ -f "${portwine_exe}" ]] ; then export PW_YAD_FORM_TAB="1" export TAB_START="2" - else - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi fi if [[ "$MIRROR" == "CLOUD" ]] @@ -4754,7 +4734,7 @@ gui_userconf () { 1> "${PW_TMPFS_PATH}/tmp_yad_userconf_set_cb" 2>/dev/null & "${pw_yad}" --key=$KEY_USERCONF_GUI --paned \ - --title="$(gettext "SETTINGS USER CONFIG")" \ + --title="$(gettext "SETTINGS USER.CONF")" \ --separator=" " --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ --gui-type="settings-paned" \ --button="$(gettext "CANCEL THE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Cancel the current changes and return to the previous menu")":1 \ @@ -5094,11 +5074,6 @@ portwine_missing_shortcut () { # GUI WINETRICKS | GUI PREFIX MANAGER pw_prefix_manager () { - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="3" - else - export TAB_MAIN_MENU="4" - fi update_winetricks start_portwine if [ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" ] ; then @@ -5410,11 +5385,6 @@ portwine_start_debug () { } pw_create_prefix_backup () { - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="3" - else - export TAB_MAIN_MENU="4" - fi cd "$HOME" PW_PREFIX_TO_BACKUP=$("${pw_yad}" --file --directory --width=800 --height=500 \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --title "$(gettext "BACKUP PREFIX TO...")" \ @@ -5518,11 +5488,6 @@ run_desktop_b_click () { export -f run_desktop_b_click gui_clear_pfx () { - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="3" - else - export TAB_MAIN_MENU="4" - fi if yad_question "$(gettext "Do you want to clear prefix in PortProton?")" ; then pw_clear_pfx print_info "Restarting PP after clearing prefix..." @@ -5545,11 +5510,6 @@ gui_rm_portproton () { export -f gui_rm_portproton gui_pw_update () { - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi try_remove_file "${PORT_WINE_TMP_PATH}/scripts_update_notifier" print_info "Restarting PP for check update..." unset SKIP_CHECK_UPDATES @@ -5559,11 +5519,6 @@ gui_pw_update () { export -f gui_pw_update change_loc () { - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi try_remove_file "${PORT_WINE_TMP_PATH}/PortProton_loc" print_info "Restarting PP for change language..." /usr/bin/env bash -c ${pw_full_command_line[*]} & @@ -5690,11 +5645,6 @@ gui_edit_db_file () { } gui_open_scripts_from_backup () { - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi cd "${PORT_WINE_TMP_PATH}/scripts_backup/" || fatal PW_SCRIPT_FROM_BACKUP=$("${pw_yad}" --file --width=650 --height=500 \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --title "SCRIPTS FROM BACKUP" --file-filter="backup_scripts|scripts_v*.tar.gz" 2>/dev/null ) @@ -5714,11 +5664,6 @@ export -f gui_open_scripts_from_backup #GUI CREDITS AND ABOUT gui_credits () { - if [[ -z "${PW_ALL_DF}" ]] ; then - export TAB_MAIN_MENU="4" - else - export TAB_MAIN_MENU="5" - fi ######################################################################## # grep ';subscription;' stat-subscriptions.csv | awk -F';' '{print $1}' | sort -u | sed "s/\"//g" > thanks ######################################################################## diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index e95e0065..f11565ee 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -857,7 +857,28 @@ if [[ -f "${PORTWINE_DB_FILE}" ]] ; then edit_db_from_gui PW_VULKAN_USE PW_WINE_USE PW_PREFIX_NAME fi -[[ ! -z "$PW_YAD_SET" ]] && case "$PW_YAD_SET" in +[[ -n "$PW_YAD_SET" ]] && case "$PW_YAD_SET" in + gui_pw_reinstall_pp|open_changelog|\ + 128|gui_pw_update|\ + change_loc|gui_open_scripts_from_backup|\ + gui_credits) + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="4" + else + export TAB_MAIN_MENU="5" + fi + ;; + gui_proton_downloader|WINETRICKS|\ + 116|pw_create_prefix_backup|\ + gui_clear_pfx) + if [[ -z "${PW_ALL_DF}" ]] ; then + export TAB_MAIN_MENU="3" + else + export TAB_MAIN_MENU="4" + fi +esac + +[[ -n "$PW_YAD_SET" ]] && case "$PW_YAD_SET" in 98) portwine_delete_shortcut ;; 100) portwine_create_shortcut ;; DEBUG|102) portwine_start_debug ;; From 6d750ef870347fd896fc5cd353543d0c1feebcac Mon Sep 17 00:00:00 2001 From: Htylol Date: Wed, 11 Sep 2024 19:34:38 +0500 Subject: [PATCH 05/17] Fixes for gamescope in automode --- data_from_portwine/scripts/functions_helper | 55 +++++++++------------ data_from_portwine/scripts/start.sh | 4 +- data_from_portwine/scripts/var | 1 - 3 files changed, 25 insertions(+), 35 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index a9ccb12d..13ed2562 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -2041,7 +2041,7 @@ start_portwine () { fi if [[ "${PW_VULKAN_NO_ASYNC}" == 1 ]] ; then - export RADV_DEBUG="llvm" + export RADV_DEBUG+="llvm " var_vkd3d_config_update single_queue fi @@ -2331,15 +2331,6 @@ start_portwine () { export PW_VKBASALT="0" export PW_MANGOHUD="0" export PW_WINE_FULLSCREEN_FSR="0" - if echo "$LSPCI_VGA" | grep -i "AMD" &>/dev/null \ - && ! check_wayland_session - then - if check_gamescope_session \ - || [[ "${PW_GAMESCOPE}" = "1" ]] - then - export AMD_DEBUG="nodcc" - fi - fi ;; 4) # GALLIUM ZINK @@ -2893,8 +2884,23 @@ start_portwine () { fi # GAMESCOPE enable: - if [[ "${PW_GAMESCOPE}" == 1 ]] \ - && [[ "${GAMESCOPE_INSTALLED}" == 1 ]] \ + if [[ "${PW_GAMESCOPE}" == "1" && "${GAMESCOPE_INSTALLED}" == "1" ]] \ + || check_gamescope_session + then + export vk_xwayland_wait_ready="false" + if [[ -d /sys/bus/pci/drivers/amdgpu ]] ; then + export RADV_DEBUG+="nodcc " + export AMD_DEBUG="nodcc" + if [[ ! "$(cat "${PW_TMPFS_PATH}/vulkaninfo.tmp" | grep -i VK_EXT_image_drm_format_modifier)" ]] ; then + export R600_DEBUG="nodcc" + grep -e '--backend' "${PW_TMPFS_PATH}/gamescope.tmp" &>/dev/null && PW_GS_BACKEND_SDL="1" + fi + fi + if [[ -d /sys/bus/pci/drivers/i915 ]] ; then + export INTEL_DEBUG="norbc" + fi + fi + if [[ "${PW_GAMESCOPE}" == "1" && "${GAMESCOPE_INSTALLED}" == "1" ]] \ && ! check_gamescope_session then if [[ "${PW_GPU_USE}" != "disabled" ]] ; then @@ -2904,11 +2910,9 @@ start_portwine () { else PW_ID_VIDEO="" fi - if ! check_wayland_session ; then - export vk_xwayland_wait_ready="false" - fi + #checkbox - local PW_GAMESCOPE_ARGS_NEW="" + PW_GAMESCOPE_ARGS_NEW="" [[ "${PW_GS_FULLSCREEN}" == "1" ]] && PW_GAMESCOPE_ARGS_NEW+=" -f" [[ "${PW_GS_FORCE_FULLSCREEN}" == "1" ]] && PW_GAMESCOPE_ARGS_NEW+=" --force-windows-fullscreen" [[ "${PW_GS_BORDERLESS_WINDOW}" == "1" ]] && PW_GAMESCOPE_ARGS_NEW+=" -b" @@ -2931,12 +2935,6 @@ start_portwine () { [[ "${PW_GS_EXPOSE_WAYLAND}" == "1" ]] && PW_GAMESCOPE_ARGS_NEW+=" --expose-wayland" [[ "${PW_GS_REALTIME_SCHEDULING}" == "1" ]] && PW_GAMESCOPE_ARGS_NEW+=" --rt" - if [[ "${PW_GS_FIX_AMD_AND_INTEL}" == "1" ]] ; then - export RADV_DEBUG="nodcc" - export R600_DEBUG="nodcc" - export INTEL_DEBUG="norbc" - fi - if [[ "${PW_GS_MANGOAPP}" == "1" ]] ; then PW_GAMESCOPE_ARGS_NEW+=" --mangoapp" export PW_MANGOHUD="0" @@ -4482,18 +4480,12 @@ gui_gamescope () { PW_GS_LIST="PW_GS_FULLSCREEN PW_GS_FORCE_FULLSCREEN PW_GS_BORDERLESS_WINDOW PW_GS_FORCE_GRAB_CURSOR PW_GS_FORCE_GRAB_KEYBOARD PW_GS_HDR_ENABLE PW_GS_ENABLE_GAMESCOPE_WSI PW_GS_HDR_ITM_ENABLE PW_GS_SDR_GAMMUT_WIDENESS PW_GS_FORCE_COMPOSITION PW_GS_HDR_FORCE_SUPPORT PW_GS_HDR_FORCE_OUTPUT PW_GS_HDR_FORCE_HEATMAP - PW_GS_EXPOSE_WAYLAND PW_GS_REALTIME_SCHEDULING PW_GS_FIX_AMD_AND_INTEL + PW_GS_EXPOSE_WAYLAND PW_GS_REALTIME_SCHEDULING " grep -e '--mangoapp' "${PW_TMPFS_PATH}/gamescope.tmp" &>/dev/null && add_to_var PW_GS_LIST "PW_GS_MANGOAPP" - - if check_wayland_session ; then - grep -e '--backend' "${PW_TMPFS_PATH}/gamescope.tmp" &>/dev/null \ - && add_to_var PW_GS_LIST "PW_GS_BACKEND_SDL" && add_to_var PW_GS_LIST "PW_GS_SDL_VIDEODRIVER_X11" - else - export PW_GS_BACKEND_SDL="0" - export PW_GS_SDL_VIDEODRIVER_X11="0" - fi + grep -e '--backend' "${PW_TMPFS_PATH}/gamescope.tmp" &>/dev/null \ + && add_to_var PW_GS_LIST "PW_GS_BACKEND_SDL" && add_to_var PW_GS_LIST "PW_GS_SDL_VIDEODRIVER_X11" GS_FILTER_CB="linear!nearest!fsr!nis!pixel" #debian bookworm fix @@ -4527,7 +4519,6 @@ if [[ "${SKIP_GAMESCOPE_TEXT_INFO}" != "1" ]] ; then export PW_GS_MANGOAPP_INFO=$(gettext 'Launch with the mangoapp (mangohud) performance overlay enabled. You should use this instead of using mangohud on the game or gamescope.') export PW_GS_BACKEND_SDL_INFO=$(gettext 'Use sdl backend. (by default wayland backend is used).') export PW_GS_SDL_VIDEODRIVER_X11_INFO=$(gettext 'Force use sdl videodriver x11, works with BACKEND SDL. (Default is wayland)') - export PW_GS_FIX_AMD_AND_INTEL_INFO=$(gettext 'Fixes artifacts on AMD and Intel video cards. (Use only when necessary).') export SKIP_GAMESCOPE_TEXT_INFO="1" fi diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index f11565ee..bce360e8 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -98,7 +98,7 @@ unset CHK_SYMLINK_FILE PW_MESA_GL_VERSION_OVERRIDE PW_VKD3D_FEATURE_LEVEL PATH_T unset PW_PREFIX_NAME WINEPREFIX VULKAN_MOD PW_WINE_VER PW_ADD_TO_ARGS_IN_RUNTIME PW_GAMEMODERUN_SLR AMD_VULKAN_ICD PW_WINE_CPU_TOPOLOGY unset PW_NAME_D_NAME PW_NAME_D_ICON PW_NAME_D_EXEC PW_EXEC_FROM_DESKTOP PW_ALL_DF PW_GENERATE_BUTTONS PW_NAME_D_ICON PW_NAME_D_ICON_48 unset MANGOHUD_CONFIG FPS_LIMIT PW_WINE_USE WINEDLLPATH WINE WINEDIR WINELOADER WINESERVER PW_USE_RUNTIME PORTWINE_CREATE_SHORTCUT_NAME MIRROR -unset PW_LOCALE_SELECT PW_SETTINGS_INDICATION PW_GUI_START PW_AUTOINSTALL_EXE NOSTSTDIR +unset PW_LOCALE_SELECT PW_SETTINGS_INDICATION PW_GUI_START PW_AUTOINSTALL_EXE NOSTSTDIR RADV_DEBUG export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp" rm -f "$PORT_WINE_TMP_PATH"/*{exe,msi,tar}* @@ -258,7 +258,7 @@ if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then fi if command -v vulkaninfo &>/dev/null ; then - if timeout 3 vulkaninfo --summary &> "${PW_TMPFS_PATH}/vulkaninfo.tmp" ; then + if timeout 3 vulkaninfo &> "${PW_TMPFS_PATH}/vulkaninfo.tmp" ; then VULKAN_DRIVER_NAME="$(grep -e 'driverName' "${PW_TMPFS_PATH}/vulkaninfo.tmp" | awk '{print$3}' | head -1)" GET_GPU_NAMES=$(awk -F '=' '/deviceName/{print $2}' "${PW_TMPFS_PATH}/vulkaninfo.tmp" | sed '/llvm/d'| sort -u | sed 's/^ //' | paste -sd '!') export VULKAN_DRIVER_NAME GET_GPU_NAMES diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index dc2490ad..8880c96e 100755 --- a/data_from_portwine/scripts/var +++ b/data_from_portwine/scripts/var @@ -125,7 +125,6 @@ export PW_GS_HDR_FORCE_OUTPUT="0" export PW_GS_HDR_FORCE_HEATMAP="0" export PW_GS_EXPOSE_WAYLAND="0" export PW_GS_REALTIME_SCHEDULING="0" -export PW_GS_FIX_AMD_AND_INTEL="0" export PW_GS_BACKEND_SDL="0" export PW_GS_SDL_VIDEODRIVER_X11="0" export PW_GS_MANGOAPP="0" From 890af9424d74b0fa45648b67cd03297ca5a6ccbf Mon Sep 17 00:00:00 2001 From: Htylol Date: Wed, 11 Sep 2024 19:37:56 +0500 Subject: [PATCH 06/17] Restarting PP when you press cancel when creating shortcuts --- data_from_portwine/scripts/functions_helper | 11 ++++++++++- data_from_portwine/scripts/start.sh | 4 ++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 13ed2562..5835f6f9 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -4942,10 +4942,19 @@ portwine_create_shortcut () { if [[ "$PW_NO_RESTART_PPDB" != "1" ]] ; then print_info "Restarting PP..." - unset PW_YAD_FORM_TAB + if [[ "${PW_GUI_START}" == "NOTEBOOK" ]] ; then + unset PW_YAD_FORM_TAB + fi /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi + elif [[ "$PW_YAD_OUT" == "2" ]] ; then + print_info "Restarting PP..." + if [[ "${PW_GUI_START}" == "NOTEBOOK" ]] ; then + unset PW_YAD_FORM_TAB + fi + /usr/bin/env bash -c ${pw_full_command_line[*]} & + exit 0 fi } diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index bce360e8..b206ccb7 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -601,7 +601,7 @@ if [[ -f "${portwine_exe}" ]] ; then 2>/dev/null & if [[ "${PW_YAD_FORM_TAB}" == "1" ]] \ - && [[ ! -z "${TAB_START}" ]] + && [[ -n "${TAB_START}" ]] then export TAB_START="2" unset PW_YAD_FORM_TAB @@ -655,7 +655,7 @@ if [[ -f "${portwine_exe}" ]] ; then --button="$(gettext "LAUNCH")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Run file ...")":106 2>/dev/null PW_YAD_SET="$?" fi - [[ ! -z "$PW_YAD_SET" ]] && case "$PW_YAD_SET" in + [[ -n "$PW_YAD_SET" ]] && case "$PW_YAD_SET" in 128) if [[ "${PW_GUI_START}" == "NOTEBOOK" ]] ; then unset PW_YAD_FORM_TAB From 4c22d32b7557f39e1ca833ac8d509fbbf7cb9e9a Mon Sep 17 00:00:00 2001 From: Htylol Date: Wed, 11 Sep 2024 19:57:18 +0500 Subject: [PATCH 07/17] Added automatic detection of gamescope version for flatpak, update locales --- data_from_portwine/locales/PortProton.pot | 130 +++++++----- .../locales/es/LC_MESSAGES/PortProton.mo | Bin 64074 -> 66243 bytes .../locales/es/LC_MESSAGES/PortProton.po | 190 ++++++++++-------- .../locales/ru/LC_MESSAGES/PortProton.mo | Bin 90859 -> 91323 bytes .../locales/ru/LC_MESSAGES/PortProton.po | 150 ++++++++------ data_from_portwine/scripts/functions_helper | 6 +- 6 files changed, 268 insertions(+), 208 deletions(-) mode change 100755 => 100644 data_from_portwine/locales/es/LC_MESSAGES/PortProton.po diff --git a/data_from_portwine/locales/PortProton.pot b/data_from_portwine/locales/PortProton.pot index c21b66b5..f8a58fe1 100644 --- a/data_from_portwine/locales/PortProton.pot +++ b/data_from_portwine/locales/PortProton.pot @@ -7,7 +7,7 @@ msgid "" msgstr "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2024-09-04 13:16+0300\n" + "POT-Creation-Date: 2024-09-11 19:56+0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -68,6 +68,12 @@ msgstr "" msgid "Edit database file for" msgstr "" +msgid "Settings user.conf" +msgstr "" + +msgid "Settings for user.conf" +msgstr "" + msgid "Enable vkBasalt by default to improve graphics in games running on " "Vulkan. (The HOME hotkey disables vkbasalt)" msgstr "" @@ -107,12 +113,6 @@ msgstr "" msgid "Run file ..." msgstr "" -msgid "Disable" -msgstr "" - -msgid "Enable" -msgstr "" - msgid "Create shortcut..." msgstr "" @@ -131,27 +131,12 @@ msgstr "" msgid "Change language" msgstr "" -msgid "Edit user.conf" -msgstr "" - msgid "Scripts from backup" msgstr "" msgid "Credits" msgstr "" -msgid "Change mirror to" -msgstr "" - -msgid "Change branch to" -msgstr "" - -msgid "Change start gui" -msgstr "" - -msgid "steam covers download" -msgstr "" - msgid "Create prefix backup" msgstr "" @@ -357,6 +342,15 @@ msgstr "" msgid "CHANGELOG" msgstr "" +msgid "WINEFILE" +msgstr "" + +msgid "TASKMGR" +msgstr "" + +msgid "FORCE EXIT" +msgstr "" + msgid "Check new version WINE..." msgstr "" @@ -567,13 +561,6 @@ msgid "Limiting the number of CPU cores is useful for Unity games (It is " "recommended to set the value equal to 8)" msgstr "" -msgid "Choose a graphics card to run the game (in user.conf)" -msgstr "" - -msgid "Select which video card will be used to run the game (used for all " - "running games and programs in PortProton)" -msgstr "" - msgid "Forcibly select the OpenGL version for the game" msgstr "" @@ -594,12 +581,6 @@ msgstr "" msgid "Fixes encoding issues in legacy software" msgstr "" -msgid "Choice wine audio driver" -msgstr "" - -msgid "Fixes sound popling if choice alsa" -msgstr "" - msgid "EDIT DB" msgstr "" @@ -827,6 +808,12 @@ msgid "AMD FidelityFX - CAS is designed to dramatically improve texture " "set value = 100)" msgstr "" +msgid "RESET" +msgstr "" + +msgid "Restore default settings for" +msgstr "" + msgid "DISABLE" msgstr "" @@ -965,9 +952,10 @@ msgstr "" msgid "Show temperature in Fahrenheit" msgstr "" -msgid "Show if GPU is throttling based on Power, current, temp or \"other" - "\" (Only shows if throttling is currently happening). Currently " - "disabled by default for Nvidia as it causes lag on 3000 series" +msgid "Show if GPU is throttling based on Power, current, temp or " + "\"other\" (Only shows if throttling is currently happening). " + "Currently disabled by default for Nvidia as it causes lag on 3000 " + "series" msgstr "" msgid "Same as throttling_status but displays throttling in the frametime " @@ -1004,15 +992,15 @@ msgid "Enabling fps limitation with MANGOHUD tools built into PortProton " "(Keys L_SHIFT + F1 Toggles fps limitation)" msgstr "" -msgid "Disable MangoHud and go to the previous menu" -msgstr "" - msgid "PREVIEW CHANGES" msgstr "" msgid "Start vkcube for preview changes" msgstr "" +msgid "Disable MangoHud and go to the previous menu" +msgstr "" + msgid "Use DirectX12 for dgVoodoo2. Doesnt always work better. (Working " "only on newest and stable dxvk/vkd3d) (Direct3D and Glide settings)" msgstr "" @@ -1181,12 +1169,6 @@ msgid "Integer scale factor of the emulated hardware mouse cursor. 0: " "Glide settings)" msgstr "" -msgid "RESET" -msgstr "" - -msgid "Restore default settings for" -msgstr "" - msgid "Disable dgVoodoo2 and go to the previous menu" msgstr "" @@ -1255,17 +1237,14 @@ msgid "Force use sdl videodriver x11, works with BACKEND SDL. (Default is " "wayland)" msgstr "" -msgid "Fixes artifacts on AMD and Intel video cards. (Use only when " - "necessary)." -msgstr "" - msgid "Change settings gamescope for" msgstr "" +#, sh-format msgid "Gamescope is not detected on the system, to install it, run the " "command in the terminal:\\n flatpak install -y runtime/org." - "freedesktop.Platform.VulkanLayer.gamescope/x86_64/23.08\\n (Can be " - "selected and copied)" + "freedesktop.Platform.VulkanLayer.gamescope/x86_64/" + "${GAMESCOPE_VERSION}\\n (Can be selected and copied)" msgstr "" msgid "Gamescope is not detected on the system, please contact the " @@ -1362,6 +1341,44 @@ msgstr "" msgid "Disable GameScope and go to the previous menu" msgstr "" +msgid "Disable" +msgstr "" + +msgid "Enable" +msgstr "" + +msgid "Change mirror to" +msgstr "" + +msgid "Change branch to" +msgstr "" + +msgid "Change start gui to" +msgstr "" + +msgid "steam covers download" +msgstr "" + +msgid "Choose a graphics card to run the game" +msgstr "" + +msgid "Select which video card will be used to run the game (used for all " + "running games and programs in PortProton)" +msgstr "" + +msgid "Choice wine audio driver" +msgstr "" + +msgid "Fixes sound popling if choice alsa" +msgstr "" + +msgid "SETTINGS USER.CONF" +msgstr "" + +msgid "Open the user.conf settings file in a system text editor to " + "view and change variables manually" +msgstr "" + msgid "The shortcut will be created in the PortProton directory." msgstr "" @@ -1486,6 +1503,9 @@ msgstr "" msgid "EDIT USER CONFIG" msgstr "" +msgid "BACK" +msgstr "" + msgid "SAVE" msgstr "" @@ -1515,8 +1535,8 @@ msgid "MIT License\n" "\n" "Permission is hereby granted, free of charge, to any person " "obtaining a copy\n" - "of this software and associated documentation files (the \"Software" - "\"), to deal\n" + "of this software and associated documentation files (the " + "\"Software\"), to deal\n" "in the Software without restriction, including without limitation " "the rights\n" "to use, copy, modify, merge, publish, distribute, sublicense, and/or " diff --git a/data_from_portwine/locales/es/LC_MESSAGES/PortProton.mo b/data_from_portwine/locales/es/LC_MESSAGES/PortProton.mo index c388a15504b09604900ef70b4faaab0e7c244514..3f2e0817e45caa386940a8d94bcf0a07a3e83b12 100644 GIT binary patch delta 11171 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 RcuA-d58n{3z&h-z{tGia-Dv;- delta 9302 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 iZ`^jVXaDlOk#WnpzL9f3&aFX(weF@L_SHIFT + F1 Activa la limitación de fps)" -msgid "Disable MangoHud and go to the previous menu" -msgstr "Desactivar MangoHud y volver al menú anterior" - msgid "PREVIEW CHANGES" msgstr "VISTA PREVIA" msgid "Start vkcube for preview changes" msgstr "Iniciar vkcube para previsualizar los cambios" +msgid "Disable MangoHud and go to the previous menu" +msgstr "Desactivar MangoHud y volver al menú anterior" + msgid "" "Use DirectX12 for dgVoodoo2. Doesnt always work better. (Working only on " "newest and stable dxvk/vkd3d) (Direct3D and Glide settings)" @@ -1529,13 +1513,6 @@ msgstr "" "calculado a partir de la aplicación y resolución forzada. (Configuraciones " "de Direct3D y Glide)" -msgid "RESET" -msgstr "RESET" - -msgid "Restore default settings for" -msgstr "" -"Restore default settings for (Restaurar configuraciones predeterminadas para)" - msgid "Disable dgVoodoo2 and go to the previous menu" msgstr "" "Disable dgVoodoo2 and go to the previous menu (Deshabilitar dgVoodoo2 y " @@ -1638,24 +1615,20 @@ msgstr "" "Forzar el uso del controlador de video SDL x11, funciona con el backend SDL. " "(Por defecto es Wayland)." -msgid "" -"Fixes artifacts on AMD and Intel video cards. (Use only when necessary)." -msgstr "" -"Corrige artefactos en tarjetas de video AMD e Intel. (Usar solo cuando sea " -"necesario)." - msgid "Change settings gamescope for" msgstr "Cambiar ajustes gamescope para" +#, sh-format msgid "" "Gamescope is not detected on the system, to install it, run the command " "in the terminal:\\n flatpak install -y runtime/org.freedesktop.Platform." -"VulkanLayer.gamescope/x86_64/23.08\\n (Can be selected and copied)" +"VulkanLayer.gamescope/x86_64/${GAMESCOPE_VERSION}\\n (Can be selected and " +"copied)" msgstr "" " Gamescope no se detecta en el sistema, para instalarlo, ejecute el " "comando en el terminal:\\n flatpak install -y runtime/org.freedesktop." -"Platform.VulkanLayer.gamescope/x86_64/23.08\\n (Se puede seleccionar y " -"copiar)." +"Platform.VulkanLayer.gamescope/x86_64/${GAMESCOPE_VERSION}\\n (Se puede " +"seleccionar y copiar)." msgid "" "Gamescope is not detected on the system, please contact the manufacturer " @@ -1783,6 +1756,50 @@ msgstr "" msgid "Disable GameScope and go to the previous menu" msgstr "Desactivar GameScope e ir al menú anterior" +msgid "Disable" +msgstr "Desactivar" + +msgid "Enable" +msgstr "Permitir" + +msgid "Change mirror to" +msgstr "Cambiar el espejo a" + +msgid "Change branch to" +msgstr "Cambiar rama a" + +msgid "Change start gui to" +msgstr "Cambiar la interfaz gráfica de inicio a" + +msgid "steam covers download" +msgstr "descargar portadas de steam" + +msgid "Choose a graphics card to run the game" +msgstr "Elige una tarjeta gráfica para ejecutar el juego" + +msgid "" +"Select which video card will be used to run the game (used for all running " +"games and programs in PortProton)" +msgstr "" +"Selecciona qué tarjeta de vídeo se utilizará para ejecutar el juego (se " +"utiliza para todos los juegos y programas en ejecución en PortProton)" + +msgid "Choice wine audio driver" +msgstr "Controlador de audio de vino elegido" + +msgid "Fixes sound popling if choice alsa" +msgstr "Corrige el sonido estallido de elección alsa alsa" + +msgid "SETTINGS USER.CONF" +msgstr "AJUSTES USUARIO.CONF" + +msgid "" +"Open the user.conf settings file in a system text editor to view and " +"change variables manually" +msgstr "" +"Abre el archivo de configuración user.conf en un editor de texto del " +"sistema para ver y cambiar las variables manualmente" + msgid "The shortcut will be created in the PortProton directory." msgstr "El acceso directo se creará en el directorio de PortProton." @@ -1827,10 +1844,10 @@ msgid "using wine:" msgstr "usando vino:" msgid "Libraries" -msgstr "" +msgstr "Bibliotecas" msgid "Information" -msgstr "" +msgstr "Información" msgid "Select fonts to install in prefix:" msgstr "Seleccionar fuentes para instalar en prefijo:" @@ -1841,19 +1858,17 @@ msgstr "Cambiar la configuración del prefijo:" msgid "PREFIX MANAGER" msgstr "GESTOR DE PREFIJOS" -#, fuzzy msgid "FORCE INSTALL" -msgstr "SALIDA FORZADA" +msgstr "INSTALACIÓN FORZADA" msgid "Installation with forced redownload of libraries" -msgstr "" +msgstr "Instalación con recarga forzada de bibliotecas." -#, fuzzy msgid "INSTALL" -msgstr "INSTALADO" +msgstr "INSTALAR" msgid "Standard installation." -msgstr "" +msgstr "Instalación estándar." msgid "DLLS" msgstr "DLLS" @@ -1862,12 +1877,11 @@ msgid "FONTS" msgstr "FUENTES" msgid "Attention working version of vulkan not detected!" -msgstr "" +msgstr "¡Atención, no se detectó la versión funcional de vulkan!" -#, fuzzy msgid "It is recommended to run games in OpenGL (low performance possible)!" msgstr "" -"Se recomienda ejecutar los juegos en\\ OpenGL (bajo rendimiento posible)!" +"¡Se recomienda ejecutar juegos en OpenGL (es posible un rendimiento bajo)!" msgid "" "PortProton was launched in creation mode PortProton.log and it is " @@ -1917,19 +1931,22 @@ msgid "Branch changed to:" msgstr "Rama cambiada a:" msgid "Cover downloads are disabled" -msgstr "" +msgstr "Las descargas de portadas están deshabilitadas." msgid "Cover downloads are enabled" -msgstr "" +msgstr "Las descargas de portadas están habilitadas." msgid "Gui start changed to:" msgstr "Inicio Gui cambiado a:" msgid "EDIT USER CONFIG" -msgstr "" +msgstr "EDITAR CONFIGURACIÓN DE USUARIO" + +msgid "BACK" +msgstr "ATRÁS" msgid "SAVE" -msgstr "" +msgstr "AHORRAR" #, sh-format msgid "" @@ -2026,9 +2043,8 @@ msgstr "" msgid "ABOUT PORTPROTON" msgstr "" -#, fuzzy msgid "AUTORS" -msgstr "EMULADORES" +msgstr "" msgid "LICENSE" msgstr "" @@ -2042,11 +2058,11 @@ msgstr "" msgid "THIRD PARTY LIBRARIES" msgstr "" -#~ msgid "WINEFILE" -#~ msgstr "WINEFILE" - -#~ msgid "TASKMGR" -#~ msgstr "GESTOR DE TAREAS" +#~ msgid "" +#~ "Fixes artifacts on AMD and Intel video cards. (Use only when necessary)." +#~ msgstr "" +#~ "Corrige artefactos en tarjetas de video AMD e Intel. (Usar solo cuando " +#~ "sea necesario)." #, sh-format #~ msgid "Add arguments for GAMESCOPE:" diff --git a/data_from_portwine/locales/ru/LC_MESSAGES/PortProton.mo b/data_from_portwine/locales/ru/LC_MESSAGES/PortProton.mo index 49aa9264698dc9133946773cf1c10eff3c0832c0..295dda4e153e446e26f03caefe67b60cff2c9fdb 100644 GIT binary patch delta 10195 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 MCx?PN8t1+L2Q$qPIRF3v delta 9943 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 && n" -"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n" "X-Generator: Poedit 3.4.4\n" msgid "" @@ -73,6 +73,12 @@ msgstr "Основные настройки" msgid "Edit database file for" msgstr "Редактировать файл настроек для" +msgid "Settings user.conf" +msgstr "Настройки user.conf" + +msgid "Settings for user.conf" +msgstr "Настройки для user.conf" + msgid "" "Enable vkBasalt by default to improve graphics in games running on Vulkan. " "(The HOME hotkey disables vkbasalt)" @@ -121,12 +127,6 @@ msgstr "ЗАПУСТИТЬ" msgid "Run file ..." msgstr "Запустить файл..." -msgid "Disable" -msgstr "Выключить" - -msgid "Enable" -msgstr "Включить" - msgid "Create shortcut..." msgstr "Создать ярлык..." @@ -145,27 +145,12 @@ msgstr "История изменений" msgid "Change language" msgstr "Сменить язык" -msgid "Edit user.conf" -msgstr "Редактировать user.conf" - msgid "Scripts from backup" msgstr "Откатить версию скриптов" msgid "Credits" msgstr "Авторы и благодарности" -msgid "Change mirror to" -msgstr "Сменить зеркало на" - -msgid "Change branch to" -msgstr "Сменить версию на" - -msgid "Change start gui" -msgstr "Изменить интерфейс запуска" - -msgid "steam covers download" -msgstr "скачивание обложек для steam" - msgid "Create prefix backup" msgstr "Создать резервную копию префикса" @@ -393,6 +378,15 @@ msgstr "Пожалуйста, подождите. Устанавливается msgid "CHANGELOG" msgstr "ИЗМЕНЕНИЯ" +msgid "WINEFILE" +msgstr "ФАЙЛОВЫЙ МЕНЕДЖЕР" + +msgid "TASKMGR" +msgstr "ДИСПЕТЧЕР ЗАДАЧ" + +msgid "FORCE EXIT" +msgstr "ПРИНУДИТЕЛЬНЫЙ ВЫХОД" + msgid "Check new version WINE..." msgstr "Проверяем новые версии WINE..." @@ -714,16 +708,6 @@ msgstr "" "Ограничение количества ядер процессора. Полезно, например, для игр на движке " "Unity, для которого рекомендуется установить значение равное 8" -msgid "Choose a graphics card to run the game (in user.conf)" -msgstr "Выбрать видеокарту для запуска игры (в user.conf)" - -msgid "" -"Select which video card will be used to run the game (used for all running " -"games and programs in PortProton)" -msgstr "" -"Выбор видеокарты для запуска игры (используется для всех запущенных игр и " -"программ в PortProton)" - msgid "Forcibly select the OpenGL version for the game" msgstr "Принудительно выбрать версию OpenGL для игры" @@ -749,12 +733,6 @@ msgstr "" "Исправляет кодировку в устаревших приложениях. Необходимо, например, для " "запуска старых графических новелл (Chaos;Head)" -msgid "Choice wine audio driver" -msgstr "Выбрать звуковой драйвер (в user.conf)" - -msgid "Fixes sound popling if choice alsa" -msgstr "Выбор alsa исправляет заикание звука" - msgid "EDIT DB" msgstr "НАСТРОЙКИ" @@ -1033,6 +1011,12 @@ msgstr "" "потерей производительности (для старых игр рекомендуется устанавливать " "значение 50-100 в зависимости от разрешения экрана)" +msgid "RESET" +msgstr "СБРОС" + +msgid "Restore default settings for" +msgstr "Восстановить настройки по умолчанию" + msgid "DISABLE" msgstr "ОТКЛЮЧИТЬ" @@ -1239,15 +1223,15 @@ msgstr "" "Включить лимит FPS с помощью MANGOHUD (сочетание L_SHIFT + F1 " "переключает лимиты)" -msgid "Disable MangoHud and go to the previous menu" -msgstr "Отключить MangoHud и перейти в предыдущее меню" - msgid "PREVIEW CHANGES" msgstr "ПРЕДПРОСМОТР" msgid "Start vkcube for preview changes" msgstr "Запустить vkcube для предпросмотра изменений" +msgid "Disable MangoHud and go to the previous menu" +msgstr "Отключить MangoHud и перейти в предыдущее меню" + msgid "" "Use DirectX12 for dgVoodoo2. Doesnt always work better. (Working only on " "newest and stable dxvk/vkd3d) (Direct3D and Glide settings)" @@ -1500,12 +1484,6 @@ msgstr "" "Задать вручную размер курсора в игре, если при увеличении изображения " "увеличивается курсор (Direct3D + Glide)" -msgid "RESET" -msgstr "СБРОС" - -msgid "Restore default settings for" -msgstr "Восстановить настройки по умолчанию" - msgid "Disable dgVoodoo2 and go to the previous menu" msgstr "Отключить dgVoodoo2 и перейти в предыдущее меню" @@ -1609,23 +1587,20 @@ msgstr "" "запуском), работает вместе с SDL BACKEND (используется по умолчанию в " "Wayland сессии)" -msgid "" -"Fixes artifacts on AMD and Intel video cards. (Use only when necessary)." -msgstr "" -"Устраняет артефакты на видеокартах AMD и Intel (использовать только при " -"необходимости)" - msgid "Change settings gamescope for" msgstr "Изменить настройки Gamescope для" +#, sh-format msgid "" "Gamescope is not detected on the system, to install it, run the command " "in the terminal:\\n flatpak install -y runtime/org.freedesktop.Platform." -"VulkanLayer.gamescope/x86_64/23.08\\n (Can be selected and copied)" +"VulkanLayer.gamescope/x86_64/${GAMESCOPE_VERSION}\\n (Can be selected and " +"copied)" msgstr "" "Gamescope не найден в системе, для его установки выполните команду в " "терминале:\\n flatpak install -y runtime/org.freedesktop.Platform." -"VulkanLayer.gamescope/x86_64/23.08\\n (можно выделить и скопировать)" +"VulkanLayer.gamescope/x86_64/${GAMESCOPE_VERSION}\\n (можно выделить и " +"скопировать)" msgid "" "Gamescope is not detected on the system, please contact the manufacturer " @@ -1755,6 +1730,50 @@ msgstr "" msgid "Disable GameScope and go to the previous menu" msgstr "Отключить Gamescope и перейти в предыдущее меню" +msgid "Disable" +msgstr "Выключить" + +msgid "Enable" +msgstr "Включить" + +msgid "Change mirror to" +msgstr "Сменить зеркало на" + +msgid "Change branch to" +msgstr "Сменить версию на" + +msgid "Change start gui to" +msgstr "Изменить интерфейс запуска на" + +msgid "steam covers download" +msgstr "скачивание обложек для steam" + +msgid "Choose a graphics card to run the game" +msgstr "Выбрать видеокарту для запуска игры" + +msgid "" +"Select which video card will be used to run the game (used for all running " +"games and programs in PortProton)" +msgstr "" +"Выбор видеокарты для запуска игры (используется для всех запущенных игр и " +"программ в PortProton)" + +msgid "Choice wine audio driver" +msgstr "Выбрать звуковой драйвер (в user.conf)" + +msgid "Fixes sound popling if choice alsa" +msgstr "Выбор alsa исправляет заикание звука" + +msgid "SETTINGS USER.CONF" +msgstr "НАСТРОЙКИ USER.CONF" + +msgid "" +"Open the user.conf settings file in a system text editor to view and " +"change variables manually" +msgstr "" +"Открыть файл настроек user.conf в системном текстовом редакторе, " +"чтобы просмотреть и изменить переменные вручную" + msgid "The shortcut will be created in the PortProton directory." msgstr "Ярлык будет создан в каталоге PortProton." @@ -1896,6 +1915,9 @@ msgstr "Интерфейс запуска изменён на:" msgid "EDIT USER CONFIG" msgstr "РЕДАКТИРОВАТЬ USER.CONF" +msgid "BACK" +msgstr "НАЗАД" + msgid "SAVE" msgstr "СОХРАНИТЬ" @@ -2073,6 +2095,12 @@ msgstr "ПРИСОЕДЕНИТЬСЯ" msgid "THIRD PARTY LIBRARIES" msgstr "БИБЛИОТЕКИ" +#~ msgid "" +#~ "Fixes artifacts on AMD and Intel video cards. (Use only when necessary)." +#~ msgstr "" +#~ "Устраняет артефакты на видеокартах AMD и Intel (использовать только при " +#~ "необходимости)" + #~ msgid "" #~ "Author: Casro-Fidel (Mikhail Tergoev)\n" #~ "\n" @@ -2132,12 +2160,6 @@ msgstr "БИБЛИОТЕКИ" #~ "Vuursteen\n" #~ "Akai\n" -#~ msgid "WINEFILE" -#~ msgstr "ФАЙЛОВЫЙ МЕНЕДЖЕР" - -#~ msgid "TASKMGR" -#~ msgstr "ДИСПЕТЧЕР ЗАДАЧ" - #~ msgid "" #~ "Forced use of 16bit screen mode. Solves the problem of launching old " #~ "games, such as Moto Racer." diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 5835f6f9..4562a40e 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -2912,7 +2912,7 @@ start_portwine () { fi #checkbox - PW_GAMESCOPE_ARGS_NEW="" + unset PW_GAMESCOPE_ARGS_NEW [[ "${PW_GS_FULLSCREEN}" == "1" ]] && PW_GAMESCOPE_ARGS_NEW+=" -f" [[ "${PW_GS_FORCE_FULLSCREEN}" == "1" ]] && PW_GAMESCOPE_ARGS_NEW+=" --force-windows-fullscreen" [[ "${PW_GS_BORDERLESS_WINDOW}" == "1" ]] && PW_GAMESCOPE_ARGS_NEW+=" -b" @@ -4538,7 +4538,9 @@ fi done else if check_flatpak ; then - GAMESCOPE_NEED_INSTALL="$(gettext "Gamescope is not detected on the system, to install it, run the command in the terminal:\n flatpak install -y runtime/org.freedesktop.Platform.VulkanLayer.gamescope/x86_64/23.08\n (Can be selected and copied)")" + GAMESCOPE_VERSION="$(cat /etc/os-release | grep 'VERSION_ID=')" + GAMESCOPE_VERSION="${GAMESCOPE_VERSION//VERSION_ID=/}" + GAMESCOPE_NEED_INSTALL="$(eval_gettext "Gamescope is not detected on the system, to install it, run the command in the terminal:\n flatpak install -y runtime/org.freedesktop.Platform.VulkanLayer.gamescope/x86_64/\${GAMESCOPE_VERSION}\n (Can be selected and copied)")" YAD_TEXT_SELECTION="--selectable-labels" else GAMESCOPE_NEED_INSTALL="$(gettext "Gamescope is not detected on the system, please contact the manufacturer of your distribution\n or search the Internet for information on how to install gamescope on your system.")" From 2d44a0b0f29c1f0deec1b910ea8de877b2ffd713 Mon Sep 17 00:00:00 2001 From: Htylol Date: Wed, 11 Sep 2024 21:57:26 +0500 Subject: [PATCH 08/17] Combining themes --- data_from_portwine/scripts/functions_helper | 56 ++++++++++----------- data_from_portwine/themes/classic.pptheme | 43 ++++------------ data_from_portwine/themes/compact.pptheme | 43 ++++------------ data_from_portwine/themes/default.pptheme | 53 +++++-------------- 4 files changed, 60 insertions(+), 135 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 4562a40e..348494df 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -3208,7 +3208,7 @@ yad_info () { command -v "${pw_yad}" &>/dev/null || fatal "yad not found" fi "${pw_yad}" --no-wrap --text "$@" --width=400 --height=150 --borders=15 --title "INFO" \ - --gui-type-layout=${YAD_INFO_GUI_TYPE_LAYOUT} \ + --gui-type-layout="${YAD_INFO_GUI_TYPE_LAYOUT}" \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --image="$PW_GUI_ICON_PATH/info.svg" \ --text-align=center --fixed \ --button="$(gettext "OK")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png" 2>/dev/null @@ -3223,7 +3223,7 @@ yad_error () { command -v "${pw_yad}" &>/dev/null || fatal "yad not found" fi "${pw_yad}" --no-wrap --text "$@" --width=400 --height=150 --borders=15 --title "ERROR" \ - --gui-type-layout=${YAD_INFO_GUI_TYPE_LAYOUT} \ + --gui-type-layout="${YAD_INFO_GUI_TYPE_LAYOUT}" \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --image="$PW_GUI_ICON_PATH/error.svg" \ --text-align=center --fixed \ --button="$(gettext "EXIT")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png" 2>/dev/null @@ -3237,7 +3237,7 @@ yad_error_download () { fi "${pw_yad}" --text "$(gettext "You will need to check internet connection,and\npress Repeat for repeat download")" \ --width=400 --borders=15 --title "$(gettext "Error")" \ - --gui-type-layout=${YAD_INFO_GUI_TYPE_LAYOUT} \ + --gui-type-layout="${YAD_INFO_GUI_TYPE_LAYOUT}" \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --image="$PW_GUI_ICON_PATH/download.svg" \ --no-wrap --text-align=center \ --button="$(gettext "SKIP")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":1 \ @@ -3253,7 +3253,7 @@ yad_question () { fi "${pw_yad}" --text "${1}" --width=400 --height=150 --borders=15 --title "$(gettext "Choices")" \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --image="$PW_GUI_ICON_PATH/question.svg" \ - --gui-type-layout=${YAD_INFO_GUI_TYPE_LAYOUT} \ + --gui-type-layout="${YAD_INFO_GUI_TYPE_LAYOUT}" \ --no-wrap --text-align=center --fixed \ --button="$(gettext "CANCEL")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":1 \ --button="$(gettext "OK")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 2>/dev/null @@ -3561,7 +3561,7 @@ gui_proton_downloader () { export KEY_WINE=$RANDOM "${pw_yad}" --plug=$KEY_WINE --tabnum=1 --list --checklist --separator="" \ - --gui-type-layout=${WINE_DOWNLOAD_GUI_TYPE_LAYOUT} --gui-type-text=${WINE_DOWNLOAD_GUI_TYPE_TEXT} \ + --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" \ --column "$(gettext "Set")" \ --column "$(gettext "Select WINE for download:")" \ $TMP_PROTON_PW_GIT \ @@ -3569,7 +3569,7 @@ gui_proton_downloader () { 2>/dev/null & "${pw_yad}" --plug=$KEY_WINE --tabnum=2 --list --checklist --separator="" \ - --gui-type-layout=${WINE_DOWNLOAD_GUI_TYPE_LAYOUT} --gui-type-text=${WINE_DOWNLOAD_GUI_TYPE_TEXT} \ + --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" \ --column "$(gettext "Set")" \ --column "$(gettext "Select WINE for download:")" \ $TMP_PROTON_KR_GIT \ @@ -3577,7 +3577,7 @@ gui_proton_downloader () { 2>/dev/null & "${pw_yad}" --plug=$KEY_WINE --tabnum=3 --list --checklist --separator="" \ - --gui-type-layout=${WINE_DOWNLOAD_GUI_TYPE_LAYOUT} --gui-type-text=${WINE_DOWNLOAD_GUI_TYPE_TEXT} \ + --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" \ --column "$(gettext "Set")" \ --column "$(gettext "Select WINE for download:")" \ $TMP_PROTON_GE_GIT \ @@ -3585,7 +3585,7 @@ gui_proton_downloader () { 2>/dev/null & "${pw_yad}" --plug=$KEY_WINE --tabnum=4 --list --checklist --separator="" \ - --gui-type-layout=${WINE_DOWNLOAD_GUI_TYPE_LAYOUT} --gui-type-text=${WINE_DOWNLOAD_GUI_TYPE_TEXT} \ + --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" \ --column "$(gettext "Set")" \ --column "$(gettext "Select WINE for download:")" \ $TMP_PROTON_CU_GIT \ @@ -3593,7 +3593,7 @@ gui_proton_downloader () { 2>/dev/null & "${pw_yad}" --plug=$KEY_WINE --tabnum=5 --list --checklist --separator="" \ - --gui-type-layout=${WINE_DOWNLOAD_GUI_TYPE_LAYOUT} --gui-type-text=${WINE_DOWNLOAD_GUI_TYPE_TEXT} \ + --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" \ --column "$(gettext "Set")" \ --column "$(gettext "Select installed WINE for delete:")" \ $TMP_INSTALLED_WINE \ @@ -3864,7 +3864,7 @@ A brief instruction: --text "$(gettext "Change settings in database file for") ${PORTWINE_DB}\n $(gettext "NOTE: To display help for each item, simply hover your mouse over the text")" \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --separator=" " --expand \ --gui-type="settings-base" \ - --gui-type-text=${SETTINGS_BASE_GUI_TYPE_TEXT} --gui-type-layout=${SETTINGS_BASE_GUI_TYPE_LAYOUT} \ + --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" \ --tab="$(gettext "MAIN")"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" \ --tab="$(gettext "ADVANCED")"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" \ --button="$(gettext "CANCEL THE CHANGES")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Cancel the current changes and return to the previous menu")":1 \ @@ -4030,12 +4030,12 @@ fi IFS="%" "${pw_yad}" --plug=$KEY_FX_GUI --tabnum="1" --form --columns=4 --separator=" " \ --text-align=center --text="$(gettext "VkBasalt settings for adding effects to games running under Vulkan. (The HOME key disables vkbasalt)\nNOTE: To display help for each item, simply hover over the text")" \ - --gui-type-text=${VKBASALT_GUI_TYPE_TEXT_UP} --gui-type-layout=${VKBASALT_GUI_TYPE_LAYOUT_UP} \ + --gui-type-text="${PANED_GUI_TYPE_TEXT_UP}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_UP}" \ ${ADD_GUI_FX} 1> "${PW_TMPFS_PATH}/tmp_yad_basalt_set" 2>/dev/null & IFS="$orig_IFS" "${pw_yad}" --plug=$KEY_FX_GUI --tabnum="2" --separator=" " --form \ - --gui-type-layout=${VKBASALT_GUI_TYPE_LAYOUT_DOWN} \ + --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_DOWN}" \ --field="AMD FidelityFX - Contrast Adaptive Sharpening"!"$(gettext "AMD FidelityFX - CAS is designed to dramatically improve texture sharpness without additional modification settings for games, with minimal loss of performance. (For older games it is recommended to set value = 100)")":SCL "${VKBASALT_FFX_CAS_GUI}" \ 1> "${PW_TMPFS_PATH}/tmp_yad_cas_set" 2>/dev/null & @@ -4198,11 +4198,11 @@ fi IFS="%" "${pw_yad}" --plug=$KEY_MH_GUI --tabnum="1" --form --columns=5 --separator=" " --text-align=center \ --text="$(gettext "MangoHud settings (Keys R_SHIFT + F12 disable MangoHud)\nnote: To display help for each item, just hover the mouse cursor over the text.")" \ - --gui-type-text=${MANGOHUD_GUI_TYPE_TEXT_UP} --gui-type-layout=${MANGOHUD_GUI_TYPE_LAYOUT_UP} \ + --gui-type-text="${PANED_GUI_TYPE_TEXT_UP}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_UP}" \ ${ADD_GUI_MH} 1> "${PW_TMPFS_PATH}/tmp_yad_mh_set" 2>/dev/null & "${pw_yad}" --plug=$KEY_MH_GUI --tabnum="2" --form --columns=10 --separator=" " --text-align=center \ --text="$(gettext "Enabling fps limitation with MANGOHUD tools built into PortProton (Keys L_SHIFT + F1 Toggles fps limitation)")" \ - --gui-type-text=${MANGOHUD_GUI_TYPE_TEXT_DOWN} --gui-type-layout=${MANGOHUD_GUI_TYPE_LAYOUT_DOWN} \ + --gui-type-text="${PANED_GUI_TYPE_TEXT_DOWN}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_DOWN}" \ ${ADD_GUI_MH_FPS} 1> "${PW_TMPFS_PATH}/tmp_yad_mh_fps_limit" 2>/dev/null & IFS="$orig_IFS" @@ -4366,7 +4366,7 @@ fi IFS="%" "${pw_yad}" --plug=$KEY_DGV2_GUI --tabnum="1" --form --separator=" " --columns=4 ${ADD_CHK_BOX_DGV2} --text-align=center \ --text="$(gettext "dgVoodoo2 settings\nNOTE: To display help for each item, simply hover over the text")" \ - --gui-type-text=${DGVOODOO2_GUI_TYPE_TEXT_UP} --gui-type-layout=${DGVOODOO2_GUI_TYPE_LAYOUT_UP} \ + --gui-type-text="${PANED_GUI_TYPE_TEXT_UP}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_UP}" \ 1> "${PW_TMPFS_PATH}/tmp_yad_dgv2_set" 2>/dev/null & IFS="$orig_IFS" @@ -4382,7 +4382,7 @@ fi DGVOODOO2_VIDEOCARD="dgVoodoo2 SVGA 3D!dgVoodoo2 Virtual 3D!Geforce 4 Ti 4800!ATI Radeon 8500!Matrox Parhelia-512!GeForce FX 5700 Ultra!GeForce 9800 GT!Voodoo Graphics!Voodoo Rush!Voodoo 2!Voodoo Banshee" "${pw_yad}" --plug=$KEY_DGV2_GUI --tabnum="2" --form --columns=3 --separator="%" \ - --gui-type-layout=${DGVOODOO2_GUI_TYPE_LAYOUT_DOWN} \ + --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_DOWN}" \ --field="${CHKBOX_SPACE}RESOLUTION!$(gettext "Set the resolution used. (Direct3D and Glide settings)") :CBE" "$(combobox_fix --disabled "${PW_DGV2_RESOLUTION}" "4x app resolution!3x app resolution!2x app resolution!${DGVOODOO2_XRANDR_NEW::-1}")" \ --field="${CHKBOX_SPACE}FPS LIMIT!$(gettext "You can configure fps limit. (Direct3D and Glide settings)") :CBE" "$(combobox_fix --disabled "${PW_DGV2_FPS_LIMIT}" "30!40!45!48!60!75!90!120!144!165!175!240")" \ --field="${CHKBOX_SPACE}FILTERING!$(gettext "You can select from various texture filtering modes here. Forcing other than the app default can result in glitches or break some rendering effects. (Glide have max filtering bilinear) (Direct3D and Glide settings)") :CB" "$(combobox_fix --disabled "${PW_DGV2_FILTERING}" "${DGVOODOO2_FILTERING}")" \ @@ -4571,7 +4571,7 @@ fi IFS="%" "${pw_yad}" --plug=$KEY_GS_GUI --tabnum="1" --form --columns=4 --separator=" " --text-align=center --text "$GAMESCOPE_NEED_INSTALL" \ - --gui-type-text=${GAMESCOPE_GUI_TYPE_TEXT_UP} --gui-type-layout=${GAMESCOPE_GUI_TYPE_LAYOUT_UP} $YAD_TEXT_SELECTION \ + --gui-type-text="${PANED_GUI_TYPE_TEXT_UP}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_UP}" $YAD_TEXT_SELECTION \ ${ADD_CHK_BOX_GS} \ 1> "${PW_TMPFS_PATH}/tmp_yad_gs_set" 2>/dev/null & IFS="$orig_IFS" @@ -4584,7 +4584,7 @@ fi done "${pw_yad}" --plug=$KEY_GS_GUI --tabnum="2" --form --columns=2 --separator="%" --homogeneous-row \ - --gui-type-text=${GAMESCOPE_GUI_TYPE_TEXT_DOWN} --gui-type-layout=${GAMESCOPE_GUI_TYPE_LAYOUT_DOWN} \ + --gui-type-text="${PANED_GUI_TYPE_TEXT_DOWN}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_DOWN}" \ --field="${CHKBOX_SPACE}$(gettext "Show resolution")!$(gettext "Set the resolution used by gamescope. Resizing the gamescope window will update these settings. Defaults to 1280x720.") :${GS_CBE}" "$(combobox_fix --disabled "${PW_GS_SHOW_RESOLUTION}" "${GAMESCOPE_XRANDR_NEW::-1}")" \ --field="${CHKBOX_SPACE}$(gettext "Internal resolution")!$(gettext "Scale internal resolution (0.0 is unused)") :${GS_NUMN}" "${PW_GS_INTERNAL_RESOLUTION}:!0..2" \ --field="${CHKBOX_SPACE}$(gettext "Frame limit")!$(gettext "Set a framerate limit. Specified in frames per second") :${GS_CBE}" "$(combobox_fix --disabled "${PW_GS_FRAME_LIMIT}" "30!40!45!48!60!75!90!120!144!165!175!240")" \ @@ -4696,8 +4696,8 @@ gui_userconf () { KEY_USERCONF_GUI=$RANDOM - "${pw_yad}" --plug=$KEY_USERCONF_GUI --tabnum="1" --form --columns=2 --separator=" " --text-align=center --align-buttons --separator=";" \ - --gui-type-text=${GAMESCOPE_GUI_TYPE_TEXT_UP} --gui-type-layout=${GAMESCOPE_GUI_TYPE_LAYOUT_UP} \ + "${pw_yad}" --plug=$KEY_USERCONF_GUI --tabnum="1" --form --columns=2 --separator=" " --text-align=center --align-buttons --separator=";" --homogeneous-column \ + --gui-type-text="${PANED_GUI_TYPE_TEXT_UP}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_UP}" \ --field=" $(gettext "Change mirror to") $NEW_MIRROR"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_mirror"' \ --field=" $(gettext "Change branch to") $NEW_BRANCH"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_branch"' \ --field=" $(gettext "Change start gui to") $NEW_START_GUI"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_gui_start"' \ @@ -4721,7 +4721,7 @@ gui_userconf () { fi "${pw_yad}" --plug=$KEY_USERCONF_GUI --tabnum="2" --form --columns=1 --separator="%" --homogeneous-row \ - --gui-type-text=${GAMESCOPE_GUI_TYPE_TEXT_DOWN} --gui-type-layout=${GAMESCOPE_GUI_TYPE_LAYOUT_DOWN} \ + --gui-type-text="${PANED_GUI_TYPE_TEXT_DOWN}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_DOWN}" \ --field="$(gettext "Choose a graphics card to run the game")!$(gettext "Select which video card will be used to run the game (used for all running games and programs in PortProton)") :CB" "$(combobox_fix --disabled "${GPU_VAR}" "${GET_GPU_NAMES}")" \ --field="$(gettext "Choice wine audio driver")!$(gettext "Fixes sound popling if choice alsa") :CB" "$(combobox_fix --disabled "${SOUND_DRIVER_VAR}" "alsa!oss!pulse")" \ 1> "${PW_TMPFS_PATH}/tmp_yad_userconf_set_cb" 2>/dev/null & @@ -4834,8 +4834,8 @@ portwine_create_shortcut () { if [[ "$1" == "block_name" ]] ; then OUTPUT=$("${pw_yad}" --title="$(gettext "Choices")" --form \ --gui-type="settings-shortcut" \ - --gui-type-box=${SETTINGS_SHORTCUT_GUI_TYPE_BOX} --gui-type-layout=${SETTINGS_SHORTCUT_GUI_TYPE_LAYOUT} \ - --gui-type-text=${SETTINGS_SHORTCUT_GUI_TYPE_TEXT} --gui-type-images=${SETTINGS_SHORTCUT_GUI_TYPE_IMAGE} \ + --gui-type-box="${NOTEBOOK_GUI_TYPE_BOX}" --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" \ + --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" --gui-type-images="${NOTEBOOK_GUI_TYPE_IMAGE}" \ --window-icon "$PW_GUI_ICON_PATH/portproton.svg" \ --image "${PORT_WINE_PATH}/data/img/${name_desktop_png}.png" \ --text-align="center" --text "$(gettext "The shortcut will be created in the PortProton directory.")" \ @@ -4849,8 +4849,8 @@ portwine_create_shortcut () { else OUTPUT=$("${pw_yad}" --title="$(gettext "Choices")" --form \ --gui-type="settings-shortcut" \ - --gui-type-box=${SETTINGS_SHORTCUT_GUI_TYPE_BOX} --gui-type-layout=${SETTINGS_SHORTCUT_GUI_TYPE_LAYOUT} \ - --gui-type-text=${SETTINGS_SHORTCUT_GUI_TYPE_TEXT} --gui-type-images=${SETTINGS_SHORTCUT_GUI_TYPE_IMAGE} \ + --gui-type-box="${NOTEBOOK_GUI_TYPE_BOX}" --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" \ + --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" --gui-type-images="${NOTEBOOK_GUI_TYPE_IMAGE}" \ --window-icon "$PW_GUI_ICON_PATH/portproton.svg" \ --image "${PORT_WINE_PATH}/data/img/${name_desktop_png}.png" \ --text-align="center" --text "$(gettext "The shortcut will be created in the PortProton directory.")" \ @@ -5124,19 +5124,19 @@ pw_prefix_manager () { KEY_EDIT_MANAGER_GUI=$RANDOM "${pw_yad}" --plug=$KEY_EDIT_MANAGER_GUI --tabnum=1 --list --checklist \ - --gui-type-layout=${WINETRICKS_GUI_TYPE_LAYOUT} --gui-type-text=${WINETRICKS_GUI_TYPE_TEXT} \ + --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" \ --text="$(gettext 'Select components to install in prefix:') \"${PW_PREFIX_NAME}\", $(gettext 'using wine:') \"${PW_WINE_USE}\"" \ --column="$(gettext "Set")" --column="$(gettext "Libraries")" \ --column="$(gettext "Information")" < "${PW_TMPFS_PATH}/dll_list_tmp" 1>> "${PW_TMPFS_PATH}/to_winetricks" 2>/dev/null & "${pw_yad}" --plug=$KEY_EDIT_MANAGER_GUI --tabnum=2 --list --checklist \ - --gui-type-layout=${WINETRICKS_GUI_TYPE_LAYOUT} --gui-type-text=${WINETRICKS_GUI_TYPE_TEXT} \ + --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" \ --text="$(gettext 'Select fonts to install in prefix:') \"${PW_PREFIX_NAME}\", $(gettext 'using wine:') \"${PW_WINE_USE}\"" \ --column="$(gettext "Set")" --column="$(gettext "Libraries")" \ --column="$(gettext "Information")" < "${PW_TMPFS_PATH}/fonts_list_tmp" 1>> "${PW_TMPFS_PATH}/to_winetricks" 2>/dev/null & "${pw_yad}" --plug=$KEY_EDIT_MANAGER_GUI --tabnum=3 --list --checklist \ - --gui-type-layout=${WINETRICKS_GUI_TYPE_LAYOUT} --gui-type-text=${WINETRICKS_GUI_TYPE_TEXT} \ + --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" \ --text="$(gettext 'Change config for prefix:') \"${PW_PREFIX_NAME}\"" \ --column="$(gettext "Set")" --column="$(gettext "Libraries")" \ --column="$(gettext "Information")" < "${PW_TMPFS_PATH}/settings_list_tmp" 1>> "${PW_TMPFS_PATH}/to_winetricks" 2>/dev/null & diff --git a/data_from_portwine/themes/classic.pptheme b/data_from_portwine/themes/classic.pptheme index 23caed23..f518d39f 100755 --- a/data_from_portwine/themes/classic.pptheme +++ b/data_from_portwine/themes/classic.pptheme @@ -43,40 +43,17 @@ export START_GUI_TYPE_TEXT=0 export START_GUI_TYPE_IMAGE=0 export MAIN_MENU_GUI_TYPE_LAYOUT=0 - -export VKBASALT_GUI_TYPE_LAYOUT_UP=5 -export VKBASALT_GUI_TYPE_LAYOUT_DOWN=5 -export VKBASALT_GUI_TYPE_TEXT_UP=0 - -export MANGOHUD_GUI_TYPE_LAYOUT_UP=5 -export MANGOHUD_GUI_TYPE_LAYOUT_DOWN=5 -export MANGOHUD_GUI_TYPE_TEXT_UP=0 -export MANGOHUD_GUI_TYPE_TEXT_DOWN=0 - -export DGVOODOO2_GUI_TYPE_LAYOUT_UP=5 -export DGVOODOO2_GUI_TYPE_LAYOUT_DOWN=5 -export DGVOODOO2_GUI_TYPE_TEXT_UP=0 - -export GAMESCOPE_GUI_TYPE_LAYOUT_UP=5 -export GAMESCOPE_GUI_TYPE_LAYOUT_DOWN=5 -export GAMESCOPE_GUI_TYPE_TEXT_UP=0 -export GAMESCOPE_GUI_TYPE_TEXT_DOWN=0 - -export SETTINGS_BASE_GUI_TYPE_LAYOUT=0 -export SETTINGS_BASE_GUI_TYPE_TEXT=0 - -export WINETRICKS_GUI_TYPE_LAYOUT=5 -export WINETRICKS_GUI_TYPE_TEXT=0 - -export WINE_DOWNLOAD_GUI_TYPE_LAYOUT=5 -export WINE_DOWNLOAD_GUI_TYPE_TEXT=0 - -export SETTINGS_SHORTCUT_GUI_TYPE_BOX=5 -export SETTINGS_SHORTCUT_GUI_TYPE_LAYOUT=5 -export SETTINGS_SHORTCUT_GUI_TYPE_TEXT=0 -export SETTINGS_SHORTCUT_GUI_TYPE_IMAGE=0 - export YAD_INFO_GUI_TYPE_LAYOUT=5 +export PANED_GUI_TYPE_LAYOUT_UP=5 +export PANED_GUI_TYPE_LAYOUT_DOWN=5 +export PANED_GUI_TYPE_TEXT_UP=0 +export PANED_GUI_TYPE_TEXT_DOWN=0 + +export NOTEBOOK_GUI_TYPE_BOX=5 +export NOTEBOOK_GUI_TYPE_LAYOUT=5 +export NOTEBOOK_GUI_TYPE_TEXT=0 +export NOTEBOOK_GUI_TYPE_IMAGE=0 + export PROGRESS_BAR_BORDERS_SIZE=20 export PROGRESS_BAR_WIDTH_SIZE=500 diff --git a/data_from_portwine/themes/compact.pptheme b/data_from_portwine/themes/compact.pptheme index af9f33ee..30a1a606 100755 --- a/data_from_portwine/themes/compact.pptheme +++ b/data_from_portwine/themes/compact.pptheme @@ -46,40 +46,17 @@ export START_GUI_TYPE_TEXT=2 export START_GUI_TYPE_IMAGE=2 export MAIN_MENU_GUI_TYPE_LAYOUT=0 - -export VKBASALT_GUI_TYPE_LAYOUT_UP=10 -export VKBASALT_GUI_TYPE_LAYOUT_DOWN=5 -export VKBASALT_GUI_TYPE_TEXT_UP=5 - -export MANGOHUD_GUI_TYPE_LAYOUT_UP=10 -export MANGOHUD_GUI_TYPE_LAYOUT_DOWN=10 -export MANGOHUD_GUI_TYPE_TEXT_UP=5 -export MANGOHUD_GUI_TYPE_TEXT_DOWN=5 - -export DGVOODOO2_GUI_TYPE_LAYOUT_UP=10 -export DGVOODOO2_GUI_TYPE_LAYOUT_DOWN=10 -export DGVOODOO2_GUI_TYPE_TEXT_UP=5 - -export GAMESCOPE_GUI_TYPE_LAYOUT_UP=10 -export GAMESCOPE_GUI_TYPE_LAYOUT_DOWN=10 -export GAMESCOPE_GUI_TYPE_TEXT_UP=5 -export GAMESCOPE_GUI_TYPE_TEXT_DOWN=5 - -export SETTINGS_BASE_GUI_TYPE_LAYOUT=5 -export SETTINGS_BASE_GUI_TYPE_TEXT=2 - -export WINETRICKS_GUI_TYPE_LAYOUT=5 -export WINETRICKS_GUI_TYPE_TEXT=2 - -export WINE_DOWNLOAD_GUI_TYPE_LAYOUT=5 -export WINE_DOWNLOAD_GUI_TYPE_TEXT=2 - -export SETTINGS_SHORTCUT_GUI_TYPE_BOX=2 -export SETTINGS_SHORTCUT_GUI_TYPE_LAYOUT=5 -export SETTINGS_SHORTCUT_GUI_TYPE_TEXT=2 -export SETTINGS_SHORTCUT_GUI_TYPE_IMAGE=5 - export YAD_INFO_GUI_TYPE_LAYOUT=2 +export PANED_GUI_TYPE_LAYOUT_UP=10 +export PANED_GUI_TYPE_LAYOUT_DOWN=10 +export PANED_GUI_TYPE_TEXT_UP=5 +export PANED_GUI_TYPE_TEXT_DOWN=5 + +export NOTEBOOK_GUI_TYPE_BOX=2 +export NOTEBOOK_GUI_TYPE_LAYOUT=5 +export NOTEBOOK_GUI_TYPE_TEXT=2 +export NOTEBOOK_GUI_TYPE_IMAGE=5 + export PROGRESS_BAR_BORDERS_SIZE=20 export PROGRESS_BAR_WIDTH_SIZE=500 diff --git a/data_from_portwine/themes/default.pptheme b/data_from_portwine/themes/default.pptheme index d256584d..d22ca3b9 100755 --- a/data_from_portwine/themes/default.pptheme +++ b/data_from_portwine/themes/default.pptheme @@ -60,50 +60,21 @@ export START_GUI_TYPE_IMAGE=2 # значение для images # для основного меню export MAIN_MENU_GUI_TYPE_LAYOUT=0 - -# для vkbasalt -export VKBASALT_GUI_TYPE_LAYOUT_UP=20 -export VKBASALT_GUI_TYPE_LAYOUT_DOWN=10 -export VKBASALT_GUI_TYPE_TEXT_UP=10 - -# для mangohud -export MANGOHUD_GUI_TYPE_LAYOUT_UP=20 -export MANGOHUD_GUI_TYPE_LAYOUT_DOWN=20 -export MANGOHUD_GUI_TYPE_TEXT_UP=10 -export MANGOHUD_GUI_TYPE_TEXT_DOWN=10 - -# для dgvoodoo2 -export DGVOODOO2_GUI_TYPE_LAYOUT_UP=20 -export DGVOODOO2_GUI_TYPE_LAYOUT_DOWN=20 -export DGVOODOO2_GUI_TYPE_TEXT_UP=10 - -# для gamescope -export GAMESCOPE_GUI_TYPE_LAYOUT_UP=20 -export GAMESCOPE_GUI_TYPE_LAYOUT_DOWN=20 -export GAMESCOPE_GUI_TYPE_TEXT_UP=10 -export GAMESCOPE_GUI_TYPE_TEXT_DOWN=10 - -# для основных настроек -export SETTINGS_BASE_GUI_TYPE_LAYOUT=5 -export SETTINGS_BASE_GUI_TYPE_TEXT=2 - -# для окна winetricks -export WINETRICKS_GUI_TYPE_LAYOUT=5 -export WINETRICKS_GUI_TYPE_TEXT=2 - -# для окна скачивания версий wine -export WINE_DOWNLOAD_GUI_TYPE_LAYOUT=5 -export WINE_DOWNLOAD_GUI_TYPE_TEXT=2 - -# для создания ярлыков -export SETTINGS_SHORTCUT_GUI_TYPE_BOX=2 -export SETTINGS_SHORTCUT_GUI_TYPE_LAYOUT=5 -export SETTINGS_SHORTCUT_GUI_TYPE_TEXT=2 -export SETTINGS_SHORTCUT_GUI_TYPE_IMAGE=5 - # для всплывающих окон по типу error, info, question export YAD_INFO_GUI_TYPE_LAYOUT=2 +# для vkbasalt, mangohud, dgvoodoo2, gamescope, userconf +export PANED_GUI_TYPE_LAYOUT_UP=20 +export PANED_GUI_TYPE_LAYOUT_DOWN=20 +export PANED_GUI_TYPE_TEXT_UP=10 +export PANED_GUI_TYPE_TEXT_DOWN=10 + +# для основных настроек, winetricks, для скачивания версий wine, для создания ярлыков +export NOTEBOOK_GUI_TYPE_BOX=2 +export NOTEBOOK_GUI_TYPE_LAYOUT=5 +export NOTEBOOK_GUI_TYPE_TEXT=2 +export NOTEBOOK_GUI_TYPE_IMAGE=5 + # настройки индикатора прогресса export PROGRESS_BAR_BORDERS_SIZE=20 export PROGRESS_BAR_WIDTH_SIZE=500 From 89b06f8b815601b839b796ef081bdcc4f846cb68 Mon Sep 17 00:00:00 2001 From: Htylol Date: Wed, 11 Sep 2024 22:47:59 +0500 Subject: [PATCH 09/17] Added yad_question for change_branch --- data_from_portwine/locales/PortProton.pot | 5 +++- .../locales/es/LC_MESSAGES/PortProton.mo | Bin 66243 -> 66410 bytes .../locales/es/LC_MESSAGES/PortProton.po | 7 +++-- .../locales/ru/LC_MESSAGES/PortProton.mo | Bin 91323 -> 91500 bytes .../locales/ru/LC_MESSAGES/PortProton.po | 7 +++-- data_from_portwine/scripts/functions_helper | 25 +++++++++++------- 6 files changed, 30 insertions(+), 14 deletions(-) diff --git a/data_from_portwine/locales/PortProton.pot b/data_from_portwine/locales/PortProton.pot index f8a58fe1..c2273ecd 100644 --- a/data_from_portwine/locales/PortProton.pot +++ b/data_from_portwine/locales/PortProton.pot @@ -7,7 +7,7 @@ msgid "" msgstr "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2024-09-11 19:56+0500\n" + "POT-Creation-Date: 2024-09-11 22:46+0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1488,6 +1488,9 @@ msgstr "" msgid "Mirror changed to:" msgstr "" +msgid "Do you actually want to change the scripts version to:" +msgstr "" + msgid "Branch changed to:" msgstr "" diff --git a/data_from_portwine/locales/es/LC_MESSAGES/PortProton.mo b/data_from_portwine/locales/es/LC_MESSAGES/PortProton.mo index 3f2e0817e45caa386940a8d94bcf0a07a3e83b12..610c1b8b2d86938b3667bab2ab30e08648f05dd7 100644 GIT binary patch delta 9492 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 C6Iy2g delta 9322 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 Qa(_T}wCDa^yN@US4~(NfjQ{`u diff --git a/data_from_portwine/locales/es/LC_MESSAGES/PortProton.po b/data_from_portwine/locales/es/LC_MESSAGES/PortProton.po index 68d67cd8..0b976bcc 100644 --- a/data_from_portwine/locales/es/LC_MESSAGES/PortProton.po +++ b/data_from_portwine/locales/es/LC_MESSAGES/PortProton.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-09-11 19:39+0500\n" -"PO-Revision-Date: 2024-09-11 19:56+0500\n" +"POT-Creation-Date: 2024-09-11 22:45+0500\n" +"PO-Revision-Date: 2024-09-11 22:46+0500\n" "Last-Translator: \n" "Language-Team: \n" "Language: es_ES\n" @@ -1927,6 +1927,9 @@ msgstr "¿Realmente desea eliminar PortProton?" msgid "Mirror changed to:" msgstr "Espejo cambiado a:" +msgid "Do you actually want to change the scripts version to:" +msgstr "¿Realmente desea cambiar la versión de los scripts a:" + msgid "Branch changed to:" msgstr "Rama cambiada a:" diff --git a/data_from_portwine/locales/ru/LC_MESSAGES/PortProton.mo b/data_from_portwine/locales/ru/LC_MESSAGES/PortProton.mo index 295dda4e153e446e26f03caefe67b60cff2c9fdb..31bf4dc44956c502fc8d8051cd4a96b156f16165 100644 GIT binary patch delta 9792 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" + if yad_question "$(gettext "Do you actually want to change the scripts version to:") DEVEL?" ; then + sed -i 's/="master"/="devel"/g' "$USER_CONF" + export MIRROR="GITHUB" + pw_notify_send -i info \ + "$(gettext "Branch changed to:")" "DEVEL" + unset SKIP_CHECK_UPDATES + fi else - sed -i 's/="devel"/="master"/g' "$USER_CONF" - echo "2024" > "${PORT_WINE_TMP_PATH}/scripts_ver" - export PW_CHANGE_BRANCH="1" - yad_info "$(gettext "Branch changed to:") STABLE" + if yad_question "$(gettext "Do you actually want to change the scripts version to:") STABLE?" ; then + sed -i 's/="devel"/="master"/g' "$USER_CONF" + echo "2024" > "${PORT_WINE_TMP_PATH}/scripts_ver" + export PW_CHANGE_BRANCH="1" + pw_notify_send -i info \ + "$(gettext "Branch changed to:")" "STABLE" + unset SKIP_CHECK_UPDATES + fi fi print_info "Restarting PP for change branch..." /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & From 9fd99f02fd572d579a864dd3984eacf091dedcb6 Mon Sep 17 00:00:00 2001 From: Htylol Date: Wed, 11 Sep 2024 23:36:39 +0500 Subject: [PATCH 10/17] Added descriptions of settings for buttons in user.conf, added translation --- data_from_portwine/locales/PortProton.pot | 24 ++++++++++- .../locales/es/LC_MESSAGES/PortProton.mo | Bin 66410 -> 67678 bytes .../locales/es/LC_MESSAGES/PortProton.po | 39 +++++++++++++++++- .../locales/ru/LC_MESSAGES/PortProton.mo | Bin 91500 -> 93219 bytes .../locales/ru/LC_MESSAGES/PortProton.po | 38 ++++++++++++++++- data_from_portwine/scripts/functions_helper | 15 +++---- 6 files changed, 104 insertions(+), 12 deletions(-) diff --git a/data_from_portwine/locales/PortProton.pot b/data_from_portwine/locales/PortProton.pot index c2273ecd..c24f5f93 100644 --- a/data_from_portwine/locales/PortProton.pot +++ b/data_from_portwine/locales/PortProton.pot @@ -7,7 +7,7 @@ msgid "" msgstr "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2024-09-11 22:46+0500\n" + "POT-Creation-Date: 2024-09-11 23:35+0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1347,18 +1347,40 @@ msgstr "" msgid "Enable" msgstr "" +msgid "Change settings for" +msgstr "" + msgid "Change mirror to" msgstr "" +msgid "Depending on which mirror is selected, updates will be downloaded " + "from there." +msgstr "" + msgid "Change branch to" msgstr "" +msgid "Depending on the version of the scripts, PortProton will receive the " + "latest changes first (the DEVEL branch), the STABLE branch is " + "updated later and is stable." +msgstr "" + msgid "Change start gui to" msgstr "" +msgid "When using PANED in the game start menu, additional buttons are " + "located on one large page; if NOTEBOOK, then they are divided into " + "several." +msgstr "" + msgid "steam covers download" msgstr "" +msgid "If downloading steam covers is enabled, they will be downloaded and " + "created. (Disablement is provided in cases where their downloading " + "is unavailable for some reason)" +msgstr "" + msgid "Choose a graphics card to run the game" msgstr "" diff --git a/data_from_portwine/locales/es/LC_MESSAGES/PortProton.mo b/data_from_portwine/locales/es/LC_MESSAGES/PortProton.mo index 610c1b8b2d86938b3667bab2ab30e08648f05dd7..76efd8a4743b4a736431e735bca8cd86c212bdff 100644 GIT binary patch delta 10651 zcmZwM30zcF`@r#oBCe=`yMh-*0Y%&Zal;Kng+ScbbQlI09cE|-+-*$L+&9$R$}}}K zbHlw}vv|uib9qzC+{#MJQrj2P*Z23#xx9b>pa1`UeEgp0+&lN4`H7aX{J;rj%cpbYkX!W4kGU#snizS zg7VSSD5WZ4E`EvyI28M|P^t;Oiq(|zs!|%Q={To5lxnF|UGhK-!Dgnta2mMIaeeg*jY)K*wNh#TzK^4@UW`)wQAPaK z0XJh?yow{SI%k`Q<1h(-MStwrMh_$r`J)E#7e!UGuq!S@xq-9Tjq9tMGy<>*XO|sO zSQ)!u4eX7baER$Ll**jOns^86cq?B|K(2h@I<&OFTLy_g7#vsc^EkbTe9mQn4Z|;v{zPgiJ zQI6Y;_3%7e@D9r7(!A8WK8@$G0j@LigD7`?4rT7{qMWE|7k!5b*quBJQ}8v6!0%C3 zcQEtX7(18_MT)5=qFiqm2BY^w8gj>1F$^E0lrW6Cv7S^a%E+gqd~g+p;2sRcGbnR> z7g-+a0m@p4>82OkU`!{Ug3sVdlrO~;YpMcckD^Iu>g6u zsB_4xLj8sOQQ^I)3g)8BsRv~$r=mPX3sI(c70Oy!hZIxo!x(w~@6nJGh9v1b?}Pow z-N-KW4`dlAKPFhFpc6`kaw1W0x?T>#IN} za1FLYDb;C|4>atfD=`xHlYfM1IHRvph4?Y@#HyZ*Ru)qc@=>(|kK@nS5ld2)a^hW- z0gmD%q3A{LVj8c|@L(&J`eWRP(ITU%fM-x1uM5~5ZzIb@RnO4-)36Hp01U*@*bv8K zHGC0eidLY3ucA!lyBXA9Ms$Y`DRp3feLyCjA$MaN?2*YrlpF`*F_g~*4bZDR4x`E` zH5hr+m3NT#5Dp=~k23JygL$MeAD_if2UCApm3=v?HEzQQ{0u3A?<-42o<3ABt`R85 zWnmaD$HurHd*TJGj&+CWN;Jo($YZfK_C~45D6D~YFAXW}WUPw|u_A89%D5A^;z9fo zM-ON2{TR>)s)3~=`4+?Y(Ry_+;cnzH-HOxjxa92bI!52n(6M|4)4v5{(0h-@5*i^E zrDo!rD09~)OV3#v$`lO4Vw{J;7-H4mdTlX)d;`Q+L${R8lWk54g=ClM?;pbQrpUu&CI1{DBAE8wE3NFNZ zC{r>uR|d-bFQOr<`83J^s^sZ4Py^*oJ776X#X6Xd6iL~TYpN5->s+<6vnc)edPVu% z0`5xI!UmLq?84c248t&KJnt2*uX1Qe$v2>U;4MtWQ#cpvICyW%e)KJ_e0{>^7(jnK zR=}<(`+H$~9Ds7(IT((cP~Hb8P!_G9llseI3!_mBqi{JUqLk=7hT>N^3d_0l<2eTF zkSHFQWMe*1HQwpemG7T>sQu_B%PIL+@;io8b_l3Ft z7nD2s6Xgy+1Ct+1`C(6`J!AM-}rvCD{9HJuv&tnt( z3uTTPd6c5+DiO=$8z?81f?=dSTZ9F3o&tc`@{^js!m2ze$pKo>rR z^HJ`6y_xSsimHy`3mC_g$Kp{;ljr|FAs6g2L;no70o#&)gYj7RdHtJ9I$k8-igNt4 znanHRz!H3BmL6abR|zC}V@L503g)+t4cnP$|*g3qwxVFlsk&6qk6aIqpFoycb z1rFmS>@Ziq!K$;f8~Hkv#dQV8V)T5ymKLE@>|3mjy}7Ea{!#b<^YAcQ7gGPbG#V|^ zC#bTRAC(#DcpOE4x25_{*JA|vW0X6JSjHf+4O%dKx&AVlgEAEduqU2FnUdgQy(XHW zoTnd31>D8dpKGa2bjTWLyF#0aQRFrZ#U&_HvI`CT0_CajTdCJfG|GD*2eYvlskZtP zr4rLu=^MF%DddSS>7N1TyhQ!G(D5D}!|*Y_hQn6t-|-$|faGiRY950<$Y)|5{3pr@ zuV77Vx>o;o9E(z^IamvqpzPml<_AzJbjnL3fkxmuU7Frlo!p7dak`mr#$fUiY=kFJ zD)TjV#`5d+`=A^4CeOq6xEp2vS11E${Ib50HdspT9Y~`ojk>SsIqHlu^06o-w__-- zL#fbFl*cQ0gD!bflr_{JgD~+`2925cA)ZA8S8voF!8YWdV=H<7t8UUG?}#1Pk%f(L zE!M?DD2wGRR>sGeft8u3iZ~qQI19=upN#%E8|6mkV>}ikA62JtFy?QTA6l9JQW`Dk zID;|x0J~t+7X8C!4vr;1iv6(RR()I!Mv|{YmWeus={WRt{bTu7l=EIT^9tMaqD{c& z^jonL*H`mtMB@7>BfE!E>ZI+uR4=3KKZ6nYhiT&-dNHP;^v}bFxEJL{K1R9FLu`so z-_XB5q+l5N3iLLiagc_AmoWq%pe(|AJM}v~0$Y&hVOK21Y&?%1jDJ(Fl^rM-zKZW* z)m{AdglDh-7w*{!6)T_K{vEREa)t8MY)ZMY)svD0d#ZUoWP96&Hb|hwzZ$cS(g%kQWop|(+m*7Z@ z_)tH_voMkTI7DhI8E+u7sJ_EUFD2Rh5swLee44w$1!wrx8)MGtlAmMZWtIPo zFJs+*@w*)R51>q0`3w5JF&Y!dOYnXC0cYdBi+YL@F6n`eLaCe`y|2?)OGECc=coGd z7=jhaH=#f7z@E4p*Wk}6bHDI2{lZy|lJCbTJdQtgIx{g|a;ck=ZZfY-1kevJ*V<~98* zUCV3CzYHLTj_H_*&*NE?MU#1*=a*71#Srq}Zs-dKf1yj+9Ou*D9_1-GhJEoS8W{bh zUJFm7JpWm^2>0P6?C!m(AEzTIi|iAW(tm^UhP#Um@fYlaHNMjMFqDcFVhZj=xx-&k zDr9`EfA)*TV)A|{{nxPt{){pJZ^$=#q^nTo?hrnWUt%q6eM^6dBw;7=@hAh`immW4 z*2Y^X19^ypFzL3wku_L@e50A~MLF*g43Ovl42=jnE@Cr$gmPz1ztwNVk(faKBT9eN zclwoW!Rq9zuqkfAXgrAq{*JL&_l_QD8b*;%!DYA^{pIy z^?|3cIr(20gT_z#dCfqX!xmNimVK?%hFdy6gqQ9gzpe*id z=#>*S`c*$ZiP(yK2+EYafHLPhu?5~nxs#yZ^beEWuo8KH%)sIJ25!et9Q?a}vlik+ z^1YaaQGe)H{=z?~e-ItN(GiH1{?r4ggYC(aur^M@U|ftfaTBh^5?qPtf9Zce{2E>4 zkq`6~tj0|8hnOnI{jDpo7H#C8{Z0L8tHg(Tgq?P%0Bp-p}_R9s964pC9J+_fy;0kz2vf z_w7_Oz|S{_4wO<|z~`_-MeRY9_d#4GKi`*5CUPF%w#Bpy9-vd6iZIM0WL?N6FSGY` z)Ax7r+o6@bo#|wasF#SX#BTD}iC%>K=IS71U983@H(BMfF-Fzg+_%MaAWF$)d&%sR z_D0(2IFvAm-tsU!Wgd`*GOuljKD2uig|r7@CzLIR$S-c&DA?PV-m)!;_Fj_B#I7g$ zW&bW>9DVYgIhA%I%D;)0ZT)E+B2eA{%6<1zW~CUeo0zDz%Pb+BD0SarU4 zn&frZIUL_5WTnXVJrPd-8^lQ3Jnz2$Z>@;3B@z+rlONQ|wl8ViA-WSy=pTr(ts;1g z_`1{A_q~F6F4aB`8jDYE{pfp^j=8v&h@?FOpWJ$qxagBt)p*?b#7>X&6X)oA;fa1} z{!6YeZ-urT;6Vd>VPkB7vaO@tl8{aQ*}80-Mw{2EZ>wtd%PUW|WHVn#yDcFNe`&-dIK-XPDw!_4W#0Nw;QJIi!iAH5{ z`~tIWQv6P6W$!HWobhJo7<3Xn%zPPE;h0XuX!BTem+$McyqQ?=l-b^obIf*6KEoH8 zx?<*K)TKX3zCL9;Xr7q2sBf!Ho=e!t{!M&L{KL0L|8>M{Pvw|Nv;)o0@1VVoc%GO^ zG@^emkw$w6F2-&|*>*v$A7y5nIe?d#@88`)=R@e9PCPzbftI-;k$c91%;bC(5>uXcQAW%)V&aGl(Ga7s}p2yx4RV2AlhyHqF9U>92{Ku!LAj{77Df@b}~XSJN0vXFM^S z2qAu>uK=Gy8*!45Z3BHD;wbD$$o7opzkkdBW>qEYO01+k+dS?b`Pam9;xzFJ{qIQq z=h1i#sb3{er7JZfR1P;KZSP5loNBGem=F9k+rTv-N4m53u-x8k?OW5BB zUm;}kPNHKu5ukJ5m%21B6N~6?M{J}WO01wAflhpkt%(kVY-8vfjirQ}*iFb*O`~SA ze=#wEs7~J+oFeP58jbUG#Gq`Ai6G(;F^#B2{|1!pC*q$(7y3eQFkz$J9?Q0dY*s!RZJxuU z$ChO?vRxCM4wogH)8@Ec`Eq5qoXzf$)0SzZl+;PcZ0s#NTI%2_v{~{Et4j(Y*RVO| z6I_B*O#c7QF9Wu^ZE_1SMx=R#e4DdSK3(8;O|Z)->`udK@lc(KG7>qN-CZ`yaNh(- zC7hNC7P~_(XykB<9#_7NN?SZGXHS5v7v+VBDjnu}TZ*#jCl*cGN>L|45)393dv+Nk@uo!MjzC|w~ z)=pV&t{;!huviO=EDrk=i;-Wt(PMD;**0UcL5*3BPpqDdY`Zxc2YU)^EFVtn8z>9WS1DEz<*_9= zjc1FP^P>M5h0`TBUb@}LwtEU(PP?okKFy$WOOHB@d>5y7MZNTHIluZPIVUE@d3zPH zcBL3BDT}$FxQfjoi>UOd+=|_4=jyZ^#<(I|t`v)_XUThjB3ZI!FN;hU%;vNfvF>@= zWw0z}qo8zSt{rpf%Vv>z>_)G_J(7|Kq-R7Mp&aXSTFqkn)|l^u6D)34KupQihl>OL E1Ba9RU;qFB delta 9410 zcmZA62YgRgAII?%A|h6ZBxVv4#7K+~gpd$3X{^{QVyjVAd;IOaH?b+DcC@NRX=^;R zTGXmdsd|ihiW+S_pYQ+NJg>f<`|`{C{La1qd(S=R+;jhl>+?JxO!0JG&+oa|u#qtuejBjM_L&Q_RR7)X8)i{W|4-*Gf~zH-Lo$2pGcPz~RUes~6H zlez2E=PGXuZ8l|4*J+BO=)$&K-)x{ToQglO1rCYeuJ8m#Vo82f!xXH9v#~LE7uMnWW&s5+JnQVZj5)|3VqScKG3dqBWjv~9 zMx!sTz(V*j>iDBh{dv@J_mI&uo|SFG%Agt&i!N@$jG|Bzx1uh557lMAVLApx*$eE! zg5=*~cD#$~>POE00#%GjB9FveI0{2>8t%X?PJP>|#MK!D!*2aOD4R@e=X0NmV8`MyJTaEr#7oMR) zC%)|*kgd8g48O^ZObb&JX}sx;^>LN6{|?5H=c{3lYk>vHUDy?up+5H-3t%YE09S;Wi(k#{Md5a%H8zlQA4S<1o}5 zx_~L6~0(+60GIuZ)LzyTVib)uTU*K}QiR!754V>ryUliyHlY;@?iz6@zBO4j> z0gghRMDrVJGKDs_bD=FBCSQv+uxk@z24Fg>fj)_L=pt|qc@hrBEBF?hauKb9rs+HO zF&T||oF-r?T#O8_IpFMnjXvaRes0K#MX(U&!m5}P>tYBdV>k{(HE0>qspbo3|J!8x z|1=dLP3=@ zC!;3iA6Nlfx3W*slva#CH)VEEp_c!Nnq1zTO$Yj7ag0MXAPwu{1k8g+Q9bb^=EK|Q zkIzs&;?u@1Jb|d5EscQ~gSt)&7lj-Y+T(B79Y65kHQLsg_wi&q-clIb!OrR>9qr?} z9Y=Hgapmk!=wxrCGq=e!G21W_pW|E%>q4V(FKWoDrP>>IwWLsyiY~Yi=b;~lb+vD` z>gYv220d{S*2d{L4NstMpm~~YSO-)-1Vhk;eQ_=7^EtcO{k~S0DNLa;JHoIq4nQ?% zI%+IG$0c|ReQ|hqdxz68FZo$i*WSii_#8D96MEQ&E<#P>bLffrdfKrMKtDbIwJBs_ zM+*$VR>)16e#mFcX=D{PReCWQJ($g?9$L`b&Vfy+hJ1pP@hBF@#6EUC>5uC2O{h8Z z6>5^7!D(FI6r+EJ=>XILLGRiVMxYmYEM~(5)cz(Ih3!x$o{eF+1+@;G#$fdBXD3-W z79g*P3$Q+_hc2Njh{6L3%p;Sdza6ulsCU6sEQ)I}7aqh=Jc;G-u~T1ofSvWFQ9~4q z)i4?B;}lfae~UWL8T7{M1L%K^-7n4ouTgjM7Ig<<1MO0rfZUWBggWsxtcw2c*(Ev= zbCM514b6BA$HiC(4`FG%ge6dmf`%w`5dF{1oBC8_#XYDKe~P-$LmY}>@AHiq({Tu1 z!e~q$%r{w_jG8+aP&f1l%c9or_D~LI;uKWF@^g}6Skpy82e!jQI0<#4dR$cpwnya? zQ7vA9x`P9l7jK}3@CoWp^DvR>U^q6w-q;9tVpV*Jn$(fQ?Q7q)h=LxEV;F*-BkToB zqVig(xzGvYa42es_MsYb6}6JRMQ_YL(mr;+IF-C97Q%~I1D|3VmK){%w(T-=D6n{$ zTd2uVXS5y5Bvco*#lkog^Wl8doo{gR4CLm`QJjRe#@M&y5lkX~fx2M5v34?U!b;>1 zFT;&lionb#enVENv2HwMt)PFwP-eBMyp8wKRjHKX=>+yH|7`x({x%MUEG0zS` zMXXDGB5Ek+U>L4No#!a32Oc4(FvaHEvESx+49ie|6NAua0sUWzLYW12vUNZ`4Wm($ zWiyt?Ti6}*EVN@h7(0=_#58QZ$bKW*k2T3X7Td=)7Tc1K#0_{3JK(S-c4a-cg#Ir< z#ZOek<6jtnb(Y!_wnks_)z}<&qI$|>nO#zSQ2T?OydtWH>SJ}BhU%FkmKMWPKB$H-#cFsM zi{eWRME|vRjznM%u5UU~Xv&UWm>u__4*U|`vl~6h@1XAFK1SnH^uh3T_GJ`>k>p*l z7S6$zcnVW7c)h;w8#4}d+$jv#^Z%Lx!(l?1A<1|ED`U=$_QbVOd0*7zT!k9L6BvU} zPqviqY@bD^W-B#h_!W}8#-7>kexY_=_|jHSrCqQ-O@YDL?I z#qkxEz#<>nA*qeU$h)8>+Zc?)S*V78hq3q)yJPeg`hPHmbPAdrdAHgN$KzMz@8Lm= z`j|34MU83NHv9OkKsE3smd4=i_B&%k)X>dBHDnov;AZr}6POLpZKwakC|stZA^wdT z+Xg#qmyba;Y!~YByN!uhWv9Kfaae`?2`QZC%fqX zX%wpOwq0`s)quD7DMs(HUG)f?lDEjP$FD~^&6L|~f8{!li^vl`v5)6vtV8b4Nm^qo zJcHX%7aqIM{wj9dML{jB`I%iBd*T=5^N_{LB<*Lv2X~HYd2V*9>*`|wCSpZQ!*;k3 zv*RPojnAjx89pcY5 zcolnNy)W(OwxNdL2KLXwMGo5qYy=ak0riJb=gt1LyWuX=m%?Z&(ovJK;5T-So`to@ z?_+H&dDPZ-$9&|6QFnS4b=*%_0t1iP6)pxfr`n;8Ux#@y1O4!84AAp`kwPvi9y2*<*&azkPtp{u zi|ueZu0)M_^pAF(sf#XEbf!=S`{EE>ggSxGdD~@q9fPqA^%YQEJry-6x1v6O8+T!@ z3-&wXLB|W|NBtAbk6ADBBEo=+^nW0Q>s09RdVz7+;F5hmPsMWNbFeUej#=d7B)241_u_^XS1U$wu4&cYD#3s?aEKs7Aa zHGa*)jyN12U?J>w-A=ACn4NqsX2Yde1XrP+_x(^unJp8IvB{mq$AGC%=NR*!YQ^-BYnR`7sQ{`xt@x z1CoX$5;f+nQ8zXp%i{s`#b41IU!$ujg{)8c&W|lI2;X8Y4Em4#!$b#6BR_||G5UA= zIIY3ljZp5ejkV7&oAv?HafoIZwcg2Fb`gQZF}e*>W=@$^BzoSK3tjn+Mo2l zy3F@48iCcZ2_8rFNdCX=|7sn=JbbYGTmJG*{b1wa{zamwhlhLUhNF7uCXU5=S*%~7 z)`9q}9`1#w6LK2&wq8HOh?>MMYIz(?FwD$4I*Ya)cGPvmy?H^Qal6^R7Ob%{Zg zn_&&qrcvul6y>y2i{^IKXJ6(PM|lUyI%3N|>a|~;+>^S-gx0kf^#8{(nw}X%0I`P9 zcG+S^a2!+rf7>WZ!PN1R)nmnjLolP<>z4BT?9>u)h|qM`uMbHEr=uKAmzUViY;go+*hxVL3vZYrEC`vmQIwJ0DaxLnTpqce}gcZoPB*8}gxG0{Xj z=U8W#`>SeJCrM@Bai_c+CpzWY)aylX$;mVEqrRSAZQ6D_CuT`>Z~4f(5k1LX6DNt! z-FxhhPo45Gju}EZhx7T(l$Q}&U3BJx)NdmaDYw9xSewY)&giHzPPUc`??%vio2YHf>B#M*w#tE3y+1J&5BooZZozyHK_j8gY$1b>%dS6_PJBV4t zBEm<C_!X{clrMLR%-x|9+-WpOdT>F`x2y z=eU29-y-G`{~}gUe?a{|nZjDEO6(`9kQX3E5?P5m)MdkOFd1i~Cu*xq{6(};!WKpS zd0TXU>rk->ahLdkn92Tzm`-SOeL%$=!pr8yhqAT{#B|D$#A?bx#5~HSu`j;C3Pd$R zTL&2j5haLgn*V1hG$UGaKy{ozd`q+@??j{# zy~sCXGBzh_Q7%WEqWmQ>j?mVHx`X)4o$-y5{3D_``A}j8v79_}8x&5mge@ai zL=nRU)G}=|pQmL;E3?f}%PF(oGAC_*|8p+$`p#!Q@16d9&;Q*0oO92;;9P&V_RHsM zyT9q1d zD{O~7ZO7n3@=Wx@?`-d&+)HB)(iFQQ_oAY)E$3Hh6gpC|6!}l>;YTojhLiA5d=w}3 zP-+}{aT<2$sT9Xn1=tr$k^j_HeoV#Iy_6b>`M45KVl0k|P^uQL$EKWLZKS|4)oyHv zpW-0AihkJXex;(YKT3-%K&fAZ^|1&W;fpu`_u5`XX`$fWrYoYc75O-n?K99VeYB85 zQ(S|x!&dBo$L;!WQ7-5f${qLVLqDSn%wBR0m0lg?E%A{FZ;&QBuFQGL3D=6#F z^`-seDO{sM`n*p+r5yMGmS74>ebfF*O+g3B;CdWotORnqa)MZtKAw&;$R5LHxCv#u zJ?M`gptRg&WW1_d189G_vLJ3}Fm}e;n2yp!*(mGXD1EjZrNvgG9QZ}tf+sKmXGWUs zOOWxZ4q-Tci}Z$SLNmtUP?Ytn-4upUID)d_KT+-|l&f)KG|G-IqcquhY>hYVydeXl zEqMsG!&sE#%tE=tbvOhM<1oC9As92n4089w6auJNYg>YJpZWmhgtep1*a$$m;|L7I z2`DFc6lK(JL%HyeQTF=>$_3SpQK~(5L?4Vr#46y2A)CYCKWQ2?!-jokm_;d=2aEmhj+2AJpT=77wJZ1bhTh) z=8>l$bC9}#GNydk+0DhPXbLBACHBXWV`yGnfTGxsR}NygDQfqWUtm0!ek ztTkDwM=%RzaDIv1F=~o=oU)NtRmCV5ei`fHPbk~{j)539)m*?Rj3J-nrr=AV1f?Y^ zu?fD1&G912WAigMLV5G}L1S!z!6+vhi1qOS+=&Tz1AoChiwl~rR1Qv=K`Y|fnPzai zJIylB>mXdn4ihD3gO5?}=!ayb7`Q4j#UA~*j{G1NVyw$_-5HcS{|0;Dk646`R5O1Z z#8~pTu@*L*tp~kZ`B9KNXoa#O5C>x?T!Ai>JNp4!;VnD&OEY7mEj~>BAe8-ILD_yU zMp5y)o&T1>BTT)OX=cz-*h8NGR0^F~QH-0g3LE42EOY0nC{4c)rRk63YWxtTt7c@I z3w{J;l$WAh$PXBTKVwsDGnWC5-BHgg=;Zur1O-}4?ZE-qgpn3R7sR9Nn4M$B$YN|n z{xmMdZ5W85xn{x{iEYRiqc3hjc?wE!1>VLOSQ4c z2%tjlC=}&R5-=PyaSlF@a)LUKG5g_Q48uH>QNJ0R;;R^nRoDuzpo{_QaWeshp>$b1 zW?+_^LQM*vp&a-U%88ouEYeyk0VDAg(#pzu!n_OSV4pXo*x(g{(QP_)epo~Rk!^J51YbaOzCI;bUltEap!1QHHlsoN>A*fItbE<_nTpQ7~f6_lp? z8Czo$jxM7*9Hm7D+xcjeuA7ORTm231$7w6f>v#jo`M$t7&aa|ZnkHF}eaH{vM7)8Y z;P9u+4(;hkx=|Hi8Okgq7kCgG;z^X2IEP&*w+}zcnoPI<+Inkc6Xv52M8-M`$g_EpHx>cgzau(0=6zSGiVyh z1+KR9>o|nm-FUxglCc;}#X~3)Ng>MPvJr>lK1|13$aAY^9WamSODHXK5?f%cGV^%0 zMVVltP+I6=9F1F0Cb%Dv8*-~o2h9Ob;3!ty#XuZcZmuu`Z;|iCUbyp++5Q4HAaC)y zxqu+-PVPb`QMC~Rut|k!!Ja5BT!2y^epr54bu;KF@aU_nI1IDs@K8L2@;F{XxdZ>B z=ES4$0rHh7Ep`@V@co1X(f63S^O3lid>%H(-?0@osx&PehRry?iliVb#-bc}4z{Cj z_u=#8XRFK(X~)f-JdV7d>li*;iRem3dfNTdc(ZL)+2{ff8aDc`X=o! z8?-!Sp5Hkr&;4nfiE(e4ui>3Ycd0ul+wW%xFT`4B%nVn6iR5+OHlu$cjwLU~hw&Od zhDq<37Cwjl$XmQi`^(@-eAlcf!s+CnAvdr3zsH*jf5RR)?S0eNYcP`BgWa&LC$8)b~t{;QdQqTLjtsCX4+#dkOW zJN?Z(uTGppeiBDu*Yjo&&PUm<9A$9cz`oe=f|DdD}&PZMvomw^RQs z#W^{Z1Zu)BKgI1I?Apb|-KucKC(gdTJ`Q2p5pgy=D9kd2m$9?`Dv8 zzRmPZz8G(CewF`E{=S2=|1fj*eRoXLPsU}`zl8%a{;v5PUx81M7o+rfbNWTbKmxAB zLXYj{k$uFTiet)2h{zkkaebIqg z*c};OYBT!avZiiJ51OK;=0ry^ffXK<3u)iX9H@13(?VS^zdqBnogZm$>F@Xtu@Bov z@iikeUp_vFZ=*adZ5@`LvO@wbMdPV_bg=$0caWu`DZGGOl)8vv-w2uOf4rn%~LNbN%oTOVwj=?!b1`mvlBQ=zgC< zODb+417FqW%W*jVikTS2cbDXQv5VAWJ_dEQ)FFHhhhbtjOFe_nqI6By?&d^eQMx1> z8(<;I`Zah~p8x$6dQsu-VVdj!K1N=rr)kmx3?Q#SdA`r1yd709OTRVSN0(N<(eQWxyJX&+0yNInWT;x&{zard?K zU%Q`1$tzF>-+L%e%~h1acL&SRx1Xh__&0DOc?}+=FL4Sca(*>%fTd>RYCM6zpp1d? zftG%|UBVIMzL6%MgyYDUV?2I}vOZ*xrFP*XC{5jJuxZf_D1-S?tirq~vwsB7qV>i}s$GP~?FrI%oaO`l?blWkB{4mC$?+A0^Buphgh#RoYNK5~vb1#;Yw;N?1 zyN_@SdB=EjqPK7g`7byc$0V3}WizIef0*DlCyE?RUrmF?b5ouEuXZ_#7;Jb5gC>|2VLP;%E~OMQiE zilu)MaeqyrHV4=})y(btrdj%HwaG(f#tXqfwvR$uQ8_UgOJ$2YXS?q#OaEFu z1<$bkb0~f7WaDhMUymi^%4MlLun!waqwY<$^y{;7wxzbQqE(uG2gn4WV$&`41NuE| z$v+q>YmTMA1uvjXTn#cT#qrHuV;2&69GBzYQM&8iWipAplqzK>>C}tBK-S-VQpI`n zG9UZe<(;NV|6F%ZnVV1y1^pCAHNB&n+xt{+CX-n)A&+2apBugM=Z&7qmQ}=F4!NevahZt`*&_9RS<&b!Yrc`Vu7EzWZlX62sme;U~*ly=9qC7vPc775M z=q=6f!8^#qiG$Sr!>)f3r`y|0)lglI;@g-c%wDnBR@!fXY{l}lLH`S3D&=p8R(4$t z-G+>9zWKOMyLKdgLdXZJEFr9y8FdL!O861A2wC1B?&=b4g;~UYw!doE3323=IF-0V z$Q<(-Aqz9FTYvp9IqH8=UxvJs^sjDDB9pLQWFA^eSzcz_u!4}u@KHQP$RcwSZ;5{| zo$OK(eo35QU3Y?MNWEgOTgPOpmkNF!W<_UAmNLOas%O^rl;yRaLHtDc649)arGO}- z97@Cx_mejvpCV*AZqPqxv#xp>!DOp0kYy5bEzgn5i>oE_j#EB_EUgKidi}d& zH)JkTOgnn1&rhZ*{epZ0``PvTkoTVY3$cfgDWiJ%gTg$*zJFfz_L>vejE!Xml||+o zSwe}Ly2QlAy55xECKeKX?D`;kA4y{gCNnjQs7JXo1|eSzGSTV}sM_)>J4I!CDhdf% zrV+mrxx^GgmZJv!_hi0x{=GbYPnp+=URGfOrPqijEIr04Jx{oZVXSRO%%}V@kxO|O z&LCv*C*Mf4F{xrE)r-T<3&q=K?-x)p~oIEtF+hgqyIQ zc}w&4NyRZDnP|w0dDtD#6ETD=;lvT*I`J~Ggl*m;dJ`>(N2se__L9r;74aak(9S2| zMDpo`5243cH~58kiI63QjU2=o%1+`(q5*jnQHzjeph17JHnHpMD*e`z^62Uc+utyf zZI9a9_aGl9%{89rZ*O!7A0e+pjG`PxbRhZ>y{P*fS7ScDN~93uh%LkiL=o$JiE_#_ za3-;s@^IXZvUDYmlgpxiq5RpD)w5K7LAgIZL%e0z&#^adLEeB!ApaKYV>!{7*hfBx z2%y{(tCvyaH%MN>|6E#1`!}cdNg|aEYRX2$U}7o7UPLq@%Swa(U0sT6>^z%opCXpo zxv-b$dr#hl@-5;3+qES=rQ8uW$Q*l_;P4iR$IAc3}vPC7f&{ zOCd3rc#arK)V1p$qP(AwWvxMfcKwC&QnooMqwx@h9>n96Ph%co5wg61*%*(5up@Ds zs9qkU{wB!;yW$GYB#O2^)4Zs(<9%f(I?iiUGc`M>tV8d>I&RloS5``T)@(<1mLo6C z<;ZvC3PSt5{a!&f(yxed{Vs=hmVor7*tLCR?WH@qM$*%N#m)SjZXYApT-z*{BPDx&Rz|in zg~O)iWM|5mbL430xpLTQ9mC4T58M#ouHIVOAve$E%ycAYOGC&xTv@UQr{E9^{@d~8 zf|GMxatqxYq4pUvU0Hdu_uQQ9{B*gB^ejiRGndwxFIOT5OV6pk$_}~%q$RSP`OfqV zIiZ6da^z-bx@c)KHvHDK2Krm{Iy( z^??`Yy;9Pv@8Q0@Y)7t(rg3I;D@$3^s!pwl0TB^p1x0b~iae!V%1)OCH*h;VuX{>8 z2Rs$t0#AkKn5W8H;4So2I4Bf4s4w>}(rYRlaKyWajgGTHmFK|!8D^gS-o>7SY|T!` zS$ovG*t^_Q>MiuHmK{qy$GodN<$4|IQBOG=SMsy?r~9quZVp@Osr0V)u8?gGutm9d zsUuXMzR+{TQ)HoJq^o^H!s<;j=il{QzyNcV_x8SLg{b@73{;1xPhU9-zPPu8% z5&PL-{Sj_)E!)bGxOBM**_NID+r|9nwdj*oaj9H?BRQM&saz({PjUOvmjBS>+%Eme zEfweiRH$>#MQ_R3q%Y;V?IE$wyHvMdm8Z;Z6TQADv7*@khE8?UG8ns>OO@kS=zFc? zUXMArav45)q;j>#<+j4g&fa-ydL7Re*|sR~OzSQc_Cv=ta8=y9cdcpgK64c91c}QN?brPnc@?H~1InE_RUs delta 9776 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 diff --git a/data_from_portwine/locales/ru/LC_MESSAGES/PortProton.po b/data_from_portwine/locales/ru/LC_MESSAGES/PortProton.po index a17108ae..eff90622 100644 --- a/data_from_portwine/locales/ru/LC_MESSAGES/PortProton.po +++ b/data_from_portwine/locales/ru/LC_MESSAGES/PortProton.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-09-11 22:45+0500\n" -"PO-Revision-Date: 2024-09-11 22:45+0500\n" +"POT-Creation-Date: 2024-09-11 23:32+0500\n" +"PO-Revision-Date: 2024-09-11 23:33+0500\n" "Last-Translator: \n" "Language-Team: \n" "Language: ru_RU\n" @@ -1736,18 +1736,52 @@ msgstr "Выключить" msgid "Enable" msgstr "Включить" +msgid "Change settings for" +msgstr "Изменить настройки для" + msgid "Change mirror to" msgstr "Сменить зеркало на" +msgid "" +"Depending on which mirror is selected, updates will be downloaded from there." +msgstr "" +"В зависимости от того, какое выбрано зеркало, оттуда и будут загружаться " +"обновления." + msgid "Change branch to" msgstr "Сменить версию на" +msgid "" +"Depending on the version of the scripts, PortProton will receive the latest " +"changes first (the DEVEL branch), the STABLE branch is updated later and is " +"stable." +msgstr "" +"В зависимости от версии скриптов, PortProton будет получать самые последнее " +"изменения раньше всех (ветка DEVEL), ветка STABLE обновляется позже и " +"является стабильной." + msgid "Change start gui to" msgstr "Изменить интерфейс запуска на" +msgid "" +"When using PANED in the game start menu, additional buttons are located on " +"one large page; if NOTEBOOK, then they are divided into several." +msgstr "" +"При использовании PANED в меню запуске игры дополнительные кнопки находятся " +"на одной большой странице, если NOTEBOOK, то поделены на несколько." + msgid "steam covers download" msgstr "скачивание обложек для steam" +msgid "" +"If downloading steam covers is enabled, they will be downloaded and created. " +"(Disablement is provided in cases where their downloading is unavailable for " +"some reason)" +msgstr "" +"Если скачивания обложек steam включено, то они будут загружаться и " +"создаваться. (Отключение предусмотрено в тех случаях, когда их скачивание по " +"каким-то причинам недоступно)" + msgid "Choose a graphics card to run the game" msgstr "Выбрать видеокарту для запуска игры" diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 382eccad..37155c1b 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -3855,7 +3855,7 @@ A brief instruction: --field="$(gettext "ADD ARGUMENTS FOR .EXE FILE")!$(gettext "Adding an argument after the .exe file, just like you would add an argument in a shortcut on a WINDOWS system") :CBE" "$(combobox_fix --empty "\\${LAUNCH_PARAMETERS[@]}" "-dx11 -skipintro 1")" \ --field=":LBLH" "" \ --field="$(gettext "Limit the use of processor cores")!$(gettext "Limiting the number of CPU cores is useful for Unity games (It is recommended to set the value equal to 8)") :CB" "$(combobox_fix --disabled "${CPU_LIMIT_VAR}" "${GET_LOGICAL_CORE}")" \ - --field="$(gettext "Forcibly select the OpenGL version for the game")!$(gettext "You can select the required OpenGL version, some games require a forced Compatibility Profile (COMPAT). (Examples are in the drop-down list)") :CB" "$(combobox_fix --disabled "${PW_MESA_GL_VERSION_OVERRIDE}" "4.6COMPAT!4.6!4.5COMPAT!4.5!3.3COMPAT!3.3")" \ + --field="$(gettext "Forcibly select the OpenGL version for the game")!$(gettext "You can select the required OpenGL version, some games require a forced Compatibility Profile (COMPAT). (Examples are in the drop-down list)") :CBE" "$(combobox_fix --disabled "${PW_MESA_GL_VERSION_OVERRIDE}" "4.6COMPAT!4.6!4.5COMPAT!4.5!3.3COMPAT!3.3")" \ --field="$(gettext "Forcibly select the VKD3D feature level")!$(gettext "You can set a forced feature level VKD3D for games on DirectX12") :${VKD3D_CB}" "$(combobox_fix --disabled "${PW_VKD3D_FEATURE_LEVEL}" "12_2!12_1!12_0!11_1!11_0")" \ --field="$(gettext "Force certain locale for an app:")!$(gettext "Fixes encoding issues in legacy software") :CB" "$(combobox_fix --disabled "${PW_LOCALE_SELECT}" "$LOCALE_LIST")" \ 1> "${PW_TMPFS_PATH}/tmp_output_yad_fps_limit" 2>/dev/null & @@ -4696,12 +4696,13 @@ gui_userconf () { KEY_USERCONF_GUI=$RANDOM - "${pw_yad}" --plug=$KEY_USERCONF_GUI --tabnum="1" --form --columns=2 --separator=" " --text-align=center --align-buttons --homogeneous-column \ - --gui-type-text="${PANED_GUI_TYPE_TEXT_UP}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_UP}" \ - --field=" $(gettext "Change mirror to") $NEW_MIRROR"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_mirror"' \ - --field=" $(gettext "Change branch to") $NEW_BRANCH"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_branch"' \ - --field=" $(gettext "Change start gui to") $NEW_START_GUI"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_gui_start"' \ - --field=" $NEW_STEAM_BEHAVIOR $(gettext "steam covers download")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --userconf change_download_grid"' \ + "${pw_yad}" --plug=$KEY_USERCONF_GUI --tabnum="1" --form --columns=3 --separator=" " --text-align=center \ + --text "$(gettext "Change settings for") user.conf\n $(gettext "NOTE: To display help for each item, simply hover your mouse over the text")" \ + --align-buttons --homogeneous-column --gui-type-text="${PANED_GUI_TYPE_TEXT_UP}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_UP}" \ + --field=" $(gettext "Change mirror to") $NEW_MIRROR"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Depending on which mirror is selected, updates will be downloaded from there.")":"FBTN" '@bash -c "button_click --userconf change_mirror"' \ + --field=" $(gettext "Change branch to") $NEW_BRANCH"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Depending on the version of the scripts, PortProton will receive the latest changes first (the DEVEL branch), the STABLE branch is updated later and is stable.")":"FBTN" '@bash -c "button_click --userconf change_branch"' \ + --field=" $(gettext "Change start gui to") $NEW_START_GUI"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "When using PANED in the game start menu, additional buttons are located on one large page; if NOTEBOOK, then they are divided into several.")":"FBTN" '@bash -c "button_click --userconf change_gui_start"' \ + --field=" $NEW_STEAM_BEHAVIOR $(gettext "steam covers download")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "If downloading steam covers is enabled, they will be downloaded and created. (Disablement is provided in cases where their downloading is unavailable for some reason)")":"FBTN" '@bash -c "button_click --userconf change_download_grid"' \ 2>/dev/null & if [[ ! -z "${PW_SOUND_DRIVER_USE}" ]] \ From caa0ddcb07ee435f7ee45281ee21a05560663d14 Mon Sep 17 00:00:00 2001 From: Htylol Date: Thu, 12 Sep 2024 01:29:33 +0500 Subject: [PATCH 11/17] Added open directory --- data_from_portwine/scripts/functions_helper | 10 +++++++++- data_from_portwine/scripts/start.sh | 3 +++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 37155c1b..8d12d7c0 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -4696,7 +4696,7 @@ gui_userconf () { KEY_USERCONF_GUI=$RANDOM - "${pw_yad}" --plug=$KEY_USERCONF_GUI --tabnum="1" --form --columns=3 --separator=" " --text-align=center \ + "${pw_yad}" --plug=$KEY_USERCONF_GUI --tabnum="1" --form --columns=2 --separator=" " --text-align=center \ --text "$(gettext "Change settings for") user.conf\n $(gettext "NOTE: To display help for each item, simply hover your mouse over the text")" \ --align-buttons --homogeneous-column --gui-type-text="${PANED_GUI_TYPE_TEXT_UP}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_UP}" \ --field=" $(gettext "Change mirror to") $NEW_MIRROR"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "Depending on which mirror is selected, updates will be downloaded from there.")":"FBTN" '@bash -c "button_click --userconf change_mirror"' \ @@ -5585,6 +5585,14 @@ change_download_grid () { } export -f change_download_grid +open_game_folder () { + xdg-open "${PATH_TO_GAME}" + /usr/bin/env bash -c ${pw_full_command_line[*]} & + print_info "Restarting PP after open game folder..." + exit 0 +} +export -f open_game_folder + change_gui_start () { if [[ "$PW_GUI_START" == "NOTEBOOK" ]] ; then sed -i 's/="NOTEBOOK"/="PANED"/g' "$USER_CONF" diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index b206ccb7..8a368ee8 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -594,6 +594,7 @@ if [[ -f "${portwine_exe}" ]] ; then --gui-type-layout="${START_GUI_TYPE_LAYOUT_NOTEBOOK}" \ --field=" $(gettext "Base settings")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Edit database file for") ${PORTWINE_DB}":"FBTN" '@bash -c "button_click --start 118"' \ --field=" $(gettext "Settings user.conf")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Settings for user.conf")":"FBTN" '@bash -c "button_click --start 128"' \ + --field=" $(gettext "Open directory")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Open directory with .ppdb file")":"FBTN" '@bash -c "button_click --start open_game_folder"' \ --field=" vkBasalt"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)")":"FBTN" '@bash -c "button_click --start 120"' \ --field=" MangoHud"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable Mangohud by default (R_SHIFT + F12 keyboard shortcuts disable Mangohud)")":"FBTN" '@bash -c "button_click --start 122"' \ --field=" dgVoodoo2"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable dgVoodoo2 by default (This wrapper fixes many compatibility and rendering issues when running old games)")":"FBTN" '@bash -c "button_click --start 124"' \ @@ -638,6 +639,7 @@ if [[ -f "${portwine_exe}" ]] ; then --align-buttons --homogeneous-row --homogeneous-column \ --field=" $(gettext "Base settings")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Edit database file for") ${PORTWINE_DB}":"FBTN" '@bash -c "button_click --start 118"' \ --field=" $(gettext "Settings user.conf")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Settings for user.conf")":"FBTN" '@bash -c "button_click --start 128"' \ + --field=" $(gettext "Open directory")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Open directory with .ppdb file")":"FBTN" '@bash -c "button_click --start open_game_folder"' \ --field=" vkBasalt"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)")":"FBTN" '@bash -c "button_click --start 120"' \ --field=" MangoHud"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable Mangohud by default (R_SHIFT + F12 keyboard shortcuts disable Mangohud)")":"FBTN" '@bash -c "button_click --start 122"' \ --field=" dgVoodoo2"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"$(gettext "Enable dgVoodoo2 by default (This wrapper fixes many compatibility and rendering issues when running old games)")":"FBTN" '@bash -c "button_click --start 124"' \ @@ -902,6 +904,7 @@ esac change_branch) change_branch ;; change_gui_start) change_gui_start ;; change_download_grid) change_download_grid ;; + open_game_folder) open_game_folder ;; 118) gui_edit_db ;; 120) gui_vkbasalt ;; 122) gui_mangohud ;; From 9ba5662d9523c386b745cfb1d271c0e605c825c8 Mon Sep 17 00:00:00 2001 From: Htylol Date: Thu, 12 Sep 2024 02:48:59 +0500 Subject: [PATCH 12/17] Added choice gui themes --- data_from_portwine/locales/PortProton.pot | 14 +++++++++++- .../locales/es/LC_MESSAGES/PortProton.mo | Bin 67678 -> 68039 bytes .../locales/es/LC_MESSAGES/PortProton.po | 16 +++++++++++-- .../locales/ru/LC_MESSAGES/PortProton.mo | Bin 93219 -> 93596 bytes .../locales/ru/LC_MESSAGES/PortProton.po | 21 +++++++++++++++--- data_from_portwine/scripts/functions_helper | 4 +++- 6 files changed, 48 insertions(+), 7 deletions(-) diff --git a/data_from_portwine/locales/PortProton.pot b/data_from_portwine/locales/PortProton.pot index c24f5f93..d11c27db 100644 --- a/data_from_portwine/locales/PortProton.pot +++ b/data_from_portwine/locales/PortProton.pot @@ -7,7 +7,7 @@ msgid "" msgstr "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2024-09-11 23:35+0500\n" + "POT-Creation-Date: 2024-09-12 02:40+0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -74,6 +74,12 @@ msgstr "" msgid "Settings for user.conf" msgstr "" +msgid "Open directory" +msgstr "" + +msgid "Open directory with .ppdb file" +msgstr "" + msgid "Enable vkBasalt by default to improve graphics in games running on " "Vulkan. (The HOME hotkey disables vkbasalt)" msgstr "" @@ -1394,6 +1400,12 @@ msgstr "" msgid "Fixes sound popling if choice alsa" msgstr "" +msgid "Choice gui themes" +msgstr "" + +msgid "Allows you to select a theme for PortProton" +msgstr "" + msgid "SETTINGS USER.CONF" msgstr "" diff --git a/data_from_portwine/locales/es/LC_MESSAGES/PortProton.mo b/data_from_portwine/locales/es/LC_MESSAGES/PortProton.mo index 76efd8a4743b4a736431e735bca8cd86c212bdff..5eff950a7493f2b3159c3c663f3ce6a5d256fffc 100644 GIT binary patch delta 9856 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 F{U0*p%y9q! delta 9504 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 a7EQ}.ppdb file" +msgstr "Abrir directorio con el archivo .ppdb" + msgid "" "Enable vkBasalt by default to improve graphics in games running on Vulkan. " "(The HOME hotkey disables vkbasalt)" @@ -1825,6 +1831,12 @@ msgstr "Controlador de audio de vino elegido" msgid "Fixes sound popling if choice alsa" msgstr "Corrige el sonido estallido de elección alsa alsa" +msgid "Choice gui themes" +msgstr "Temas de interfaz gráfica de usuario elegidos" + +msgid "Allows you to select a theme for PortProton" +msgstr "Le permite seleccionar un tema para PortProton" + msgid "SETTINGS USER.CONF" msgstr "AJUSTES USUARIO.CONF" diff --git a/data_from_portwine/locales/ru/LC_MESSAGES/PortProton.mo b/data_from_portwine/locales/ru/LC_MESSAGES/PortProton.mo index ef018d5b7ceec9b3acae58826626dd5f42a66751..64a50fd854715a9633b904f4c70d7ba50465e789 100644 GIT binary patch delta 10217 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 Pb+F;{Rr_EgvDN.ppdb file" +msgstr "Открывает папку с .ppdb файлом" + msgid "" "Enable vkBasalt by default to improve graphics in games running on Vulkan. " "(The HOME hotkey disables vkbasalt)" @@ -1793,11 +1799,17 @@ msgstr "" "программ в PortProton)" msgid "Choice wine audio driver" -msgstr "Выбрать звуковой драйвер (в user.conf)" +msgstr "Выбрать звуковой драйвер" msgid "Fixes sound popling if choice alsa" msgstr "Выбор alsa исправляет заикание звука" +msgid "Choice gui themes" +msgstr "Выбор графической темы" + +msgid "Allows you to select a theme for PortProton" +msgstr "Позволяет выбрать тему для PortProton" + msgid "SETTINGS USER.CONF" msgstr "НАСТРОЙКИ USER.CONF" @@ -2132,6 +2144,9 @@ msgstr "ПРИСОЕДЕНИТЬСЯ" msgid "THIRD PARTY LIBRARIES" msgstr "БИБЛИОТЕКИ" +#~ msgid "Open game folder" +#~ msgstr "Открыть папку с игрой" + #~ msgid "" #~ "Fixes artifacts on AMD and Intel video cards. (Use only when necessary)." #~ msgstr "" diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 8d12d7c0..d34ab3d0 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -4725,6 +4725,7 @@ gui_userconf () { --gui-type-text="${PANED_GUI_TYPE_TEXT_DOWN}" --gui-type-layout="${PANED_GUI_TYPE_LAYOUT_DOWN}" \ --field="$(gettext "Choose a graphics card to run the game")!$(gettext "Select which video card will be used to run the game (used for all running games and programs in PortProton)") :CB" "$(combobox_fix --disabled "${GPU_VAR}" "${GET_GPU_NAMES}")" \ --field="$(gettext "Choice wine audio driver")!$(gettext "Fixes sound popling if choice alsa") :CB" "$(combobox_fix --disabled "${SOUND_DRIVER_VAR}" "alsa!oss!pulse")" \ + --field="$(gettext "Choice gui themes")!$(gettext "Allows you to select a theme for PortProton") :CB" "$(combobox_fix "${GUI_THEME}" "default!compact!classic")" \ 1> "${PW_TMPFS_PATH}/tmp_yad_userconf_set_cb" 2>/dev/null & "${pw_yad}" --key=$KEY_USERCONF_GUI --paned \ @@ -4750,7 +4751,8 @@ gui_userconf () { PW_ADD_SETTINGS_UC=$(head -n 1 "${PW_TMPFS_PATH}/tmp_yad_userconf_set_cb") PW_GPU_USE="$(echo ${PW_ADD_SETTINGS_UC} | awk -F"%" '{print $1}')" PW_SOUND_DRIVER_USE="$(echo ${PW_ADD_SETTINGS_UC} | awk -F"%" '{print $2}')" - edit_user_conf_from_gui PW_GPU_USE PW_SOUND_DRIVER_USE + GUI_THEME="$(echo ${PW_ADD_SETTINGS_UC} | awk -F"%" '{print $3}')" + edit_user_conf_from_gui PW_GPU_USE PW_SOUND_DRIVER_USE GUI_THEME /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 ;; From fabbc18d06bfb2067aee60696cfb4331bbc111eb Mon Sep 17 00:00:00 2001 From: Htylol Date: Thu, 12 Sep 2024 13:37:45 +0500 Subject: [PATCH 13/17] mini edition --- data_from_portwine/scripts/functions_helper | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index d34ab3d0..879a7fcf 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -5455,9 +5455,8 @@ pw_autoinstall_from_db () { } button_click () { - if [[ ! -z $(pidof -s yad) ]] || [[ ! -z $(pidof -s yad_gui_pp) ]] ; then - [[ ! -z "$2" ]] && echo "$2" > "${PW_TMPFS_PATH}/tmp_yad_form" - case "$1" in + if [[ -n $(pidof -s yad) ]] || [[ -n $(pidof -s yad_gui_pp) ]] ; then + [[ -n "$1" ]] && case "$1" in --normal) kill -s SIGUSR1 $(pgrep -a yad | grep "\--key=${KEY} \--notebook" | awk '{print $1}') > /dev/null 2>&1 ;; @@ -5469,14 +5468,15 @@ button_click () { kill -s SIGUSR1 $(pgrep -a yad | grep "\--key=${KEY_USERCONF_GUI}" | awk '{print $1}') > /dev/null 2>&1 ;; esac + [[ -n "$2" ]] && echo "$2" > "${PW_TMPFS_PATH}/tmp_yad_form" fi } export -f button_click run_desktop_b_click () { - [[ ! -z "$1" ]] && echo "$1" > "${PW_TMPFS_PATH}/tmp_yad_form" + [[ -n "$1" ]] && echo "$1" > "${PW_TMPFS_PATH}/tmp_yad_form" - if [[ ! -z $(pidof -s yad) ]] || [[ ! -z $(pidof -s yad_gui_pp) ]] ; then + if [[ -n $(pidof -s yad) ]] || [[ -n $(pidof -s yad_gui_pp) ]] ; then kill -s SIGUSR1 $(pgrep -a yad | grep "\--key=${KEY} \--notebook" | awk '{print $1}') > /dev/null 2>&1 fi if check_flatpak From 5b344720133bd922485f457b3ef6576766a5b769 Mon Sep 17 00:00:00 2001 From: Htylol Date: Thu, 12 Sep 2024 19:12:14 +0500 Subject: [PATCH 14/17] I made double square brackets everywhere (they work faster), ! -z passed to -n, ! -n to z --- data_from_portwine/scripts/add_in_steam.sh | 40 +-- data_from_portwine/scripts/clear_db.sh | 2 +- data_from_portwine/scripts/functions_helper | 258 +++++++++--------- .../scripts/portwine_db/Anno4.ppdb | 2 +- .../scripts/portwine_db/Frozen Throne.ppdb | 2 +- .../scripts/portwine_db/GalaxyClient.ppdb | 2 +- .../WorldOfTanksEnCoreLauncher.ppdb | 10 +- .../scripts/portwine_db/gfclient.ppdb | 4 +- ...dal-of-honor-allied-assault-war-chest.ppdb | 2 +- .../scripts/pw_autoinstall/PW_GAMEFORGE | 4 +- .../scripts/pw_autoinstall/PW_OSU | 2 +- .../scripts/pw_autoinstall/PW_STEAM | 2 +- .../scripts/pw_autoinstall/PW_WOSB | 2 +- data_from_portwine/scripts/start.sh | 27 +- 14 files changed, 179 insertions(+), 180 deletions(-) diff --git a/data_from_portwine/scripts/add_in_steam.sh b/data_from_portwine/scripts/add_in_steam.sh index a1d300bf..52def2dc 100755 --- a/data_from_portwine/scripts/add_in_steam.sh +++ b/data_from_portwine/scripts/add_in_steam.sh @@ -72,12 +72,12 @@ function setGameArt { GAMEARTBASE="$( basename "$GAMEARTSOURCE" )" GAMEARTDEST="${SGGRIDDIR}/${GAMEARTAPPID}${GAMEARTSUFFIX}.${GAMEARTBASE#*.}" # path to filename in grid e.g. turns "/home/gaben/GamesArt/cs2_hero.png" into "~/.local/share/Steam/userdata/1234567/config/grid/4440654_hero.png" - if [ -n "$GAMEARTSOURCE" ]; then - if [ -f "$GAMEARTDEST" ]; then + if [[ -n "$GAMEARTSOURCE" ]] ; then + if [[ -f "$GAMEARTDEST" ]] ; then rm "$GAMEARTDEST" fi - if [ -f "$GAMEARTSOURCE" ]; then + if [[ -f "$GAMEARTSOURCE" ]] ; then $GAMEARTCMD "$GAMEARTSOURCE" "$GAMEARTDEST" fi fi @@ -143,12 +143,12 @@ function downloadArtFromSteamGridDB { SGDB_ENDPOINT_STR="${SEARCHENDPOINT}/$(echo "$SEARCHID" | awk '{print $1}' | paste -s -d, -)?" - [ -n "$SEARCHSTYLES" ] && SGDB_ENDPOINT_STR+="&styles=${SEARCHSTYLES}" - [ -n "$SEARCHDIMS" ] && SGDB_ENDPOINT_STR+="&dimensions=${SEARCHDIMS}" - [ -n "$SEARCHTYPES" ] && SGDB_ENDPOINT_STR+="&types=${SEARCHTYPES}" - [ -n "$SEARCHNSFW" ] && SGDB_ENDPOINT_STR+="&nsfw=${SEARCHNSFW}" - [ -n "$SEARCHHUMOR" ] && SGDB_ENDPOINT_STR+="&humor=${SEARCHHUMOR}" - [ -n "$SEARCHEPILEPSY" ] && SGDB_ENDPOINT_STR+="&epilepsy=${SEARCHEPILEPSY}" + [[ -n "$SEARCHSTYLES" ]] && SGDB_ENDPOINT_STR+="&styles=${SEARCHSTYLES}" + [[ -n "$SEARCHDIMS" ]] && SGDB_ENDPOINT_STR+="&dimensions=${SEARCHDIMS}" + [[ -n "$SEARCHTYPES" ]] && SGDB_ENDPOINT_STR+="&types=${SEARCHTYPES}" + [[ -n "$SEARCHNSFW" ]] && SGDB_ENDPOINT_STR+="&nsfw=${SEARCHNSFW}" + [[ -n "$SEARCHHUMOR" ]] && SGDB_ENDPOINT_STR+="&humor=${SEARCHHUMOR}" + [[ -n "$SEARCHEPILEPSY" ]] && SGDB_ENDPOINT_STR+="&epilepsy=${SEARCHEPILEPSY}" set -o pipefail RESPONSE=$(curl -H "Authorization: Bearer $SGDBAPIKEY" -s "$SGDB_ENDPOINT_STR" 2> >(grep -v "SSL_INIT")) @@ -193,17 +193,17 @@ function downloadArtFromSteamGridDB { DLDST="${GRIDDLDIR}/${SGDBFILENAME}.${GRIDDLURL##*.}" STARTDL=1 - if [ -f "$DLDST" ]; then - if [ "$SGDBHASFILE" == "backup" ]; then + if [[ -f "$DLDST" ]] ; then + if [[ "$SGDBHASFILE" == "backup" ]] ; then BACKDIR="${GRIDDLDIR}/backup" mkdir -p "$BACKDIR" mv "$DLDST" "$BACKDIR" - elif [ "$SGDBHASFILE" == "replace" ]; then + elif [[ "$SGDBHASFILE" == "replace" ]] ; then rm "$DLDST" 2>/dev/null fi fi - if [ "$STARTDL" -eq 1 ]; then + if [[ "$STARTDL" -eq 1 ]] ; then filename="$(basename "$DLDST")" curl -f -# -A 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)' -H 'Cache-Control: no-cache, no-store' -H 'Pragma: no-cache' -L "$DLSRC" -o "$DLDST" 2>&1 | \ tr '\r' '\n' | sed -ur 's|[# ]+||g;s|.*=.*||g;s|.*|#Downloading at &\n&|g' | \ @@ -217,7 +217,7 @@ function downloadArtFromSteamGridDB { done } -if [ -f "$SCPATH" ]; then +if [[ -f "$SCPATH" ]] ; then cp "$SCPATH" "${SCPATH//.vdf}_${PROGNAME}_backup.vdf" 2>/dev/null truncate -s-2 "$SCPATH" OLDSET="$(grep -aPo '\x00[0-9]\x00\x02appid' "$SCPATH" | tail -n1 | tr -dc '0-9')" @@ -231,11 +231,11 @@ fi function getSGDBGameIDFromTitle { SGDBSEARCHNAME="$1" - if [ -n "$SGDBSEARCHNAME" ]; then + if [[ -n "$SGDBSEARCHNAME" ]] ; then SGDBSEARCHENDPOINT="${BASESTEAMGRIDDBAPI}/search/autocomplete/${SGDBSEARCHNAME}" SGDBSEARCHNAMERESP="$(curl -H "Authorization: Bearer $SGDBAPIKEY" -s "$SGDBSEARCHENDPOINT" 2> >(grep -v "SSL_INIT") )" if jq -e '.success' 1> /dev/null <<< "$SGDBSEARCHNAMERESP"; then - if [ "$(jq '.data | length' <<< "$SGDBSEARCHNAMERESP" )" -gt 0 ]; then + if [[ "$(jq '.data | length' <<< "$SGDBSEARCHNAMERESP" )" -gt 0 ]] ; then SGDBSEARCH_FOUNDNAME="$(jq '.data[0].name' <<< "$SGDBSEARCHNAMERESP" )" SGDBSEARCH_FOUNDGAID="$(jq '.data[0].id' <<< "$SGDBSEARCHNAMERESP" )" @@ -280,10 +280,10 @@ function commandlineGetSteamGridDBArtwork { done # If we pass a name to search on and we get a Game ID back from SteamGridDB, set this as the ID to search for artwork on - if [ -n "$GSGDBA_SEARCHNAME" ]; then - if [ -n "$GSGDBA_FILENAME" ]; then + if [[ -n "$GSGDBA_SEARCHNAME" ]] ; then + if [[ -n "$GSGDBA_FILENAME" ]] ; then GSGDBA_FOUNDGAMEID="$( getSGDBGameIDFromTitle "$GSGDBA_SEARCHNAME" )" - if [ -n "$GSGDBA_FOUNDGAMEID" ]; then + if [[ -n "$GSGDBA_FOUNDGAMEID" ]] ; then GSGDBA_APPID="$GSGDBA_FOUNDGAMEID" SGDBENDPOINTTYPE="game" fi @@ -327,7 +327,7 @@ NOSTSEARCHID="" # ID to search for the SteamGridDB artwork on (either Steam App NOSTSEARCHFLAG="--nonsteam" # Whether to search using a Steam AppID or SteamGridDB Game ID (will be set to --steam if we get an AppID) # Only add NOSTAPPNAME as fallback if we don't have an ID to search on, because commandlineGetSteamGridDBArtwork will prefer name over ID, so if we have to fall back to Non-Steam Name (i.e. no entered custom name) then only do so if we don't have an ID given -if [ -n "$NOSTAPPNAME" ]; then +if [[ -n "$NOSTAPPNAME" ]] ; then NOSTSEARCHNAME="$NOSTAPPNAME" NOSTSEARCHNAME="${NOSTSEARCHNAME// /_}" fi diff --git a/data_from_portwine/scripts/clear_db.sh b/data_from_portwine/scripts/clear_db.sh index 0b1f9f8c..74e7ab46 100755 --- a/data_from_portwine/scripts/clear_db.sh +++ b/data_from_portwine/scripts/clear_db.sh @@ -9,7 +9,7 @@ IFS=$'\n' unset DUPLICATE DUPLICATE="$(cat "$SELF_PATH/portwine_db/"* | grep -E ".exe" | grep '#' | uniq -D | sort -u)" -if [[ ! -z "$DUPLICATE" ]] ; then +if [[ -n "$DUPLICATE" ]] ; then for duplicate_db in $DUPLICATE ; do echo -e "\nDuplicate:" grep -E "$duplicate_db" "$SELF_PATH/portwine_db/"* | awk -F"portwine_db/" '{print $2}' diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 879a7fcf..472b606b 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -197,34 +197,34 @@ try_copy_file_with_checksums () { export -f try_copy_file_with_checksums try_copy_dir () { - if [ ! -d "$1" ] ; then print_info "directory $1 not found for copy" - elif [ -z "$2" ] ; then print_error "no way to copy directory $1" + if [[ ! -d "$1" ]] ; then print_info "directory $1 not found for copy" + elif [[ -z "$2" ]] ; then print_error "no way to copy directory $1" else cp -fr "$1" "$2" - [ "$?" != 0 ] && print_error "failed to copy directory $1 to $2" || return 0 + [[ "$?" != 0 ]] && print_error "failed to copy directory $1 to $2" || return 0 fi return 1 } export -f try_copy_dir try_remove_file () { - if [ -f "$1" ] || [ ! -e "$1" ] ; then + if [[ -f "$1" ]] || [[ ! -e "$1" ]] ; then rm -f "$1" - [ "$?" == 0 ] && return 0 || return 1 + [[ "$?" == 0 ]] && return 0 || return 1 fi } export -f try_remove_file try_remove_dir () { - if [ -d "$1" ] ; then + if [[ -d "$1" ]] ; then rm -fr "$1" - [ "$?" == 0 ] && return 0 || return 1 + [[ "$?" == 0 ]] && return 0 || return 1 fi } export -f try_remove_dir create_new_dir () { - if [ ! -d "$1" ] ; then + if [[ ! -d "$1" ]] ; then mkdir -p "$1" fi return 0 @@ -249,9 +249,9 @@ export -f try_force_link_file check_symlink () { CHK_SYMLINK_FILE="$(file "$1")" - if [[ ! -z "$(echo "$CHK_SYMLINK_FILE" | grep -v "broken" | grep "symbolic link to" | awk '{print $1}')" ]] ; then + if [[ -n "$(echo "$CHK_SYMLINK_FILE" | grep -v "broken" | grep "symbolic link to" | awk '{print $1}')" ]] ; then return 0 - elif [[ ! -z "$(echo "$CHK_SYMLINK_FILE" | grep "broken symbolic link to" | awk '{print $1}')" ]] ; then + elif [[ -n "$(echo "$CHK_SYMLINK_FILE" | grep "broken symbolic link to" | awk '{print $1}')" ]] ; then print_error "remove broken symlink: $CHK_SYMLINK_FILE" rm -fr "$CHK_SYMLINK_FILE" return 1 @@ -262,18 +262,18 @@ check_symlink () { export -f check_symlink try_force_link_dir () { - if [ ! -d "$1" ] ; then print_info "directory $1 not found for link" - elif [ -z "$2" ] ; then print_error "no way to link directory $1" + if [[ ! -d "$1" ]] ; then print_info "directory $1 not found for link" + elif [[ -z "$2" ]] ; then print_error "no way to link directory $1" else ln -s -f -r "$1" "$2" - [ "$?" != 0 ] && print_error "failed to link directory $1 to $2" || return 0 + [[ "$?" != 0 ]] && print_error "failed to link directory $1 to $2" || return 0 fi return 1 } export -f try_force_link_dir check_process () { - [ ! -n "$(ps cax | grep "$1" | awk '{print $1}')" ] && return 0 || return 1 + [[ -z "$(ps cax | grep "$1" | awk '{print $1}')" ]] && return 0 || return 1 } export -f check_process @@ -330,7 +330,7 @@ try_download () { if check_gamescope_session ; then $PW_TERM curl -f -# -A 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)' -H 'Cache-Control: no-cache, no-store' \ -H 'Pragma: no-cache' -L ${FIRST_URL[@]} -o "$dest" - [ "$?" != 0 ] && return 1 || return 0 + [[ "$?" != 0 ]] && return 1 || return 0 fi # Normal download @@ -487,7 +487,7 @@ check_start_from_steam () { } check_gamescope_session () { - if [[ ! -z "$GAMESCOPE_IN_USE" ]] + if [[ -n "$GAMESCOPE_IN_USE" ]] then [[ "$GAMESCOPE_IN_USE" == 1 ]] && return 0 || return 1 fi if echo "${DESKTOP_SESSION}" | grep -i "gamescope" &>/dev/null ; then @@ -500,7 +500,7 @@ check_gamescope_session () { } check_wayland_session () { - if [[ ! -z "$WAYLAND_IN_USE" ]] + if [[ -n "$WAYLAND_IN_USE" ]] then [[ "$WAYLAND_IN_USE" == 1 ]] && return 0 || return 1 fi if echo "${XDG_SESSION_TYPE}" | grep -i "wayland" &>/dev/null ; then @@ -514,7 +514,7 @@ check_wayland_session () { export -f check_wayland_session check_flatpak () { - if [[ ! -z "$FLATPAK_IN_USE" ]] + if [[ -n "$FLATPAK_IN_USE" ]] then [[ "$FLATPAK_IN_USE" == 1 ]] && return 0 || return 1 fi if grep -i "flatpak" /etc/os-release &>/dev/null ; then @@ -547,7 +547,7 @@ unpack () { pw_start_progress_bar_cover_block "${COVERS_PATH}/unpacking_${LANGUAGE_GIF}.gif" $command "$1" -C "$2" 2>/dev/null pw_stop_progress_bar_cover_block - [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 + [[ "${PIPESTATUS[0]}" != 0 ]] && print_error "File $1 unpacking error." && return 1 || return 0 else $command "$1" -C "$2" && return 0 || return 1 fi @@ -701,7 +701,7 @@ init_wine_ver () { then export PW_WINE_USE="USE_SYSTEM_WINE" elif [[ "${PW_WINE_VER}" == "GET-OTHER-WINE" ]] then gui_proton_downloader - elif [[ ! -z "${PW_WINE_VER}" ]] + elif [[ -n "${PW_WINE_VER}" ]] then export PW_WINE_USE="$PW_WINE_VER" fi unset PW_WINE_VER @@ -753,7 +753,7 @@ init_wine_ver () { done mv -f "${WINEDIR}/dist"/* "${WINEDIR}/" rm -fr "${WINEDIR}/dist" - elif [ -f "${WINEDIR}/proton_dist.tar" ] ; then + elif [[ -f "${WINEDIR}/proton_dist.tar" ]] ; then unpack "${WINEDIR}/proton_dist.tar" "${WINEDIR}/" for clear_dist_files in $(ls "${WINEDIR}" | sed -e "s/^bin$//g" | sed -e "s/^lib$//g" | sed -e "s/^lib64$//g" | sed -e "s/^share$//g" | sed -e "s/^version$//g") ; do rm -fr "${WINEDIR}/$clear_dist_files" @@ -849,12 +849,12 @@ ${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:\ /overrides/lib/x86_64-linux-gnu:\ /overrides/lib/i386-linux-gnu" - if [ ! -z "${PATH}" ] + if [[ -n "${PATH}" ]] then export PW_PATH="${PATH}:${PW_PLUGINS_PATH}/portable/bin" else export PW_PATH="${PW_PLUGINS_PATH}/portable/bin" fi - if [[ ! -z "${PW_SANDBOX_HOME_PATH}" && -d "${PW_SANDBOX_HOME_PATH}" ]] ; then + if [[ -n "${PW_SANDBOX_HOME_PATH}" && -d "${PW_SANDBOX_HOME_PATH}" ]] ; then export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \ --unshare-home \ --home=${PW_SANDBOX_HOME_PATH} \ @@ -892,13 +892,13 @@ ${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:\ unset PRESSURE_VESSEL_FILESYSTEMS_RO PRESSURE_VESSEL_FILESYSTEMS_RW for PWRTMRO in ${PW_RT_MOUNT_RO[*]} ; do - if [ ! -z "${PRESSURE_VESSEL_FILESYSTEMS_RO}" ] + if [[ -n "${PRESSURE_VESSEL_FILESYSTEMS_RO}" ]] then export PRESSURE_VESSEL_FILESYSTEMS_RO="${PRESSURE_VESSEL_FILESYSTEMS_RO}:${PWRTMRO}" else export PRESSURE_VESSEL_FILESYSTEMS_RO="${PWRTMRO}" fi done for PWRTMRW in ${PW_RT_MOUNT_RW[*]} ; do - if [ ! -z "${PRESSURE_VESSEL_FILESYSTEMS_RW}" ] + if [[ -n "${PRESSURE_VESSEL_FILESYSTEMS_RW}" ]] then export PRESSURE_VESSEL_FILESYSTEMS_RW="${PRESSURE_VESSEL_FILESYSTEMS_RW}:${PWRTMRW}" else export PRESSURE_VESSEL_FILESYSTEMS_RW="${PWRTMRW}" fi @@ -925,7 +925,7 @@ pw_mangohud_check () { if [[ "${PW_VULKAN_USE}" = "0" ]] ; then MANGOHUD_LIB_NAME="libMangoHud_dlsym.so:libMangoHud_opengl.so:${MANGOHUD_LIB_NAME}" fi - if [[ ! -z "${PW_LD_PRELOAD}" ]] + if [[ -n "${PW_LD_PRELOAD}" ]] then export PW_LD_PRELOAD="${PW_LD_PRELOAD}:${MANGOHUD_LIB_NAME}" else export PW_LD_PRELOAD="${MANGOHUD_LIB_NAME}" fi @@ -950,7 +950,7 @@ pw_vkbasalt_check () { if ! grep "${PW_PLUGINS_PATH}/reshade" "${VKBASALT_CONFIG_FILE}" &>/dev/null then sed -ri "s|= .*/reshade|= \"${PW_PLUGINS_PATH}\"/reshade|g" "${VKBASALT_CONFIG_FILE}" fi - if [[ ! -z "${PW_VKBASALT_EFFECTS}" ]] && [[ ! -z "${PW_VKBASALT_FFX_CAS}" ]] ; then + if [[ -n "${PW_VKBASALT_EFFECTS}" ]] && [[ -n "${PW_VKBASALT_FFX_CAS}" ]] ; then sed -ri "s/effects = .*/effects = ${PW_VKBASALT_EFFECTS}/g" "${VKBASALT_CONFIG_FILE}" sed -ri "s/casSharpness .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${VKBASALT_CONFIG_FILE}" fi @@ -1026,7 +1026,7 @@ pw_kill_autostart () { sleep 5 while true ; do if [[ -z "$(ps aux | grep -m 1 -i "$1" | grep -v grep | awk '{print $2}')" ]] \ - && [[ ! -z "$(ps aux | grep wrap | grep -v grep | grep -i "PortProton" | head -n 1)" ]] + && [[ -n "$(ps aux | grep wrap | grep -v grep | grep -i "PortProton" | head -n 1)" ]] then echo -e "PID $1 not found" sleep "${SWAIT}" @@ -1040,7 +1040,7 @@ pw_kill_autostart () { fi done - if [[ ! -z "$(ls "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/ | grep -m 1 ".tmp")" ]] ; then + if [[ -n "$(ls "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/ | grep -m 1 ".tmp")" ]] ; then rm -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/*.tmp fi @@ -1087,15 +1087,15 @@ stop_portwine () { try_remove_dir "${PW_WINELIB}/var" find "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/" -maxdepth 1 -type f -name "*.tmp" -delete if [[ "$XDG_SESSION_TYPE" == "tty" ]] ; then - if [ ! -z "$(pgrep -a yad_gui_pp | grep "\--notification" | awk '{print $1}')" ] ; then + if [[ -n "$(pgrep -a yad_gui_pp | grep "\--notification" | awk '{print $1}')" ]] ; then kill -s SIGUSR1 "$(pgrep -a yad_gui_pp | grep "\--notification" | awk '{print $1}')" fi else - if [[ ! -z "$(pgrep -a tray_gui_pp)" ]] ; then + if [[ -n "$(pgrep -a tray_gui_pp)" ]] ; then kill -s SIGUSR1 $(pgrep -a tray_gui_pp) 2>/dev/null fi fi - if [[ ! -z "$(pgrep -a yad_gui_pp)" ]] ; then + if [[ -n "$(pgrep -a yad_gui_pp)" ]] ; then kill -s SIGUSR1 $(pgrep -a yad_gui_pp) 2>/dev/null fi pw_auto_create_shortcut @@ -1151,7 +1151,7 @@ pw_check_and_download_wine () { elif [[ "$PW_WINE_USE" == WINE_*_LG ]] || [[ "$PW_WINE_USE" == WINE_LG ]] then export PW_WINE_USE="${PW_WINE_LG_VER}" fi - if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ] ; then + if [[ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ]] ; then print_info "Download and install ${PW_WINE_USE}..." if try_download "github.com/Castro-Fidel/wine_builds/releases/download/${PW_WINE_USE}/${PW_WINE_USE}.tar.xz" \ "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" ; then @@ -1176,7 +1176,7 @@ pw_check_and_download_wine () { pw_check_and_download_dxvk_and_vkd3d () { # Download stable and git version DXVK for DXVK_VAR_VER in "${DXVK_STABLE_VER}" "${DXVK_GIT_VER}" "${DXVK_LEGACY_VER}" ; do - if [ ! -d "${PW_VULKAN_DIR}/dxvk-${DXVK_VAR_VER}" ] ; then + if [[ ! -d "${PW_VULKAN_DIR}/dxvk-${DXVK_VAR_VER}" ]] ; then print_info "Download and install DXVK v.${DXVK_VAR_VER}" if try_download "https://github.com/Castro-Fidel/vulkan/releases/download/dxvk-${DXVK_VAR_VER}/dxvk-${DXVK_VAR_VER}.tar.xz" \ "${PW_VULKAN_DIR}/dxvk-${DXVK_VAR_VER}.tar.xz" ; then @@ -1206,7 +1206,7 @@ pw_check_and_download_dxvk_and_vkd3d () { # Download stable and git version VKD3D for VKD3D_VAR_VER in "${VKD3D_STABLE_VER}" "${VKD3D_GIT_VER}" ; do - if [ ! -d "${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_VAR_VER}" ] ; then + if [[ ! -d "${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_VAR_VER}" ]] ; then print_info "Download and install VKD3D-PROTON v.${VKD3D_VAR_VER}" if try_download "https://github.com/Castro-Fidel/vulkan/releases/download/vkd3d-proton-${VKD3D_VAR_VER}/vkd3d-proton-${VKD3D_VAR_VER}.tar.xz" \ "${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_VAR_VER}.tar.xz" ; then @@ -1235,7 +1235,7 @@ pw_check_and_download_dxvk_and_vkd3d () { done # Download DGVOODOO2 - if [ ! -f "${PW_VULKAN_DIR}/dgvoodoo2-${DGV2_VER}/dgVoodoo.conf" ] ; then + if [[ ! -f "${PW_VULKAN_DIR}/dgvoodoo2-${DGV2_VER}/dgVoodoo.conf" ]] ; then print_info "Download and install DGVOODOO2 v.${DGV2_VER}" if try_download "https://github.com/Castro-Fidel/vulkan/releases/download/dgvoodoo2-${DGV2_VER}/dgvoodoo2-${DGV2_VER}.tar.xz" \ "${PW_VULKAN_DIR}/dgvoodoo2-${DGV2_VER}.tar.xz" @@ -1326,12 +1326,12 @@ check_dirs_and_files_in_pfx () { create_new_dir "${WINEPREFIX}/drive_c/tmp/.private/$USER/" create_new_dir "${WINEPREFIX}/drive_c/tmp/.private/steamuser/" - [ ! -d "${WINEPREFIX}/dosdevices/c:" ] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${WINEPREFIX}/dosdevices/c:" - [ ! -d "${WINEPREFIX}/dosdevices/z:" ] && try_force_link_dir "/" "${WINEPREFIX}/dosdevices/z:" - [ ! -d "${WINEPREFIX}/dosdevices/h:" ] && try_force_link_dir "$HOME" "${WINEPREFIX}/dosdevices/h:" + [[ ! -d "${WINEPREFIX}/dosdevices/c:" ]] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${WINEPREFIX}/dosdevices/c:" + [[ ! -d "${WINEPREFIX}/dosdevices/z:" ]] && try_force_link_dir "/" "${WINEPREFIX}/dosdevices/z:" + [[ ! -d "${WINEPREFIX}/dosdevices/h:" ]] && try_force_link_dir "$HOME" "${WINEPREFIX}/dosdevices/h:" - if [ ! -d "${WINEPREFIX}/dosdevices/s:" ] \ - && [ -d "$HOME/.local/share/Steam/steamapps/common/" ] + if [[ ! -d "${WINEPREFIX}/dosdevices/s:" ]] \ + && [[ -d "$HOME/.local/share/Steam/steamapps/common/" ]] then try_force_link_dir "$HOME/.local/share/Steam/steamapps/common/" "${WINEPREFIX}/dosdevices/s:" fi @@ -1402,7 +1402,7 @@ check_dirs_and_files_in_pfx () { } check_nvidia_rtx () { - if [[ ! -z $(echo "$LSPCI_VGA" | grep -i "nvidia") ]]; then + if [[ -n $(echo "$LSPCI_VGA" | grep -i "nvidia") ]] ; then # Turing (without nvidia 16XX) [[ "$LSPCI_VGA" == *TU[0-9]* ]] && [[ "$LSPCI_VGA" != *TU11[6-7]* ]] && return 0 # Ampere @@ -1484,7 +1484,7 @@ pw_init_db () { print_info "Use $PORTWINE_DB_FILE db file." else if [[ "${PW_DISABLED_CREATE_DB}" != 1 ]] ; then - if [[ ! -z "${PORTWINE_DB}" ]] ; then + if [[ -n "${PORTWINE_DB}" ]] ; then export PORTWINE_DB_FILE=$(grep -il "#${PORTWINE_DB}.exe" "${PORT_SCRIPTS_PATH}/portwine_db"/*) if [[ -z "${PORTWINE_DB_FILE}" ]] ; then { @@ -1495,7 +1495,7 @@ pw_init_db () { } > "${portwine_exe}".ppdb export PORTWINE_DB_FILE="${portwine_exe}".ppdb fi - if [[ ! -z $(echo "${portwine_exe}" | grep "/data/prefixes/") ]] && \ + if [[ -n $(echo "${portwine_exe}" | grep "/data/prefixes/") ]] && \ [[ -z $(echo "${portwine_exe}" | grep "/data/prefixes/DEFAULT/") ]] then PW_PREFIX_NAME=$(echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}') @@ -1507,12 +1507,12 @@ pw_init_db () { fi fi - if [[ -z "${PATH_TO_GAME}" ]] || [[ ! -d "${PATH_TO_GAME}" ]]; then + if [[ -z "${PATH_TO_GAME}" ]] || [[ ! -d "${PATH_TO_GAME}" ]] ; then PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )" export PATH_TO_GAME fi - if [[ "${PW_WINE_CPU_TOPOLOGY}" == "disabled" ]] && [[ ! -z "${WINE_CPU_TOPOLOGY}" ]] ; then + if [[ "${PW_WINE_CPU_TOPOLOGY}" == "disabled" ]] && [[ -n "${WINE_CPU_TOPOLOGY}" ]] ; then export PW_WINE_CPU_TOPOLOGY="${WINE_CPU_TOPOLOGY}" fi if ls "${PATH_TO_GAME}"/*_Data/Resources/ 2>/dev/null | grep "unity" &>/dev/null \ @@ -1549,7 +1549,7 @@ pw_port_update () { ;; esac - if [ ! -f "${PORT_WINE_TMP_PATH}/scripts_ver" ] ; then + if [[ ! -f "${PORT_WINE_TMP_PATH}/scripts_ver" ]] ; then echo "2024" > "${PORT_WINE_TMP_PATH}/scripts_ver" fi scripts_install_ver=$(head -n 1 "${PORT_WINE_TMP_PATH}/scripts_ver") @@ -1575,7 +1575,7 @@ pw_port_update () { scripts_current_ver=$(grep "$BRANCH_VERSION_UPDATE" "${PORT_WINE_TMP_PATH}/curent_var_ver" | awk -F "=" '{print $2}') print_info "Scripts version in git = ${scripts_current_ver}" print_info "Scripts version local = ${scripts_install_ver}" - if [[ ! -z "${scripts_current_ver}" ]] && [[ "${scripts_current_ver}" -gt "${scripts_install_ver}" ]] ; then + if [[ -n "${scripts_current_ver}" ]] && [[ "${scripts_current_ver}" -gt "${scripts_install_ver}" ]] ; then if [[ -f "${PW_GUI_THEMES_PATH}/gui/yad_gui_pp" ]] then export pw_yad="${PW_GUI_THEMES_PATH}/gui/yad_gui_pp" elif command -v yad &>/dev/null @@ -1649,8 +1649,8 @@ update_winetricks () { print_info "Version winetricks on server: ${W_TRX_EXT_VER}" W_TRX_INT_VER="$(grep -i 'WINETRICKS_VERSION=' "${PORT_WINE_TMP_PATH}/winetricks" | sed 's/WINETRICKS_VERSION=//')" print_info "Version winetricks in port: ${W_TRX_INT_VER}" - if [[ ! -f "${PORT_WINE_TMP_PATH}/winetricks" && ! -z "$W_TRX_EXT_VER" ]] \ - || [[ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" && ! -z "$W_TRX_EXT_VER" ]] + if [[ ! -f "${PORT_WINE_TMP_PATH}/winetricks" && -n "$W_TRX_EXT_VER" ]] \ + || [[ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" && -n "$W_TRX_EXT_VER" ]] then try_remove_file "${PORT_WINE_TMP_PATH}/winetricks" if try_download "${W_TRX_URL}" "${PORT_WINE_TMP_PATH}/winetricks" no_mirror ; then @@ -1659,7 +1659,7 @@ update_winetricks () { chmod u+x "${PORT_WINE_TMP_PATH}/winetricks" fi fi - if [ -f "${PORT_WINE_TMP_PATH}/winetricks" ] ; then + if [[ -f "${PORT_WINE_TMP_PATH}/winetricks" ]] ; then sed -i 's/w_metadata vcrun2015 dlls \\/w_metadata !dont_use_2015! dlls \\/' "${PORT_WINE_TMP_PATH}/winetricks" sed -i 's/w_metadata vcrun2017 dlls \\/w_metadata !dont_use_2017! dlls \\/' "${PORT_WINE_TMP_PATH}/winetricks" sed -i 's/w_metadata vcrun2019 dlls \\/w_metadata !dont_use_2019! dlls \\/' "${PORT_WINE_TMP_PATH}/winetricks" @@ -1674,7 +1674,7 @@ edit_db_from_gui () { return 0 fi print_info "edit_db_from_gui PORTWINE_DB_FILE=$PORTWINE_DB_FILE" - if [[ ! -z "$PORTWINE_DB_FILE" ]] \ + if [[ -n "$PORTWINE_DB_FILE" ]] \ && [[ -f "$PORTWINE_DB_FILE" ]] then for mod_db in $@ ; do @@ -1728,13 +1728,13 @@ pw_create_gui_png () { if [[ -z "$PORTPROTON_NAME" ]] \ || [[ "$PW_NO_RESTART_PPDB" == "1" ]] then - if [[ ! -z "${PORTWINE_CREATE_SHORTCUT_NAME}" ]] ; then + if [[ -n "${PORTWINE_CREATE_SHORTCUT_NAME}" ]] ; then PORTPROTON_NAME="${PORTWINE_CREATE_SHORTCUT_NAME}" else if command -v exiftool &>/dev/null ; then if ! PW_PRODUCTNAME=$(timeout 3 exiftool -ProductName "${portwine_exe}" 2>/dev/null | sed -n 's/^Product Name\s*:\s*//p') ; then print_error "exiftool - broken!" - if [[ ! -z $PW_DEBUG ]] ; then + if [[ -n "$PW_DEBUG" ]] ; then debug_timer --start timeout 5 exiftool -ProductName "${portwine_exe}" debug_timer --end "exiftool" @@ -1751,7 +1751,7 @@ pw_create_gui_png () { PW_PRODUCTNAME="$(echo "$PW_PRODUCTNAME" | sed 's/Launcher\|RU//g')" fi - if [[ ! -z "$PW_PRODUCTNAME" ]] \ + if [[ -n "$PW_PRODUCTNAME" ]] \ && [[ "$PW_PRODUCTNAME" != Bootstrap* ]] then PORTPROTON_NAME="$PW_PRODUCTNAME" @@ -1769,7 +1769,7 @@ pw_create_gui_png () { PORTPROTON_NAME_PNG="${PORTPROTON_NAME// /_}" if [[ -z "${PW_ICON_FOR_YAD}" ]] ; then - if [[ ! -z "$(file "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME_PNG}.png" | grep "${PW_RESIZE_TO} x ${PW_RESIZE_TO}")" ]] ; then + if [[ -n "$(file "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME_PNG}.png" | grep "${PW_RESIZE_TO} x ${PW_RESIZE_TO}")" ]] ; then export PW_ICON_FOR_YAD="${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME_PNG}.png" else export PW_ICON_FOR_YAD="${PW_GUI_ICON_PATH}/port_proton.png" @@ -1813,7 +1813,7 @@ pw_find_exe () { fi IFS="$orig_IFS" - if [[ ! -z "${PW_SET_FIND_EXE}" ]] ; then + if [[ -n "${PW_SET_FIND_EXE}" ]] ; then portwine_exe="${PW_PATH_FOR_FIND}$(echo "${PW_SET_FIND_EXE}" | awk -F'|' '{print $1}')" portwine_create_shortcut silent /usr/bin/env bash -c ${pw_full_command_line[*]} & @@ -1826,11 +1826,11 @@ pw_create_unique_exe () { if [[ -d "$BASEDIR_GAME" ]] ; then pushd "$BASEDIR_GAME" || fatal BASENAME_GAME_EXE="$(basename "$portwine_exe")" - if [[ ! -z "$1" ]] ; then + if [[ -n "$1" ]] ; then BASENAME_GAME="$(basename "$1" .exe).exe" ln -sf "$BASENAME_GAME_EXE" "$BASENAME_GAME" export portwine_exe="$BASEDIR_GAME/$BASENAME_GAME" - elif [[ ! -z "$PORTWINE_CREATE_SHORTCUT_NAME" ]] ; then + elif [[ -n "$PORTWINE_CREATE_SHORTCUT_NAME" ]] ; then ln -sf "$BASENAME_GAME_EXE" "$PORTWINE_CREATE_SHORTCUT_NAME.exe" export portwine_exe="$BASEDIR_GAME/$PORTWINE_CREATE_SHORTCUT_NAME.exe" else @@ -1841,7 +1841,7 @@ pw_create_unique_exe () { } start_portwine () { - if [[ "${PW_LOCALE_SELECT}" != "disabled" ]] && [[ ! -z "${PW_LOCALE_SELECT}" ]] ; then + if [[ "${PW_LOCALE_SELECT}" != "disabled" ]] && [[ -n "${PW_LOCALE_SELECT}" ]] ; then export LC_ALL="${PW_LOCALE_SELECT}" if [[ "${PW_USE_RUNTIME}" == "1" ]] && [[ "${HOST_LC_ALL}" != "${LC_ALL}" ]] ; then export HOST_LC_ALL="${LC_ALL}" @@ -1933,7 +1933,7 @@ start_portwine () { check_variables VKBASALT_LOG_LEVEL none check_variables DXVK_NVAPI_LOG_LEVEL none if [[ "${PW_LOG}" == 1 ]] \ - || [[ ! -z "$$PW_DEBUG" ]] + || [[ -n "$PW_DEBUG" ]] then export WINEDEBUG="fixme-all,err+loaddll,err+dll,err+file,err+reg" export WINE_MONO_TRACE="E:System.NotImplementedException" @@ -2107,7 +2107,7 @@ start_portwine () { DXVK_ENABLE_NVAPI="1" try_remove_file "${WINEPREFIX}/drive_c/windows/system32/nvngx.ini" FIND_NVNGX="$(dirname $(find /usr/* -type f -name "nvngx.dll" 2>/dev/null | head -n 1 | awk '{print $1}'))" - if [[ ! -z "$FIND_NVNGX" ]] ; then + if [[ -n "$FIND_NVNGX" ]] ; then try_copy_file_with_checksums "${FIND_NVNGX}/nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/nvngx.dll" try_copy_file_with_checksums "${FIND_NVNGX}/_nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/_nvngx.dll" else @@ -2184,7 +2184,7 @@ start_portwine () { if check_gamescope_session ; then export PW_GAMEMODERUN_SLR="" elif [[ "$PW_USE_GAMEMODE" = "1" ]] \ - && [[ ! -z "$DBUS_SESSION_BUS_ADDRESS" ]] + && [[ -n "$DBUS_SESSION_BUS_ADDRESS" ]] then if command -v gamemoded &>/dev/null ; then export GAMEMODERUN=1 @@ -2199,7 +2199,7 @@ start_portwine () { export GAMEMODERUN=1 if ! pidof gamemoded &>/dev/null ; then GAMEMODEAUTO_NAME="libgamemodeauto.so.0" - if [[ ! -z "${PW_LD_PRELOAD}" ]] + if [[ -n "${PW_LD_PRELOAD}" ]] then export PW_LD_PRELOAD="${PW_LD_PRELOAD}:${GAMEMODEAUTO_NAME}" else export PW_LD_PRELOAD="${GAMEMODEAUTO_NAME}" fi @@ -2531,8 +2531,8 @@ start_portwine () { fi [[ "${PW_DGV2_FPS_LIMIT}" != "disabled" ]] && sed -i "s/FPSLimit = 0/FPSLimit = ${PW_DGV2_FPS_LIMIT}/" "$DGV2CONF" - [[ "${PW_DGV2_BIT_DEPTH}" != "disabled" ]] && sed -i "s/DesktopBitDepth =/DesktopBitDepth = ${PW_DGV2_BIT_DEPTH}/" "$DGV2CONF" - [[ "${PW_DGV2_CURSOR_SCALE}" != "0" ]] && sed -i "s/CursorScaleFactor = 0/CursorScaleFactor = ${PW_DGV2_CURSOR_SCALE}/" "$DGV2CONF" + [[ "${PW_DGV2_BIT_DEPTH}" != "disabled" ]] && sed -i "s/DesktopBitDepth =/DesktopBitDepth = ${PW_DGV2_BIT_DEPTH}/" "$DGV2CONF" + [[ "${PW_DGV2_CURSOR_SCALE}" != "0" ]] && sed -i "s/CursorScaleFactor = 0/CursorScaleFactor = ${PW_DGV2_CURSOR_SCALE}/" "$DGV2CONF" if [[ "${PW_DGV2_RESAMPLING}" != "disabled" ]] ; then [[ "${PW_DGV2_RESAMPLING}" == "Point sampled" ]] && sed -i "s/Resampling = bilinear/Resampling = pointsampled/" "$DGV2CONF" @@ -2602,7 +2602,7 @@ start_portwine () { try_force_link_file "${WINEDIR}/lib/wine/i386-windows/${copy_wine_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${copy_wine_dll}.dll" done - if [[ ! -z "$CP_DXVK_FILES" ]] ; then + if [[ -n "$CP_DXVK_FILES" ]] ; then print_info "Try create symlink DXVK files..." for wine_dxvk_dll in $CP_DXVK_FILES ; do if [[ -f "${PATH_TO_DXVK_FILES}/x64/${wine_dxvk_dll}.dll" ]] ; then @@ -2622,7 +2622,7 @@ start_portwine () { try_force_link_file "${PATH_TO_DXVK_FILES}/x64/nvapi64.dll" "${WINEPREFIX}/drive_c/windows/system32/nvapi64.dll" fi - if [[ ! -z "$CP_VKD3D_FILES" ]] ; then + if [[ -n "$CP_VKD3D_FILES" ]] ; then print_info "Try create symlink VKD3D files..." for wine_vkd3d_dll in $CP_VKD3D_FILES ; do if [[ -f "${PATH_TO_VKD3D_FILES}/x64/${wine_vkd3d_dll}.dll" ]] ; then @@ -2643,10 +2643,10 @@ start_portwine () { unset FIND_D3D_MODULE D3D_MODULE_PATH if ! check_flatpak ; then FIND_D3D_MODULE=$(dirname $(find /usr/ -maxdepth 4 -type f -name "d3dadapter9.so.*") 2>/dev/null) - if [[ ! -z "$FIND_D3D_MODULE" ]] ; then + if [[ -n "$FIND_D3D_MODULE" ]] ; then IFS=$'\n' for D3D_MP in $FIND_D3D_MODULE ; do - if [[ ! -z "$D3D_MODULE_PATH" ]] + if [[ -n "$D3D_MODULE_PATH" ]] then export D3D_MODULE_PATH="$D3D_MODULE_PATH:/run/host${D3D_MP}" else export D3D_MODULE_PATH="/run/host${D3D_MP}" fi @@ -2707,14 +2707,14 @@ start_portwine () { fi #run_winetricks_from_db - if [[ ! -z "${PW_MUST_HAVE_DLL}" ]] + if [[ -n "${PW_MUST_HAVE_DLL}" ]] then export PW_DLL_INSTALL="$(echo "${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}" | awk '{ for(i=1;i<=NF;i++){a[$i]++} }END{ for(i in a){printf("%s ",i)} }' )" fi - if [[ ! -z "${PW_DLL_INSTALL}" ]] ; then + if [[ -n "${PW_DLL_INSTALL}" ]] ; then export PW_DLL_NEED_INSTALL="" export USE_WT_FROM_DB=0 - if [ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" ] ; then + if [[ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" ]] ; then touch "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" fi for need_install_dll_to_pfx in ${PW_DLL_INSTALL} ; do @@ -2750,7 +2750,7 @@ start_portwine () { if [[ -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" ]] \ && [[ -z $(grep "Windows $PW_WINDOWS_VER" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg") ]] then - if [[ ! -z "${PW_WINDOWS_VER}" ]] \ + if [[ -n "${PW_WINDOWS_VER}" ]] \ && [[ $(echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/') == "xp" ]] then export PW_WINDOWS_VER="xp64" @@ -2896,7 +2896,7 @@ start_portwine () { grep -e '--backend' "${PW_TMPFS_PATH}/gamescope.tmp" &>/dev/null && PW_GS_BACKEND_SDL="1" fi fi - if [[ -d /sys/bus/pci/drivers/i915 ]] ; then + if [[ -d /sys/bus/pci/drivers/i915 ]] ; then export INTEL_DEBUG="norbc" fi fi @@ -2998,7 +2998,7 @@ start_portwine () { pw_run () { unset GDK_BACKEND - if [[ ! -z "${PATH_TO_GAME}" ]] \ + if [[ -n "${PATH_TO_GAME}" ]] \ && [[ -d "${PATH_TO_GAME}" ]] then cd "${PATH_TO_GAME}" || fatal @@ -3105,7 +3105,7 @@ pw_run () { export -f pw_run pw_yad_set_form () { - if [[ $(<"${PW_TMPFS_PATH}/tmp_yad_form") != "" ]]; then + if [[ $(<"${PW_TMPFS_PATH}/tmp_yad_form") != "" ]] ; then PW_YAD_SET=$(head -n 1 "${PW_TMPFS_PATH}/tmp_yad_form" | awk '{print $1}') export PW_YAD_SET fi @@ -3113,7 +3113,7 @@ pw_yad_set_form () { pw_yad_form_vulkan () { if [[ "$(<"${PW_TMPFS_PATH}/tmp_yad_form_vulkan")" != "" ]] ; then - if [[ ! -z "${KEY_START}" ]] ; then + if [[ -n "${KEY_START}" ]] ; then YAD_FORM_VULKAN=$(sed 's/$/\;/' "${PW_TMPFS_PATH}/tmp_yad_form_vulkan") VULKAN_MOD=$(echo "${YAD_FORM_VULKAN}" | grep \;\; | awk -F";" '{print $1}') PW_WINE_VER=$(echo "${YAD_FORM_VULKAN}" | grep \;\; | awk -F";" '{print $2}') @@ -3125,7 +3125,7 @@ pw_yad_form_vulkan () { PW_WINE_VER=$(echo "${YAD_FORM_VULKAN}" | grep \;\; | awk -F";" '{print $3}') fi if [[ -z "${PW_PREFIX_NAME}" ]] \ - || [[ ! -z "$(echo "${PW_PREFIX_NAME}" | grep -E '^_.*' )" ]] + || [[ -n "$(echo "${PW_PREFIX_NAME}" | grep -E '^_.*' )" ]] then PW_PREFIX_NAME="DEFAULT" else @@ -3307,9 +3307,9 @@ pw_update_pfx_cover_gui () { PW_GIF_SIZE_Y=$(file "${PW_GIF_FILE}" | awk '{print $9 + 65}') echo "UPDATE PREFIX..." > "${PW_TMPFS_PATH}/update_pfx_log" export PW_TIMER=0 - while read -r line || [[ ! -z $(pgrep -a yad | grep "yad_gui_pp --notebook --key=$PW_KEY_PROGRESS_BAR_UP" | awk '{print $1}') ]] ; do + while read -r line || [[ -n $(pgrep -a yad | grep "yad_gui_pp --notebook --key=$PW_KEY_PROGRESS_BAR_UP" | awk '{print $1}') ]] ; do sleep 0.005 - if [[ ! -z "${line}" ]] && [[ -z "$(echo "${line}" | grep -i "gstreamer")" ]] \ + if [[ -n "${line}" ]] && [[ -z "$(echo "${line}" | grep -i "gstreamer")" ]] \ && [[ -z "$(echo "${line}" | grep -i "kerberos")" ]] \ && [[ -z "$(echo "${line}" | grep -i "ntlm")" ]] then @@ -3416,11 +3416,11 @@ export -f open_changelog pw_tray_icon () { if [[ "$XDG_SESSION_TYPE" == "tty" ]] ; then - if [ ! -z "$(pgrep -a yad_gui_pp | grep "\--notification" | awk '{print $1}')" ] ; then + if [[ -n "$(pgrep -a yad_gui_pp | grep "\--notification" | awk '{print $1}')" ]] ; then kill -s SIGUSR1 "$(pgrep -a yad_gui_pp | grep "\--notification" | awk '{print $1}')" fi else - if [[ ! -z "$(pgrep -a tray_gui_pp)" ]] ; then + if [[ -n "$(pgrep -a tray_gui_pp)" ]] ; then kill -s SIGUSR1 $(pgrep -a tray_gui_pp) 2>/dev/null fi fi @@ -3477,7 +3477,7 @@ gui_proton_downloader () { then PW_WINE_USE="${PW_PROTON_LG_VER}" elif [[ "$PW_WINE_USE" == WINE_*_LG ]] || [[ "$PW_WINE_USE" == WINE_LG ]] then PW_WINE_USE="${PW_WINE_LG_VER}" - elif [[ "$1" == "silent" ]] && [[ ! -z "$2" ]] + elif [[ "$1" == "silent" ]] && [[ -n "$2" ]] then PW_WINE_USE="$2" fi export PW_WINE_USE @@ -3491,7 +3491,7 @@ gui_proton_downloader () { # PROTON_GE export PROTON_GE_GIT=($(curl -s "https://api.github.com/repos/GloriousEggroll/proton-ge-custom/releases" | grep "browser_download_url.*\.tar\.gz" | cut -d \" -f 4)) - if [[ ! -z "${PROTON_GE_GIT}" ]] ; then + if [[ -n "${PROTON_GE_GIT}" ]] ; then for PGEGIT in ${PROTON_GE_GIT[@]} ; do echo ${PGEGIT} | awk -F/ '{print $NF}' | sed 's/.tar.gz//' >> "${PW_TMPFS_PATH}/tmp_proton_ge_git" done @@ -3502,7 +3502,7 @@ gui_proton_downloader () { # WINE_KRON4EK export WINE_KRON4EK=($(curl -s "https://api.github.com/repos/Kron4ek/Wine-Builds/releases" | grep "browser_download_url.*\.tar\.xz" | cut -d \" -f 4)) - if [[ ! -z "${WINE_KRON4EK}" ]] ; then + if [[ -n "${WINE_KRON4EK}" ]] ; then for PGEGIT in ${WINE_KRON4EK[@]} ; do echo ${PGEGIT} | awk -F/ '{print $NF}' | sed 's/.tar.xz//' >> "${PW_TMPFS_PATH}/tmp_wine_kron4ek_git" done @@ -3513,7 +3513,7 @@ gui_proton_downloader () { # WINE_GE_CUSTOM export WINE_GE_CUSTOM=($(curl -s "https://api.github.com/repos/GloriousEggroll/wine-ge-custom/releases" | grep "browser_download_url.*\.tar\.xz" | cut -d \" -f 4)) - if [[ ! -z "${WINE_GE_CUSTOM}" ]] ; then + if [[ -n "${WINE_GE_CUSTOM}" ]] ; then for PGEGIT in ${WINE_GE_CUSTOM[@]} ; do echo ${PGEGIT} | awk -F/ '{print $NF}' | sed 's/.tar.xz//' >> "${PW_TMPFS_PATH}/tmp_wine_ge_custom_git" done @@ -3523,7 +3523,7 @@ gui_proton_downloader () { # PROTON_LG export PROTON_PW_GIT=($(curl -s "https://api.github.com/repos/Castro-Fidel/wine_builds/releases" | grep "browser_download_url.*\.tar\.xz" | cut -d \" -f 4 | sort -r)) - if [[ ! -z "${PROTON_PW_GIT}" ]] ; then + if [[ -n "${PROTON_PW_GIT}" ]] ; then for PPWGIT in ${PROTON_PW_GIT[@]} ; do echo ${PPWGIT} | awk -F/ '{print $NF}' | sed 's/.tar.xz//' >> "${PW_TMPFS_PATH}/tmp_proton_pw_git" done @@ -3616,10 +3616,10 @@ gui_proton_downloader () { /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi - if [[ ! -z $(<"${PW_TMPFS_PATH}/tmp_set_wine") ]] ; then + if [[ -n $(<"${PW_TMPFS_PATH}/tmp_set_wine") ]] ; then VERSION_WINE_GIT="$(sed 's/TRUE//' "${PW_TMPFS_PATH}/tmp_set_wine")" fi - if [[ ! -z $(<"${PW_TMPFS_PATH}/tmp_installed_wine_set") ]] ; then + if [[ -n $(<"${PW_TMPFS_PATH}/tmp_installed_wine_set") ]] ; then VERSION_INSTALLED_WINE="$(sed 's/TRUE//' "${PW_TMPFS_PATH}/tmp_installed_wine_set")" fi @@ -3631,7 +3631,7 @@ gui_proton_downloader () { exit 0 fi - elif [[ "$1" == "silent" ]] && [[ ! -z "$2" ]] ; then + elif [[ "$1" == "silent" ]] && [[ -n "$2" ]] ; then VERSION_WINE_GIT="$2" fi @@ -3641,7 +3641,7 @@ gui_proton_downloader () { if try_download "${URL_VERSION_PROTON_GIT}" "${PORT_WINE_PATH}/data/tmp/$FILENAME" ; then if unpack "${PORT_WINE_PATH}/data/tmp/${FILENAME}" "${PORT_WINE_PATH}/data/dist/" ; then try_remove_file "${PORT_WINE_PATH}/data/tmp/${FILENAME}" - if [ ! -z "${portwine_exe}" ]; then + if [[ -n "${portwine_exe}" ]] ; then PW_WINE_USE="$(echo "${VERSION_WINE_GIT}" | tr [[:lower:]] [[:upper:]])" edit_db_from_gui PW_WINE_USE fi @@ -3665,7 +3665,7 @@ gui_proton_downloader () { fi } - if [[ ! -z "${VERSION_INSTALLED_WINE}" ]] ; then + if [[ -n "${VERSION_INSTALLED_WINE}" ]] ; then for REMOVE_WINE in ${VERSION_INSTALLED_WINE} ; do try_remove_dir "${PORT_WINE_PATH}/data/dist/${REMOVE_WINE}" done @@ -3679,7 +3679,7 @@ gui_proton_downloader () { if [[ "$1" != "silent" ]] ; then for GIVE_ALL_WINE in ${VERSION_WINE_GIT} ; do for GIVE_WINE_URL in ${WINE_GE_CUSTOM[@]} ${PROTON_GE_GIT[@]} ${WINE_KRON4EK[@]} ${PROTON_PW_GIT[@]} ; do - if [ ! -z $(echo ${GIVE_WINE_URL} | grep -i "${GIVE_ALL_WINE}") ] ; then + if [[ -n $(echo ${GIVE_WINE_URL} | grep -i "${GIVE_ALL_WINE}") ]] ; then export URL_VERSION_PROTON_GIT="${GIVE_WINE_URL}" fi done @@ -3692,7 +3692,7 @@ gui_proton_downloader () { # init_wine_ver print_error "$PW_WINE_USE" for GIVE_WINE_URL in ${WINE_GE_CUSTOM[@]} ${PROTON_GE_GIT[@]} ${WINE_KRON4EK[@]} ${PROTON_PW_GIT[@]} ; do - if [ ! -z $(echo ${GIVE_WINE_URL} | grep -i "${PW_WINE_USE}") ] ; then + if [[ -n $(echo ${GIVE_WINE_URL} | grep -i "${PW_WINE_USE}") ]] ; then export URL_VERSION_PROTON_GIT="${GIVE_WINE_URL}" fi done @@ -3805,7 +3805,7 @@ fi unset ADD_CHK_BOX_EDIT_DB for int_to_boole in ${PW_EDIT_DB_LIST} ; do - if [ "${!int_to_boole}" == "1" ] + if [[ "${!int_to_boole}" == "1" ]] then export ${int_to_boole}="TRUE" else export ${int_to_boole}="FALSE" fi @@ -3855,7 +3855,7 @@ A brief instruction: --field="$(gettext "ADD ARGUMENTS FOR .EXE FILE")!$(gettext "Adding an argument after the .exe file, just like you would add an argument in a shortcut on a WINDOWS system") :CBE" "$(combobox_fix --empty "\\${LAUNCH_PARAMETERS[@]}" "-dx11 -skipintro 1")" \ --field=":LBLH" "" \ --field="$(gettext "Limit the use of processor cores")!$(gettext "Limiting the number of CPU cores is useful for Unity games (It is recommended to set the value equal to 8)") :CB" "$(combobox_fix --disabled "${CPU_LIMIT_VAR}" "${GET_LOGICAL_CORE}")" \ - --field="$(gettext "Forcibly select the OpenGL version for the game")!$(gettext "You can select the required OpenGL version, some games require a forced Compatibility Profile (COMPAT). (Examples are in the drop-down list)") :CBE" "$(combobox_fix --disabled "${PW_MESA_GL_VERSION_OVERRIDE}" "4.6COMPAT!4.6!4.5COMPAT!4.5!3.3COMPAT!3.3")" \ + --field="$(gettext "Forcibly select the OpenGL version for the game")!$(gettext "You can select the required OpenGL version, some games require a forced Compatibility Profile (COMPAT). (Examples are in the drop-down list)") :CB" "$(combobox_fix --disabled "${PW_MESA_GL_VERSION_OVERRIDE}" "4.6COMPAT!4.6!4.5COMPAT!4.5!3.3COMPAT!3.3")" \ --field="$(gettext "Forcibly select the VKD3D feature level")!$(gettext "You can set a forced feature level VKD3D for games on DirectX12") :${VKD3D_CB}" "$(combobox_fix --disabled "${PW_VKD3D_FEATURE_LEVEL}" "12_2!12_1!12_0!11_1!11_0")" \ --field="$(gettext "Force certain locale for an app:")!$(gettext "Fixes encoding issues in legacy software") :CB" "$(combobox_fix --disabled "${PW_LOCALE_SELECT}" "$LOCALE_LIST")" \ 1> "${PW_TMPFS_PATH}/tmp_output_yad_fps_limit" 2>/dev/null & @@ -3892,7 +3892,7 @@ A brief instruction: bool_from_yad=0 for boole_to_int in ${PW_EDIT_DB_LIST} ; do export ${boole_to_int}=${output_yad_edit_db[$bool_from_yad]} - if [ "${!boole_to_int}" == "TRUE" ] + if [[ "${!boole_to_int}" == "TRUE" ]] then export ${boole_to_int}="1" else export ${boole_to_int}="0" fi @@ -3923,7 +3923,7 @@ A brief instruction: MONITOR_HEIGHT="$(echo "$PW_SCREEN_RESOLUTION" | awk -F'x' '{print $2}')" MH_FONT_SIZE="font_size=$(( MONITOR_HEIGHT / 45 ))" - if [[ ! -z "$MH_FONT_SIZE" ]] + if [[ -n "$MH_FONT_SIZE" ]] then MANGOHUD_CONFIG="$DEFAULT_MANGOHUD_CONFIG,$MH_FONT_SIZE" else MANGOHUD_CONFIG="$DEFAULT_MANGOHUD_CONFIG" fi @@ -4014,7 +4014,7 @@ fi ADD_GUI_FX+="--field=${CHKBOX_SPACE}${add_list_fx}!${!PW_VKBASALT_GUI_HELP}:${THEME_CHKBOX}%FALSE%" fi done - if [[ ! -z "${PW_VKBASALT_FFX_CAS}" ]] ; then + if [[ -n "${PW_VKBASALT_FFX_CAS}" ]] ; then if [[ "$PW_VKBASALT_FFX_CAS" == "0" ]] \ || [[ "$PW_VKBASALT_FFX_CAS" == "-1" ]] then export VKBASALT_FFX_CAS_GUI="0" @@ -4168,13 +4168,13 @@ fi GET_REFRESH_RATE=(30 40 45 48 60 75 90 120 144 165 175 240) - if [ ! -z "$MANGOHUD_CONFIG" ]; then + if [[ -n "$MANGOHUD_CONFIG" ]] ; then PW_MANGOHUD_CONFIG=($(echo "$MANGOHUD_CONFIG" | tr ',' '\n' | grep -v '=')) else PW_MANGOHUD_CONFIG=($(echo "$DEFAULT_MANGOHUD_CONFIG" | tr ',' '\n' | grep -v '=')) fi - if [ ! -z "$FPS_LIMIT" ] ; then + if [[ -n "$FPS_LIMIT" ]] ; then PW_FPS_LIMIT_VAR=($(echo "$FPS_LIMIT" | tr '' '\n' | grep -v '=')) fi @@ -4238,7 +4238,7 @@ fi YAD_MH_FPS_LIMIT=$(<"${PW_TMPFS_PATH}/tmp_yad_mh_fps_limit") MONITOR_HEIGHT="$(echo $PW_SCREEN_RESOLUTION | awk -F'x' '{print $2}')" - if [[ ! -z "$MONITOR_HEIGHT" ]] + if [[ -n "$MONITOR_HEIGHT" ]] then MH_FONT_SIZE="font_size=$(( MONITOR_HEIGHT / 45 ))" fi @@ -4259,7 +4259,7 @@ fi done GUI_MH_FPS_RESULT="${GUI_MH_FPS_RESULT}" - if [ "$(echo "${GUI_MH_FPS_RESULT}" | awk -F'+' '{print $2}')" ] ; then + if [[ "$(echo "${GUI_MH_FPS_RESULT}" | awk -F'+' '{print $2}')" ]] ; then export FPS_LIMIT="${GUI_MH_FPS_RESULT%+}" if [[ ! "${GUI_MH_RESULT}" =~ "show_fps_limit" ]] ; then GUI_MH_RESULT="${GUI_MH_RESULT}show_fps_limit," @@ -4268,12 +4268,12 @@ fi export FPS_LIMIT="${GUI_MH_FPS_RESULT%+}" fi - if [[ ! -z "$MH_FONT_SIZE" ]] + if [[ -n "$MH_FONT_SIZE" ]] then GUI_MH_RESULT="${GUI_MH_RESULT}${MH_FONT_SIZE}" else GUI_MH_RESULT="${GUI_MH_RESULT%,}" fi - if [[ ! -z "$FPS_LIMIT" ]] ; then + if [[ -n "$FPS_LIMIT" ]] ; then GUI_MH_RESULT="${GUI_MH_RESULT},fps_limit=$FPS_LIMIT" elif [[ "$FPS_LIMIT" == "disabled" ]] ; then GUI_MH_RESULT="${GUI_MH_RESULT},fps_limit=0" @@ -4350,7 +4350,7 @@ fi unset ADD_CHK_BOX_DGV2 for int_to_boole in ${PW_DGV2_LIST} ; do - if [ "${!int_to_boole}" == "1" ] + if [[ "${!int_to_boole}" == "1" ]] then export ${int_to_boole}="TRUE" else export ${int_to_boole}="FALSE" fi @@ -4443,7 +4443,7 @@ fi bool_from_yad=0 for boole_to_int in ${PW_DGV2_LIST} ; do export ${boole_to_int}=${output_yad_dgv2[$bool_from_yad]} - if [ "${!boole_to_int}" == "TRUE" ] + if [[ "${!boole_to_int}" == "TRUE" ]] then export ${boole_to_int}="1" else export ${boole_to_int}="0" fi @@ -4528,7 +4528,7 @@ fi GAMESCOPE_NEED_INSTALL="$(gettext "Change settings gamescope for") ${PORTWINE_DB}\n $(gettext "NOTE: To display help for each item, simply hover your mouse over the text")" GS_CB="CB" && GS_CBE="CBE" && GS_NUM="NUM" && GS_NUMN="NUMN" for int_to_boole in ${PW_GS_LIST} ; do - if [ "${!int_to_boole}" == "1" ] + if [[ "${!int_to_boole}" == "1" ]] then export ${int_to_boole}="TRUE" else export ${int_to_boole}="FALSE" fi @@ -4559,7 +4559,7 @@ fi PW_GS_ITM_SDR_NITS="0" PW_GS_ITM_TARGET_NITS="0" for int_to_boole in ${PW_GS_LIST} ; do - if [ "${!int_to_boole}" == "1" ] + if [[ "${!int_to_boole}" == "1" ]] then export ${int_to_boole}="TRUE" else export ${int_to_boole}="FALSE" fi @@ -4636,7 +4636,7 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate." bool_from_yad=0 for boole_to_int in ${PW_GS_LIST} ; do export ${boole_to_int}=${output_yad_gs[$bool_from_yad]} - if [ "${!boole_to_int}" == "TRUE" ] + if [[ "${!boole_to_int}" == "TRUE" ]] then export ${boole_to_int}="1" else export ${boole_to_int}="0" fi @@ -4705,7 +4705,7 @@ gui_userconf () { --field=" $NEW_STEAM_BEHAVIOR $(gettext "steam covers download")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"$(gettext "If downloading steam covers is enabled, they will be downloaded and created. (Disablement is provided in cases where their downloading is unavailable for some reason)")":"FBTN" '@bash -c "button_click --userconf change_download_grid"' \ 2>/dev/null & - if [[ ! -z "${PW_SOUND_DRIVER_USE}" ]] \ + if [[ -n "${PW_SOUND_DRIVER_USE}" ]] \ && [[ "${PW_SOUND_DRIVER_USE}" != "disabled" ]] then SOUND_DRIVER_VAR="${PW_SOUND_DRIVER_USE}" @@ -4713,7 +4713,7 @@ gui_userconf () { SOUND_DRIVER_VAR="disabled" fi - if [[ ! -z "${PW_GPU_USE}" ]] \ + if [[ -n "${PW_GPU_USE}" ]] \ && [[ "${PW_GPU_USE}" != "disabled" ]] then GPU_VAR="${PW_GPU_USE}" @@ -4797,7 +4797,7 @@ resize_png () { && [[ "$ALPINE_FP" != "1" ]] then print_error "exe-thumbnailer - broken!" - if [[ ! -z $PW_DEBUG ]] ; then + if [[ -n "$PW_DEBUG" ]] ; then debug_timer --start timeout 5 exe-thumbnailer --force-resize -s "$RESIZE_TO" "$(readlink -f "${RESIZE_FILE}")" "${PORT_WINE_PATH}/data/img/${RESIZE_NAME_PNG}.png" debug_timer --end "exe-thumbnailer" @@ -5000,7 +5000,7 @@ pw_auto_create_shortcut () { link_cmd=$(sed -n 's/^Command Line Arguments\s*:\s*//p' "${PW_TMPFS_PATH}/exiftool.tmp") else print_error "exiftool - broken!" - if [[ ! -z $PW_DEBUG ]] ; then + if [[ -n "$PW_DEBUG" ]] ; then debug_timer --start timeout 5 exiftool "$link_file" debug_timer --end "exiftool" @@ -5070,7 +5070,7 @@ portwine_missing_shortcut () { --text "\n$(gettext "Could not find the file:")\n${portwine_exe}\n\n$(gettext "ATTENTION:\nIf you forgot to mount the disk with the running application, click CANCEL!")\n" \ --button="$(gettext "DELETE SHORTCUT")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 \ --button="$(gettext "CANCEL")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":1 - if [ $? -eq "0" ] ; then + if [[ $? -eq "0" ]] ; then portwine_delete_shortcut fi exit 0 @@ -5080,7 +5080,7 @@ portwine_missing_shortcut () { pw_prefix_manager () { update_winetricks start_portwine - if [ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" ] ; then + if [[ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" ]] ; then touch "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" fi @@ -5177,14 +5177,14 @@ pw_prefix_manager () { for STPFXMNG in $(<"${PW_TMPFS_PATH}/to_winetricks") ; do grep $(echo ${STPFXMNG} | awk -F'|' '{print $2}') "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" &>/dev/null - if [ "$?" == "1" ] ; then - [[ ! -z "${STPFXMNG}" ]] && SET_FROM_PFX_MANAGER+="$(echo "${STPFXMNG}" | awk -F'|' '{print $2}') " + if [[ "$?" == "1" ]] ; then + [[ -n "${STPFXMNG}" ]] && SET_FROM_PFX_MANAGER+="$(echo "${STPFXMNG}" | awk -F'|' '{print $2}') " fi done IFS="$orig_IFS" try_remove_file "${PW_TMPFS_PATH}/to_winetricks" - if [[ ! -z ${SET_FROM_PFX_MANAGER} ]] ; then + if [[ -n ${SET_FROM_PFX_MANAGER} ]] ; then pw_update_pfx_cover_gui "winetricks" echo "START WINETRICKS..." >> "${PW_TMPFS_PATH}/update_pfx_log" echo "Try to install DLL in prefix: ${SET_FROM_PFX_MANAGER}" >> "${PW_TMPFS_PATH}/update_pfx_log" @@ -5225,13 +5225,13 @@ portwine_start_debug () { echo "-----------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log" if check_flatpak ; then echo "FLATPAK in used" >> "${PORT_WINE_PATH}/PortProton.log" - elif [ "${PW_USE_RUNTIME}" = 0 ] ; then + elif [[ "${PW_USE_RUNTIME}" = 0 ]] ; then echo "RUNTIME is disabled" >> "${PORT_WINE_PATH}/PortProton.log" else echo "RUNTIME is enabled" >> "${PORT_WINE_PATH}/PortProton.log" fi echo "----------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log" - if [ ! -z "${portwine_exe}" ] ; then + if [[ -n "${portwine_exe}" ]] ; then echo "Debug for programm:" >> "${PORT_WINE_PATH}/PortProton.log" echo "${portwine_exe}" >> "${PORT_WINE_PATH}/PortProton.log" echo "---------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log" @@ -5254,7 +5254,7 @@ portwine_start_debug () { echo "$PW_WINE_USE" >> "${PORT_WINE_PATH}/PortProton.log" echo "-------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log" echo "Program bit depth:" >> "${PORT_WINE_PATH}/PortProton.log" - if [[ $(file "$portwine_exe") =~ x86-64 ]]; then + if [[ $(file "$portwine_exe") =~ x86-64 ]] ; then echo "64 bit" >> "${PORT_WINE_PATH}/PortProton.log" echo "-----------------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log" else @@ -5320,7 +5320,7 @@ portwine_start_debug () { echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/PortProton.log" grep -E '^GPU|deviceName|driverName' "${PW_TMPFS_PATH}/vulkaninfo.tmp" >> "${PORT_WINE_PATH}/PortProton.log" "${PW_PLUGINS_PATH}/portable/bin/vkcube" --c 50 - if [ $? -eq 0 ]; then + if [[ $? -eq 0 ]] ; then echo "Vulkan cube test passed successfully" >> "${PORT_WINE_PATH}/PortProton.log" else echo "Vulkan cube test completed with error" >> "${PORT_WINE_PATH}/PortProton.log" @@ -5340,7 +5340,7 @@ portwine_start_debug () { echo "winetricks.log:" >> "${PORT_WINE_PATH}/PortProton.log" cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" | sed -e /"^d3dcomp*"/d -e /"^d3dx*"/d >> "${PORT_WINE_PATH}/PortProton.log" echo "-----------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log" - if [ ! -z "${PORTWINE_DB_FILE}" ]; then + if [[ -n "${PORTWINE_DB_FILE}" ]] ; then echo "Use ${PORTWINE_DB_FILE} db file:" >> "${PORT_WINE_PATH}/PortProton.log" cat "${PORTWINE_DB_FILE}" | sed '/##/d' >> "${PORT_WINE_PATH}/PortProton.log" else @@ -5348,7 +5348,7 @@ portwine_start_debug () { cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | sed '/##/d' >> "${PORT_WINE_PATH}/PortProton.log" fi echo "----------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log" - if [ -f "${USER_CONF}" ]; then + if [[ -f "${USER_CONF}" ]] ; then cat "${USER_CONF}" | sed '/bash/d' >> "${PORT_WINE_PATH}/PortProton.log" fi echo "---------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log" @@ -5359,9 +5359,9 @@ portwine_start_debug () { sleep 3 pw_stop_progress_bar_cover unset PW_TIMER - while read -r line || [[ ! -z $(pgrep -a yad | grep "yad_gui_pp --text-info --tail --button="STOP"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 --title="DEBUG"" | awk '{print $1}') ]] ; do + while read -r line || [[ -n $(pgrep -a yad | grep "yad_gui_pp --text-info --tail --button="STOP"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 --title="DEBUG"" | awk '{print $1}') ]] ; do sleep 0.005 - if [[ ! -z "${line}" ]] && [[ -z "$(echo "${line}" | grep -i "kerberos")" ]] \ + if [[ -n "${line}" ]] && [[ -z "$(echo "${line}" | grep -i "kerberos")" ]] \ && [[ -z "$(echo "${line}" | grep -i "ntlm")" ]] then echo "# ${line}" @@ -5400,7 +5400,7 @@ pw_create_prefix_backup () { /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi - if [[ ! -z "$(grep "/${PW_PREFIX_NAME}/" "${PORT_WINE_PATH}"/*.desktop )" ]] ; then + if [[ -n "$(grep "/${PW_PREFIX_NAME}/" "${PORT_WINE_PATH}"/*.desktop )" ]] ; then try_remove_file "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.create_shortcut" grep "/${PW_PREFIX_NAME}/" "${PORT_WINE_PATH}"/*.desktop | awk -F"/${PW_PREFIX_NAME}/" '{print $2}' \ | awk -F\" '{print $1}' > "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.create_shortcut" diff --git a/data_from_portwine/scripts/portwine_db/Anno4.ppdb b/data_from_portwine/scripts/portwine_db/Anno4.ppdb index 28ab10bf..e7276406 100644 --- a/data_from_portwine/scripts/portwine_db/Anno4.ppdb +++ b/data_from_portwine/scripts/portwine_db/Anno4.ppdb @@ -12,7 +12,7 @@ fi export PW_VULKAN_USE=1 add_in_start_portwine () { - if [ -d "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming/Ubisoft/Anno1404/Config/" ] ; then + if [[ -d "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming/Ubisoft/Anno1404/Config/" ]] ; then sed -i 's/0<\/DirectXVersion>/9<\/DirectXVersion>/' "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming/Ubisoft/Anno1404/Config/Engine.ini" fi } diff --git a/data_from_portwine/scripts/portwine_db/Frozen Throne.ppdb b/data_from_portwine/scripts/portwine_db/Frozen Throne.ppdb index c5caad93..77843c8d 100644 --- a/data_from_portwine/scripts/portwine_db/Frozen Throne.ppdb +++ b/data_from_portwine/scripts/portwine_db/Frozen Throne.ppdb @@ -5,6 +5,6 @@ ################################################ export PW_VULKAN_USE=0 export LAUNCH_PARAMETERS="" -if [ -d "${PATH_TO_GAME}"/Movies ] ; then +if [[ -d "${PATH_TO_GAME}"/Movies ]] ; then mv "${PATH_TO_GAME}"/Movies "${PATH_TO_GAME}"/Movies_bak fi diff --git a/data_from_portwine/scripts/portwine_db/GalaxyClient.ppdb b/data_from_portwine/scripts/portwine_db/GalaxyClient.ppdb index 9c337356..d99e65d0 100644 --- a/data_from_portwine/scripts/portwine_db/GalaxyClient.ppdb +++ b/data_from_portwine/scripts/portwine_db/GalaxyClient.ppdb @@ -13,7 +13,7 @@ export PW_WINE_USE="WINE_LG" add_in_start_portwine () { -if [ -e "${WINEPREFIX}/drive_c/users/${USER}/Local Settings/Application Data/GOG.com/Galaxy/Configuration/config.json" ] ; then +if [[ -e "${WINEPREFIX}/drive_c/users/${USER}/Local Settings/Application Data/GOG.com/Galaxy/Configuration/config.json" ]] ; then sed -i 's/"featureOverlay" : true,/"featureOverlay" : false,/' "${WINEPREFIX}/drive_c/${USER}/Local Settings/Application Data/GOG.com/Galaxy/Configuration/config.json" fi } diff --git a/data_from_portwine/scripts/portwine_db/WorldOfTanksEnCoreLauncher.ppdb b/data_from_portwine/scripts/portwine_db/WorldOfTanksEnCoreLauncher.ppdb index 17d79a3a..31043be6 100644 --- a/data_from_portwine/scripts/portwine_db/WorldOfTanksEnCoreLauncher.ppdb +++ b/data_from_portwine/scripts/portwine_db/WorldOfTanksEnCoreLauncher.ppdb @@ -11,13 +11,13 @@ export PW_USE_D3D_EXTRAS=0 ## export DXVK_HUD=fps,devinfo #####################examples########################### -while [ `pidof -s dotNetFx40_Full_x86_x64.exe` ] ; do - if [ $? -eq 0 ] ; then +while [[ $(pidof -s dotNetFx40_Full_x86_x64.exe) ]] ; do + if [[ $? -eq 0 ]] ; then sleep 1 else - export dotnet_pids=`ps -ax | grep mscorsvw.exe | awk '{print $1}' | uniq` - [ ! -z $dotnet_pids ] - kill -n 9 $dotnet_pids + dotnet_pids=$(ps -ax | grep mscorsvw.exe | awk '{print $1}' | uniq) + export dotnet_pids + [[ -n "$dotnet_pids" ]] && kill -n 9 "$dotnet_pids" sleep 1 fi done diff --git a/data_from_portwine/scripts/portwine_db/gfclient.ppdb b/data_from_portwine/scripts/portwine_db/gfclient.ppdb index b99c6b43..2ffa821a 100644 --- a/data_from_portwine/scripts/portwine_db/gfclient.ppdb +++ b/data_from_portwine/scripts/portwine_db/gfclient.ppdb @@ -10,10 +10,10 @@ export WINEDLLOVERRIDES="gfclient0_msvc140=n;ucrtbase=b" #add_in_start_portwine () { # #while true; do -# if [ -z "`pgrep GameforgeClient`" ]; then +# if [[ -z "`pgrep GameforgeClient`" ]] ; then # sleep 1 # else -# while [ ! -z "`pgrep GameforgeClient`" ] ; do +# while [[ -n "`pgrep GameforgeClient`" ]] ; do # killall -s KILL gfservice.exe # done # sleep 1 diff --git a/data_from_portwine/scripts/portwine_db/medal-of-honor-allied-assault-war-chest.ppdb b/data_from_portwine/scripts/portwine_db/medal-of-honor-allied-assault-war-chest.ppdb index 047cbc2f..2fb9f0c9 100644 --- a/data_from_portwine/scripts/portwine_db/medal-of-honor-allied-assault-war-chest.ppdb +++ b/data_from_portwine/scripts/portwine_db/medal-of-honor-allied-assault-war-chest.ppdb @@ -12,7 +12,7 @@ export MESA_EXTENSION_MAX_YEAR=2002 export __GL_ExtensionStringVersion=17700 add_in_start_portwine () { -if [ ! -e "$PATH_TO_GAME/0_Proton_PW_MoHAA" ] ; then +if [[ ! -e "$PATH_TO_GAME/0_Proton_PW_MoHAA" ]] ; then touch "$PATH_TO_GAME/0_Proton_PW_MoHAA" && mv "$PATH_TO_GAME/main/newconfig.cfg" "$PATH_TO_GAME/main/newconfig.cfg.bak" && mv "$PATH_TO_GAME/main/configs/unnamedsoldier.cfg" "$PATH_TO_GAME/main/configs/unnamedsoldier.cfg.bak" && mv "$PATH_TO_GAME/mainta/newconfig.cfg" "$PATH_TO_GAME/mainta/newconfig.cfg.bak" && mv "$PATH_TO_GAME/mainta/configs/unnamedsoldier.cfg" "$PATH_TO_GAME/mainta/configs/unnamedsoldier.cfg.bak" && mv "$PATH_TO_GAME/maintt/newconfig.cfg" "$PATH_TO_GAME/maintt/newconfig.cfg.bak" && mv "$PATH_TO_GAME/maintt/configs/unnamedsoldier.cfg" "$PATH_TO_GAME/maintt/configs/unnamedsoldier.cfg.bak" && echo '// // Video Card Family: NVidia GeForce diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_GAMEFORGE b/data_from_portwine/scripts/pw_autoinstall/PW_GAMEFORGE index fe9edbe1..02d4b1c8 100755 --- a/data_from_portwine/scripts/pw_autoinstall/PW_GAMEFORGE +++ b/data_from_portwine/scripts/pw_autoinstall/PW_GAMEFORGE @@ -2,12 +2,12 @@ # Author: chal55rus (Sergey P.), cefeiko, Castro-Fidel (linux-gaming.ru) ########################################################################## pw_shutdown_please () { - if [ "$PW_USE_RUNTIME" != 1 ] + if [[ "$PW_USE_RUNTIME" != 1 ]] then echo "PW_USE_RUNTIME: `echo $PW_USE_RUNTIME`" else sleep 10 while true ; do - if [ -z "`ps aux | grep -v grep | grep -wm 1 "$1" | awk '{print $2}'`" ] && [ ! -z "`pgrep wrap | head -n 1`" ]; then + if [[ -z "`ps aux | grep -v grep | grep -wm 1 "$1" | awk '{print $2}'`" ]] && [[ -n "`pgrep wrap | head -n 1`" ]] ; then echo -e "PID "$1" not found" sleep 1 else diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_OSU b/data_from_portwine/scripts/pw_autoinstall/PW_OSU index e8880bc0..19a928ab 100755 --- a/data_from_portwine/scripts/pw_autoinstall/PW_OSU +++ b/data_from_portwine/scripts/pw_autoinstall/PW_OSU @@ -12,7 +12,7 @@ export PW_AUTOINSTALL_EXE="${WINEPREFIX}/drive_c/Program Files (x86)/OSU/osu!.ex if try_download "https://m1.ppy.sh/r/osu!install.exe" "${PW_AUTOINSTALL_EXE}" no_mirror then pw_start_progress_bar_install_game "OSU!." - if [ -f "${PORT_WINE_PATH}/data/pfx_dotnet/drive_c/Program Files (x86)/OSU/osu!install.exe" ]; then + if [[ -f "${PORT_WINE_PATH}/data/pfx_dotnet/drive_c/Program Files (x86)/OSU/osu!install.exe" ]] ; then mv -f "${PORT_WINE_PATH}/data/pfx_dotnet/drive_c/Program Files (x86)/OSU/osu!install.exe" "${PORT_WINE_PATH}/data/pfx_dotnet/drive_c/Program Files (x86)/OSU/osu!.exe" fi export portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/OSU/osu!.exe" diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_STEAM b/data_from_portwine/scripts/pw_autoinstall/PW_STEAM index d5092390..f2fa116e 100755 --- a/data_from_portwine/scripts/pw_autoinstall/PW_STEAM +++ b/data_from_portwine/scripts/pw_autoinstall/PW_STEAM @@ -9,7 +9,7 @@ then pw_start_progress_bar_install_game "Steam." pw_kill_autostart steam.exe & pw_run "${PW_AUTOINSTALL_EXE}" - if [ -f "$WINEPREFIX/drive_c/Program Files (x86)/Steam/Steam.exe" ] + if [[ -f "$WINEPREFIX/drive_c/Program Files (x86)/Steam/Steam.exe" ]] then mv -f "$WINEPREFIX/drive_c/Program Files (x86)/Steam/Steam.exe" "$WINEPREFIX/drive_c/Program Files (x86)/Steam/steam.exe" fi portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Steam/steam.exe" diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_WOSB b/data_from_portwine/scripts/pw_autoinstall/PW_WOSB index 0fe8c661..86fd0e3e 100755 --- a/data_from_portwine/scripts/pw_autoinstall/PW_WOSB +++ b/data_from_portwine/scripts/pw_autoinstall/PW_WOSB @@ -7,7 +7,7 @@ export PW_VULKAN_USE=1 export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/wos_client.exe" WOSB_VERSION="$(curl -s --list-only --connect-timeout 3 https://www.worldofseabattle.com/download2 2>/dev/null | grep 'installer.exe' | awk -F'xsolla-launcher-update/' '{print $2}' | awk -F'/' '{print $1}')" -[[ ! -z "$WOSB_VERSION" ]] && print_info "Found version: $WOSB_VERSION" || yad_error "Error while get version of WOSB INSTALLER." +[[ -n "$WOSB_VERSION" ]] && print_info "Found version: $WOSB_VERSION" || yad_error "Error while get version of WOSB INSTALLER." start_portwine if try_download "https://installer.launcher.xsolla.com/xlauncher-builds/xsolla-launcher-update/${WOSB_VERSION}/bin/installer.exe" "${PW_AUTOINSTALL_EXE}" no_mirror diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index 8a368ee8..db82c554 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -177,7 +177,7 @@ try_remove_file "${PW_TMPFS_PATH}/update_pfx_log" source "${USER_CONF}" # check PortProton theme -if [[ ! -z "$GUI_THEME" ]] \ +if [[ -n "$GUI_THEME" ]] \ && [[ -f "$PW_GUI_THEMES_PATH/$GUI_THEME.pptheme" ]] then # shellcheck source=/dev/null @@ -247,7 +247,7 @@ if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then export GAMESCOPE_INSTALLED="1" else print_error "gamescope - broken!" - if [[ -n $PW_DEBUG ]] ; then + if [[ -n "$PW_DEBUG" ]] ; then debug_timer --start timeout 5 gamescope --help debug_timer --end "gamescope" @@ -264,7 +264,7 @@ if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then export VULKAN_DRIVER_NAME GET_GPU_NAMES else print_error "vulkaninfo - broken!" - if [[ -n $PW_DEBUG ]] ; then + if [[ -n "$PW_DEBUG" ]] ; then debug_timer --start timeout 5 vulkaninfo debug_timer --end "vulkaninfo" @@ -284,7 +284,7 @@ if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then export LSPCI_VGA else print_error "lspci - broken!" - if [[ -n $PW_DEBUG ]] ; then + if [[ -n "$PW_DEBUG" ]] ; then debug_timer --start timeout 5 lspci -vv debug_timer --end "lspci" @@ -303,7 +303,7 @@ if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then print_var PW_SCREEN_RESOLUTION PW_SCREEN_PRIMARY else print_error "xrandr - broken!" - if [[ -n $PW_DEBUG ]] ; then + if [[ -n "$PW_DEBUG" ]] ; then debug_timer --start timeout 5 xrandr --verbose debug_timer --end "xrandr" @@ -327,7 +327,7 @@ if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then unset LOCALE_LIST for LOCALE in $GET_LOCALE_LIST ; do if grep -e "$LOCALE" "${PW_TMPFS_PATH}/locale.tmp" &>/dev/null ; then - if [[ ! -z "$LOCALE_LIST" ]] + if [[ -n "$LOCALE_LIST" ]] then LOCALE_LIST+="!$(grep -e "$LOCALE" "${PW_TMPFS_PATH}/locale.tmp")" else LOCALE_LIST="$(grep -e "$LOCALE" "${PW_TMPFS_PATH}/locale.tmp")" fi @@ -336,7 +336,7 @@ if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then export LOCALE_LIST else print_error "locale - broken!" - if [[ -n $PW_DEBUG ]] ; then + if [[ -n "$PW_DEBUG" ]] ; then debug_timer --start timeout 5 locale -a debug_timer --end "locale" @@ -407,7 +407,7 @@ export SKIP_CHECK_UPDATES="1" [[ "$MISSING_DESKTOP_FILE" == 1 ]] && portwine_missing_shortcut -if [[ ! -z $(basename "${portwine_exe}" | grep .ppack) ]] ; then +if [[ -n $(basename "${portwine_exe}" | grep .ppack) ]] ; then unset PW_SANDBOX_HOME_PATH pw_init_runtime if check_flatpak @@ -540,8 +540,8 @@ case "${PW_VULKAN_USE}" in *) PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_LEGACY!$SORT_G_ZINK!$SORT_G_NINE!$SORT_OPENGL!$SORT_VULKAN" ;; esac -if [[ ! -z "${PW_COMMENT_DB}" ]] ; then : -elif [[ ! -z "${PORTPROTON_NAME}" ]] ; then +if [[ -n "${PW_COMMENT_DB}" ]] ; then : +elif [[ -n "${PORTPROTON_NAME}" ]] ; then PW_COMMENT_DB="$(gettext "Launching") ${PORTPROTON_NAME}" else PW_COMMENT_DB="$(gettext "Launching") ${PORTWINE_DB}" @@ -572,8 +572,7 @@ if [[ -f "${portwine_exe}" ]] ; then fi if [[ "${PW_GUI_DISABLED_CS}" != 1 ]] ; then pw_create_gui_png - grep -il "${portwine_exe}" "${HOME}/.local/share/applications"/*.desktop - if [[ "$?" != "0" ]] ; then + if ! grep -il "${portwine_exe}" "${HOME}/.local/share/applications"/*.desktop ; then PW_SHORTCUT="$(gettext "CREATE SHORTCUT")!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!$(gettext "Create shortcut for select file..."):100" else PW_SHORTCUT="$(gettext "DELETE SHORTCUT")!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!$(gettext "Delete shortcut for select file..."):98" @@ -711,12 +710,12 @@ else IFS="%" "${pw_yad}" --plug=$KEY --tabnum="${PW_GUI_SORT_TABS[4]}" --form --columns="$MAIN_GUI_COLUMNS" --homogeneous-column \ - --gui-type-layout=${MAIN_MENU_GUI_TYPE_LAYOUT} \ + --gui-type-layout="${MAIN_MENU_GUI_TYPE_LAYOUT}" \ --align-buttons --scroll --separator=" " ${PW_GENERATE_BUTTONS} 2>/dev/null & IFS="$orig_IFS" "${pw_yad}" --plug=$KEY --tabnum="${PW_GUI_SORT_TABS[3]}" --form --columns=3 --align-buttons --separator=";" --homogeneous-column \ - --gui-type-layout=${MAIN_MENU_GUI_TYPE_LAYOUT} \ + --gui-type-layout="${MAIN_MENU_GUI_TYPE_LAYOUT}" \ --field=" $(gettext "Reinstall PortProton")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal gui_pw_reinstall_pp"' \ --field=" $(gettext "Remove PortProton")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal gui_rm_portproton"' \ --field=" $(gettext "Update PortProton")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE_MM.png"!"":"FBTN" '@bash -c "button_click --normal gui_pw_update"' \ From 07b3406d0db9d560b12c380fd9d6e84020b820f6 Mon Sep 17 00:00:00 2001 From: Htylol Date: Fri, 13 Sep 2024 05:42:17 +0500 Subject: [PATCH 15/17] Fixed a bug when PW_COMMENT_DB was saved from a ppdb file and overridden files without it --- data_from_portwine/scripts/functions_helper | 12 ++++++------ data_from_portwine/scripts/start.sh | 13 +++++++------ 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 472b606b..cf522fbc 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -440,10 +440,10 @@ pw_notify_send () { local OPTIND="1" while getopts a:i:t: opt ; do case "$opt" in - a) + a) local app=$OPTARG ;; - i) + i) case "$OPTARG" in info) local OPTARG="${PORT_WINE_PATH}/data/img/gui/notify_info.svg";; warning) local OPTARG="${PORT_WINE_PATH}/data/img/gui/notify_warning.svg";; @@ -451,10 +451,10 @@ pw_notify_send () { esac local icon=$OPTARG ;; - t) + t) local timeout=$OPTARG ;; - *) + *) echo "usage: $0 [-a] name application (PortProton default) [-i] info, warning, error (none default) @@ -1455,7 +1455,7 @@ pw_init_db () { PORTWINE_DB_FILE="${PW_FIND_DB_FILE}" fi IFS="$orig_IFS" - + if [[ -f "${PW_FIND_DB_FILE}" ]] ; then # shellcheck source=/dev/null source "${PORTWINE_DB_FILE}" @@ -3454,7 +3454,7 @@ pw_tray_icon () { $(gettext "WINEFILE")!bash -c pw_tray_winefile!"$PW_GUI_ICON_PATH/wine_file.svg"|| \ $(gettext "TASKMGR")!bash -c pw_tray_taskmgr!"$PW_GUI_ICON_PATH/wine_system.svg"|| \ $(gettext "CHANGELOG")!bash -c open_changelog!"$PW_GUI_ICON_PATH/history.svg"|| \ - $(gettext "FORCE EXIT") !bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/close.svg"||" 2>/dev/null & + $(gettext "FORCE EXIT")!bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/close.svg"||" 2>/dev/null & else PW_GUI_TRAY_PATH="${PW_GUI_THEMES_PATH}/tray" env LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" "${PW_GUI_TRAY_PATH}/tray_gui_pp" & diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index db82c554..9be477c7 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -98,7 +98,7 @@ unset CHK_SYMLINK_FILE PW_MESA_GL_VERSION_OVERRIDE PW_VKD3D_FEATURE_LEVEL PATH_T unset PW_PREFIX_NAME WINEPREFIX VULKAN_MOD PW_WINE_VER PW_ADD_TO_ARGS_IN_RUNTIME PW_GAMEMODERUN_SLR AMD_VULKAN_ICD PW_WINE_CPU_TOPOLOGY unset PW_NAME_D_NAME PW_NAME_D_ICON PW_NAME_D_EXEC PW_EXEC_FROM_DESKTOP PW_ALL_DF PW_GENERATE_BUTTONS PW_NAME_D_ICON PW_NAME_D_ICON_48 unset MANGOHUD_CONFIG FPS_LIMIT PW_WINE_USE WINEDLLPATH WINE WINEDIR WINELOADER WINESERVER PW_USE_RUNTIME PORTWINE_CREATE_SHORTCUT_NAME MIRROR -unset PW_LOCALE_SELECT PW_SETTINGS_INDICATION PW_GUI_START PW_AUTOINSTALL_EXE NOSTSTDIR RADV_DEBUG +unset PW_LOCALE_SELECT PW_SETTINGS_INDICATION PW_GUI_START PW_AUTOINSTALL_EXE NOSTSTDIR RADV_DEBUG PW_COMMENT_DB export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp" rm -f "$PORT_WINE_TMP_PATH"/*{exe,msi,tar}* @@ -540,11 +540,12 @@ case "${PW_VULKAN_USE}" in *) PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_LEGACY!$SORT_G_ZINK!$SORT_G_NINE!$SORT_OPENGL!$SORT_VULKAN" ;; esac -if [[ -n "${PW_COMMENT_DB}" ]] ; then : -elif [[ -n "${PORTPROTON_NAME}" ]] ; then - PW_COMMENT_DB="$(gettext "Launching") ${PORTPROTON_NAME}" -else - PW_COMMENT_DB="$(gettext "Launching") ${PORTWINE_DB}" +if [[ -z "${PW_COMMENT_DB}" ]] ; then + if [[ -n "${PORTPROTON_NAME}" ]] ; then + PW_COMMENT_DB="$(gettext "Launching") ${PORTPROTON_NAME}" + else + PW_COMMENT_DB="$(gettext "Launching") ${PORTWINE_DB}" + fi fi if [[ $PW_WINE_USE == PROTON_LG ]] ; then From 4d8841fc83149a9a90bf4390da376570a97a6a9b Mon Sep 17 00:00:00 2001 From: Htylol Date: Fri, 13 Sep 2024 15:17:58 +0500 Subject: [PATCH 16/17] Added restart_pp function --- data_from_portwine/locales/PortProton.pot | 2 +- data_from_portwine/scripts/functions_helper | 174 ++++++++------------ data_from_portwine/scripts/start.sh | 3 +- 3 files changed, 75 insertions(+), 104 deletions(-) diff --git a/data_from_portwine/locales/PortProton.pot b/data_from_portwine/locales/PortProton.pot index d11c27db..ee4d11b6 100644 --- a/data_from_portwine/locales/PortProton.pot +++ b/data_from_portwine/locales/PortProton.pot @@ -7,7 +7,7 @@ msgid "" msgstr "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2024-09-12 02:40+0500\n" + "POT-Creation-Date: 2024-09-13 02:43+0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index cf522fbc..25f1c26a 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -622,6 +622,21 @@ combobox_fix () { fi } +restart_pp () { + if [[ -n "$1" ]] ; then + if [[ "$1" == "--userconf" ]] ; then + /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & + exit 0 + elif [[ "$1" == "--edit_db" ]] ; then + /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_edit_db" & + exit 0 + fi + else + /usr/bin/env bash -c ${pw_full_command_line[@]} & + exit 0 + fi +} + pw_clear_pfx () { rm -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/.dot* rm -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/.prog* @@ -678,11 +693,10 @@ pw_reinstall_pp () { try_remove_file "${PORT_WINE_TMP_PATH}/scripts_update_notifier" try_remove_file "${PORT_WINE_PATH}/data/user.conf" try_remove_file "${PORT_WINE_TMP_PATH}/scripts_ver" - echo - print_info "Restarting PP for reinstall files..." + echo "" unset SKIP_CHECK_UPDATES - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + print_info "Restarting PP for reinstall files..." + restart_pp } check_user_conf () { @@ -1623,10 +1637,9 @@ pw_port_update () { try_remove_file "${PORT_WINE_TMP_PATH}/PortWINE-${BRANCH}.tar.gz" try_remove_dir "${PORT_WINE_TMP_PATH}/PortWINE-${BRANCH}/" echo "${scripts_current_ver}" > "${PORT_WINE_TMP_PATH}/scripts_ver" - echo "Restarting PP after update..." unset SKIP_CHECK_UPDATES - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + echo "Restarting PP after update..." + restart_pp fi else yad_error_download && pw_port_update || exit 1 @@ -1806,8 +1819,8 @@ pw_find_exe () { YAD_STATUS="$?" if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then if [[ -z "${PW_SET_FIND_EXE}" ]] ; then - /usr/bin/env bash -c ${pw_full_command_line[*]} & print_info "Restarting..." + restart_pp fi exit 0 fi @@ -1816,8 +1829,7 @@ pw_find_exe () { if [[ -n "${PW_SET_FIND_EXE}" ]] ; then portwine_exe="${PW_PATH_FOR_FIND}$(echo "${PW_SET_FIND_EXE}" | awk -F'|' '{print $1}')" portwine_create_shortcut silent - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi } @@ -3405,9 +3417,8 @@ open_changelog () { YAD_STATUS="$?" if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] && [[ -z "$WINEPREFIX" ]] ; then - /usr/bin/env bash -c ${pw_full_command_line[*]} & print_info "Restarting..." - exit 0 + restart_pp else exit 0 fi @@ -3535,8 +3546,7 @@ gui_proton_downloader () { if [[ -z "${PROTON_PW_GIT}" ]] ; then yad_error "$(gettext "Error: check wine.")" - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi pushd "${PORT_WINE_PATH}/data/dist/" || fatal @@ -3613,8 +3623,7 @@ gui_proton_downloader () { --button="$(gettext "OK")"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png"!"":0 2>/dev/null YAD_WINE_STATUS="$?" if [[ "$YAD_WINE_STATUS" == "1" || "$YAD_WINE_STATUS" == "252" ]] ; then - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi if [[ -n $(<"${PW_TMPFS_PATH}/tmp_set_wine") ]] ; then VERSION_WINE_GIT="$(sed 's/TRUE//' "${PW_TMPFS_PATH}/tmp_set_wine")" @@ -3627,8 +3636,7 @@ gui_proton_downloader () { && [[ -z "${VERSION_INSTALLED_WINE}" ]] then print_info "Nothing to do." - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi elif [[ "$1" == "silent" ]] && [[ -n "$2" ]] ; then @@ -3670,8 +3678,7 @@ gui_proton_downloader () { try_remove_dir "${PORT_WINE_PATH}/data/dist/${REMOVE_WINE}" done if [[ -z "${VERSION_WINE_GIT}" ]] ; then - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi fi @@ -3686,8 +3693,7 @@ gui_proton_downloader () { pw_download_get_wine done edit_db_from_gui - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp else # init_wine_ver print_error "$PW_WINE_USE" @@ -3875,13 +3881,11 @@ A brief instruction: case "$YAD_STATUS" in 1|252) - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp ;; 2) try_remove_file "$portwine_exe".ppdb - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp ;; 150) gui_edit_db_file @@ -3933,8 +3937,7 @@ A brief instruction: if [[ "$YAD_STATUS" == "0" ]] ; then print_info "Restarting PP after update ppdb file..." - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi } @@ -4050,16 +4053,18 @@ fi case "${YAD_VKBASALT_STATUS}" in 1|252) - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 ;; + restart_pp + ;; 178) sed -i '/VKBASALT/d' "$portwine_exe".ppdb - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 ;; + restart_pp + ;; 180) - export PW_VKBASALT="0" ;; + export PW_VKBASALT="0" + ;; 182) - export PW_VKBASALT="1" ;; + export PW_VKBASALT="1" + ;; esac YAD_BASALT_SET=$(<"${PW_TMPFS_PATH}/tmp_yad_basalt_set") YAD_CAS_SET=$(cat "${PW_TMPFS_PATH}/tmp_yad_cas_set" | sed s/" "//g) @@ -4084,8 +4089,7 @@ fi fi edit_db_from_gui PW_VKBASALT_EFFECTS PW_VKBASALT_FFX_CAS PW_VKBASALT - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp } # GUI MANGOHUD @@ -4218,14 +4222,13 @@ fi case "${YAD_MANGOHUD_STATUS}" in 1|252) - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp ;; 180) sed -i '/FPS_LIMIT/d' "$portwine_exe".ppdb sed -i '/MANGOHUD/d' "$portwine_exe".ppdb - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 ;; + restart_pp + ;; 182) export PW_MANGOHUD="0" ;; @@ -4300,8 +4303,7 @@ fi gui_mangohud fi - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp } # GUI DGVOODOO2 @@ -4422,14 +4424,12 @@ fi case "${YAD_DGV2_STATUS}" in 1|252) - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp ;; 162) sed -i '/PW_DGV2/d' "$portwine_exe".ppdb sed -i '/DGVOODOO2/d' "$portwine_exe".ppdb - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp ;; 164) export PW_DGVOODOO2="0" @@ -4470,8 +4470,7 @@ fi PW_DGV2_FPS_LIMIT PW_DGV2_BIT_DEPTH PW_DGV2_BRIGHTNESS PW_DGV2_COLOR PW_DGV2_CONTRAST PW_DGV2_VIDEOCARD PW_DGV2_DISPLAY_ROI \ PW_DGV2_CURSOR_SCALE PW_DGV2_RESAMPLING - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp } # GUI GAMESCOPE @@ -4615,14 +4614,12 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate." case "${YAD_GAMESCOPE_STATUS}" in 1|252) - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp ;; 162) sed -i '/PW_GS/d' "$portwine_exe".ppdb sed -i '/GAMESCOPE/d' "$portwine_exe".ppdb - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp ;; 164) export PW_GAMESCOPE="0" @@ -4663,8 +4660,7 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate." PW_GS_UPSCALE_SHARPNESS PW_GS_MAX_SCALE_FACTOR PW_GS_MOUSE_SENSITIVITY \ PW_GS_SDR_CONTENT_NITS PW_GS_ITM_SDR_NITS PW_GS_ITM_TARGET_NITS - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp } # GUI USERCONF @@ -4740,9 +4736,7 @@ gui_userconf () { case "$YAD_USERCONF_STATUS" in 1|252) - echo ${pw_full_command_line[*]} - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp ;; 164) gui_open_user_conf @@ -4753,8 +4747,7 @@ gui_userconf () { PW_SOUND_DRIVER_USE="$(echo ${PW_ADD_SETTINGS_UC} | awk -F"%" '{print $2}')" GUI_THEME="$(echo ${PW_ADD_SETTINGS_UC} | awk -F"%" '{print $3}')" edit_user_conf_from_gui PW_GPU_USE PW_SOUND_DRIVER_USE GUI_THEME - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp ;; esac @@ -4949,16 +4942,14 @@ portwine_create_shortcut () { if [[ "${PW_GUI_START}" == "NOTEBOOK" ]] ; then unset PW_YAD_FORM_TAB fi - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi elif [[ "$PW_YAD_OUT" == "2" ]] ; then print_info "Restarting PP..." if [[ "${PW_GUI_START}" == "NOTEBOOK" ]] ; then unset PW_YAD_FORM_TAB fi - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi } @@ -5164,8 +5155,7 @@ pw_prefix_manager () { 1|252) print_info "Nothing to do. Restarting PortProton..." stop_portwine & - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp ;; 0) WT_FORCE="" @@ -5198,8 +5188,7 @@ pw_prefix_manager () { else print_info "Nothing to do. Restarting PortProton..." stop_portwine & - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi } gui_prefix_manager @@ -5397,8 +5386,7 @@ pw_create_prefix_backup () { YAD_STATUS="$?" if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi if [[ -n "$(grep "/${PW_PREFIX_NAME}/" "${PORT_WINE_PATH}"/*.desktop )" ]] ; then try_remove_file "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.create_shortcut" @@ -5431,8 +5419,7 @@ EOF else yad_error "$(gettext "An error occurred while backing up the prefix:") $PW_PREFIX_NAME" fi - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp } pw_autoinstall_from_db () { @@ -5495,8 +5482,7 @@ gui_clear_pfx () { if yad_question "$(gettext "Do you want to clear prefix in PortProton?")" ; then pw_clear_pfx print_info "Restarting PP after clearing prefix..." - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi } export -f gui_clear_pfx @@ -5517,16 +5503,14 @@ gui_pw_update () { try_remove_file "${PORT_WINE_TMP_PATH}/scripts_update_notifier" print_info "Restarting PP for check update..." unset SKIP_CHECK_UPDATES - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp } export -f gui_pw_update change_loc () { try_remove_file "${PORT_WINE_TMP_PATH}/PortProton_loc" print_info "Restarting PP for change language..." - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp } export -f change_loc @@ -5541,8 +5525,7 @@ change_mirror () { "$(gettext "Mirror changed to:")" "https://cloud.linux-gaming.ru" fi print_info "Restarting PP for change mirror..." - /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & - exit 0 + restart_pp --userconf } export -f change_mirror @@ -5566,8 +5549,7 @@ change_branch () { fi fi print_info "Restarting PP for change branch..." - /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & - exit 0 + restart_pp --userconf } export -f change_branch @@ -5582,16 +5564,14 @@ change_download_grid () { "$(gettext "Cover downloads are enabled")" fi print_info "Restarting PP for change cover download behavior..." - /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & - exit 0 + restart_pp --userconf } export -f change_download_grid open_game_folder () { xdg-open "${PATH_TO_GAME}" - /usr/bin/env bash -c ${pw_full_command_line[*]} & print_info "Restarting PP after open game folder..." - exit 0 + restart_pp } export -f open_game_folder @@ -5606,8 +5586,7 @@ change_gui_start () { "$(gettext "Gui start changed to:")" "NOTEBOOK" fi print_info "Restarting PP for change gui start..." - /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & - exit 0 + restart_pp --userconf } export -f change_gui_start @@ -5628,15 +5607,13 @@ gui_open_user_conf () { case "${YAD_STATUS}" in 1|252) - /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & print_info "Restarting..." - exit 0 + restart_pp --userconf ;; 2) echo "${PW_USERCONF_GUI}" > "${PORT_WINE_PATH}/data/user.conf" - /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & print_info "Restarting..." - exit 0 + restart_pp --userconf ;; esac } @@ -5653,13 +5630,11 @@ gui_edit_db_file () { case "$YAD_STATUS" in 1|252) - /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_edit_db" & - exit 0 + restart_pp --edit_db ;; 2) echo "${GUI_EDIT_DB_FILE}" > "${PORTWINE_DB_FILE}" - /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_edit_db" & - exit 0 + restart_pp --edit_db ;; esac } @@ -5671,14 +5646,12 @@ gui_open_scripts_from_backup () { YAD_STATUS="$?" if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp fi unpack "$PW_SCRIPT_FROM_BACKUP" "${PORT_WINE_PATH}/data/" echo "0" > "${PORT_WINE_TMP_PATH}/scripts_update_notifier" print_info "Restarting PP after backup..." - /usr/bin/env bash -c ${pw_full_command_line[*]} & - exit 0 + restart_pp } export -f gui_open_scripts_from_backup @@ -5771,6 +5744,5 @@ DGVOODOO2: https://dege.fw.hu/" --tab="$(gettext "SPONSORS")" --tab="$(gettext "JOIN")" --tab="$(gettext "THIRD PARTY LIBRARIES")" echo "Exit from credits" - /usr/bin/env bash -c "${pw_full_command_line[*]}" & - exit 0 + restart_pp } diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index 9be477c7..d0d44e4b 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -663,9 +663,8 @@ if [[ -f "${portwine_exe}" ]] ; then unset PW_YAD_FORM_TAB fi unset PW_NO_RESTART_PPDB PW_DISABLED_CREATE_DB KEY_START portwine_exe - /usr/bin/env bash -c ${pw_full_command_line[*]} & print_info "Restarting..." - exit 0 + restart_pp ;; 1|252) exit 0 From 8defcff2cad0e88ba42ab45e218fe03ccfd86fd3 Mon Sep 17 00:00:00 2001 From: Htylol Date: Fri, 13 Sep 2024 15:38:18 +0500 Subject: [PATCH 17/17] Update restart_pp function --- data_from_portwine/scripts/functions_helper | 11 ++++------- data_from_portwine/scripts/start.sh | 9 ++++++--- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 25f1c26a..3cdf0405 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -625,16 +625,13 @@ combobox_fix () { restart_pp () { if [[ -n "$1" ]] ; then if [[ "$1" == "--userconf" ]] ; then - /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_userconf" & - exit 0 + export RESTART_PP_USED="userconf" elif [[ "$1" == "--edit_db" ]] ; then - /usr/bin/env bash -c "${pw_full_command_line[0]} --gui_edit_db" & - exit 0 + export RESTART_PP_USED="edit_db" fi - else - /usr/bin/env bash -c ${pw_full_command_line[@]} & - exit 0 fi + /usr/bin/env bash -c ${pw_full_command_line[@]} & + exit 0 } pw_clear_pfx () { diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index d0d44e4b..ac8bc7a2 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -566,9 +566,11 @@ fi if [[ -f "${portwine_exe}" ]] ; then unset TAB_MAIN_MENU - if [[ "$1" == "--gui_edit_db" ]] ; then + if [[ "$RESTART_PP_USED" == "edit_db" ]] ; then + unset RESTART_PP_USED gui_edit_db - elif [[ "$1" == "--gui_userconf" ]] ; then + elif [[ "$RESTART_PP_USED" == "userconf" ]] ; then + unset RESTART_PP_USED gui_userconf fi if [[ "${PW_GUI_DISABLED_CS}" != 1 ]] ; then @@ -681,7 +683,8 @@ else then export PW_GUI_SORT_TABS=(1 2 3 4 5) else export PW_GUI_SORT_TABS=(2 3 4 5 1) fi - if [[ "$1" == "--gui_userconf" ]] ; then + if [[ "$RESTART_PP_USED" == "userconf" ]] ; then + unset RESTART_PP_USED gui_userconf fi