diff --git a/data_from_portwine/changelog b/data_from_portwine/changelog index 4f4ee6e1..80576047 100644 --- a/data_from_portwine/changelog +++ b/data_from_portwine/changelog @@ -1,6 +1,8 @@ История изменений и дальнейшие планы: ----------------------------------------- В планах: +* проверить Overwatch +* проверить первый запуск после автоустановки на выбор режима запуска (Vulkan), проверить пересоздание ярлыков * перенести reset в GUI PortProton * добавить фикс установки dotnet * добавить кнопку очистки префикса в PortProton @@ -13,10 +15,21 @@ * добавить контроль за окнами для правильного отключения прогресс бара * зарабатывать на жизнь развитием проекта с помощью вашей подписки на https://boosty.to/portwine-linux.ru ----------------------------------------- -###Scripts version 1061### +###Scripts version 1066### +* виртуальный рабочий стол включенный из db файла, или глобально из скрипта "var" исправно работает с любой игрой/программой +* фикс работы переменной "PW_GUI_DISABLED_CS=1" прописанной в .desktop файле +* улучшеный режим запуска всех приложений с помощью аргументов start /b /unix + +###Scripts version 1062, 1063, 1064 и 1065### +* HOTFIX - убрана переменная PW_VULKAN_USE из скрипта runlib + +###PortProton-78### 03.05.2021 ###Scripts version 1061### +* обновлен Proton 6.3 (стабильная ветка + патченный netprofm.dll) +* полностью исправлена проблема с фокусом мыши +* отключена авто отчистка префикса во время обновления порта * в GUI изменен цвет ссылок url на красный * частичная чистка кода -* проверка и удаление scripts.tar.xz перед обновлением +* HOTFIX - исправлено ложное срабатывание проверки скачивания (проверка успешного скачивания/распаковки всех компонентов и удаление архивов если одно из условий не истина) * при ошибке скачивания одного из компонентов PortProton добавлено оповещение с автоматическим перезапуском. ###Scripts version 1060### @@ -27,7 +40,7 @@ * вместо vcrun2015-2017 принудительно ставится vcrun2019 (так как имеет кумулятивные обновления) ###PortProton-77### 01.05.2021 ###Scripts version 1057### -* Обновлен Proton Experimental от 29.04.2021 +* обновлен Proton Experimental от 29.04.2021 * используется default_pfx при создании нового префикса * фикс выбора режима запуска при уже созданном ярлыке, но отсутствующем PW_VULKAN_USE @@ -87,7 +100,7 @@ * выбор debug снова есть при запуска с ярлыка PortProton * минимальный набор библиотек для установки с winetricks перенесен в default db * проверка уже установленных библиотек с помощью winetricks повторно не производится -* после создания нового префикса, требование перезапуска порта больше нет +* после создания нового префикса, требование перезапуска порта больше нет * обновление префикса происходит в фоновом режиме * улучшена работа прогресс-бара @@ -104,8 +117,8 @@ ###PortProton-75### 24.04.2021 ###Scripts version 1040### * обновлен wine Proton experimental 6.3 от 23.04.2021 -* добавлена функция pw_clear_pfx для отчистки префикса порта во время обновления без затрагивания игр и программ -* проверка и настройка переменных для MANGOHUD добавлены функцию pw_mangohud_check +* добавлена функция pw_clear_pfx для отчистки префикса порта во время обновления без затрагивания игр и программ +* проверка и настройка переменных для MANGOHUD добавлены функцию pw_mangohud_check * версия VKD3D по умолчанию = 2.3 * добавлена поддержка DXR (RTX) в режиме VKD3D, при условии использования переменной PW_DXR_ON=1 * переменная PW_DXR_ON добавлена в default db @@ -125,12 +138,12 @@ * удален каталог vars (из за db файлоа больше в нем нет необходимости) * скрипт PortProton_vars перенесен в каталог scripts и переименован в var * добавлена проверка установки mangohud в систему -* уменьшина ширина индикатора загрузки на 100px +* уменьшина ширина индикатора загрузки на 100px * улучшено определение необходимого db файла для запуска ###PortProton-74### 20.04.2021 ###Scripts version 1037### * обновлен wine до версии Proton 6.3-2 next -* в setup db изменен список библиотек (фикс для "xatab") "vcrun6 mfc42 vcrun6sp6 mfc120 vcrun2013" +* в setup db изменен список библиотек (фикс для "xatab") "vcrun6 mfc42 vcrun6sp6 mfc120 vcrun2013" * добавить выбор версий dxvk и vkd3d в db файле, с последующей закачкой с github при отсутствии в ~/.PortWINE/vulkan * обновлены libs до v9 (добавлен пакет zstd для реализация функции смены vkd3d) * произведена частичная чистка и оптимизация кода @@ -156,31 +169,31 @@ * убран xterm из debug (иначе ломает шрифты) * добавлена кнопка редактирования найденного db файла * ТЕСТ: автоудаление PINNED_LIBS и отключение setup.sh --force -* изменение сравнения версий скриптов и портов "$(curl -s --list-only "https://portwine-linux.ru/ftp/current_version/blabla_ver")" +* изменение сравнения версий скриптов и портов "$(curl -s --list-only "https://portwine-linux.ru/ftp/current_version/blabla_ver")" * автоматическая установка в префикс порта PW_DLL_INSTALL="vcrun2017 vcrun6 vcrun6sp6 mfc42" * исправлено создание db файла при создании ярлыков, в именах которых присутствует одниковвые названия запускаемого файла -* исправили создания префикса на некоторых системах при использования встроенного xterm из ~/PortWINE/libs +* исправили создания префикса на некоторых системах при использования встроенного xterm из ~/PortWINE/libs -###PortProton-71### 11.04.2021 +###PortProton-71### 11.04.2021 * отключено обновление libs, mono и gecko во время установки PortProton * проверка версии glibc перед установкой, если версия ниже необходимой, то выводим ошибку * добавлена проверка хеш-суммы порта на ftp перед установкой * добавлен прогресс загрузки библиотек с интернета -* добавлен в debug полный путь до запускаемой игры/программы вместе с именем файла +* добавлен в debug полный путь до запускаемой игры/программы вместе с именем файла * исправлено дублирование db файлов при создании ярлыков -* перенос libs с сервера PortWINE-Linux.ru на https://github.com/Castro-Fidel/PortWINE/releases/ -* скачивание mono оф. github mono -* скачивание gecko оф. ftp winehq +* перенос libs с сервера PortWINE-Linux.ru на https://github.com/Castro-Fidel/PortWINE/releases/ +* скачивание mono оф. github mono +* скачивание gecko оф. ftp winehq * в /data/scripts/vars/PortProton_vars добавлена переменная PW_MANGOHUD=1 что включает HUD для монитроринга FPS, нагрузку на CPU, GPU и т.п (при условии что в системе предустановлен пакет mangohud) * обновлена локализация подсказок при наведении на кнопки на экране выбора режимов запуска (русская и английская версии) * добавлена проверка соединения с серверами и докачки winetricks, libs, mono, gecko. * произведена глобальная чистка кода и вынос множества решений в отдельные функции -* дебаг теперь открывается в системном текстовом редакторе +* дебаг теперь открывается в системном текстовом редакторе * в дебаг добавлен инвайт (ссылка-приглашение) на наш сервер Discord * убран CREATE_SHORTCUT и LAUNCH при запуске PortProton.desktop * убрано удаление кэша winetricks -###PortProton-70### 05.04.2021 +###PortProton-70### 05.04.2021 * обновлен wine до версии proton 6.3-1 * обновлены dxvk и vkd3d поставляемые вместе с proton 6.3-1 * обновлены библиотеки до версии libs_v7 diff --git a/data_from_portwine/dist/lib/wine/netprofm.dll b/data_from_portwine/dist/lib/wine/netprofm.dll deleted file mode 100755 index 133eab68..00000000 Binary files a/data_from_portwine/dist/lib/wine/netprofm.dll and /dev/null differ diff --git a/data_from_portwine/dist/lib64/wine/netprofm.dll b/data_from_portwine/dist/lib64/wine/netprofm.dll deleted file mode 100755 index 3a6dfe03..00000000 Binary files a/data_from_portwine/dist/lib64/wine/netprofm.dll and /dev/null differ diff --git a/data_from_portwine/scripts/portwine_db/Battle.net_Launcher b/data_from_portwine/scripts/portwine_db/Battle.net_Launcher index aa1fd513..de0f07dd 100644 --- a/data_from_portwine/scripts/portwine_db/Battle.net_Launcher +++ b/data_from_portwine/scripts/portwine_db/Battle.net_Launcher @@ -1,17 +1,18 @@ #!/bin/bash #Author: dez -#Battle.net Launcher.exe +#Battle.net Launcher.exe #Battle.net-Setup.exe +#Battle.net.exe #Rating=5 ################################################ ##export PW_VULKAN_USE=dxvk export LAUNCH_PARAMETERS="" export WINEDLLOVERRIDES="locationapi=" -export PW_DLL_INSTALL="vcrun2017 d3dx11_42 d3dx11_43" +export PW_DLL_INSTALL="vcrun2019 d3dx11_42 d3dx11_43" export PW_WINDOWS_VER=10 export PW_NVAPI_DISABLE=1 -ADD_IN_START_PORTWINE () { +ADD_IN_START_PORTWINE () { rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/ProgramData/Agent/data" rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/${USER}/Blizzard Entertainment/Battle.net/Cache" rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public/Blizzard Entertainment/Battle.net/Cache" diff --git a/data_from_portwine/scripts/portwine_db/GalaxyClient b/data_from_portwine/scripts/portwine_db/GalaxyClient index 4a500319..2657e602 100644 --- a/data_from_portwine/scripts/portwine_db/GalaxyClient +++ b/data_from_portwine/scripts/portwine_db/GalaxyClient @@ -4,8 +4,7 @@ #GOG_Galaxy_2.0.exe #Rating=1-5 ################################################ -export PW_VULKAN_USE=dxvk -export WINEDLLOVERRIDES="galaxycommunication.exe=n" +export WINEDLLOVERRIDES="galaxycommunication.exe=n;libglesv2=" export LAUNCH_PARAMETERS="/runWithoutUpdating /deelevated" export PW_DLL_INSTALL="vcrun2017 vcrun6 mfc140" ADD_IN_START_PORTWINE () @@ -13,4 +12,4 @@ ADD_IN_START_PORTWINE () 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}/steamuser/Local Settings/Application Data/GOG.com/Galaxy/Configuration/config.json" fi -} \ No newline at end of file +} \ No newline at end of file diff --git a/data_from_portwine/scripts/portwine_db/WorldOfTanks b/data_from_portwine/scripts/portwine_db/WorldOfTanks index 2c3df001..0a1bdba6 100644 --- a/data_from_portwine/scripts/portwine_db/WorldOfTanks +++ b/data_from_portwine/scripts/portwine_db/WorldOfTanks @@ -1,8 +1,9 @@ #!/bin/bash #Author: xuser -#WorldOfTanks.exe +#WorldOfTanks.exe #Rating=5 ################################################ export PW_VULKAN_USE=dxvk #dxvk, vkd3d or 0 for OpenGL -export PW_DLL_INSTALL="lucida" # Install DDL in port prefix (used winetricks) -export WINEDLLOVERRIDES="xaudio2_7=" +export PW_DLL_INSTALL="lucida vcrun2019" # Install DDL in port prefix (used winetricks) +export WINEDLLOVERRIDES="xaudio2_7=" +export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG diff --git a/data_from_portwine/scripts/portwine_db/wgc b/data_from_portwine/scripts/portwine_db/wgc index 6d988bc5..a4289d4f 100644 --- a/data_from_portwine/scripts/portwine_db/wgc +++ b/data_from_portwine/scripts/portwine_db/wgc @@ -1,17 +1,18 @@ #!/bin/bash #Author: PortWINE -#wgc.exe +#wgc.exe #Rating=5 ################################################ #export PW_VULKAN_USE=dxvk #dxvk, vkd3d or 0 for OpenGL export LAUNCH_PARAMETERS="--disable-gpu" # Additional launch options -export PW_USE_TERMINAL=1 -export PW_WINDOWS_VER=7 # Set windows version 10, 7 or XP +#export PW_USE_TERMINAL=1 +#export PW_WINDOWS_VER=7 # Set windows version 10, 7 or XP export PW_NVAPI_DISABLE=1 -export WINEDLLOVERRIDES="ucrtbase=b,n" +#export WINEDLLOVERRIDES="xaudio2_7=n" +export PW_DLL_INSTALL="lucida vcrun2019" # Install DDL in port prefix (used winetricks) ##export PW_GUI_DISABLED_CS=1 +export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG -ADD_IN_START_PORTWINE () { +ADD_IN_START_PORTWINE () { sed -i 's/true/false/g' "$WINEPREFIX/drive_c/ProgramData/Wargaming.net/GameCenter/preferences.xml" -} - \ No newline at end of file +} \ No newline at end of file diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index b315127d..f0698b7e 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -157,11 +157,11 @@ PW_LOAD_LIBS () { if try_download "https://github.com/Castro-Fidel/PortWINE/releases/download/libs${pw_libs_ver}/libs${pw_libs_ver}.tar.xz" "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" ; then if unpack_tar_xz "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" "${HOME}/.PortWINE/" ; then try_remove_file "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" - else + else try_remove_dir "${HOME}/.PortWINE/libs${pw_libs_ver}" try_remove_file "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" `zenity --error --title "Error..." \ - --text "Failed to download runtime libraries.\nCheck internet connection and press OK" \ + --text "Failed to install runtime libraries.\nCheck internet connection and press OK" \ --no-wrap ` > /dev/null 2>&1 && PW_LOAD_LIBS fi else @@ -177,64 +177,64 @@ PW_LOAD_LIBS () { export pw_7z="${WINELIB}/usr/lib/p7zip/7zr" if [ -x "`which xterm 2>/dev/null`" ]; then export SYS_XTERM=`which xterm` - export PW_XTERM="${SYS_XTERM} -geometry 159x37 -e" + export PW_XTERM="${SYS_XTERM} -geometry 159x37 -e" else - export PW_XTERM="${WINELIB}/amd64/usr/bin/xterm -geometry 159x37 -e" + export PW_XTERM="${WINELIB}/amd64/usr/bin/xterm -geometry 159x37 -e" fi } -PW_DOWNLOAD_MONO () { - if [ ! -d "${HOME}/.PortWINE/mono/wine-mono-${mono_ver}" ] ; then +PW_DOWNLOAD_MONO () { + if [ ! -d "${HOME}/.PortWINE/mono/wine-mono-${mono_ver}" ] ; then echo "######################################################" print_info "Download and install wine mono..." if try_download "${url_mono}" "${HOME}/.PortWINE/tmp/wine-mono-${mono_ver}-x86.tar.xz" ; then create_new_dir "${HOME}/.PortWINE/mono" if ! unpack_tar_xz "${HOME}/.PortWINE/tmp/wine-mono-${mono_ver}-x86.tar.xz" "${HOME}/.PortWINE/mono/" - then + then try_remove_dir "${HOME}/.PortWINE/mono/wine-mono-${mono_ver}-x86" zenity_error_download && PW_DOWNLOAD_MONO fi try_remove_file "${HOME}/.PortWINE/tmp/wine-mono-${mono_ver}-x86.tar.xz" - else - zenity_error_download && PW_DOWNLOAD_MONO + else + zenity_error_download && PW_DOWNLOAD_MONO fi fi } PW_DOWNLOAD_GECKO () { - if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86" ] ; then + if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86" ] ; then echo "######################################################" echo "Download and install wine gecko x86..." if try_download "${url_gecko_x86}" "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86.tar.xz" ; then create_new_dir "${HOME}/.PortWINE/gecko" if ! unpack_tar_xz "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86.tar.xz" "${HOME}/.PortWINE/gecko/" - then + then try_remove_dir "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86" zenity_error_download && PW_DOWNLOAD_GECKO fi try_remove_file "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86.tar.xz" - else + else zenity_error_download && PW_DOWNLOAD_GECKO fi fi - if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86_64" ] ; then + if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86_64" ] ; then echo "######################################################" echo "Download and install wine gecko x86_64..." if try_download "${url_gecko_x86_64}" "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86_64.tar.xz" ; then create_new_dir "${HOME}/.PortWINE/gecko" if ! unpack_tar_xz "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86_64.tar.xz" "${HOME}/.PortWINE/gecko/" - then + then try_remove_dir "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86_64" zenity_error_download && PW_DOWNLOAD_GECKO fi try_remove_file "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86_64.tar.xz" - else - zenity_error_download && PW_DOWNLOAD_GECKO + else + zenity_error_download && PW_DOWNLOAD_GECKO fi fi create_new_dir "${WINEDIR}/share/wine/" - try_force_link_dir "${HOME}/.PortWINE/gecko" "${WINEDIR}"/share/wine/ - try_force_link_dir "${HOME}/.PortWINE/mono" "${WINEDIR}"/share/wine/ -} + try_force_link_dir "${HOME}/.PortWINE/gecko" "${WINEDIR}"/share/wine/ + try_force_link_dir "${HOME}/.PortWINE/mono" "${WINEDIR}"/share/wine/ +} START_PORTWINE () { if [ -x "`which konsole 2>/dev/null`" ]; then export PW_TERM="konsole --nofork -e" @@ -254,11 +254,11 @@ START_PORTWINE () tar -zxvf "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz" -C "${PW_VULKAN_DLL}/" try_remove_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz" else - try_remove_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz" + try_remove_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz" `zenity --error --title "Error..." --text "You will need check internet connettion,\nor change DXVK version in db file!" --no-wrap ` > /dev/null 2>&1 PW_EDIT_DB & exit 1 fi - else + else export PW_DXVK_VER="${PW_DEF_DXVK_VER}" fi fi @@ -275,7 +275,7 @@ START_PORTWINE () PW_EDIT_DB & exit 1 fi else - export PW_VKD3D_VER="${PW_DEF_VKD3D_VER}" + export PW_VKD3D_VER="${PW_DEF_VKD3D_VER}" fi fi @@ -284,7 +284,7 @@ START_PORTWINE () export WINELOADER="${WINEDIR}/bin/wine" export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine:${PATH_TO_GAME}" export WINESERVER="${WINEDIR}/bin/wineserver" - if [ ! -z "${PATH}" ] + if [ ! -z "${PATH}" ] then export PATH="${WINEDIR}/bin:${PATH}" else export PATH="${WINEDIR}/bin" fi @@ -311,7 +311,7 @@ START_PORTWINE () #default wine-mono override for FNA games export WINE_MONO_OVERRIDES="Microsoft.Xna.Framework.*,Gac=n" - if [ ! -z "${PW_NO_ESYNC}" ] && [ "${PW_NO_ESYNC}" != 0 ] + if [ ! -z "${PW_NO_ESYNC}" ] && [ "${PW_NO_ESYNC}" != 0 ] then export WINEESYNC="0" else export WINEESYNC="1" fi @@ -322,7 +322,7 @@ START_PORTWINE () export WINEFSYNC="1" export WINEFSYNC_FUTEX2="1" fi - if [ ! -z "${PW_FORCE_LARGE_ADDRESS_AWARE}" ] && [ "${PW_FORCE_LARGE_ADDRESS_AWARE}" != 0 ] + if [ ! -z "${PW_FORCE_LARGE_ADDRESS_AWARE}" ] && [ "${PW_FORCE_LARGE_ADDRESS_AWARE}" != 0 ] then export WINE_LARGE_ADDRESS_AWARE="1" else export WINE_LARGE_ADDRESS_AWARE="0" fi @@ -359,14 +359,14 @@ START_PORTWINE () fi if [ ! -z "${PW_DXR_ON}" ] && [ "${PW_DXR_ON}" != 0 ] ; then var_vkd3d_config_update dxr - fi + fi create_new_dir "${PORT_WINE_TMP_PATH}/dxvk_cache" export DXVK_STATE_CACHE_PATH="${PORT_WINE_TMP_PATH}"/dxvk_cache export DXVK_STATE_CACHE=1 export STAGING_SHARED_MEMORY=1 export optirun_on="" export check_optimus_manager= - export PW_NVIDIA="$(lspci | grep NVIDIA)" + export PW_NVIDIA="$(lspci | grep NVIDIA)" if [ -x "`which optimus-manager 2>/dev/null`" ]; then export check_optimus_manager=`optimus-manager --status | grep Current | cut -f 2 -d':' | sed -e 's/^[[:space:]]*//'` fi @@ -375,20 +375,20 @@ START_PORTWINE () export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json elif [ -x "`which primusrun 2>/dev/null`" ]; then export optirun_on="primusrun" - export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json + export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json elif [ -x "`which optirun 2>/dev/null`" ]; then export optirun_on="optirun -b primus" - export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json + export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json elif [ -x "`which prime-run 2>/dev/null`" ]; then export optirun_on="prime-run" - export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json + export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json fi export __NV_PRIME_RENDER_OFFLOAD=1 export __GLX_VENDOR_LIBRARY_NAME=nvidia if [ ! -d "${PORT_WINE_TMP_PATH}"/gl_shader_cache ] ; then - mkdir -p "${PORT_WINE_TMP_PATH}"/gl_shader_cache + mkdir -p "${PORT_WINE_TMP_PATH}"/gl_shader_cache fi - export __GL_SHADER_DISK_CACHE_PATH="${PORT_WINE_TMP_PATH}/gl_shader_cache" + export __GL_SHADER_DISK_CACHE_PATH="${PORT_WINE_TMP_PATH}/gl_shader_cache" export __GL_SHADER_DISK_CACHE=1 export __GL_SHADER_DISK_CACHE_SIZE=1000000000 export __GL_DXVK_OPTIMIZATIONS=1 @@ -401,14 +401,14 @@ START_PORTWINE () export __GL_SYNC_TO_VBLANK=0 ;; "1") export vblank_mode=1 - export __GL_SYNC_TO_VBLANK=1 ;; + export __GL_SYNC_TO_VBLANK=1 ;; esac export DXVK_CONFIG_FILE="${PORT_WINE_PATH}/data/dxvk.conf" export int_xneur=0 if [ $(pgrep xneur)>'0' ]; then killall xneur export int_xneur=1 - fi + fi export PW_XKBD="$(setxkbmap -query | grep -w ru | awk '{print($2)}')" if [ ! -z ${PW_XKBD} ]; then setxkbmap us,ru @@ -421,9 +421,9 @@ START_PORTWINE () echo "Gamemod is not installed or disabled in vars script: PW_FORCE_DISABLED_GAMEMOD=$PW_FORCE_DISABLED_GAMEMOD" fi PW_INIT_PFX - RUN_WINETRICKS_FROM_DB + RUN_WINETRICKS_FROM_DB ADD_IN_START_PORTWINE -} +} WAIT_WINESERVER () { sleep 3 @@ -434,10 +434,10 @@ WAIT_WINESERVER () { KILL_PORTWINE () { wine_pids=`ls -l /proc/*/exe 2>/dev/null | grep -ie ${portname} | grep -E 'wine(64)?-preloader| ' | awk -F/ '{print $3}'` - if [ ! -z "${wine_pids}" ] ; then + if [ ! -z "${wine_pids}" ] ; then for pw_kill_pids in ${wine_pids} ; do - if [ "`ps cax | grep ${pw_kill_pids}`" ] ; then - kill -n 9 ${pw_kill_pids} + if [ "`ps cax | grep ${pw_kill_pids}`" ] ; then + kill -n 9 ${pw_kill_pids} fi done fi @@ -451,7 +451,7 @@ STOP_PORTWINE () { fi if [ ! -z ${PW_XKBD} ]; then setxkbmap ${PW_XKBD} - fi + fi PW_STOP_PROGRESS_BAR try_remove_file "${PORT_SCRIPTS_PATH}/0" try_remove_file "${PORT_SCRIPTS_PATH}/1" @@ -525,7 +525,7 @@ PW_INIT_DB () { if [ ! -z "${portwine_exe}" ]; then export PORTWINE_DB=`echo "${portwine_exe}" | awk -F '/' 'NF>1{print $NF}' | sed s/".exe"/""/gi` export PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )" - export WIN_PATH_TO_GAME=`echo "C:${PATH_TO_GAME}" | sed "s%$WINEPREFIX%%g" | sed "s/drive_c//g" | sed 's#/#\\\#g'` + export WIN_PATH_TO_GAME=`echo "C:${PATH_TO_GAME}" | sed "s%$WINEPREFIX%%g" | sed "s/drive_c//g" | sed 's#/#\\\#g'` fi if [ ! -z "${PORTWINE_DB}" ]; then PORTWINE_DB_FILE=`grep -ilw "#${PORTWINE_DB}" "${PORT_SCRIPTS_PATH}/portwine_db"/* | sed s/".exe"/""/gi` @@ -645,7 +645,7 @@ PW_INIT_PFX () { var_winedlloverride_update "steam_api,steam_api64,steamclient,steamclient64=n" #sed -i '/steamclient/d' "${WINEPREFIX}"/*.reg #sed -i '/SteamPath/d' "${WINEPREFIX}"/*.reg - + export TOTAL_VRAM=`"${WINELIB}/amd64/usr/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'` echo "TOTAL_VRAM=${TOTAL_VRAM}" try_copy_file "${WINEDIR}/lib/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" @@ -671,16 +671,15 @@ PW_INIT_PFX () { try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x64/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/" [ "$?" == 0 ] && var_winedlloverride_update "${wine_dxvk_dll}=n" done - #var_winedlloverride_update "d3d12=" + var_winedlloverride_update "d3d12=" echo "Use DXVK version ${PW_DXVK_VER} (DX9-DX11 to Vulkan)" - else + else for wine_vkd3d_dll in d3d12 ; do try_copy_file "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}/x86/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" try_copy_file "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}/x64/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/" [ "$?" == 0 ] && var_winedlloverride_update "${wine_vkd3d_dll}=n" done if [ ! -z "${PW_DXGI_FROM_DXVK}" ] && [ "${PW_DXGI_FROM_DXVK}" != 0 ] ; then - for wine_dxvk_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi ; do try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x32/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x64/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/" @@ -764,12 +763,12 @@ PW_RUN () { #####MAIN##### cd "$(dirname "`readlink -f "$0"`")" && export PORT_SCRIPTS_PATH="$(pwd)" cd "${PORT_SCRIPTS_PATH}/../../" && export PORT_WINE_PATH="$(pwd)" -export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp" +export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp" create_new_dir "${PORT_WINE_TMP_PATH}" create_new_dir "${HOME}/.PortWINE/tmp" read "portname" < "${PORT_WINE_TMP_PATH}/portname" && export portname -cd "${PORT_SCRIPTS_PATH}" -. "${PORT_SCRIPTS_PATH}/var" +cd "${PORT_SCRIPTS_PATH}" +. "${PORT_SCRIPTS_PATH}/var" if [ ! -f "${PORT_WINE_TMP_PATH}/${portname}_loc" ] ; then SET_LANG=`zenity --title "Install $portname" --text "Select the language" --list --radiolist \ @@ -788,6 +787,7 @@ export WINEDIR="${PORT_WINE_PATH}"/data/dist export WINELIB="${HOME}/.PortWINE/libs${pw_libs_ver}" export WINEPREFIX="${PORT_WINE_PATH}/data/pfx" export PW_COMPAT_MEDIA_PATH="${PORT_WINE_TMP_PATH}" +export WINE_WIN_START="${WINEPREFIX}/drive_c/windows/system32/start.exe" export PW_RUNTIME="$WINELIB/run.sh" export PW_GUI_ICON_PATH="${PORT_WINE_PATH}/data/img/gui" export PW_VULKAN_DLL="${HOME}/.PortWINE/vulkan" @@ -795,6 +795,16 @@ export PW_DXVK_VER="${PW_DEF_DXVK_VER}" export PW_VKD3D_VER="${PW_DEF_VKD3D_VER}" export install_ver=`cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1` export scripts_install_ver=`cat "${PORT_WINE_TMP_PATH}/scripts_ver" | head -n 1` +export PW_FORCE_DISABLED_GAMEMOD=0 +export PW_FORCE_LARGE_ADDRESS_AWARE= +export PW_CHECK_AUTOINSTAL= +export PW_WINEDBG_DISABLE=1 +export PW_NO_WRITE_WATCH= +export WINEDLLOVERRIDES= +export PW_VULKAN_USE= +export PW_NO_FSYNC= +export PW_NO_ESYNC= +export MANGOHUD= if [ -z "${INSTALLING_PORT}" ] ; then PW_LOAD_LIBS diff --git a/data_from_portwine/scripts/setup.sh b/data_from_portwine/scripts/setup.sh index dec8ff79..49235df3 100755 --- a/data_from_portwine/scripts/setup.sh +++ b/data_from_portwine/scripts/setup.sh @@ -57,7 +57,7 @@ done chmod u+x "${PORT_SCRIPTS_PATH}/"* try_force_link_dir "${PORT_WINE_PATH}/data/pfx/drive_c/" "${PORT_WINE_PATH}/" -pw_clear_pfx +#pw_clear_pfx if [ "${s_install}" = "1" ]; then echo "Installation completed successfully." else diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index a75dfdd6..f65f9ae1 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -13,17 +13,13 @@ PORTWINE_LAUNCH () { PORTWINE_BAT=`basename "${portwine_exe}" | grep .bat` if [ ! -z "${PW_VIRTUAL_DESKTOP}" ] && [ "${PW_VIRTUAL_DESKTOP}" == "1" ] ; then pw_screen_resolution=`xrandr --current | grep "*" | awk '{print $1;}' | head -1` - PW_RUN explorer "/desktop=portwine,${pw_screen_resolution}" "$portwine_exe" - elif [ ! -z "${PORTWINE_MSI}" ]; then - echo "PORTWINE_MSI=${PORTWINE_MSI}" + PW_RUN explorer "/desktop=portwine,${pw_screen_resolution}" "$WINE_WIN_START" /b /unix "$portwine_exe" + elif [ ! -z "${PORTWINE_MSI}" ]; then PW_RUN msiexec /i "$portwine_exe" - elif [ ! -z "${PORTWINE_BAT}" ]; then - echo "PORTWINE_BAT=${PORTWINE_BAT}" - PW_RUN explorer "$portwine_exe" - elif [ ! -z "${portwine_exe}" ]; then - PW_RUN "$portwine_exe" - else - PW_RUN explorer + elif [ ! -z "${PORTWINE_BAT}" ] || [ ! -z "${portwine_exe}" ]; then + PW_RUN "$WINE_WIN_START" /b /unix "$portwine_exe" + else + PW_RUN "$WINE_WIN_START" /b explorer fi } PORTWINE_CREATE_SHORTCUT () { @@ -35,7 +31,7 @@ PORTWINE_CREATE_SHORTCUT () { if [ $? -eq 1 ];then exit 1; fi fi PORTPROTON_NAME="$(basename "${PORTPROTON_EXE}" | sed s/".exe"/""/gi )" - PORTPROTON_PATH="$( cd "$( dirname "${PORTPROTON_EXE}" )" >/dev/null 2>&1 && pwd )" + PORTPROTON_PATH="$( cd "$( dirname "${PORTPROTON_EXE}" )" >/dev/null 2>&1 && pwd )" if [ -x "`which wrestool 2>/dev/null`" ]; then wrestool -x --output="${PORTPROTON_PATH}/" -t14 "${PORTPROTON_EXE}" cp "$(ls -S -1 "${PORTPROTON_EXE}"*".ico" | head -n 1)" "${PORTPROTON_EXE}.ico" @@ -59,9 +55,9 @@ PORTWINE_CREATE_SHORTCUT () { cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | grep "##" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" fi fi -name_desktop="${PORTPROTON_NAME}" +name_desktop="${PORTPROTON_NAME}" echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop" - echo "Name=${PORTPROTON_NAME}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" + echo "Name=${PORTPROTON_NAME}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" if [ -z "${PW_CHECK_AUTOINSTAL}" ] then echo "Exec=env PW_GUI_DISABLED_CS=1 "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${PORTPROTON_EXE}\" "" \ >> "${PORT_WINE_PATH}/${name_desktop}.desktop" @@ -74,14 +70,14 @@ name_desktop="${PORTPROTON_NAME}" echo "Path="${PORT_SCRIPTS_PATH}/"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" echo "Icon="${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" - `zenity --question --title "${inst_set}." --text "${ss_done}" --no-wrap ` &> /dev/null + `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/${USER}/.local/share/applications/ fi xdg-open "${PORT_WINE_PATH}" 2>1 >/dev/null & } PORTWINE_DEBUG () { - KILL_PORTWINE + KILL_PORTWINE export PW_LOG=1 export PW_WINEDBG_DISABLE=0 START_PORTWINE @@ -92,7 +88,7 @@ PORTWINE_DEBUG () { read install_ver < "${PORT_WINE_TMP_PATH}/${portname}_ver" echo "${portname}-${install_ver}" >> "${PORT_WINE_PATH}/${portname}.log" echo "----------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" - if [ ! -z "${portwine_exe}" ] ; then + if [ ! -z "${portwine_exe}" ] ; then echo "Debug for programm:" >> "${PORT_WINE_PATH}/${portname}.log" echo "${portwine_exe}" >> "${PORT_WINE_PATH}/${portname}.log" echo "---------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" @@ -132,8 +128,8 @@ PORTWINE_DEBUG () { echo "----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/${portname}.log" "${WINELIB}/amd64/usr/bin/vulkaninfo" | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log" - "${WINELIB}/amd64/usr/bin/vkcube" --c 50 - if [ $? -eq 0 ]; then + "${WINELIB}/amd64/usr/bin/vkcube" --c 50 + if [ $? -eq 0 ]; then echo "Vulkan cube test passed successfully" >> "${PORT_WINE_PATH}/${portname}.log" else echo "Vkcube test completed with error" >> "${PORT_WINE_PATH}/${portname}.log" @@ -161,8 +157,8 @@ PORTWINE_DEBUG () { echo "Log WINE:" >> "${PORT_WINE_PATH}/${portname}.log" export DXVK_HUD="full" - - PORTWINE_LAUNCH & + + PORTWINE_LAUNCH & sleep 1 && zenity --info --title "DEBUG" --text "${port_debug}" --no-wrap &> /dev/null && KILL_PORTWINE deb_text=$(cat "${PORT_WINE_PATH}/${portname}.log" | awk '! a[$0]++') echo "$deb_text" > "${PORT_WINE_PATH}/${portname}.log" @@ -172,20 +168,20 @@ PORTWINE_DEBUG () { } PW_WINECFG () { START_PORTWINE - PW_RUN winecfg -} + PW_RUN "$WINE_WIN_START" /b winecfg +} PW_WINEFILE () { START_PORTWINE - PW_RUN "explorer" + PW_RUN "$WINE_WIN_START" /b explorer } PW_WINECMD () { export PW_USE_TERMINAL=1 START_PORTWINE - PW_RUN "cmd" + PW_RUN cmd } PW_WINEREG () { START_PORTWINE - PW_RUN "regedit" + PW_RUN "$WINE_WIN_START" /b regedit } PW_WINETRICKS () { UPDATE_WINETRICKS @@ -200,8 +196,6 @@ PW_AUTO_INSTALL_FROM_DB () { . "$PORT_SCRIPTS_PATH/autoinstall" $PW_YAD_SET } - - if [ ! -z "${portwine_exe}" ]; then if [ -z "${PW_GUI_DISABLED_CS}" ] || [ "${PW_GUI_DISABLED_CS}" = 0 ] || [ -z "${PW_VULKAN_USE}" ]; then if [ ! -z "${PORTWINE_DB_FILE}" ] && [ ! -z "${PW_VULKAN_USE}" ]; then diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index 12ae55d1..df5f1dfb 100755 --- a/data_from_portwine/scripts/var +++ b/data_from_portwine/scripts/var @@ -4,8 +4,9 @@ #export PW_MANGOHUD=1 #export MANGOHUD_CONFIG=full,height=500,font_size=24,position=top-left,toggle_hud=F12 #export DXVK_HUD=fps,devinfo +#export PW_VIRTUAL_DESKTOP=1 -export PW_FORCE_DISABLED_GAMEMOD=0 +export PW_FORCE_DISABLED_GAMEMOD=0 export PW_DEF_DXVK_VER=1.8.1 export PW_DEF_VKD3D_VER=2.3.1 @@ -18,7 +19,7 @@ export PW_USE_TERMINAL=0 export PW_WINDOWS_VER="7" export WINEARCH="win64" -export mono_ver=6.1.2 +export mono_ver=6.1.1 export gecko_ver=2.47.2 export pw_libs_ver="_v10" @@ -32,7 +33,7 @@ echo " " } ######################################################################## ADD_IN_STOP_PORTWINE () -{ +{ echo " " } ########################################################################