Commit c7b3a08b authored by Mikhail Tergoev's avatar Mikhail Tergoev

###Scripts version 2028###

parent 6646485c
......@@ -2,10 +2,16 @@
-----------------------------------------
В планах:
* добавить inxi в runtime и его вывод с аргументом -G в log
* добавить 32-битный mangohud_dlsym в runtime
* добавить cs_block при запуске порта
* добавить проверку количества db файлов на один exe
* заниматься только развитием проекта за счет вашей подписки на https://boosty.to/portwine-linux.ru
-----------------------------------------
###Scripts version 2028###
* добавлена поддержка UBUNTU 21.10
* добавлен графический интерфейс для настройки vkBasalt под каждую игру
* добавлено автоматическое создание db файла при первом запуске *.exe
###Scripts version 2027###
* в редакторе db файлов (EDIT_DB) добавлены всплывающие описания к каждому параметру.
* возващены libs_v17
......
......@@ -660,8 +660,6 @@ pw_gui_for_edit_db () {
fi
TMP_HELP_FOR_GUI="${int_to_boole}_INFO"
ADD_CHK_BOX_EDIT_DB+="--field=${int_to_boole}!${!TMP_HELP_FOR_GUI}:CHK%${!int_to_boole}%"
echo "$ADD_CHK_BOX_EDIT_DB"
echo "${int_to_boole}=${!int_to_boole}"
done
}
edit_db_field_add $@
......@@ -677,7 +675,6 @@ pw_gui_for_edit_db () {
exit 0
fi
export IFS=$old_IFS
echo "$output_yad_edit_db"
export output_yad_edit_db=($output_yad_edit_db)
export bool_from_yad=0
edit_db_field_read () {
......@@ -824,3 +821,66 @@ gui_proton_downloader () {
exit 0
}
export -f gui_proton_downloader
gui_vkBasalt () {
KEY_FX_GUI=$RANDOM
FILE_VKBASALT_CONF="${PORT_WINE_PATH}/data/vkBasalt.conf"
LIST_FX=(`grep ".fx$" "${FILE_VKBASALT_CONF}" | awk '{print $1}'`)
GET_FX_IN_FILE=(`echo ${PW_VKBASALT_EFFECTS} | sed s/"cas:"// | sed s/":"/" "/g`)
unset ADD_GUI_FX GUI_FX_RESULT
for add_list_fx in ${LIST_FX[@]} ; do
if [[ ! -z `echo " ${GET_FX_IN_FILE[@]} " | grep " ${add_list_fx} "` ]] ; then
ADD_GUI_FX+=("--field $add_list_fx:CHK TRUE")
else
ADD_GUI_FX+=("--field $add_list_fx:CHK FALSE")
fi
done
if [[ ! -z "${PW_VKBASALT_FFX_CAS}" ]] ; then
VKBASALT_FFX_CAS_GUI=`bc -s <<< "${PW_VKBASALT_FFX_CAS}*100" | sed 's/\..*//'`
else
VKBASALT_FFX_CAS_GUI=75
fi
"${pw_yad_new}" --plug=$KEY_FX_GUI --tabnum="1" --form --columns=5 --separator=" " \
${ADD_GUI_FX[@]} 1> "${PORT_WINE_TMP_PATH}/tmp_yad_basalt_set" &
"${pw_yad_new}" --plug=$KEY_FX_GUI --tabnum="2" --separator=" " --form \
--field="AMD FidelityFX - Contrast Adaptive Sharpening":SCL "${VKBASALT_FFX_CAS_GUI}" \
1> "${PORT_WINE_TMP_PATH}/tmp_yad_cas_set" &
"${pw_yad_new}" --paned --key="$KEY_FX_GUI" --height="600" --title="vkBasalt" --center --borders=10 \
--button="CANCEL":1 --button="DISABLED VKBASALT":180 --button="ENABLED VKBASALT":182
YAD_VKBASALT_STATUS="$?"
case "${YAD_VKBASALT_STATUS}" in
1|252)
/bin/bash -c ${pw_full_command_line[*]} &
exit 0 ;;
180)
export ENABLE_VKBASALT=0 ;;
182)
export ENABLE_VKBASALT=1 ;;
esac
YAD_BASALT_SET=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_basalt_set"`
YAD_CAS_SET=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_cas_set" | sed s/" "//g`
INT_COUNT_FX=0
for read_list_fx in ${YAD_BASALT_SET} ; do
if [[ "$read_list_fx" == "TRUE" ]] ; then
export GUI_FX_RESULT+=":${LIST_FX[$INT_COUNT_FX]}"
fi
export INT_COUNT_FX=$(( ${INT_COUNT_FX} + 1 ))
done
GUI_FX_RESULT="cas${GUI_FX_RESULT}"
export PW_VKBASALT_EFFECTS="${GUI_FX_RESULT}"
if [[ "$YAD_CAS_SET" == "0" ]] ; then
export PW_VKBASALT_FFX_CAS="0"
elif [[ "$YAD_CAS_SET" == "100" ]] ; then
export PW_VKBASALT_FFX_CAS="1"
else
export PW_VKBASALT_FFX_CAS="0`bc -s <<< "scale=2; $YAD_CAS_SET/100"`"
fi
edit_db_from_gui PW_VKBASALT_EFFECTS PW_VKBASALT_FFX_CAS ENABLE_VKBASALT
/bin/bash -c ${pw_full_command_line[*]} &
exit 0
}
......@@ -9,15 +9,6 @@ then
export inst_set="Выбор"
export inst_set_top="Установка PortWINE"
export ss_title="Опции запуска:"
export ss_text="Выберите желаемый вариант запуска ${portname}. Вы всегда можете изменить свой выбор, \nзапустив ярлык reset из каталога: "${PORT_WINE_PATH}"/"
export ss_ver="Версия?"
export ss_default_1="Cтандартный запуск"
export ss_default_2="Старый запуск, с вопросами и логами"
export ss_ogl_1="Использовать OpenGL. (DirectX в OpenGL)"
export ss_ogl_2="Использовать VKD3D. ( DX12 в vulkan)"
export ss_ogl_3="Использовать DXVK и D9VK. (DX9-DX11 в Vulkan и выключить DX12)"
export ss_done="Ярлык создан в корневом каталоге порта.\nДобавить его в МЕНЮ -> ИГРЫ?"
export inst_succ="Установка завершена успешно!"
......@@ -40,10 +31,6 @@ then
export port_del1="Удаление $portname"
export port_del2="Вы действительно хотите полностью удалить PortProton?"
export port_del3="Удалить?!"
export port_del4="Нет, не удалять!"
export port_del5="Да, удалить!"
export port_del6="был удален."
export port_deb1="PortWINE был запущен в режиме создания ${portname}.log и он успешно сохранен в корне каталога порта"
export port_deb2="Для диагностики проблемы, скопируйте ВЕСЬ лог в соответствующий канал у нас на сервере дискорда: https://discord.gg/FTaheP99wE"
......@@ -57,37 +44,8 @@ then
export port_start7="Запустить winetricks"
export port_start8="DXVK"
export port_time1="Информация"
export port_time2="Ты думаешь что помочь автору развивать проект это сложно? Нет!\nДостаточно, что бы именно ты пожертвовал сколько считаешь нужным,\nну или хотя бы 50 рублей."
export port_time3="Действие:"
export port_time4="Перейти на сайт и помочь развитию проекта."
export port_time5="Сейчас не могу, может быть в другой раз."
export port_time6="Я уже сделал вклад в будущее проекта."
export port_debug="Не торопитесь!\nПосле окончания работы ${portname}, нажмите ОК."
export hud_text="Выберите вывод необходимой информации на экран:"
export hud_info="Отображать:"
export hud_fps="частоту кадров"
export hud_devinfo="название графического процессора и версию драйвера"
export hud_frametimes="график времени кадра"
export hud_submissions="количество командных буферов, представленных на кадр"
export hud_drawcalls="количество вызовов отрисовки и отрисовки пропусков на кадр"
export hud_pipelines="общее количество графических и вычислительных конвейеров"
export hud_memory="объем памяти устройства, выделенной и использованной"
export hud_gpuload="предполагаемую загрузку графического процессора (может быть неточна)"
export hud_version="используемую версию DXVK"
export hud_api="уровень функций D3D, используемый приложением"
export hud_compiler="активность шейдерного компилятора"
export hud_samplers="текущее количество используемых пар сэмплеров (только для D3D9)"
export sc_name="Введите название будущего ярлыка:"
export sc_path="Создаем ярлык. Выберите файл запуска..."
export sc_img="Создаем ярлык. Выберите иконку ICO, или PNG формата..."
export sc_cmd="Введите дополнительные параметры запуска, или оставьте полепустым."
export debug_path="Выберите ярлык для создания .log файла..."
export loc_creat_shortcut="Создать ярлык для запускаемого файла."
export loc_debug="Запуск c созданием .log файла в корне ${portname}"
export loc_launch="Запустить файл..."
......@@ -96,9 +54,6 @@ then
export loc_winecmd="Запустить командную строку wine"
export loc_winereg="Запустить редактор реестра префикса ${portname}"
export loc_winetricks="Запустить winetricks для установки доп. библиотек в префикс ${portname}"
export loc_scripts_update=" Обновление базы данных для игр\n и программ успешно завершено.\n\n Перезапустите ${portname}."
export loc_edit_db="Изменить файл настроек для"
export ENABLE_VKBASALT_INFO='Включить vkBasalt по умолчанию для улучшение графики в играх работающих под Vulkan. (Горячая клавиша HOME отключает vkbasalt)'
......@@ -119,23 +74,14 @@ then
export PW_GUI_DISABLED_CS_INFO='Отключить окно выбора режимов запуска и версии WINE'
export PW_USE_GSTREAMER_INFO='Использовать Gstreamer для вывода роликов в играх (поддержка WMF)'
export PW_USE_RUNTIME_INFO='Использовать контейнерный режим запуска (Рекомендуется не изменять значение)'
export PW_MANGOHUD_INFO='Использование мониторинга FPS и нагрузки системы (Включается и выключается сочитанием клавиш - правый Shift + F12)'
elif [ "${update_loc}" = "ENG" ]
then
export inst_set="Sett..."
export inst_set_top="PortWINE setting"
export ss_title="Settings::"
export ss_text="Choose your preferred ${portname} launch option. You can always change your choice by unsetting\nthe reset shortcut from the directory: "${PORT_WINE_PATH}"/"
export ss_ver="Version:"
export ss_default_1="Standard start"
export ss_default_2="Old startup, with questions and logs"
export ss_ogl_1="Use OpenGL. (DirectX to OpenGL)"
export ss_ogl_2="Use VKD3D. (DX12 to vulkan)"
export ss_ogl_3="Use DXVK and D9VK. (DX9-DX11 to Vulkan)"
export ss_done="The shortcut was created in the ${portname} directory.\nAdd it to MENU -> GAMES?"
export inst_succ="The installation was successful."
export port_upd1="New update PortWINE"
......@@ -156,10 +102,6 @@ then
export port_del1="Remove $portname"
export port_del2="Are you sure you want to delete the PortProton"
export port_del3="Remove?!"
export port_del4="No!"
export port_del5="Yes!"
export port_del6="was deleted."
export port_deb1="PortWINE was launched in creation mode ${portname}.log and it is successfully stored in the root directory of the port"
export port_deb2="To diagnose the problem, copy ALL of the log to discord server: https://discord.gg/FTaheP99wE"
......@@ -173,37 +115,8 @@ then
export port_start7="Run winetricks"
export port_start8="DXVK"
export port_time1="Information"
export port_time2="Do you think that it is difficult to help the author develop the project?\nNo! It is enough that you would sacrifice what you think is necessary, well, or at least 1$."
export port_time3="Action:"
export port_time4="Go to the site and help develop the project"
export port_time5="I do not want to help the project"
export port_time6="I'm well done and have already contributed to the future of the project"
export port_debug="Please wait!\nAfter finishing the ${portname}, click OK."
export hud_text="The DXVK_HUD environment variable controls a HUD which can display the framerate\nand some stat counters. It accepts a comma-separated list of the following options:"
export hud_info="Description:"
export hud_fps="Shows the current frame rate."
export hud_devinfo="Displays the name of the GPU and the driver version."
export hud_frametimes="Shows a frame time graph."
export hud_submissions="Shows the number of command buffers submitted per frame."
export hud_drawcalls="Shows the number of draw calls and render passes per frame."
export hud_pipelines="Shows the total number of graphics and compute pipelines."
export hud_memory="Shows the amount of device memory allocated and used."
export hud_gpuload="Shows estimated GPU load. May be inaccurate."
export hud_version="Shows DXVK version."
export hud_api="Shows the D3D feature level used by the application."
export hud_compiler="Shows shader compiler activity"
export hud_samplers="Shows the current number of sampler pairs used [D3D9 Only]"
export sc_name="Name shortcut:"
export sc_path="Select the .exe file..."
export sc_img="Select the .ICO or .PNG file..."
export sc_cmd="Add command line"
export debug_path="Select the .desktop file for create the log"
#Helped in translation: ConTI1NuEsZZZ
export loc_creat_shortcut="Create shortcut for select file..."
export loc_debug="Launch with the creation of a .log file at the root ${portname}"
......@@ -213,8 +126,5 @@ then
export loc_winecmd="Run wine command line"
export loc_winereg="Run Registry Prefix Editor ${portname}"
export loc_winetricks="Run winetricks to install additional libraries to the prefix ${portname}"
export loc_scripts_update="Updating scripts and database of games\n and programs completed successfully.\n\n Restart ${portname}."
export loc_edit_db="Edit database file for"
fi
#!/bin/bash
#Author: chal55rus
#UbisoftConnect.exe
#Rating=1-5
################################################
#export PW_VULKAN_USE=dxvk
export PW_DLL_INSTALL="arial corefonts d3dcompiler_43 d3dcompiler_47 d3dx9"
#Author: chal55rus
#UbisoftConnect.exe
#Rating=1-5
################################################
export PW_VULKAN_USE=1
export PW_DLL_INSTALL="arial corefonts d3dcompiler_43 d3dcompiler_47 d3dx9 d3dx11_42 d3dx11_43"
#####################examples###########################
##export PW_COMMENT_DB="blablabla"
##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL
......
......@@ -69,7 +69,7 @@ start_portwine () {
container_args+=("--ld-preload=$word")
fi
done
export PW_AND_RUNTIME_LIBRARY_PATH="/overrides/lib/x86_64-linux-gnu:/overrides/lib/i386-linux-gnu:"
export PW_AND_RUNTIME_LIBRARY_PATH="/overrides/lib/x86_64-linux-gnu/:/overrides/lib/x86_64-linux-gnu/aliases/:/overrides/lib/i386-linux-gnu/:/overrides/lib/i386-linux-gnu/aliases/:"
if [[ ! -z "${PW_SANDBOX_HOME_PATH}" && -d "${PW_SANDBOX_HOME_PATH}" ]]; then
export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \
--unshare-home \
......
......@@ -4,7 +4,7 @@
try_remove_file "${PORT_WINE_TMP_PATH}/update_notifier"
try_remove_dir "${PORT_SCRIPTS_PATH}/vars"
create_new_dir "/home/${USER}/.local/share/applications"
create_new_dir "${HOME}/.local/share/applications"
name_desktop="PortProton"
echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop"
echo "Name=${name_desktop}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
......@@ -17,7 +17,7 @@ echo "MimeType=application/x-ms-dos-executable;application/x-wine-extension-msp;
echo "Path="${PORT_SCRIPTS_PATH}/"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
echo "Icon="${PORT_WINE_PATH}/data/img/w.png"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop"
cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" /home/${USER}/.local/share/applications/
cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" ${HOME}/.local/share/applications/
update-desktop-database -q "${HOME}/.local/share/applications"
xdg-mime default PortProton.desktop "application/x-ms-dos-executable;application/x-wine-extension-msp;application/x-msi;application/x-msdos-program"
......
......@@ -61,7 +61,7 @@ portwine_create_shortcut () {
chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop"
`zenity --question --title "${inst_set}." --text "${ss_done}" --no-wrap ` &> /dev/null
if [ $? -eq "0" ]; then
cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" /home/${USER}/.local/share/applications/
cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" ${HOME}/.local/share/applications/
fi
xdg-open "${PORT_WINE_PATH}" 2>1 >/dev/null &
}
......@@ -204,7 +204,7 @@ pw_winetricks () {
}
pw_edit_db () {
pw_gui_for_edit_db ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_DXR_ON PW_VULKAN_NO_ASYNC PW_USE_NVAPI_AND_DLSS \
pw_gui_for_edit_db PW_MANGOHUD ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_DXR_ON PW_VULKAN_NO_ASYNC PW_USE_NVAPI_AND_DLSS \
PW_OLD_GL_STRING PW_HIDE_NVIDIA_GPU PW_FORCE_USE_VSYNC PW_VIRTUAL_DESKTOP PW_WINEDBG_DISABLE PW_USE_TERMINAL \
PW_WINE_ALLOW_XIM PW_HEAP_DELAY_FREE PW_NO_WRITE_WATCH PW_GUI_DISABLED_CS PW_USE_GSTREAMER PW_USE_RUNTIME
if [ "$?" == 0 ] ; then
......@@ -241,7 +241,6 @@ do
export DIST_ADD_TO_GUI="${DIST_ADD_TO_GUI}\!${DAIG}"
done
if [ ! -z "${PORTWINE_DB_FILE}" ] ; then
export YAD_EDIT_DB="--button=EDIT DB!!${loc_edit_db} ${PORTWINE_DB}:118"
[ -z "${PW_COMMENT_DB}" ] && PW_COMMENT_DB="PortWINE database file for "\"${PORTWINE_DB}"\" was found."
if [[ -z "${PW_VULKAN_USE}" || -z "${PW_WINE_USE}" ]] ; then
unset PW_GUI_DISABLED_CS
......@@ -273,7 +272,8 @@ if [ ! -z "${portwine_exe}" ]; then
--field="Run with :CB" "${PW_DEFAULT_VULKAN_USE}" \
--field="Run with :CB" "${PW_DEFAULT_WINE_USE}" \
--field=":LBL" "" \
"${YAD_EDIT_DB}" \
--button='VKBASALT'!!"${ENABLE_VKBASALT_INFO}":120 \
--button='EDIT DB'!!"${loc_edit_db} ${PORTWINE_DB}":118 \
--button='CREATE SHORTCUT'!!"${loc_creat_shortcut}":100 \
--button='DEBUG'!!"${loc_debug}":102 \
--button='LAUNCH'!!"${loc_launch}":106 )
......@@ -426,6 +426,7 @@ case "$PW_YAD_SET" in
gui_wine_uninstaller) gui_wine_uninstaller ;;
gui_rm_portproton) gui_rm_portproton ;;
gui_proton_downloader) gui_proton_downloader ;;
120) gui_vkBasalt ;;
*) pw_autoinstall_from_db ;;
esac
......
#!/bin/bash
#Author: Castro-Fidel (PortWINE-Linux.ru)
#SCRIPTS_NEXT_VERSION=2027
#SCRIPTS_NEXT_VERSION=2028
#PORT_NEXT_VERSION=97
########################################################################
export PW_MANGOHUD=1
......
......@@ -29,7 +29,7 @@ fi
########################################################################
cd "$(dirname "`readlink -f "$0"`")"
links="$(pwd)"
deflink="/home/${USER}/PortWINE/${portname}"
deflink="${HOME}/PortWINE/${portname}"
[ $(id -u) -eq 0 ] && echo "Do not run the script from the superuser!" && zenity --error --text "Do not run the script from the superuser!" 2> /dev/null && exit 1
########################################################################
if [ "$1" = "-rus" ] ; then
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment