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
}
#!/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
##export WINEDLLOVERRIDES="blabla=n,b"
##export PW_DLL_INSTALL="vcrun2019 " # Install DDL in port prefix (used winetricks)
##export PW_DLL_INSTALL="vcrun2019 " # Install DDL in port prefix (used winetricks)
##export PW_LOG=0 # Enable debug mode fo terminal
##export PW_NO_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
##export PW_NO_ESYNC=1 # Do not use eventfd-based in-process synchronization primitives
......
......@@ -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,9 +204,9 @@ 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
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
/bin/bash -c ${pw_full_command_line[*]} &
exit 0
......@@ -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