diff --git a/data_from_portwine/changelog b/data_from_portwine/changelog index 2ba78c90..9e77bd77 100755 --- a/data_from_portwine/changelog +++ b/data_from_portwine/changelog @@ -1,12 +1,21 @@ История изменений и дальнейшие планы: ----------------------------------------- В планах: +* проверить сохранение настроек DB файлов (версия протона) * перенести все библиотеки и бинарники добавленые нашим проектом в Portable * добавить проверку на существоваие каталога wine, если таковой нет, предложить стандартную версию, или скачать другую * добавить inxi в runtime и его вывод с аргументом -G в log * добавить проверку количества db файлов на один exe * заниматься только развитием проекта за счет вашей подписки на https://boosty.to/portwine-linux.ru ----------------------------------------- +###Scripts version 2056### +* исключен xtrem из зависимостей (добавлено использование собственного эмулятора терминала с помощью yad) +* исправлена установка dotnet 4.5+ с помощью winetricks +* HOTFIX - скачивание библиотек и wine на некоторых системах (ТЕСТ) +* обновлен WINE_LOL_GE_6.16-5 со встроенными mono 6.3.0 + gecko 2.47.2 +* добавлены эмуляторы duckstation epsxe project64 vba-m yabause (спасибо chal55rus) +* обновлен PROTON_STEAM до версии 6.3-8C_PW1 (обновлены dxvk и vkd3d) + ###Scripts version 2055-1### * обновлен db AnomalyLauncher diff --git a/data_from_portwine/img/gui/duckstation.png b/data_from_portwine/img/gui/duckstation.png new file mode 100644 index 00000000..4b0b9d21 Binary files /dev/null and b/data_from_portwine/img/gui/duckstation.png differ diff --git a/data_from_portwine/img/gui/epsxe.png b/data_from_portwine/img/gui/epsxe.png new file mode 100644 index 00000000..d7b2950d Binary files /dev/null and b/data_from_portwine/img/gui/epsxe.png differ diff --git a/data_from_portwine/img/gui/project64.png b/data_from_portwine/img/gui/project64.png new file mode 100644 index 00000000..1baf892a Binary files /dev/null and b/data_from_portwine/img/gui/project64.png differ diff --git a/data_from_portwine/img/gui/vba-m.png b/data_from_portwine/img/gui/vba-m.png new file mode 100644 index 00000000..db3f24ed Binary files /dev/null and b/data_from_portwine/img/gui/vba-m.png differ diff --git a/data_from_portwine/img/gui/yabause.png b/data_from_portwine/img/gui/yabause.png new file mode 100644 index 00000000..9a4262d2 Binary files /dev/null and b/data_from_portwine/img/gui/yabause.png differ diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 2c9fdd95..adef692e 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -96,7 +96,8 @@ check_process () { try_download () { set -o pipefail - wget --no-check-certificate --content-disposition -t 3 -T 5 "$1" --output-document="$2" 2>&1 | \ + wget -O "$2" --read-timeout 300 --retry-connrefused --timeout 15 --tries 3 \ + --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "$1" 2>&1 | \ tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ zenity --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90 if [ "${PIPESTATUS[0]}" != 0 ] ; then @@ -110,7 +111,8 @@ try_download () { try_download_to_path () { set -o pipefail - wget --no-check-certificate --content-disposition -t 3 -T 5 "$1" --directory-prefix="$2" 2>&1 | \ + wget --directory-prefix="$2" --read-timeout 300 --retry-connrefused --timeout 15 --tries 3 \ + --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "$1" 2>&1 | \ tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ zenity --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90 if [ "${PIPESTATUS[0]}" != 0 ] ; then @@ -122,7 +124,8 @@ try_download_to_path () { } try_download_silent () { - wget --no-check-certificate --content-disposition -t 3 -T 5 "$1" --output-document="$2" + wget -O "$2" --read-timeout 300 --retry-connrefused --timeout 15 --tries 3 \ + --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "$1" if [ "${PIPESTATUS[0]}" != 0 ] ; then print_error "failed to download $1. Skipping." try_remove_file "$2" @@ -133,7 +136,7 @@ try_download_silent () { } zenity_error_download () { - `zenity --error --title "Error..." --text "You will need to check internet connettion,\nand press OK for repeet download" --no-wrap ` + `zenity --error --title "Error..." --text "You will need to check internet connection,\nand press OK for repeat download" --no-wrap ` [ "$?" != 0 ] && exit 1 || return 0 } @@ -364,7 +367,6 @@ pw_start_progress_bar_block () { } pw_stop_progress_bar () { - try_remove_file "${PORT_WINE_TMP_PATH}/update_pfx_log" while [ ! -z "`pgrep -a yad | grep "\-\-progress" | awk '{print $1}'`" ] do kill -n 9 `pgrep -a yad | grep "\-\-progress" | awk '{print $1}' | head -n 1` > /dev/null 2>&1 done @@ -823,11 +825,11 @@ gui_proton_downloader () { try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_pw_set" try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_set" try_remove_file "${PORT_WINE_TMP_PATH}/tmp_installed_wine_set" - `"${pw_yad}" --plug=$KEY_WINE --tabnum=2 --list --cheklist --separator="" --listen \ + `"${pw_yad}" --plug=$KEY_WINE --tabnum=2 --list --separator="" --listen \ --column "Select WINE for download:" < "${PORT_WINE_TMP_PATH}/tmp_proton_pw_git" 1> "${PORT_WINE_TMP_PATH}/tmp_proton_pw_set"` & - `"${pw_yad}" --plug=$KEY_WINE --tabnum=1 --list --cheklist --separator="" --listen \ + `"${pw_yad}" --plug=$KEY_WINE --tabnum=1 --list --separator="" --listen \ --column "Select WINE for download:" < "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" 1> "${PORT_WINE_TMP_PATH}/tmp_proton_set"` & - `"${pw_yad}" --plug=$KEY_WINE --tabnum=3 --list --cheklist --separator="" --listen \ + `"${pw_yad}" --plug=$KEY_WINE --tabnum=3 --list --separator="" --listen \ --column "Select installed WINE for delete:" < "${PORT_WINE_TMP_PATH}/tmp_installed_wine" 1> "${PORT_WINE_TMP_PATH}/tmp_installed_wine_set"` & `"${pw_yad}" --key=$KEY_WINE --notebook --width=500 --height=600 --text-align=center --center \ --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "Download..." --separator="" \ diff --git a/data_from_portwine/scripts/portwine_db/GalaxyClient b/data_from_portwine/scripts/portwine_db/GalaxyClient index cfb8dabf..e0967dcd 100755 --- a/data_from_portwine/scripts/portwine_db/GalaxyClient +++ b/data_from_portwine/scripts/portwine_db/GalaxyClient @@ -5,7 +5,7 @@ #Rating=1-5 ################################################ export WINEDLLOVERRIDES="galaxycommunication.exe=n;libglesv2=" -export LAUNCH_PARAMETERS="/runWithoutUpdating /deelevated" +export LAUNCH_PARAMETERS=("/runWithoutUpdating" "/deelevated") export PW_DLL_INSTALL="vcrun2019 mfc140" add_in_start_portwine () { diff --git a/data_from_portwine/scripts/portwine_db/League of Legends b/data_from_portwine/scripts/portwine_db/League of Legends index 2618879f..ee4a31ef 100755 --- a/data_from_portwine/scripts/portwine_db/League of Legends +++ b/data_from_portwine/scripts/portwine_db/League of Legends @@ -15,7 +15,7 @@ export PW_COMMENT_DB="${TEXT_OPSSL}Dwnload and start League of Legends can take ##export PW_DLL_INSTALL="vcrun2017" # Install DDL in port prefix (used winetricks) ##export WINEDLLOVERRIDES="blabla=n,b" export LAUNCH_PARAMETERS=("--launch-product=league_of_legends" "--launch-patchline=live") # Additional launch options -export PW_WINE_USE=WINE_LOL_GE_6.16-3 +export PW_WINE_USE=WINE_LOL_GE_6.16-5 export PW_VULKAN_USE=1 export PW_MUST_HAVE_DLL="" ##export PW_USE_DXR10=1 diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_DUCKSTATION b/data_from_portwine/scripts/pw_autoinstall/PW_DUCKSTATION new file mode 100755 index 00000000..13a71fc3 --- /dev/null +++ b/data_from_portwine/scripts/pw_autoinstall/PW_DUCKSTATION @@ -0,0 +1,17 @@ +#!/bin/bash +# Author: chal55rus (Sergey P.) +######################################################################## +export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/duckstation-windows-x64-release.zip" +start_portwine +if try_download "https://github.com/stenzek/duckstation/releases/download/preview/duckstation-windows-x64-release.zip" "${PW_AUTOINSTALL_EXE}" +then + pw_start_progress_bar_block "Installing the VBA-M. Please wait..." + "$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"$WINEPREFIX/drive_c/Program Files (x86)/Duckstation" + portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Duckstation/duckstation-qt-x64-ReleaseLTCG.exe" + try_remove_file "${PW_AUTOINSTALL_EXE}" + kill_portwine + pw_stop_progress_bar + export PORTWINE_CREATE_SHORTCUT_NAME="DuckStation" + portwine_create_shortcut +fi +stop_portwine diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_EPSXE b/data_from_portwine/scripts/pw_autoinstall/PW_EPSXE new file mode 100755 index 00000000..46e32e54 --- /dev/null +++ b/data_from_portwine/scripts/pw_autoinstall/PW_EPSXE @@ -0,0 +1,17 @@ +#!/bin/bash +# Author: chal55rus (Sergey P.) +######################################################################## +export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/ePSXe205.zip" +start_portwine +if try_download "http://www.epsxe.com/files/ePSXe205.zip" "${PW_AUTOINSTALL_EXE}" +then + pw_start_progress_bar_block "Installing the VBA-M. Please wait..." + "$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"$WINEPREFIX/drive_c/Program Files (x86)/EPSXe" + portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/EPSXe/ePSXe.exe" + try_remove_file "${PW_AUTOINSTALL_EXE}" + kill_portwine + pw_stop_progress_bar + export PORTWINE_CREATE_SHORTCUT_NAME="ePSXe" + portwine_create_shortcut +fi +stop_portwine diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_LOL b/data_from_portwine/scripts/pw_autoinstall/PW_LOL index 916343a8..1480ace3 100644 --- a/data_from_portwine/scripts/pw_autoinstall/PW_LOL +++ b/data_from_portwine/scripts/pw_autoinstall/PW_LOL @@ -6,7 +6,7 @@ export PW_AUTOINSTALL_EXE="${WINEPREFIX}/drive_c/live.na.exe" export LAUNCH_PARAMETERS=("--launch-product=league_of_legends" "--launch-patchline=live") export PW_MUST_HAVE_DLL="" export PW_VULKAN_USE=1 -export PW_WINE_USE=WINE_LOL_GE_6.16-3 +export PW_WINE_USE=WINE_LOL_GE_6.16-5 if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ] ; then if try_download "https://github.com/Castro-Fidel/wine_builds/releases/download/${PW_WINE_USE}/${PW_WINE_USE}.tar.xz" \ diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_PROJECT64 b/data_from_portwine/scripts/pw_autoinstall/PW_PROJECT64 new file mode 100755 index 00000000..3ab99917 --- /dev/null +++ b/data_from_portwine/scripts/pw_autoinstall/PW_PROJECT64 @@ -0,0 +1,18 @@ +#!/bin/bash +# Author: chal55rus (Sergey P.) +######################################################################## +export LAUNCH_PARAMETERS=("/VERYSILENT") +export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Setup Project64 3.0.1-5664-2df3434.exe" +start_portwine +if try_download "https://www.pj64-emu.com/file/setup-project64-3-0-0-5632-f83bee9/" "${PW_AUTOINSTALL_EXE}" +then + pw_start_progress_bar_block "Installing the Project64. Please wait..." + pw_run "${PW_AUTOINSTALL_EXE}" + portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Project64 3.0/Project64.exe" + try_remove_file "${PW_AUTOINSTALL_EXE}" + kill_portwine + pw_stop_progress_bar + export PORTWINE_CREATE_SHORTCUT_NAME="Project64" + portwine_create_shortcut +fi +stop_portwine diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_VBA-M b/data_from_portwine/scripts/pw_autoinstall/PW_VBA-M new file mode 100755 index 00000000..24dd315e --- /dev/null +++ b/data_from_portwine/scripts/pw_autoinstall/PW_VBA-M @@ -0,0 +1,17 @@ +#!/bin/bash +# Author: chal55rus (Sergey P.) +######################################################################## +export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/visualboyadvance-m-Win-64bit.zip" +start_portwine +if try_download "https://github.com/visualboyadvance-m/visualboyadvance-m/releases/download/v2.1.4/visualboyadvance-m-Win-64bit.zip" "${PW_AUTOINSTALL_EXE}" +then + pw_start_progress_bar_block "Installing the VBA-M. Please wait..." + "$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"$WINEPREFIX/drive_c/Program Files (x86)/Visualboyadvance-m" + portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Visualboyadvance-m/visualboyadvance-m.exe" + try_remove_file "${PW_AUTOINSTALL_EXE}" + kill_portwine + pw_stop_progress_bar + export PORTWINE_CREATE_SHORTCUT_NAME="VBA-M" + portwine_create_shortcut +fi +stop_portwine diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_YABAUSE b/data_from_portwine/scripts/pw_autoinstall/PW_YABAUSE new file mode 100755 index 00000000..e1748c27 --- /dev/null +++ b/data_from_portwine/scripts/pw_autoinstall/PW_YABAUSE @@ -0,0 +1,18 @@ +#!/bin/bash +# Author: chal55rus (Sergey P.) +######################################################################## +export LAUNCH_PARAMETERS=("/S") +export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/yabause-0.9.15-win64.exe" +start_portwine +if try_download "https://download.tuxfamily.org/yabause/releases/0.9.15/yabause-0.9.15-win64.exe" "${PW_AUTOINSTALL_EXE}" +then + pw_start_progress_bar_block "Installing the Yabause. Please wait..." + pw_run "${PW_AUTOINSTALL_EXE}" + portwine_exe="$WINEPREFIX/drive_c/Program Files/yabause 0.9.15/yabause.exe" + try_remove_file "${PW_AUTOINSTALL_EXE}" + kill_portwine + pw_stop_progress_bar + export PORTWINE_CREATE_SHORTCUT_NAME="Yabause" + portwine_create_shortcut +fi +stop_portwine diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index 19152702..44040278 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -439,7 +439,7 @@ start_portwine () { init_wine_ver fi ${pw_runtime} env PATH="${PATH}" LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" \ - "${PORT_WINE_TMP_PATH}/winetricks" -q -r ${PW_DLL_NEED_INSTALL} &>>"${PORT_WINE_TMP_PATH}/update_pfx_log" + "${PORT_WINE_TMP_PATH}/winetricks" -q -r -f ${PW_DLL_NEED_INSTALL} &>>"${PORT_WINE_TMP_PATH}/update_pfx_log" if [ "${PW_WINE_VER_FROM_DB}" != "${PW_PROTON_STEAM_VER}" ] ; then export PW_SILENT_RESTART=1 /bin/bash -c ${pw_full_command_line[*]} & diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index 92e73291..f33d04e6 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -208,7 +208,14 @@ pw_winetricks () { init_wine_ver cabextract_fix start_portwine - ${PW_TERM} "${PORT_WINE_TMP_PATH}/winetricks" -q -r + while [[ -f "${PORT_WINE_TMP_PATH}/update_pfx_log" ]] ; do + sleep 1 + while read -r line ; do + echo "# ${line}" + done + done < "${PORT_WINE_TMP_PATH}/update_pfx_log" | "${pw_yad_new}" --text-info --tail --no-buttons --title="WINETRICKS" \ + --center --auto-close --skip-taskbar --width=$PW_GIF_SIZE_X --height=$PW_GIF_SIZE_Y & + "${PORT_WINE_TMP_PATH}/winetricks" -q -r -f &>>"${PORT_WINE_TMP_PATH}/update_pfx_log" stop_portwine } @@ -345,7 +352,12 @@ else --field=" RetroArch"!"$PW_GUI_ICON_PATH/retroarch.png":"BTN" '@bash -c "button_click PW_RETROARCH"' \ --field=" PPSSPP Windows"!"$PW_GUI_ICON_PATH/ppsspp.png":"BTN" '@bash -c "button_click PW_PPSSPP"' \ --field=" Citra"!"$PW_GUI_ICON_PATH/citra.png":"BTN" '@bash -c "button_click PW_CITRA"' \ - --field=" Cemu"!"$PW_GUI_ICON_PATH/cemu.png":"BTN" '@bash -c "button_click PW_CEMU"' & + --field=" Cemu"!"$PW_GUI_ICON_PATH/cemu.png":"BTN" '@bash -c "button_click PW_CEMU"' \ + --field=" DuckStation"!"$PW_GUI_ICON_PATH/duckstation.png":"BTN" '@bash -c "button_click PW_DUCKSTATION"' \ + --field=" ePSXe"!"$PW_GUI_ICON_PATH/epsxe.png":"BTN" '@bash -c "button_click PW_EPSXE"' \ + --field=" Project64"!"$PW_GUI_ICON_PATH/project64.png":"BTN" '@bash -c "button_click PW_PROJECT64"' \ + --field=" VBA-M"!"$PW_GUI_ICON_PATH/vba-m.png":"BTN" '@bash -c "button_click PW_VBA-M"' \ + --field=" Yabause"!"$PW_GUI_ICON_PATH/yabause.png":"BTN" '@bash -c "button_click PW_YABAUSE"' & "${pw_yad}" --plug=$KEY --tabnum=2 --form --columns=3 --scroll --height=500 \ --field=" Wargaming Game Center"!"$PW_GUI_ICON_PATH/wgc.png":"BTN" '@bash -c "button_click PW_WGC"' \ diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index 15a93aa7..3bd58a5a 100755 --- a/data_from_portwine/scripts/var +++ b/data_from_portwine/scripts/var @@ -35,7 +35,7 @@ export WINE_WIN_START="start.exe /i /unix" export PW_WINE_USE=PROTON_STEAM export PW_PLUGINS_VER="_v1" ###WINE_PROTON_STEAM### -export PW_STEAM_VER="6.3-8" +export PW_STEAM_VER="6.3-8C_PW1" export PW_PROTON_STEAM_VER="PROTON_STEAM_${PW_STEAM_VER}" ###WINE_PROTON_GE### export PW_GE_VER="6.19-5" diff --git a/portwine_install_script/PortProton-97 b/portwine_install_script/PortProton-97 index 2540d73f..ceae0832 100755 --- a/portwine_install_script/PortProton-97 +++ b/portwine_install_script/PortProton-97 @@ -121,7 +121,10 @@ esac export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp" cd "${PORT_WINE_PATH}" try_download_scripts () { - wget -c -t 5 -T 20 "https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.tar.gz" --output-document="${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" + wget -O "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" -nd -c --read-timeout 300 \ + --retry-connrefused --timeout 15 --tries 3 \ + --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" \ + "https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.tar.gz" if [ "$?" = "0" ] ; then tar -xvzf "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" -C "${PORT_WINE_TMP_PATH}" if [ "$?" = "0" ] ; then