forked from CastroFidel/PortWINE
		
	Scripts version 2166
This commit is contained in:
		| @@ -598,7 +598,7 @@ stop_portwine () { | ||||
|     if [ ! -z "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" ] ; then | ||||
|         kill -s SIGUSR1 "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" 2>/dev/null | ||||
|     fi | ||||
|     add_in_stop_portwine &>/dev/null | ||||
|     add_in_stop_portwine #&>/dev/null | ||||
|     kill -n 9 `pgrep -a start.sh | grep -i '/PortProton/' | awk '{print $1}'` > /dev/null 2>&1 | ||||
|     killall yad_new &>/dev/null | ||||
|     exit 0 | ||||
| @@ -762,7 +762,7 @@ pw_init_db () { | ||||
|         export PORTWINE_DB=`echo "${portwine_exe}" | awk -F '/' 'NF>1{print $NF}' | sed s/".exe"/""/gi` | ||||
|         if [[ -f "${portwine_exe}".ppdb ]] && [[ "${PORTWINE_DB}" != "RiotClientServices" ]] ; then | ||||
|             export PORTWINE_DB_FILE="${portwine_exe}".ppdb | ||||
|             sed -i 's/ PP_/ PW_/g' "${PORTWINE_DB_FILE}" | ||||
|             # sed -i 's/ PP_/ PW_/g' "${PORTWINE_DB_FILE}" | ||||
|             . "${PORTWINE_DB_FILE}" | ||||
|             if [[ -z "`ls -p "${PORT_WINE_PATH}/prefixes/" | grep -e "^${PW_PREFIX_NAME}/"`" ]] ; then | ||||
|                 export PW_PREFIX_NAME=`echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}'` | ||||
| @@ -785,10 +785,10 @@ pw_init_db () { | ||||
|                 --title "Database file selection..." --window-icon="$PW_GUI_ICON_PATH/port_proton.png"  --form --separator="" \ | ||||
|                 --field="DB FILE: :CB" "${ADD_CB_DBFILE}"` | ||||
|                 if [[ "$?" == "1" || "$?" == "252" ]] ; then exit 0 ; fi | ||||
|                 sed -i 's/ PP_/ PW_/g' "${PORTWINE_DB_FILE}" | ||||
|                 # sed -i 's/ PP_/ PW_/g' "${PORTWINE_DB_FILE}" | ||||
|             elif [[ `echo "$PW_FIND_DB_FILE" | wc -l` -eq 1 ]] ; then | ||||
|                 PORTWINE_DB_FILE="${PW_FIND_DB_FILE}" | ||||
|                 sed -i 's/ PP_/ PW_/g' "${PORTWINE_DB_FILE}" | ||||
|                 # sed -i 's/ PP_/ PW_/g' "${PORTWINE_DB_FILE}" | ||||
|             fi | ||||
|             IFS="$orig_IFS" | ||||
|             if [[ -f "${PW_FIND_DB_FILE}" ]] && [[ -z `grep "^export PW_DISABLED_CREATE_DB=1" "${PW_FIND_DB_FILE}"` ]] ; then | ||||
| @@ -899,10 +899,7 @@ update_winetricks () { | ||||
|     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" | ||||
|         #HOTFIX SHA256SUM FOR VC_RUN2019 | ||||
|         sed -i 's/vc_redist.x86.exe 1acd8d5ea1cdc3eb2eb4c87be3ab28722d0825c15449e5c9ceef95d897de52fa/vc_redist.x86.exe 80c7969f4e05002a0cd820b746e0acb7406d4b85e52ef096707315b390927824/g' "${PORT_WINE_TMP_PATH}/winetricks" | ||||
|         sed -i 's/vc_redist.x64.exe 003063723b2131da23f40e2063fb79867bae275f7b5c099dbd1792e25845872b/vc_redist.x64.exe 9b9dd72c27ab1db081de56bb7b73bee9a00f60d14ed8e6fde45dab3e619b5f04/g' "${PORT_WINE_TMP_PATH}/winetricks" | ||||
|  | ||||
|         sed -i 's/w_metadata vcrun2019 dlls \\/w_metadata !dont_use_2019! dlls \\/' "${PORT_WINE_TMP_PATH}/winetricks" | ||||
|     fi | ||||
|     return 0 | ||||
| } | ||||
| @@ -962,11 +959,29 @@ pw_create_gui_png () { | ||||
| pw_find_exe () { | ||||
|     unset PW_FIND_TIME | ||||
|     case "$1" in | ||||
|         "last_day") PW_FIND_TIME="-mtime -1" ;; | ||||
|         "news") PW_FIND_TIME="-cmin -180" ;; | ||||
|     esac | ||||
|  | ||||
|     PW_EXCUDE_EXE_FIND='(windows|explorer|anticheat|programdata|redist|setup|.ppdb|unin|error|crash|handler|install|/jre/|steam|uploader)' | ||||
|     PW_PATH_FOR_FIND="${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/" | ||||
|     PW_EXCLUDE_EXE_FIND='(windows|explorer|anticheat|programdata|redist|setup|.ppdb|unin|error|crash|handler|install|/jre/|steam|uploader|eac|netframe)' | ||||
|     PW_PATH_FOR_FIND="${PORT_WINE_PATH}/data/prefixes/" | ||||
|  | ||||
|     find -P "${PW_PATH_FOR_FIND}" -type f -name "*.exe" ${PW_FIND_TIME} | grep -viE ${PW_EXCUDE_EXE_FIND} | ||||
|     find -P "${PW_PATH_FOR_FIND}" -type f -name "*.exe" ${PW_FIND_TIME} | grep -viE ${PW_EXCLUDE_EXE_FIND} | awk -F"/prefixes/" '{print $2}' > "${PORT_WINE_TMP_PATH}/tmp_yad_find_exe" | ||||
|  | ||||
|     unset FIND_TO_GUI | ||||
|     while read line; do | ||||
|         FIND_TO_GUI+="false%${line}%" | ||||
|     done < "${PORT_WINE_TMP_PATH}/tmp_yad_find_exe" | ||||
|  | ||||
|     OrigIFS="$IFS" && IFS=% | ||||
|     PW_SET_FIND_EXE="$("${pw_yad_new}" --height="300" --width="1000" --center --list --radiolist \ | ||||
|     --text-align=center --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "Create shortcut for..." \ | ||||
|     --text="\n${loc_gui_create_shortcut_for_exe}" --column="set:" --column="path to .exe file:" ${FIND_TO_GUI})" | ||||
|     YAD_STATUS="$?" | ||||
|     if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi | ||||
|     IFS=$OrigIFS | ||||
|  | ||||
|     if [[ -n "${PW_SET_FIND_EXE}" ]] ; then | ||||
|         portwine_exe="${PW_PATH_FOR_FIND}$(echo "${PW_SET_FIND_EXE}" | awk -F'|' '{print $2}')" | ||||
|         portwine_create_shortcut | ||||
|     fi | ||||
| } | ||||
|   | ||||
| @@ -26,6 +26,7 @@ then | ||||
| 	export loc_mg_emulators="ЭМУЛЯТОРЫ" | ||||
| 	export loc_mg_wine_settings="НАСТРОЙКИ WINE" | ||||
| 	export loc_mg_portproton_settings="НАСТРОЙКИ PORTPROTON" | ||||
| 	export loc_mg_installed="УСТАНОВЛЕННЫЕ" | ||||
|  | ||||
| 	export PW_CHANGELOG_FILE="changelog_rus" | ||||
| 	export PW_SELECTION_DB_LOC="Найдено более одного DB файла для запускаемого приложения.\nВыберите необходимый, или перед следующим запуском удалите лишний DB файл.\n" | ||||
| @@ -71,6 +72,7 @@ then | ||||
|  | ||||
| 	export port_debug="Не торопитесь! После окончания работы ${portname}, нажмите STOP." | ||||
|  | ||||
| 	export loc_create_shortcut_from_gui="Создать ярлык..." | ||||
| 	export loc_create_shortcut="Создать ярлык для запускаемого файла." | ||||
| 	export loc_delete_shortcut="Удалить ярлык для запускаемого файла." | ||||
| 	export loc_debug="Запуск c созданием .log файла в корне ${portname}" | ||||
| @@ -141,6 +143,8 @@ then | ||||
|  | ||||
| 	export loc_find_d3dadapter9_error="не найден в системе.\nУстановите недостающий пакет: </Sb>d3dadapter9</b>" | ||||
|  | ||||
| 	export loc_gui_create_shortcut_for_exe="Выберите .exe файл для которого необходимо создать ярлык и нажмите ОК.\n" | ||||
|  | ||||
| 	export loc_gui_error='Ошибка.' | ||||
| 	export loc_gui_error_download="Проверьте интернет соединение и\nнажмите OK для повторной попытки скачивания" | ||||
| 	export loc_gui_settings="Пожалуйста подождите." | ||||
| @@ -250,6 +254,8 @@ then | ||||
| 	export loc_gui_vkbasalt_start="VKBASALT" | ||||
| 	export loc_gui_db_comments="PortProton database file was found for" | ||||
|  | ||||
| 	export loc_create_shortcut_from_gui="Create shortcut..." | ||||
|  | ||||
|     export loc_gui_rm_pp="REMOVE PORTPROTON" | ||||
|     export loc_gui_upd_pp="UPDATE PORTPROTON" | ||||
|     export loc_gui_changelog="CHANGELOG" | ||||
| @@ -268,6 +274,7 @@ then | ||||
| 	export loc_mg_emulators="EMULATORS" | ||||
| 	export loc_mg_wine_settings="WINE SETTINGS" | ||||
| 	export loc_mg_portproton_settings="PORTPROTON SETTINGS" | ||||
| 	export loc_mg_installed="INSTALLED" | ||||
|  | ||||
| 	export PW_CHANGELOG_FILE="changelog_eng" | ||||
| 	export PW_SELECTION_DB_LOC="More than one DB file found for the application being launched.\nSelect the required one, or delete the extra DB file before the next run.\n" | ||||
| @@ -310,6 +317,8 @@ then | ||||
| 	export port_start7="Run winetricks" | ||||
| 	export port_start8="DXVK" | ||||
|  | ||||
| 	export loc_gui_create_shortcut_for_exe="Choose the .exe file for which you need to create a shortcut and click OK.\n" | ||||
|  | ||||
| 	export port_debug="Please wait! After finishing the ${portname}, click STOP." | ||||
| 	 | ||||
| 	export PW_WAYLAND_INFO="Attention! You are running $portname in a Wayland session, some features may not be available!\nRestarting your session in X11 is recommended!" | ||||
|   | ||||
| @@ -19,5 +19,5 @@ export PW_FORCE_LARGE_ADDRESS_AWARE=1          # Force Wine to enable the LARGE_ | ||||
| export PW_DLL_INSTALL="" | ||||
|  | ||||
| add_in_stop_portwine () { | ||||
|     echo TEST | ||||
|     pw_find_exe news | ||||
| } | ||||
|   | ||||
| @@ -597,7 +597,7 @@ else | ||||
|         fi | ||||
|          | ||||
|         PW_EXEC_FROM_DESKTOP="$(cat "${PORT_WINE_PATH}/${PW_YAD_SET}"* | grep Exec | head -n 1 | awk -F"=env " '{print $2}')" | ||||
|         echo ${PW_EXEC_FROM_DESKTOP[*]} | ||||
|         export portwine_exe="$(echo $PW_EXEC_FROM_DESKTOP | awk -F"start.sh" '{print $1}')" | ||||
|  | ||||
|         echo "Restarting PP after choose desktop file..." | ||||
|         # stop_portwine | ||||
| @@ -668,8 +668,24 @@ else | ||||
|     export -f gui_open_scripts_from_backup | ||||
|  | ||||
|  | ||||
|     export KEY=$RANDOM | ||||
|     "${pw_yad_new}" --plug=${KEY} --tabnum=4 --form --columns=3 --align-buttons --keep-icon-size  --separator=";" \ | ||||
|     export KEY="$RANDOM" | ||||
|      | ||||
|     orig_IFS="$IFS" && IFS=$'\n' | ||||
|     PW_ALL_DF="$(ls ${PORT_WINE_PATH}/ | grep .desktop | grep -vE '(PortProton|readme)')" | ||||
|     IFS="$orig_IFS" | ||||
|     PW_GENERATE_BUTTONS="--field=   $loc_create_shortcut_from_gui!$PW_GUI_ICON_PATH/separator.png!:FBTN%@bash -c \"button_click pw_find_exe\"%" | ||||
|     for PW_DESKTOP_FILES in ${PW_ALL_DF} ; do | ||||
|         PW_NAME_D_NAME="$(cat "${PORT_WINE_PATH}/$PW_DESKTOP_FILES" | grep Name | awk -F= '{print $2}')" | ||||
|         # PW_NAME_D_ICON="$(cat "${PORT_WINE_PATH}/$PW_DESKTOP_FILES" | grep Icon | awk -F= '{print $2}')" | ||||
|         PW_NAME_D_ICON="$PW_GUI_ICON_PATH/separator.png" | ||||
|         # PW_GENERATE_BUTTONS+="--field=  ${PW_NAME_D_NAME}!${PW_NAME_D_ICON}!:FBTN%@bash -c \"run_desktop_b_click ${PW_DESKTOP_FILES}\"%" | ||||
|     done | ||||
|  | ||||
|     old_IFS=$IFS && IFS="%" | ||||
|     "${pw_yad_new}" --plug=$KEY --tabnum=5 --form --columns=2 --align-buttons --keep-icon-size --scroll --separator=" " ${PW_GENERATE_BUTTONS} & | ||||
|     IFS="$orig_IFS" | ||||
|  | ||||
|     "${pw_yad_new}" --plug=${KEY} --tabnum=4 --form --columns=3 --align-buttons --keep-icon-size --separator=";" \ | ||||
|     --field="   $loc_gui_pw_reinstall_pp"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_pw_reinstall_pp"' \ | ||||
|     --field="   $loc_gui_rm_pp"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_rm_portproton"' \ | ||||
|     --field="   $loc_gui_upd_pp"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_pw_update"' \ | ||||
| @@ -740,36 +756,19 @@ else | ||||
|     # --field="   Guild Wars 2"!"$PW_GUI_ICON_PATH/gw2.png"!"":"FBTN" '@bash -c "button_click PW_GUILD_WARS_2"' | ||||
|     # --field="   Bethesda.net Launcher"!"$PW_GUI_ICON_PATH/bethesda.png"!"":"FBTN" '@bash -c "button_click PW_BETHESDA"' | ||||
|  | ||||
|     orig_IFS="$IFS" && IFS=$'\n' | ||||
|     PW_ALL_DF="$(ls ${PORT_WINE_PATH}/ | grep .desktop | grep -v "PortProton" | grep -v "readme")" | ||||
|     IFS="$orig_IFS" | ||||
|  | ||||
|     for PW_DESKTOP_FILES in ${PW_ALL_DF} ; do | ||||
|         PW_NAME_D_NAME="$(cat "${PORT_WINE_PATH}/$PW_DESKTOP_FILES" | grep Name | awk -F= '{print $2}')" | ||||
|         PW_NAME_D_ICON="$(cat "${PORT_WINE_PATH}/$PW_DESKTOP_FILES" | grep Icon | awk -F= '{print $2}')" | ||||
|  | ||||
|         PW_GENERATE_BUTTONS+="--field=  ${PW_NAME_D_NAME}!${PW_NAME_D_ICON}!:FBTN%@bash -c \"run_desktop_b_click ${PW_DESKTOP_FILES}\"%" | ||||
|     done | ||||
|  | ||||
|     old_IFS=$IFS && IFS="%" | ||||
|     "${pw_yad_new}" --plug=$KEY --tabnum=5 --form --columns=2 --align-buttons --keep-icon-size --scroll --separator=" " ${PW_GENERATE_BUTTONS} & | ||||
|     IFS="$orig_IFS" | ||||
|  | ||||
|  | ||||
|     "${pw_yad_new}" --key=$KEY --notebook --borders=5 --width=1000 --height=235 --no-buttons --auto-close --center \ | ||||
|     --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "${portname}-${install_ver} (${scripts_install_ver})" \ | ||||
|     --tab-pos=bottom --keep-icon-size \ | ||||
|     --tab="$loc_mg_autoinstall"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|     --tab="$loc_mg_emulators"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|     --tab="$loc_mg_wine_settings"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|     --tab="$loc_mg_portproton_settings"!"$PW_GUI_ICON_PATH/separator.png"!"" | ||||
|     --tab="$loc_mg_portproton_settings"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|     --tab="$loc_mg_installed"!"$PW_GUI_ICON_PATH/separator.png"!"" | ||||
|     YAD_STATUS="$?" | ||||
|     if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi | ||||
|  | ||||
|     if [[ -f "${PORT_WINE_TMP_PATH}/tmp_yad_form" ]]; then | ||||
|         export PW_YAD_SET=$(cat "${PORT_WINE_TMP_PATH}/tmp_yad_form" | head -n 1 | awk '{print $1}') | ||||
|         echo "from tmp_yad_form $PW_YAD_SET, and cat tmp_yad_form" | ||||
|         cat "${PORT_WINE_TMP_PATH}/tmp_yad_form" | ||||
|     fi | ||||
|     if [[ -f "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" ]] ; then | ||||
|         export VULKAN_MOD=$(cat "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" | grep \;\;  | awk -F";" '{print $1}') | ||||
| @@ -835,7 +834,9 @@ case "$PW_YAD_SET" in | ||||
|     pw_create_prefix_backup) pw_create_prefix_backup ;; | ||||
|     gui_credits) gui_credits ;; | ||||
|     pw_start_cont_xterm) pw_start_cont_xterm ;; | ||||
|     pw_find_exe) pw_find_exe ;; | ||||
|     PW_*) pw_autoinstall_from_db ;; | ||||
|     # *) run_desktop_b_click | ||||
| esac | ||||
|  | ||||
| stop_portwine | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| #!/usr/bin/env bash | ||||
| #Author: Castro-Fidel (linux-gaming.ru) | ||||
| #SCRIPTS_NEXT_VERSION=2165 | ||||
| #SCRIPTS_NEXT_VERSION=2166 | ||||
| ######################################################################## | ||||
| export PW_MANGOHUD=0 | ||||
| export MANGOHUD_CONFIG=cpu_stats,cpu_temp,cpu_mhz,cpu_color=2e97cb,cpu_text=CPU,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,gpu_name,gpu_color=2e9762,gpu_text=GPU,vram,vram_color=ad64c1,ram,ram_color=c26693,io_color=a491d3,frame_timing=1,frametime_color=00ff00,time,arch,wine,wine_color=eb5b5b,engine_color=eb5b5b,background_alpha=0.2,font_size=24,background_color=020202,text_color=ffffff,toggle_hud=Shift_R+F12,resolution,vkbasalt | ||||
|   | ||||
		Reference in New Issue
	
	Block a user