diff --git a/data_from_portwine/changelog_eng b/data_from_portwine/changelog_eng index 41c4e43..2600135 100755 --- a/data_from_portwine/changelog_eng +++ b/data_from_portwine/changelog_eng @@ -2,6 +2,12 @@ You can help us in the development of the project on the website: https://linux- ---------------------------------------- Changelog: +###Scripts version 2224### Date: 28.09.2023 / Download update size: 210 megabytes +* global cleaning of database files (thanks to Boria138) +* updated PROTON_LG to version 8-17 (fixed community and support tabs in the Genshin Impact game) +* accelerated search nvngx.dll when NVAPI and DLSS are enabled +* added a check to run the .desktop file of a non-existent application + ###Scripts version 2223### Date: 23.09.2023 / Download update size: 8 megabytes * updated DOTNET prefix * blocked use USE_US_LAYOUT under Wayland diff --git a/data_from_portwine/changelog_rus b/data_from_portwine/changelog_rus index b47f685..8bb4250 100755 --- a/data_from_portwine/changelog_rus +++ b/data_from_portwine/changelog_rus @@ -2,6 +2,12 @@ ----------------------------------------- История изменений: +###Scripts version 2224### Дата: 28.09.2023 / Размер скачиваемого обновления: 210 мегабайт +* глобальная чистка database файлов (спасибо Boria138) +* обновлен PROTON_LG до версии 8-17 (исправлены вкладки сообщество и поддержка в игре Genshin Impact) +* ускорен поиск nvngx.dll при включении NVAPI и DLSS +* добавлена проверка на запуск .desktop файла несуществующего приложения + ###Scripts version 2223### Дата: 23.09.2023 / Размер скачиваемого обновления: 8 мегабайт * обновлен префикс DOTNET * временно заблокировано использование USE_US_LAYOUT под Wayland diff --git a/data_from_portwine/img/gui/error_file.png b/data_from_portwine/img/gui/error_file.png new file mode 100644 index 0000000..b26740b Binary files /dev/null and b/data_from_portwine/img/gui/error_file.png differ diff --git a/data_from_portwine/scripts/lang b/data_from_portwine/scripts/lang index b39baee..4cd253c 100755 --- a/data_from_portwine/scripts/lang +++ b/data_from_portwine/scripts/lang @@ -205,6 +205,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then export loc_gui_edit_db="Изменение файла настроек для:" export loc_gui_edit_db_help="ПРИМЕЧАНИЕ: Для вывода справки по каждому пункту, просто наведите курсор мыши на текст." + export loc_cancel="ОТМЕНИТЬ" export loc_gui_cancel="ОТМЕНИТЬ ИЗМЕНЕНИЯ" export loc_gui_cancel_help="Отменить текущие изменения и вернутся в предыдущее меню." @@ -255,8 +256,9 @@ if [[ "${update_loc}" == "RUS" ]] ; then export loc_gui_no="НЕТ" export loc_gui_yes="ДА" + export loc_gui_missing_shortcut="\nНе удалось найти файл:\n${portwine_exe}\n\nВНИМАНИЕ:\nЕсли вы забыли примонтировать диск с запускаемым приложением, нажмите ОТМЕНИТЬ!" export loc_gui_create_shortcut="СОЗДАТЬ ЯРЛЫК" - export loc_gui_delete_shortcut="УДАЛИТЬ ЯРЛЫК" + export loc_gui_delete_shortcut="УДАЛИТЬ ЯРЛЫКИ" export loc_gui_launch="ЗАПУСТИТЬ" export loc_gui_debug="СОЗДАТЬ ЛОГ" export loc_gui_edit_db_start="НАСТРОИТЬ" @@ -457,6 +459,7 @@ elif [[ "${update_loc}" == "ENG" ]] ; then export loc_gui_edit_db="Change settings in database file for" export loc_gui_edit_db_help="NOTE: To display help for each item, simply hover your mouse over the text" + export loc_cancel="CANCEL" export loc_gui_cancel="CANCEL THE CHANGES" export loc_gui_cancel_help="Cancel the current changes and return to the previous menu." @@ -507,6 +510,7 @@ A brief instruction: export loc_gui_no="NO" export loc_gui_yes="YES" + export loc_gui_missing_shortcut="\nCould not find the file:\n${portwine_exe}\n\nATTENTION:\nIf you forgot to mount the disk with the running application, click CANCEL!" export loc_gui_create_shortcut="CREATE SHORTCUT" export loc_gui_delete_shortcut="DELETE SHORTCUT" export loc_gui_launch="LAUNCH" diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index 6bc0d47..5295c8e 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -64,12 +64,12 @@ start_portwine () { if [[ "${PW_LOG}" == 1 ]] ; then export WINEDEBUG="fixme-all,err+loaddll,err+dll,err+file,err+reg" - export DXVK_LOG_LEVEL="warn" - export VKD3D_DEBUG="warn" + export DXVK_LOG_LEVEL="err" + export VKD3D_DEBUG="err" export WINE_MONO_TRACE="E:System.NotImplementedException" export VK_LOADER_DEBUG="none" export VKBASALT_LOG_LEVEL="none" - export DXVK_NVAPI_LOG_LEVEL=warn + export DXVK_NVAPI_LOG_LEVEL="err" else export WINEDEBUG="-all" export DXVK_LOG_LEVEL="none" @@ -77,7 +77,7 @@ start_portwine () { export VKD3D_DEBUG="none" export DXVK_LOG_PATH="none" export VKBASALT_LOG_LEVEL="none" - export DXVK_NVAPI_LOG_LEVEL=none + export DXVK_NVAPI_LOG_LEVEL="none" fi if [[ "${PW_NO_ESYNC}" == 1 ]] @@ -138,11 +138,13 @@ start_portwine () { export WINE_HIDE_NVIDIA_GPU=0 # export DXVK_NVAPI_DRIVER_VERSION= elif [[ "${PW_USE_NVAPI_AND_DLSS}" == 1 ]] ; then - if ! try_copy_file `find /usr/* -type f -name "nvngx.dll" 2>/dev/null | awk '{print $1}' | grep '/lib/'` "${WINEPREFIX}/drive_c/windows/system32/" - then try_copy_file "${PW_PLUGINS_PATH}/nvngx/nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/" - fi - if ! try_copy_file `find /usr/* -type f -name "_nvngx.dll" 2>/dev/null | awk '{print $1}' | grep '/lib/'` "${WINEPREFIX}/drive_c/windows/system32/" - then try_copy_file "${PW_PLUGINS_PATH}/nvngx/_nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/" + FIND_NVNGX="$(dirname $(find /usr/* -type f -name "nvngx.dll" 2>/dev/null | head -n 1 | awk '{print $1}'))" + if [[ ! -z "$FIND_NVNGX" ]] ; then + try_copy_file "${FIND_NVNGX}/nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/" + try_copy_file "${FIND_NVNGX}/_nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/" + else + try_copy_file "${PW_PLUGINS_PATH}/nvngx/nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/" + try_copy_file "${PW_PLUGINS_PATH}/nvngx/_nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/" fi enabled_fake_nvidia_videocard 0 export DXVK_ENABLE_NVAPI=1 diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index c4288bf..c262288 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -3,8 +3,13 @@ export NO_AT_BRIDGE=1 export pw_full_command_line=("$0" $*) -if [ -f "$1" ]; then +MISSING_DESKTOP_FILE=0 + +if [[ -f "$1" ]] ; then export portwine_exe="$(readlink -f "$1")" +elif [[ "$1" == *.exe ]] ; then + export portwine_exe="$1" + MISSING_DESKTOP_FILE=1 fi . "$(dirname $(readlink -f "$0"))/runlib" kill_portwine @@ -16,6 +21,8 @@ if [[ -f "/usr/bin/portproton" ]] && [[ -f "${HOME}/.local/share/applications/Po exit 0 fi +[[ "$MISSING_DESKTOP_FILE" == 1 ]] && portwine_missing_shortcut + if [[ "${XDG_SESSION_TYPE}" = "wayland" ]] && [[ ! -f "${PORT_WINE_TMP_PATH}/check_wayland" ]]; then zenity_info "$PW_WAYLAND_INFO" echo "1" > "${PORT_WINE_TMP_PATH}/check_wayland" @@ -140,8 +147,8 @@ portwine_start_debug () { free -m >> "${PORT_WINE_PATH}/${portname}.log" echo "-----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "Graphic cards and drivers:" >> "${PORT_WINE_PATH}/${portname}.log" - echo 'lspci | grep VGA:' >> "${PORT_WINE_PATH}/${portname}.log" - echo $LSPCI_VGA >> "${PORT_WINE_PATH}/${portname}.log" + echo 'lspci -k | grep -EA3 VGA|3D|Display :' >> "${PORT_WINE_PATH}/${portname}.log" + echo "$(lspci -k | grep -EA3 'VGA|3D|Display')" >> "${PORT_WINE_PATH}/${portname}.log" [[ `command -v glxinfo` ]] && glxinfo -B >> "${PORT_WINE_PATH}/${portname}.log" echo " " >> "${PORT_WINE_PATH}/${portname}.log" echo "inxi -G:" >> "${PORT_WINE_PATH}/${portname}.log" diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index 3d96b84..9326b58 100755 --- a/data_from_portwine/scripts/var +++ b/data_from_portwine/scripts/var @@ -1,6 +1,6 @@ #!/usr/bin/env bash #Author: Castro-Fidel (linux-gaming.ru) -#SCRIPTS_NEXT_VERSION=2223 +#SCRIPTS_NEXT_VERSION=2224 ######################################################################## 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 @@ -39,7 +39,7 @@ export PW_WINE_USE="PROTON_LG" export PW_PLUGINS_VER="_v12" export PW_FAKE_DLSS_VER="230506" ###WINE_PROTON_LG### -export PW_LG_VER="8-15-1" +export PW_LG_VER="8-17" export PW_PROTON_LG_VER="PROTON_LG_${PW_LG_VER}" ###WINE_PROTON_GE### export PW_WINE_LG_VER="8.5" diff --git a/data_from_portwine/scripts/zen_yad_gui b/data_from_portwine/scripts/zen_yad_gui index 1fe2d54..87c609e 100755 --- a/data_from_portwine/scripts/zen_yad_gui +++ b/data_from_portwine/scripts/zen_yad_gui @@ -534,11 +534,24 @@ portwine_create_shortcut () { } portwine_delete_shortcut () { - rm -f "`grep -il "${portwine_exe}" "${HOME}/.local/share/applications"/*.desktop`" - rm -f "`grep -il "${portwine_exe}" "${PORT_WINE_PATH}"/*.desktop`" + rm -f "$(grep -il "${portwine_exe}" "${HOME}/.local/share/applications"/*.desktop)" $>/dev/null + rm -f "$(grep -il "${portwine_exe}" "${PORT_WINE_PATH}"/*.desktop)" $>/dev/null if [[ -d "${HOME}/Desktop" ]] ; then - rm -f "`grep -il "${portwine_exe}" "${HOME}/Desktop"/*.desktop`" + rm -f "$(grep -il "${portwine_exe}" "${HOME}/Desktop"/*.desktop)" $>/dev/null elif [[ -d "${HOME}/Рабочий стол" ]] ; then - rm -f "`grep -il "${portwine_exe}" "${HOME}/Рабочий стол"/*.desktop`" + rm -f "$(grep -il "${portwine_exe}" "${HOME}/Рабочий стол"/*.desktop)" $>/dev/null fi } + +portwine_missing_shortcut () { + "${pw_yad}" --title="${loc_gui_error}." --form --borders=3 \ + --window-icon "$PW_GUI_ICON_PATH/port_proton.png" \ + --image "$PW_GUI_ICON_PATH/error_file.png" \ + --text "$loc_gui_missing_shortcut" \ + --button="$loc_gui_delete_shortcut":0 \ + --button="$loc_cancel":1 + if [ $? -eq "0" ] ; then + portwine_delete_shortcut + fi + exit 0 +}