diff --git a/data_from_portwine/changelog b/data_from_portwine/changelog index 33b0fe5..386020d 100755 --- a/data_from_portwine/changelog +++ b/data_from_portwine/changelog @@ -1,11 +1,19 @@ История изменений и дальнейшие планы: ----------------------------------------- В планах: -* добавить содерживое user.conf в лог * добавить inxi в runtime и его вывод с аргументом -G в log +* обновить контейнер до актуального состояния +* обновить поддержку DLSS * добавить проверку количества db файлов на один exe * заниматься только развитием проекта за счет вашей подписки на https://boosty.to/portwine-linux.ru ----------------------------------------- +###Scripts version 2045### +* добавлена возможность запуска нескольких приложений с помощью WINEFILE из трея. +* добавлен вывод user.conf в лог-файл +* небольшие улучшения локализации +* на github в архивы PROTON_STEAM и PROTON_GE добавлены mono и gecko (для уменьшения возможных проблем со скачиванием) +* PROTON_STEAM скачивается автоматически перед первым запуском PortProton + ###Scripts version 2044### * добавлена проверка для nvidia с нестандартными путями до nvidia_icd.json @@ -13,7 +21,7 @@ * улучшена работа функции использования гибридной графики intel + nvidia ###Scripts version 2042### -* из-за проблемы на стороне githab перезалиты libs_v17.2 +* из за проблемы на стороне githab перезалиты libs_v17.2 * добавлена возможность удаления wine из графического интерфейса - Cпасибо Aldiserg (Dmitry) ###Scripts version 2041### diff --git a/data_from_portwine/img/gui/port_winefile.png b/data_from_portwine/img/gui/port_winefile.png new file mode 100644 index 0000000..88d8dc5 Binary files /dev/null and b/data_from_portwine/img/gui/port_winefile.png differ diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 702778b..18b3bc7 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -17,6 +17,7 @@ print_info () { print_var () { for vp in $@ ; do echo "${vp}=${!vp}" ; done } +export -f print_var try_copy_file () { if [ ! -f "$1" ] ; then print_info "file $1 not found for copy" && return 1 @@ -186,6 +187,7 @@ pw_mangohud_check () { export DISABLE_MANGOHUD=1 fi } +export -f pw_mangohud_check pw_vkbasalt_check () { if [[ ! -z "${ENABLE_VKBASALT}" && "${ENABLE_VKBASALT}" == 1 ]] ; then @@ -437,13 +439,13 @@ update_winetricks () { print_info "Version winetricks on server: ${W_TRX_EXT_VER}" W_TRX_INT_VER="$(cat "${PORT_WINE_TMP_PATH}/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" print_info "Version winetricks in port: ${W_TRX_INT_VER}" - #if [[ ! -f "${PORT_WINE_TMP_PATH}/winetricks" && ! -z "$W_TRX_EXT_VER" ]] || [[ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" && ! -z "$W_TRX_EXT_VER" ]]; then + if [[ ! -f "${PORT_WINE_TMP_PATH}/winetricks" && ! -z "$W_TRX_EXT_VER" ]] || [[ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" && ! -z "$W_TRX_EXT_VER" ]]; then if try_download "${W_TRX_URL}" "${PORT_WINE_TMP_PATH}/winetricks_new" ; then mv -f "${PORT_WINE_TMP_PATH}/winetricks_new" "${PORT_WINE_TMP_PATH}/winetricks" W_TRX_INT_VER="$(cat "${PORT_WINE_TMP_PATH}/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" && print_info "Winetricks version in port has been updated (${W_TRX_INT_VER})" chmod u+x "${PORT_WINE_TMP_PATH}/winetricks" fi - #fi + fi 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" @@ -518,6 +520,10 @@ pw_tray_icon () { echo "" } export -f tray_icon_click + pw_tray_winefile () { + pw_run explorer + } + export -f pw_tray_winefile tray_icon_click_exit() { kill_portwine && if [ ! -z "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" ] @@ -534,8 +540,9 @@ pw_tray_icon () { --command="bash -c tray_icon_click" \ --tooltip="PortProton" \ --menu="| \ -<<< CHANGE LOG >>>!bash -c open_changelog!"$PW_GUI_ICON_PATH/port_changelog.png"| \ -<<< FORCE EXIT >>>!bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/port_exit.png"|" & +<<< WINEFILE >>>!bash -c pw_tray_winefile!"$PW_GUI_ICON_PATH/port_winefile.png"| \ +<<< CHANGE LOG >>>!bash -c open_changelog!"$PW_GUI_ICON_PATH/port_changelog.png"| \ +<<< FORCE EXIT >>>!bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/port_exit.png"|" & } pw_init_db () { @@ -700,11 +707,7 @@ pw_gui_for_edit_db () { --text "Change settings in database file for ${PORTWINE_DB}\n" --separator=" " --borders=10 --center \ --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --button="CANCEL":1 --button="OPEN DB FILE":150 --button="SAVE CHANGES":0 YAD_STATUS="$?" - if [[ "$YAD_STATUS" == "1" ]] ; then - /bin/bash -c ${pw_full_command_line[*]} & - exit 0 - elif [[ "$YAD_STATUS" == "252" ]] ; then - exit 0 + if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 elif [ "$YAD_STATUS" == "150" ] ; then xdg-open "${PORTWINE_DB_FILE}" & exit 0 diff --git a/data_from_portwine/scripts/lang b/data_from_portwine/scripts/lang index 00bdbad..a1f2238 100755 --- a/data_from_portwine/scripts/lang +++ b/data_from_portwine/scripts/lang @@ -55,24 +55,24 @@ then export loc_winereg="Запустить редактор реестра префикса ${portname}" export loc_winetricks="Запустить winetricks для установки доп. библиотек в префикс ${portname}" export loc_edit_db="Изменить файл настроек для" - + export ENABLE_VKBASALT_INFO='Включить vkBasalt по умолчанию для улучшение графики в играх работающих под Vulkan. (Горячая клавиша HOME отключает vkbasalt)' export PW_NO_ESYNC_INFO='Не использовать примитивы внутрипроцессной синхронизации на основе eventfd. (Рекомендуется не изменять значение)' export PW_NO_FSYNC_INFO='Не использовать примитивы внутрипроцессной синхронизации на основе фьютексов. (Автоматически отключается в системах без FUTEX_WAIT_MULTIPLE поддержки.) (Рекомендуется не изменять значение)' export PW_DXR_ON_INFO='Включить поддержку Ray Tracing' export PW_VULKAN_NO_ASYNC_INFO='Выключить асинхронные вызовы для режимов VULKAN и DXVK' - export PW_USE_NVAPI_AND_DLSS_INFO='Включить DLSS на поддерживаемых видеокартах NVIDIA' + export PW_USE_NVAPI_AND_DLSS_INFO='Включить DLSS на поддерживаемых видеокартах NVIDIA' export PW_OLD_GL_STRING_INFO='Принудительное использование старых версий OpenGL' export PW_HIDE_NVIDIA_GPU_INFO='Замаскировать все функции используемые для видеокарт NVIDIA' - export PW_FORCE_USE_VSYNC_INFO='Принудительное включение вертикальной синхронизации' - export PW_VIRTUAL_DESKTOP_INFO='Включить запуск приложение в виртуальном рабочем столе WINE' - export PW_WINEDBG_DISABLE_INFO='Отключить все функции отладки WINE (Рекомендуется не изменять значение)' + export PW_FORCE_USE_VSYNC_INFO='Принудительное включение вертикальной синхронизации' + export PW_VIRTUAL_DESKTOP_INFO='Включить запуск приложение в виртуальном рабочем столе WINE' + export PW_WINEDBG_DISABLE_INFO='Отключить все функции отладки WINE (Рекомендуется не изменять значение)' export PW_USE_TERMINAL_INFO='Запускать приложение в терминале' - export PW_WINE_ALLOW_XIM_INFO='Использовать альтернативный режим для контроллера (Использовать только в случае проблем с контроллером)' + export PW_WINE_ALLOW_XIM_INFO='Использовать альтернативный режим для контроллера (Использовать только в случае проблем с контроллером)' export PW_HEAP_DELAY_FREE_INFO='Включить задержку освобождения некоторой памяти, чтобы обойти ошибки, связанные с использованием приложения после освобождения памяти.' export PW_NO_WRITE_WATCH_INFO='Очень опасный способ взлома таймера записи в памяти в ntdll. Это улучшает производительность некоторых очень специфических игр. (Рекомендуется не изменять значение)' export PW_GUI_DISABLED_CS_INFO='Отключить окно выбора режимов запуска и версии WINE' - export PW_USE_GSTREAMER_INFO='Использовать Gstreamer для вывода роликов в играх (поддержка WMF)' + export PW_USE_GSTREAMER_INFO='Использовать Gstreamer для вывода роликов в играх (поддержка WMF)' export PW_USE_RUNTIME_INFO='Использовать контейнерный режим запуска (Рекомендуется не изменять значение)' export PW_MANGOHUD_INFO='Использование мониторинга FPS и нагрузки системы (Включается и выключается сочитанием клавиш - правый Shift + F12)' export PW_USE_GAMEMODE_INFO='Использование автоматической оптимизации системы для увеличения производительности в играх (при условии установленного пакета gamemode в системе)' diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index 9dcc51e..2fa870c 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -36,7 +36,6 @@ start_portwine () { cp -f "${PORT_SCRIPTS_PATH}/.Xresources" "${HOME}" xrdb -merge "${HOME}/.Xresources" fi - pw_tray_icon pw_start_progress_bar_block "Update prefix for ${PW_WINE_USE}... Please wait..." if [[ ! -z "${LD_LIBRARY_PATH}" ]] ; then @@ -308,7 +307,7 @@ start_portwine () { if [ ! -d "${WINEPREFIX}/drive_c/users/steamuser/My Documents" ] then try_force_link_dir "${WINEPREFIX}/drive_c/users/steamuser/Documents" "${WINEPREFIX}/drive_c/users/steamuser/My Documents" fi - var_winedlloverride_update "beclient,beclient_x64=b,n;steam_api,steam_api64,steamclient,steamclient64=n;lsteamclient,GameOverlayRenderer,GameOverlayRenderer64,winemenubuilder.exe=" + var_winedlloverride_update "steam_api,steam_api64,steamclient,steamclient64=n;lsteamclient,GameOverlayRenderer,GameOverlayRenderer64,winemenubuilder.exe=" # export TOTAL_VRAM=`"${PW_WINELIB}/runtime/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'` # echo "TOTAL_VRAM=${TOTAL_VRAM}" @@ -434,6 +433,7 @@ start_portwine () { echo "Set to win${PW_WINDOWS_VER}" fi pw_stop_progress_bar && + pw_tray_icon pw_start_progress_bar_cs "Start ${portname}... Please wait..." add_in_start_portwine } @@ -469,6 +469,7 @@ pw_run () { fi fi } +export -f pw_run ###MAIN### if [ $(id -u) -eq 0 ] ; then @@ -522,6 +523,7 @@ if [ -z "${INSTALLING_PORT}" ] ; then . "${USER_CONF}" pw_port_update pw_download_libs + pw_check_and_download_wine PROTON_STEAM pw_init_db . "${USER_CONF}" fi diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index ef47b16..fc9df18 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -154,6 +154,10 @@ portwine_start_debug () { cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | sed '/##/d' >> "${PORT_WINE_PATH}/${portname}.log" fi echo "-----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" + if [ -f "${USER_CONF}" ]; then + cat "${USER_CONF}" | sed '/bash/d' >> "${PORT_WINE_PATH}/${portname}.log" + fi + echo "----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "Log WINE:" >> "${PORT_WINE_PATH}/${portname}.log" export DXVK_HUD="full" diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index 656a9ba..dd2835f 100755 --- a/data_from_portwine/scripts/var +++ b/data_from_portwine/scripts/var @@ -1,6 +1,6 @@ #!/bin/bash #Author: Castro-Fidel (PortWINE-Linux.ru) -#SCRIPTS_NEXT_VERSION=2044 +#SCRIPTS_NEXT_VERSION=2045 #PORT_NEXT_VERSION=97 ######################################################################## export PW_MANGOHUD=0