forked from CastroFidel/PortWINE
		
	Compare commits
	
		
			4 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					168f8c4d10 | ||
| 
						 | 
					f15705a11b | ||
| 
						 | 
					1c0d66c3fc | ||
| 
						 | 
					f1e10501e6 | 
@@ -2,6 +2,31 @@ You can help us in the development of the project on the website: https://boosty
 | 
			
		||||
-----------------------------------------
 | 
			
		||||
Changelog:
 | 
			
		||||
 | 
			
		||||
###Scripts version 2070###
 | 
			
		||||
* added PW_D3D_EXTRAS_DISABLE variable to EDIT_DB for DirectX external library
 | 
			
		||||
* rollback MANGOHUD to stable version from libs_v19.2
 | 
			
		||||
* fixed internet download interruption
 | 
			
		||||
 | 
			
		||||
###Scripts version 2069###
 | 
			
		||||
* added support for OpenSUSE (vkBasalt and MANGOHUD)
 | 
			
		||||
* fixed GOG installation (for OpenSUSE and Fedora)
 | 
			
		||||
* update plugins v.2.0:
 | 
			
		||||
        - BattlEye_Runtime (10 January 2022)
 | 
			
		||||
        - d3d_extras v.2.0
 | 
			
		||||
        - nvapi v.0.5.1
 | 
			
		||||
        - nvml v.0.1.1
 | 
			
		||||
 | 
			
		||||
###Scripts version 2068###
 | 
			
		||||
* HOTFIX - WINE download fixed
 | 
			
		||||
* NV_PRIME_RENDER_OFFLOAD is disabled by default (can be enabled using EDIT_DB)
 | 
			
		||||
 | 
			
		||||
###Scripts version 2067###
 | 
			
		||||
* updated libs to v20 (uses new Steam Runtime Sniper container + updated: MANGOHUD, vkBasalt and additional packages required for PortProton)
 | 
			
		||||
* fixed GOG installation
 | 
			
		||||
* fixed black screen in Epic Games (NVIDIA + driver v.495)
 | 
			
		||||
* fixed canceling file downloads while using AUTOINSTALL
 | 
			
		||||
* many small fixes
 | 
			
		||||
 | 
			
		||||
###Scripts version 2066###
 | 
			
		||||
* updated WINE PROTON_GE_7.0RC6-1 (with dxvk and vkd3d)
 | 
			
		||||
* the wine version from PROTON_GE is used by default (can be replaced with PROTON STEAM by adding to user.conf: export PW_WINE_USE=PROTON_STEAM)
 | 
			
		||||
 
 | 
			
		||||
@@ -1,14 +1,32 @@
 | 
			
		||||
История изменений и дальнейшие планы:
 | 
			
		||||
-----------------------------------------
 | 
			
		||||
В планах: 
 | 
			
		||||
* wget заменить на curl
 | 
			
		||||
* добавить выбор и создание различных префиксов (с его наполнением)
 | 
			
		||||
* перенести все библиотеки и бинарники добавленые нашим проектом в Portable
 | 
			
		||||
* добавить проверку на существоваие каталога wine, если таковой нет, предложить стандартную версию, или скачать другую
 | 
			
		||||
* добавить inxi в runtime и его вывод с аргументом -G в log
 | 
			
		||||
* добавить выбор языка в PortProton и about us
 | 
			
		||||
* заниматься только развитием проекта за счет вашей подписки на https://boosty.to/portwine-linux.ru
 | 
			
		||||
Вы можете помочь развитию проекта: https://portwine-linux.ru/donate/
 | 
			
		||||
-----------------------------------------
 | 
			
		||||
История изменений:
 | 
			
		||||
 | 
			
		||||
###Scripts version 2070###
 | 
			
		||||
* добавлена переменная PW_D3D_EXTRAS_DISABLE в EDIT_DB для возможности отключения сторонних библиотек DirectX
 | 
			
		||||
* откат MANGOHUD до стабильной версии из libs_v19.2
 | 
			
		||||
* исправлено прерывание загрузки из интернета
 | 
			
		||||
 | 
			
		||||
###Scripts version 2069###
 | 
			
		||||
* добавлена поддержка OpenSUSE (vkBasalt и MANGOHUD)
 | 
			
		||||
* исправлена установка GOG (для OpenSUSE и Fedora)
 | 
			
		||||
* обновлен библиотеки plugins до v.2.0:
 | 
			
		||||
        - BattlEye_Runtime (10 January 2022)
 | 
			
		||||
        - d3d_extras v.2.0
 | 
			
		||||
        - nvapi v.0.5.1
 | 
			
		||||
        - nvml v.0.1.1
 | 
			
		||||
 | 
			
		||||
###Scripts version 2068###
 | 
			
		||||
* HOTFIX - исправлено скачивание WINE
 | 
			
		||||
* по умолчанию отключена переменная NV_PRIME_RENDER_OFFLOAD (можно включить с помощью EDIT_DB)
 | 
			
		||||
 | 
			
		||||
###Scripts version 2067###
 | 
			
		||||
* обновлены libs до версии v20 (используется новый контейнер Steam Runtime Sniper + обновлены: MANGOHUD, vkBasalt и доп. пакеты необходимые для PortProton)
 | 
			
		||||
* исправлена установка GOG
 | 
			
		||||
* исправлен черный экран в Epic Games (NVIDIA + driver v.495)
 | 
			
		||||
* исправлена отмена скачивания файлов во время использования AUTOINSTALL
 | 
			
		||||
* множество небольших исправлений
 | 
			
		||||
 | 
			
		||||
###Scripts version 2066###
 | 
			
		||||
* обновлен WINE PROTON_GE_7.0RC6-1 (совместно с dxvk и vkd3d)
 | 
			
		||||
* по умолчанию используется версия wine от PROTON_GE (можно заменить на PROTON STEAM добавив в user.conf: export PW_WINE_USE=PROTON_STEAM)
 | 
			
		||||
 
 | 
			
		||||
@@ -121,12 +121,12 @@ try_download () {
 | 
			
		||||
    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
 | 
			
		||||
    zenity --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --width=500 --height=90
 | 
			
		||||
    if [ "${PIPESTATUS[0]}" != 0 ] ; then
 | 
			
		||||
        print_error "failed to download $1. Skipping."
 | 
			
		||||
        try_remove_file "$2"
 | 
			
		||||
        return 1 
 | 
			
		||||
    else 
 | 
			
		||||
    else
 | 
			
		||||
        return 0
 | 
			
		||||
    fi
 | 
			
		||||
    try_remove_file "${PORT_WINE_TMP_PATH}/download_log"
 | 
			
		||||
@@ -137,7 +137,7 @@ try_download_to_path () {
 | 
			
		||||
    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
 | 
			
		||||
    zenity --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --width=500 --height=90
 | 
			
		||||
    if [ "${PIPESTATUS[0]}" != 0 ] ; then
 | 
			
		||||
        print_error "failed to download $1. Skipping."
 | 
			
		||||
        return 1 
 | 
			
		||||
@@ -160,7 +160,11 @@ try_download_silent () {
 | 
			
		||||
 | 
			
		||||
zenity_error_download () {
 | 
			
		||||
    `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
 | 
			
		||||
    if [[ "$?" != 0 ]] ; then
 | 
			
		||||
        stop_portwine
 | 
			
		||||
    else
 | 
			
		||||
        return 0
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
create_new_dir () {
 | 
			
		||||
@@ -290,7 +294,14 @@ check_user_conf () {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
init_wine_ver () {
 | 
			
		||||
    if [[ ! -z `echo "${PW_WINE_USE}" | grep "^PROTON_STEAM$"` ]]
 | 
			
		||||
    if [[ -z `ls "${PORT_WINE_PATH}/data/dist/" | grep "${PW_WINE_USE}"` ]] ; then
 | 
			
		||||
        if [[ ! -z `echo "${PW_WINE_USE}" | grep "PROTON_STEAM"` ]] ; then
 | 
			
		||||
            export PW_WINE_USE=PROTON_STEAM
 | 
			
		||||
        else
 | 
			
		||||
            export PW_WINE_USE=PROTON_GE
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
    if [[ ! -z `echo "${PW_WINE_USE}" | grep "^PROTON_STEAM$"` ]] 
 | 
			
		||||
    then export PW_WINE_USE="${PW_PROTON_STEAM_VER}"
 | 
			
		||||
    elif [[ ! -z `echo "${PW_WINE_USE}" | grep "^PROTON_GE$"` ]]
 | 
			
		||||
    then export PW_WINE_USE="${PW_PROTON_GE_VER}"
 | 
			
		||||
@@ -397,8 +408,8 @@ pw_start_progress_bar_block () {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pw_stop_progress_bar () {
 | 
			
		||||
    kill -s SIGUSR1 "$PW_YAD_PID_PROGRESS_BAR_BLOCK" "$PW_YAD_PID_PROGRESS_BAR_CS" \
 | 
			
		||||
    "$PW_YAD_PID_PFX_COVER_UI""$PW_YAD_PID_PROGRESS_BAR_COVER""$PW_YAD_PID_TRAY" > /dev/null 2>&1
 | 
			
		||||
    kill -s SIGUSR1 "$PW_YAD_PID_PROGRESS_BAR_BLOCK" "$PW_YAD_PID_PROGRESS_BAR_CS" "$PW_YAD_PID_PFX_COVER_UI" \
 | 
			
		||||
    "$PW_YAD_PID_PROGRESS_BAR_COVER" > /dev/null 2>&1
 | 
			
		||||
    return 0
 | 
			
		||||
}
 | 
			
		||||
export -f pw_stop_progress_bar
 | 
			
		||||
@@ -436,10 +447,11 @@ pw_kill_autostart () {
 | 
			
		||||
    else
 | 
			
		||||
        sleep 5
 | 
			
		||||
        while true ; do
 | 
			
		||||
            if  [[ -z "`ps aux | grep -m 1 "$1" | grep -v grep | awk '{print $2}'`" && ! -z "`ps aux | grep wrap | grep -v grep | grep -i ${portname} | head -n 1`" ]] ; then
 | 
			
		||||
            if  [[ -z "`ps aux | grep -m 1 "$1" | grep -v grep | awk '{print $2}'`" ]] && [[ ! -z "`ps aux | grep wrap | grep -v grep | grep -i ${portname} | head -n 1`" ]] ; then
 | 
			
		||||
                echo -e "PID "$1" not found"
 | 
			
		||||
                sleep 1
 | 
			
		||||
                sleep 5
 | 
			
		||||
            else
 | 
			
		||||
                sleep 5
 | 
			
		||||
                kill_portwine 
 | 
			
		||||
                break
 | 
			
		||||
            fi
 | 
			
		||||
@@ -452,7 +464,6 @@ pw_kill_autostart () {
 | 
			
		||||
export -f pw_kill_autostart
 | 
			
		||||
 | 
			
		||||
stop_portwine () { 
 | 
			
		||||
    add_in_stop_portwine
 | 
			
		||||
    if [ "$int_xneur" = "1"  ]; then
 | 
			
		||||
        xneur &
 | 
			
		||||
    fi
 | 
			
		||||
@@ -463,14 +474,17 @@ stop_portwine () {
 | 
			
		||||
    try_remove_file "${PORT_SCRIPTS_PATH}/0"
 | 
			
		||||
    try_remove_file "${PORT_SCRIPTS_PATH}/1"
 | 
			
		||||
    kill_portwine &&
 | 
			
		||||
    kill -s SIGUSR1 "$PW_YAD_PID_TRAY" > /dev/null 2>&1
 | 
			
		||||
    if [  ! -z "`ls "${WINEPREFIX}"/drive_c/users/steamuser/Temp/ | head -n 1`" ] ; then
 | 
			
		||||
        chmod -R 755 "${WINEPREFIX}"/drive_c/users/steamuser/Temp/
 | 
			
		||||
        rm -fr "${WINEPREFIX}"/drive_c/users/steamuser/Temp/*
 | 
			
		||||
    fi
 | 
			
		||||
    try_remove_dir "${PW_WINELIB}/var"
 | 
			
		||||
    find "${WINEPREFIX}/drive_c/" -maxdepth 1 -type f -name "*.tmp" -delete
 | 
			
		||||
    kill -n 9 `pgrep -a start.sh | grep '/PortProton/' | awk '{print $1}'` > /dev/null 2>&1
 | 
			
		||||
    if [ ! -z "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" ] ; then
 | 
			
		||||
        kill -s SIGUSR1 "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`"
 | 
			
		||||
    fi
 | 
			
		||||
    add_in_stop_portwine > /dev/null 2>&1
 | 
			
		||||
    kill -n 9 `pgrep -a start.sh | grep -i '/PortProton/' | awk '{print $1}'` > /dev/null 2>&1
 | 
			
		||||
    exit 0
 | 
			
		||||
}
 | 
			
		||||
export -f stop_portwine
 | 
			
		||||
@@ -481,9 +495,9 @@ pw_download_libs () {
 | 
			
		||||
        do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_LIBS}"
 | 
			
		||||
        done
 | 
			
		||||
    fi
 | 
			
		||||
    if [[ ! -e "${PW_WINELIB}/runtime/files/bin/yad" || ! -e "${PW_WINELIB}/runtime/files/lib/p7zip/7z" \
 | 
			
		||||
    || ! -e "${PW_WINELIB}/runtime/files/bin/vkcube" || ! -e "${PW_WINELIB}/runtime/files/bin/xterm" || \
 | 
			
		||||
    -e "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ]] ; then
 | 
			
		||||
    if [[ ! -e "${PW_WINELIB}/portable/bin/yad" || ! -e "${PW_WINELIB}/portable/lib/p7zip/7z" \
 | 
			
		||||
    || ! -e "${PW_WINELIB}/runtime/files/bin/vkcube" || -e "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ]] ;
 | 
			
		||||
    then
 | 
			
		||||
        print_info "Download and install libraries..."
 | 
			
		||||
        if try_download "https://github.com/Castro-Fidel/PortWINE/releases/download/libs${PW_LIBS_VER}/libs${PW_LIBS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ; then
 | 
			
		||||
            if unpack_tar_xz "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}/" ; then
 | 
			
		||||
@@ -497,10 +511,10 @@ pw_download_libs () {
 | 
			
		||||
            zenity_error_download && pw_download_libs
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
    export pw_yad="${PW_WINELIB}/runtime/files/bin/yad"
 | 
			
		||||
    export pw_yad_new="${PW_WINELIB}/runtime/files/bin/yad_new"
 | 
			
		||||
    export pw_zstd="${PW_WINELIB}/runtime/files/bin/zstd"
 | 
			
		||||
    export pw_7z="${PW_WINELIB}/runtime/files/lib/p7zip/7z"
 | 
			
		||||
    export pw_yad="${PW_WINELIB}/portable/bin/yad"
 | 
			
		||||
    export pw_yad_new="${PW_WINELIB}/portable/bin/yad_new"
 | 
			
		||||
    export pw_zstd="${PW_WINELIB}/portable/bin/zstd"
 | 
			
		||||
    export pw_7z="${PW_WINELIB}/portable/lib/p7zip/7z"
 | 
			
		||||
    if [ -x "`which xterm 2>/dev/null`" ]; then
 | 
			
		||||
        export SYS_XTERM=`which xterm`
 | 
			
		||||
        export PW_XTERM="${SYS_XTERM} -geometry 159x37 -e"
 | 
			
		||||
@@ -511,37 +525,22 @@ pw_download_libs () {
 | 
			
		||||
 | 
			
		||||
pw_check_and_download_wine () {
 | 
			
		||||
    [ ! -d "${PORT_WINE_PATH}/data/dist/" ] && create_new_dir "${PORT_WINE_PATH}/data/dist"
 | 
			
		||||
    if [ "${1}" == "${PW_PROTON_GE_VER}" ] ; then
 | 
			
		||||
        if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_PROTON_GE_VER}" ] ; then
 | 
			
		||||
            print_info "Download and install ${PW_PROTON_GE_VER}..."
 | 
			
		||||
            if try_download "https://github.com/Castro-Fidel/wine_builds/releases/download/${PW_PROTON_GE_VER}/${PW_PROTON_GE_VER}.tar.xz" "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_GE_VER}.tar.xz" ; then
 | 
			
		||||
                if unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_GE_VER}.tar.xz" "${PORT_WINE_PATH}/data/dist/" ; then
 | 
			
		||||
                    echo "${PW_PROTON_GE_VER}" > "${PORT_WINE_PATH}/data/dist/${PW_PROTON_GE_VER}/version"
 | 
			
		||||
                    try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_GE_VER}.tar.xz"
 | 
			
		||||
                    try_remove_dir "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_GE_VER}"
 | 
			
		||||
                else
 | 
			
		||||
                    try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_GE_VER}.tar.xz"
 | 
			
		||||
                    try_remove_dir "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_GE_VER}"
 | 
			
		||||
                    try_remove_dir "${PORT_WINE_PATH}/data/dist/${PW_PROTON_GE_VER}"
 | 
			
		||||
 | 
			
		||||
                    zenity_error_download && pw_check_and_download_wine
 | 
			
		||||
                fi
 | 
			
		||||
            else
 | 
			
		||||
                zenity_error_download && pw_check_and_download_wine
 | 
			
		||||
            fi
 | 
			
		||||
        fi
 | 
			
		||||
    if [[ ! -z `echo "${PW_WINE_USE}" | grep "^PROTON_STEAM$"` ]] 
 | 
			
		||||
    then export PW_WINE_USE="${PW_PROTON_STEAM_VER}"
 | 
			
		||||
    elif [[ ! -z `echo "${PW_WINE_USE}" | grep "^PROTON_GE$"` ]]
 | 
			
		||||
    then export PW_WINE_USE="${PW_PROTON_GE_VER}"
 | 
			
		||||
    fi
 | 
			
		||||
    if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_PROTON_STEAM_VER}" ] ; then
 | 
			
		||||
        print_info "Download and install ${PW_PROTON_STEAM_VER}..."
 | 
			
		||||
        if try_download "https://github.com/Castro-Fidel/wine_builds/releases/download/${PW_PROTON_STEAM_VER}/${PW_PROTON_STEAM_VER}.tar.xz" "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_STEAM_VER}.tar.xz" ; then
 | 
			
		||||
            if unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_STEAM_VER}.tar.xz" "${PORT_WINE_PATH}/data/dist/" ; then
 | 
			
		||||
                echo "${PW_PROTON_STEAM_VER}" > "${PORT_WINE_PATH}/data/dist/${PW_PROTON_STEAM_VER}/version"
 | 
			
		||||
                try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_STEAM_VER}.tar.xz"
 | 
			
		||||
                try_remove_dir "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_STEAM_VER}"
 | 
			
		||||
    if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ] ; then
 | 
			
		||||
        print_info "Download and install ${PW_WINE_USE}..."
 | 
			
		||||
        if try_download "https://github.com/Castro-Fidel/wine_builds/releases/download/${PW_WINE_USE}/${PW_WINE_USE}.tar.xz" "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" ; then
 | 
			
		||||
            if unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" "${PORT_WINE_PATH}/data/dist/" ; then
 | 
			
		||||
                echo "${PW_WINE_USE}" > "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}/version"
 | 
			
		||||
                try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz"
 | 
			
		||||
                try_remove_dir "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}"
 | 
			
		||||
            else
 | 
			
		||||
                try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_STEAM_VER}.tar.xz"
 | 
			
		||||
                try_remove_dir "${PORT_WINE_PATH}/data/tmp/${PW_PROTON_STEAM_VER}"
 | 
			
		||||
                try_remove_dir "${PORT_WINE_PATH}/data/dist/${PW_PROTON_STEAM_VER}"
 | 
			
		||||
                try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz"
 | 
			
		||||
                try_remove_dir "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}"
 | 
			
		||||
                try_remove_dir "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}"
 | 
			
		||||
 | 
			
		||||
                zenity_error_download && pw_check_and_download_wine
 | 
			
		||||
            fi
 | 
			
		||||
@@ -582,7 +581,7 @@ pw_tray_icon () {
 | 
			
		||||
    if [ ! -z "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" ] ; then
 | 
			
		||||
        kill -s SIGUSR1 "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`"
 | 
			
		||||
    fi
 | 
			
		||||
    tray_icon_click() {
 | 
			
		||||
    tray_icon_click () {
 | 
			
		||||
        echo ""
 | 
			
		||||
    }
 | 
			
		||||
    export -f tray_icon_click
 | 
			
		||||
@@ -590,10 +589,8 @@ pw_tray_icon () {
 | 
			
		||||
        pw_run explorer
 | 
			
		||||
    }
 | 
			
		||||
    export -f pw_tray_winefile
 | 
			
		||||
    tray_icon_click_exit() {
 | 
			
		||||
    tray_icon_click_exit () {
 | 
			
		||||
        pw_stop_progress_bar
 | 
			
		||||
        kill_portwine
 | 
			
		||||
        kill -s SIGUSR1 "$PW_YAD_PID_TRAY" > /dev/null 2>&1
 | 
			
		||||
        stop_portwine
 | 
			
		||||
    }
 | 
			
		||||
    export -f tray_icon_click_exit
 | 
			
		||||
@@ -607,7 +604,6 @@ pw_tray_icon () {
 | 
			
		||||
<<<     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"|" &
 | 
			
		||||
    export PW_YAD_PID_TRAY="$!"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pw_init_db () {
 | 
			
		||||
@@ -795,7 +791,7 @@ pw_gui_for_edit_db () {
 | 
			
		||||
    "${pw_yad_new}" --plug=$KEY_EDIT_DB_GUI --tabnum="2" --form --separator=" " --columns=1 \
 | 
			
		||||
    --field="MANGOHUD FPS LIMIT (0-disabled):SCL" ${FPS_LIMIT_VAR} 1> "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" & 
 | 
			
		||||
 | 
			
		||||
    "${pw_yad_new}" --paned --key="$KEY_EDIT_DB_GUI" --title "EDIT_DB" --text-align=center --height="370" \
 | 
			
		||||
    "${pw_yad_new}" --paned --key="$KEY_EDIT_DB_GUI" --title "EDIT_DB" --text-align=center --height="400" \
 | 
			
		||||
    --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="$?"
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@
 | 
			
		||||
##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
##export WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
export PW_WINE_USE=PROTON_STEAM_6.3-8
 | 
			
		||||
export PW_WINE_USE=PROTON_GE
 | 
			
		||||
export PW_VULKAN_USE=1
 | 
			
		||||
export PW_USE_DXR10=0
 | 
			
		||||
##export PW_DLSS_ON=1
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@
 | 
			
		||||
##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
##export WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
export PW_WINE_USE=PROTON_STEAM_6.3-8C_PW2
 | 
			
		||||
export PW_WINE_USE=PROTON_GEC_PW2
 | 
			
		||||
export PW_VULKAN_USE=1
 | 
			
		||||
##export PW_DXR_ON=1
 | 
			
		||||
##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@
 | 
			
		||||
##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
##export WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
export PW_WINE_USE=PROTON_STEAM_6.3-8C_PW2
 | 
			
		||||
export PW_WINE_USE=PROTON_GEC_PW2
 | 
			
		||||
export PW_VULKAN_USE=0
 | 
			
		||||
##export PW_USE_DXR10=1
 | 
			
		||||
##export PW_DLSS_ON=1
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
#Rating=5
 | 
			
		||||
##############################################
 | 
			
		||||
#export PW_COMMENT_DB="PortWINE database file for Epic Games Launcher"
 | 
			
		||||
export PW_WINE_USE=PROTON_STEAM
 | 
			
		||||
export PW_WINE_USE=PROTON_GE
 | 
			
		||||
export PW_VULKAN_USE=1
 | 
			
		||||
export LAUNCH_PARAMETERS="-opengl -SkipBuildPatchPrereq"
 | 
			
		||||
export LAUNCH_PARAMETERS="-SkipBuildPatchPrereq"
 | 
			
		||||
export PW_DLL_INSTALL="vcrun2010 vcrun2012 vcrun2013 vcrun2019 d3dcompiler_43 d3dcompiler_47 d3dx9"
 | 
			
		||||
 
 | 
			
		||||
@@ -5,9 +5,9 @@
 | 
			
		||||
#Rating=1-5
 | 
			
		||||
################################################
 | 
			
		||||
export PW_VULKAN_USE=1
 | 
			
		||||
export PW_WINE_USE=PROTON_STEAM
 | 
			
		||||
#export WINEDLLOVERRIDES="galaxycommunication.exe=n;libglesv2="
 | 
			
		||||
#export LAUNCH_PARAMETERS="/runWithoutUpdating /deelevated"
 | 
			
		||||
export PW_WINE_USE=PROTON_GE
 | 
			
		||||
export WINEDLLOVERRIDES="galaxycommunication.exe=n;libglesv2="
 | 
			
		||||
export LAUNCH_PARAMETERS="/runWithoutUpdating /deelevated"
 | 
			
		||||
export PW_DLL_INSTALL="vcrun2019"
 | 
			
		||||
add_in_start_portwine ()
 | 
			
		||||
{
 | 
			
		||||
 
 | 
			
		||||
@@ -15,9 +15,9 @@ 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-5
 | 
			
		||||
export PW_WINE_USE=WINE_LOL_GE_7.0-1
 | 
			
		||||
export PW_VULKAN_USE=1
 | 
			
		||||
export PW_MUST_HAVE_DLL=""
 | 
			
		||||
export PW_MUST_HAVE_DLL="vcrun2013"
 | 
			
		||||
##export PW_USE_DXR10=1
 | 
			
		||||
##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
 | 
			
		||||
##export PW_USE_NVAPI_AND_DLSS=0
 | 
			
		||||
@@ -61,7 +61,7 @@ check_download_wine_ver_for_lol
 | 
			
		||||
check_port_for_lol () { 
 | 
			
		||||
    "${pw_yad}" --progress --progress-text="Loading and start League of Legends. Please wait. It can take a long time!" \
 | 
			
		||||
    --pulsate --no-buttons --undecorated --center --skip-taskbar --image="${PW_GUI_ICON_PATH}/covers/lol_cover.jpg" --image-on-top > /dev/null 2>&1 &
 | 
			
		||||
    PW_YAD_PID_LOL="$?"
 | 
			
		||||
    PW_YAD_PID_LOL="$!"
 | 
			
		||||
    process=LeagueClientUx.exe
 | 
			
		||||
    while [[ -z `pidof ${process}` ]] ; do
 | 
			
		||||
        echo "PID ${process} not found"
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@
 | 
			
		||||
##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
##export WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
export PW_WINE_USE=PROTON_STEAM_6.3-8
 | 
			
		||||
export PW_WINE_USE=PROTON_GE
 | 
			
		||||
export PW_VULKAN_USE=1
 | 
			
		||||
export PW_DXR_ON=0
 | 
			
		||||
##export PW_DLSS_ON=1
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@
 | 
			
		||||
##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
##export WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
export PW_WINE_USE=PROTON_STEAM_6.3-8
 | 
			
		||||
export PW_WINE_USE=PROTON_GE
 | 
			
		||||
export PW_VULKAN_USE=1
 | 
			
		||||
##export PW_USE_DXR10=1
 | 
			
		||||
##export PW_DLSS_ON=1
 | 
			
		||||
 
 | 
			
		||||
@@ -5,7 +5,7 @@
 | 
			
		||||
#Rating=5
 | 
			
		||||
#####################examples###########################
 | 
			
		||||
##export PW_COMMENT_DB="blablabla"
 | 
			
		||||
export PW_WINE_USE=PROTON_STEAM
 | 
			
		||||
export PW_WINE_USE=PROTON_GE
 | 
			
		||||
export PW_VULKAN_USE=1
 | 
			
		||||
#export PW_WINDOWS_VER=7                        # Set windows version 10, 7 or XP
 | 
			
		||||
export PW_DLL_INSTALL="vcrun2019 d3dcompiler_47"               # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@
 | 
			
		||||
##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
##export WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
export PW_WINE_USE=PROTON_STEAM_6.3-7
 | 
			
		||||
export PW_WINE_USE=PROTON_GE
 | 
			
		||||
export PW_VULKAN_USE=1
 | 
			
		||||
##export PW_USE_DXR10=1
 | 
			
		||||
##export PW_DLSS_ON=1
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@
 | 
			
		||||
##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
##export WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
export PW_WINE_USE=PROTON_STEAM_6.3-8C_PW2
 | 
			
		||||
export PW_WINE_USE=PROTON_GEC_PW2
 | 
			
		||||
export PW_VULKAN_USE=0
 | 
			
		||||
##export PW_USE_DXR10=1
 | 
			
		||||
##export PW_DLSS_ON=1
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
#Rating=5
 | 
			
		||||
################################################
 | 
			
		||||
export PW_COMMENT_DB="Steam"
 | 
			
		||||
export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP
 | 
			
		||||
export PW_WINDOWS_VER=7                        # Set windows version 10, 7 or XP
 | 
			
		||||
export PW_DLL_INSTALL="vcrun2019 d3dcompiler_46"
 | 
			
		||||
export WINEDLLOVERRIDES="libglesv2,lsteamclient="
 | 
			
		||||
export LAUNCH_PARAMETERS="-no-cef-sandbox"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,33 +2,11 @@
 | 
			
		||||
# Author: Castro-Fidel (PortWINE-Linux.ru)
 | 
			
		||||
########################################################################
 | 
			
		||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
 | 
			
		||||
export PW_GOG_WEB_INSTALL_EXE="${PW_USER_TEMP}/users/steamuser/Temp/GOG_Galaxy_2.0.exe"
 | 
			
		||||
start_portwine
 | 
			
		||||
if try_download_silent "https://webinstallers.gog-statics.com/download/GOG_Galaxy_2.0.exe" "${PW_GOG_WEB_INSTALL_EXE}"
 | 
			
		||||
export GOG_VER=2.0.45.61
 | 
			
		||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/setup_galaxy_${GOG_VER}.exe"
 | 
			
		||||
if try_download "https://content-system.gog.com/open_link/download?path=/open/galaxy/client/${GOG_VER}/setup_galaxy_${GOG_VER}.exe" "${PW_AUTOINSTALL_EXE}"
 | 
			
		||||
then
 | 
			
		||||
    pw_kill_autostart GalaxyInstaller.exe &
 | 
			
		||||
    pw_kill_autostart GOG_Galaxy_2.0.exe &
 | 
			
		||||
    # while true; do
 | 
			
		||||
    #     if [ -z `ps -Ao pid,cmd | grep -v grep | grep GalaxyInstaller.exe | awk '{print $1}'` ]; then
 | 
			
		||||
    #         sleep 1
 | 
			
		||||
    #     else
 | 
			
		||||
    #         [ `ps -Ao pid,cmd | grep -v grep | grep -E ${PW_GOG_WEB_INSTALL_EXE} | tail -n 1 | awk '{print $1}'` ]
 | 
			
		||||
    #         kill -s KILL `ps -Ao pid,cmd | grep -v grep | grep -E ${PW_GOG_WEB_INSTALL_EXE} | tail -n 1 | awk '{print $1}'`
 | 
			
		||||
    #         [ -z `ps -Ao pid,cmd | grep -v grep | grep GalaxyInstaller.exe | awk '{print $1}'` ]
 | 
			
		||||
    #         killall -s KILL "GalaxyInstaller.exe"
 | 
			
		||||
    #     break
 | 
			
		||||
    #     fi
 | 
			
		||||
    # done &
 | 
			
		||||
    pw_start_progress_bar_block "Installing the GOG Galaxy. Please wait..."
 | 
			
		||||
    pw_run "${PW_GOG_WEB_INSTALL_EXE}"
 | 
			
		||||
    if  [ -f "${PW_USER_TEMP}/users/steamuser/Temp/GalaxyInstaller_"*"/remoteconfig.json" ]; then
 | 
			
		||||
        export PW_GOG_URL_EXE=$(cat "${PW_USER_TEMP}/users/steamuser/Temp/GalaxyInstaller_"*"/remoteconfig.json" | grep -Eo '[[:alnum:]+\.\_\-\/\=\?\:\-]*.exe' | sed s%'\\'%%g )
 | 
			
		||||
    fi
 | 
			
		||||
fi
 | 
			
		||||
export PW_AUTOINSTALL_EXE="`echo ${PW_USER_TEMP}/${PW_GOG_URL_EXE} | awk -F/ '{print $NF}'`"
 | 
			
		||||
echo "${PW_AUTOINSTALL_EXE}"
 | 
			
		||||
if  try_download "${PW_GOG_URL_EXE}" "${PW_AUTOINSTALL_EXE}"
 | 
			
		||||
then
 | 
			
		||||
    pw_run "${PW_AUTOINSTALL_EXE}"
 | 
			
		||||
    portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/GOG Galaxy/GalaxyClient.exe"
 | 
			
		||||
    try_remove_file "${PW_AUTOINSTALL_EXE}"
 | 
			
		||||
 
 | 
			
		||||
@@ -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-5
 | 
			
		||||
export PW_WINE_USE=WINE_LOL_GE_7.0-1
 | 
			
		||||
 | 
			
		||||
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" \
 | 
			
		||||
 
 | 
			
		||||
@@ -37,13 +37,25 @@ start_portwine () {
 | 
			
		||||
 | 
			
		||||
    pw_update_pfx_cover_gui
 | 
			
		||||
 | 
			
		||||
    if [[ ! -z "`cat /etc/*-release | grep -i opensuse`" ]] || [[ ! -z "`cat /etc/*-release | grep -i centos`" ]] ; then
 | 
			
		||||
        if check_symlink "${PW_WINELIB}/portable/lib/lib64" ; then
 | 
			
		||||
            rm -fr "${PW_WINELIB}/portable/lib/lib64"
 | 
			
		||||
        fi
 | 
			
		||||
        if [[ ! -d "${PW_WINELIB}/portable/lib/lib64" ]] ; then
 | 
			
		||||
            mv -f "${PW_WINELIB}/portable/lib/lib" "${PW_WINELIB}/portable/lib/lib64"
 | 
			
		||||
        fi
 | 
			
		||||
        if [[ ! -d "${PW_WINELIB}/portable/lib/lib" ]] ; then
 | 
			
		||||
            mv -f "${PW_WINELIB}/portable/lib/lib32" "${PW_WINELIB}/portable/lib/lib"
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
    if [[ ! -z "${LD_LIBRARY_PATH}" ]] ; then 
 | 
			
		||||
        if [[ -z "`echo ${LD_LIBRARY_PATH} | grep "${WINEDIR}/lib64:${WINEDIR}/lib"`" ]] ; then
 | 
			
		||||
            export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/\$LIB:${LD_LIBRARY_PATH}"
 | 
			
		||||
        fi
 | 
			
		||||
    else 
 | 
			
		||||
    else
 | 
			
		||||
        export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/\$LIB"
 | 
			
		||||
    fi 
 | 
			
		||||
 | 
			
		||||
    if [[ ! -z "${VK_LAYER_PATH}" ]]
 | 
			
		||||
    then export VK_LAYER_PATH="${PW_WINELIB}/portable/share/vulkan/implicit_layer.d/:${VK_LAYER_PATH}"
 | 
			
		||||
    else export VK_LAYER_PATH="${PW_WINELIB}/portable/share/vulkan/implicit_layer.d/"
 | 
			
		||||
@@ -107,9 +119,6 @@ start_portwine () {
 | 
			
		||||
            else export PRESSURE_VESSEL_FILESYSTEMS_RW="${PWRTMRW}"
 | 
			
		||||
            fi
 | 
			
		||||
        done
 | 
			
		||||
        #HOTFIX portable libs for Debian based OS
 | 
			
		||||
        [[ ! -d "${PW_WINELIB}/portable/lib/lib/i386-linux-gnu" ]] && ln -s "${PW_WINELIB}/portable/lib/lib32" "${PW_WINELIB}/portable/lib/lib/i386-linux-gnu"
 | 
			
		||||
        [[ ! -d "${PW_WINELIB}/portable/lib/lib/x86_64-linux-gnu" ]] && ln -s "${PW_WINELIB}/portable/lib/lib" "${PW_WINELIB}/portable/lib/lib/x86_64-linux-gnu"  
 | 
			
		||||
        echo "RUNTIME is enabled"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
@@ -173,6 +182,9 @@ start_portwine () {
 | 
			
		||||
    if [[ ! -z "${PW_HIDE_NVIDIA_GPU}" && "${PW_HIDE_NVIDIA_GPU}" != 0 ]] ; then
 | 
			
		||||
        export WINE_HIDE_NVIDIA_GPU="1"
 | 
			
		||||
    fi
 | 
			
		||||
    if [[ ! -z "${PW_PRIME_RENDER_OFFLOAD}" && "${PW_PRIME_RENDER_OFFLOAD}" != 0 ]] ; then
 | 
			
		||||
        export __NV_PRIME_RENDER_OFFLOAD=1
 | 
			
		||||
    fi
 | 
			
		||||
    if [[ ! -z "${PW_HEAP_DELAY_FREE}" && "${PW_HEAP_DELAY_FREE}" != 0 ]]
 | 
			
		||||
    then export WINE_HEAP_DELAY_FREE="1"
 | 
			
		||||
    else export WINE_HEAP_DELAY_FREE="0"
 | 
			
		||||
@@ -214,7 +226,6 @@ start_portwine () {
 | 
			
		||||
            export optirun_on="prime-run"
 | 
			
		||||
            check_vk_icd_file
 | 
			
		||||
        elif [[ -x "`which nvidia-settings 2>/dev/null`" ]] ; then 
 | 
			
		||||
            export __NV_PRIME_RENDER_OFFLOAD=1
 | 
			
		||||
            export __GLX_VENDOR_LIBRARY_NAME=nvidia
 | 
			
		||||
            check_vk_icd_file
 | 
			
		||||
        fi
 | 
			
		||||
@@ -325,13 +336,17 @@ start_portwine () {
 | 
			
		||||
    try_force_link_file "${PW_PLUGINS_PATH}"/BattlEye_Runtime/BEClient_x64.so "${WINEDIR}"/lib64
 | 
			
		||||
    var_winedlloverride_update "beclient,beclient_x64=b,n"
 | 
			
		||||
    #try link d3d extras libs
 | 
			
		||||
    for d3d_extras_from_plugins in d3dcompiler_43 d3dx9_27 d3dx9_32 d3dx9_37 d3dx9_42 d3dcompiler_47 d3dx9_28 \
 | 
			
		||||
        d3dx9_33 d3dx9_38 d3dx9_43 d3dx9_24 d3dx9_29 d3dx9_34 d3dx9_39 d3dx9_25 d3dx9_30 d3dx9_35 d3dx9_40 d3dx9_26 \
 | 
			
		||||
        d3dx9_31 d3dx9_36 d3dx9_41
 | 
			
		||||
    for d3d_extras_from_plugins in d3dcompiler_33 d3dcompiler_34 d3dcompiler_35 d3dcompiler_36 d3dcompiler_37 \
 | 
			
		||||
    d3dcompiler_38 d3dcompiler_39 d3dcompiler_40 d3dcompiler_41 d3dcompiler_42 d3dcompiler_43 d3dcompiler_46 \
 | 
			
		||||
    d3dcompiler_47 d3dx10_33 d3dx10_34 d3dx10_35 d3dx10_36 d3dx10_37 d3dx10_38 d3dx10_39 d3dx10_40 d3dx10_41 \
 | 
			
		||||
    d3dx10_42 d3dx10_43 d3dx10 d3dx11_42 d3dx11_43 d3dx9_24 d3dx9_25 d3dx9_26 d3dx9_27 d3dx9_28 d3dx9_29 d3dx9_30 \
 | 
			
		||||
    d3dx9_31 d3dx9_32 d3dx9_33 d3dx9_34 d3dx9_35 d3dx9_36 d3dx9_37 d3dx9_38 d3dx9_39 d3dx9_40 d3dx9_41 d3dx9_42 d3dx9_43
 | 
			
		||||
    do  
 | 
			
		||||
        try_force_link_file "${PW_PLUGINS_PATH}/d3d_extras/x64/${d3d_extras_from_plugins}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
        try_force_link_file "${PW_PLUGINS_PATH}/d3d_extras/x32/${d3d_extras_from_plugins}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
        var_winedlloverride_update "${d3d_extras_from_plugins}=n"
 | 
			
		||||
        if [[ "${PW_D3D_EXTRAS_DISABLE}" != 1 ]] ; then
 | 
			
		||||
            var_winedlloverride_update "${d3d_extras_from_plugins}=n"
 | 
			
		||||
        fi
 | 
			
		||||
        if [[ -z "`grep "${d3d_extras_from_plugins}" "${WINEPREFIX}/winetricks.log"`" ]] ; then
 | 
			
		||||
            echo "${d3d_extras_from_plugins}" >> "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
        fi
 | 
			
		||||
@@ -462,7 +477,7 @@ start_portwine () {
 | 
			
		||||
        wait_wineserver &&
 | 
			
		||||
        echo "Set to win${PW_WINDOWS_VER}"
 | 
			
		||||
    fi
 | 
			
		||||
    pw_stop_progress_bar &&
 | 
			
		||||
    pw_stop_progress_bar
 | 
			
		||||
    pw_tray_icon
 | 
			
		||||
    pw_start_progress_bar_cover "${PW_GUI_ICON_PATH}/covers/pw_loading_cover.gif"
 | 
			
		||||
    add_in_start_portwine
 | 
			
		||||
@@ -511,7 +526,7 @@ else
 | 
			
		||||
fi
 | 
			
		||||
unset MANGOHUD MANGOHUD_DLSYM PW_NO_ESYNC PW_NO_FSYNC PW_VULKAN_USE WINEDLLOVERRIDES PW_NO_WRITE_WATCH PW_YAD_SET
 | 
			
		||||
unset PW_CHECK_AUTOINSTAL PW_VKBASALT_EFFECTS PW_VKBASALT_FFX_CAS PORTWINE_DB PORTWINE_DB_FILE PW_DISABLED_CREATE_DB
 | 
			
		||||
unset CHK_SYMLINK_FILE MESA_GL_VERSION_OVERRIDE PATH_TO_GAME
 | 
			
		||||
unset CHK_SYMLINK_FILE MESA_GL_VERSION_OVERRIDE PATH_TO_GAME PW_START_DEBUG
 | 
			
		||||
export portname=PortProton
 | 
			
		||||
 | 
			
		||||
cd "$(dirname "`readlink -f "$0"`")" && export PORT_SCRIPTS_PATH="$(pwd)"
 | 
			
		||||
 
 | 
			
		||||
@@ -136,13 +136,17 @@ portwine_start_debug () {
 | 
			
		||||
    echo "RAM" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    free -m >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "-----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "Graphic cards and drivers" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "Graphic cards and drivers:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo 'lspci | grep -i vga:' >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo `lspci | grep -i vga` >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "${PW_WINELIB}/portable/bin/glxinfo" -B >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    env LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${PW_WINELIB}/portable/lib/\$LIB" "${PW_WINELIB}/portable/bin/glxinfo" -B >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo " " >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "inxi -G:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "${PW_WINELIB}/portable/bin/inxi" -G >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "${PW_WINELIB}/runtime/files/bin/vulkaninfo" | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "${PW_WINELIB}/runtime/files/bin/vkcube" --c 50
 | 
			
		||||
    "${PW_WINELIB}/portable/bin/vulkaninfo" | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "${PW_WINELIB}/portable/bin/vkcube" --c 50
 | 
			
		||||
    if [ $? -eq 0 ]; then
 | 
			
		||||
        echo "Vulkan cube test passed successfully" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    else
 | 
			
		||||
@@ -186,6 +190,7 @@ portwine_start_debug () {
 | 
			
		||||
    "$pw_yad" --title="${portname}.log" --borders=10 --no-buttons --text-align=center \
 | 
			
		||||
    --text-info --show-uri --wrap --center --width=1200 --height=550  --uri-color=red \
 | 
			
		||||
    --filename="${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    stop_portwine
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pw_winecfg () {
 | 
			
		||||
@@ -234,7 +239,8 @@ pw_edit_db () {
 | 
			
		||||
    pw_gui_for_edit_db PW_MANGOHUD PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_USE_DXR10 PW_USE_DXR11 \
 | 
			
		||||
    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_USE_GAMEMODE PW_DX12_DISABLE PW_USE_WINE_DXGI
 | 
			
		||||
    PW_USE_GSTREAMER PW_USE_RUNTIME PW_USE_GAMEMODE PW_DX12_DISABLE PW_USE_WINE_DXGI PW_PRIME_RENDER_OFFLOAD \
 | 
			
		||||
    PW_D3D_EXTRAS_DISABLE
 | 
			
		||||
    if [ "$?" == 0 ] ; then
 | 
			
		||||
        /bin/bash -c ${pw_full_command_line[*]} &
 | 
			
		||||
        exit 0
 | 
			
		||||
@@ -250,8 +256,6 @@ pw_autoinstall_from_db () {
 | 
			
		||||
    export PW_WINEDBG_DISABLE=1
 | 
			
		||||
    export PW_NO_WRITE_WATCH=0
 | 
			
		||||
    export PW_VULKAN_USE=0
 | 
			
		||||
    unset PW_WINE_VER
 | 
			
		||||
    export PW_WINE_USE=${PW_PROTON_STEAM_VER}
 | 
			
		||||
    export PW_NO_FSYNC=1
 | 
			
		||||
    export PW_NO_ESYNC=1
 | 
			
		||||
    unset PORTWINE_CREATE_SHORTCUT_NAME
 | 
			
		||||
@@ -273,21 +277,25 @@ if [ ! -z "${PORTWINE_DB_FILE}" ] ; then
 | 
			
		||||
    if [[ -z "${PW_VULKAN_USE}" || -z "${PW_WINE_USE}" ]] ; then
 | 
			
		||||
        unset PW_GUI_DISABLED_CS
 | 
			
		||||
        [ -z "${PW_VULKAN_USE}" ] && export PW_VULKAN_USE=1
 | 
			
		||||
        # [ -z "${PW_WINE_USE}" ] && export PW_WINE_USE=${PW_PROTON_STEAM_VER}
 | 
			
		||||
    fi
 | 
			
		||||
    case "${PW_VULKAN_USE}" in
 | 
			
		||||
            "0") export PW_DEFAULT_VULKAN_USE='OPENGL !VULKAN (DXVK and VKD3D)' ;;
 | 
			
		||||
              *) export PW_DEFAULT_VULKAN_USE='VULKAN (DXVK and VKD3D)!OPENGL ' ;;
 | 
			
		||||
    esac
 | 
			
		||||
    case "${PW_WINE_USE}" in
 | 
			
		||||
        "${PW_PROTON_GE_VER}") 
 | 
			
		||||
            export PW_DEFAULT_WINE_USE="${PW_PROTON_GE_VER}!${PW_PROTON_STEAM_VER}${DIST_ADD_TO_GUI}" ;;
 | 
			
		||||
        "${PW_PROTON_STEAM_VER}") 
 | 
			
		||||
            export PW_DEFAULT_WINE_USE="${PW_PROTON_STEAM_VER}!${PW_PROTON_GE_VER}${DIST_ADD_TO_GUI}" ;;
 | 
			
		||||
        *)
 | 
			
		||||
    if [[ ! -z `echo "${PW_WINE_USE}" | grep "^PROTON_STEAM$"` ]] ; then
 | 
			
		||||
        export PW_DEFAULT_WINE_USE="${PW_PROTON_STEAM_VER}!${PW_PROTON_GE_VER}${DIST_ADD_TO_GUI}"
 | 
			
		||||
    elif [[ ! -z `echo "${PW_WINE_USE}" | grep "^PROTON_GE$"` ]] ; then
 | 
			
		||||
        export PW_DEFAULT_WINE_USE="${PW_PROTON_GE_VER}!${PW_PROTON_STEAM_VER}${DIST_ADD_TO_GUI}"
 | 
			
		||||
    else
 | 
			
		||||
        if [[ "${PW_WINE_USE}" == "${PW_PROTON_STEAM_VER}" ]] ; then
 | 
			
		||||
            export PW_DEFAULT_WINE_USE="${PW_WINE_USE}!${PW_PROTON_GE_VER}${DIST_ADD_TO_GUI}" 
 | 
			
		||||
        elif [[ "${PW_WINE_USE}" == "${PW_PROTON_GE_VER}" ]] ; then
 | 
			
		||||
            export PW_DEFAULT_WINE_USE="${PW_WINE_USE}!${PW_PROTON_STEAM_VER}${DIST_ADD_TO_GUI}" 
 | 
			
		||||
        else
 | 
			
		||||
            export DIST_ADD_TO_GUI=`echo ${DIST_ADD_TO_GUI} | sed -e s/"\!${PW_WINE_USE}$//g"`
 | 
			
		||||
            export PW_DEFAULT_WINE_USE="${PW_WINE_USE}!${PW_PROTON_STEAM_VER}!${PW_PROTON_GE_VER}${DIST_ADD_TO_GUI}" ;;
 | 
			
		||||
    esac
 | 
			
		||||
            export PW_DEFAULT_WINE_USE="${PW_WINE_USE}!${PW_PROTON_GE_VER}!${PW_PROTON_STEAM_VER}${DIST_ADD_TO_GUI}"
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
else
 | 
			
		||||
    export PW_DEFAULT_VULKAN_USE='VULKAN (DXVK and VKD3D)!OPENGL '
 | 
			
		||||
    if [[ ! -z `echo "${PW_WINE_USE}" | grep "^PROTON_STEAM$"` ]] ; then
 | 
			
		||||
@@ -295,7 +303,14 @@ else
 | 
			
		||||
    elif [[ ! -z `echo "${PW_WINE_USE}" | grep "^PROTON_GE$"` ]] ; then
 | 
			
		||||
        export PW_DEFAULT_WINE_USE="${PW_PROTON_GE_VER}!${PW_PROTON_STEAM_VER}${DIST_ADD_TO_GUI}"
 | 
			
		||||
    else
 | 
			
		||||
        export PW_DEFAULT_WINE_USE="${PW_WINE_USE}!${PW_PROTON_GE_VER}!${PW_PROTON_STEAM_VER}${DIST_ADD_TO_GUI}"       
 | 
			
		||||
        if [[ "${PW_WINE_USE}" == "${PW_PROTON_STEAM_VER}" ]] ; then
 | 
			
		||||
            export PW_DEFAULT_WINE_USE="${PW_WINE_USE}!${PW_PROTON_GE_VER}${DIST_ADD_TO_GUI}" 
 | 
			
		||||
        elif [[ "${PW_WINE_USE}" == "${PW_PROTON_GE_VER}" ]] ; then
 | 
			
		||||
            export PW_DEFAULT_WINE_USE="${PW_WINE_USE}!${PW_PROTON_STEAM_VER}${DIST_ADD_TO_GUI}" 
 | 
			
		||||
        else
 | 
			
		||||
            export DIST_ADD_TO_GUI=`echo ${DIST_ADD_TO_GUI} | sed -e s/"\!${PW_WINE_USE}$//g"`
 | 
			
		||||
            export PW_DEFAULT_WINE_USE="${PW_WINE_USE}!${PW_PROTON_GE_VER}!${PW_PROTON_STEAM_VER}${DIST_ADD_TO_GUI}"
 | 
			
		||||
        fi     
 | 
			
		||||
    fi
 | 
			
		||||
    unset PW_GUI_DISABLED_CS
 | 
			
		||||
fi
 | 
			
		||||
@@ -402,12 +417,13 @@ else
 | 
			
		||||
    --field="   Rockstar Games Launcher"!"$PW_GUI_ICON_PATH/Rockstar.png":"BTN" '@bash -c "button_click PW_ROCKSTAR"' \
 | 
			
		||||
    --field="   My.Games Launcher"!"$PW_GUI_ICON_PATH/mygames.png":"BTN" '@bash -c "button_click PW_MYGAMES"' \
 | 
			
		||||
    --field="   OSU"!"$PW_GUI_ICON_PATH/osu.png":"BTN" '@bash -c "button_click PW_OSU"' \
 | 
			
		||||
    --field="   Glyph Client"!"$PW_GUI_ICON_PATH/glyph.png":"BTN" '@bash -c "button_click  PW_GLYPH"' \
 | 
			
		||||
    --field="   Ankama Launcher"!"$PW_GUI_ICON_PATH/ankama.png":"BTN" '@bash -c "button_click PW_ANKAMA"' \
 | 
			
		||||
    --field="   League of Legends"!"$PW_GUI_ICON_PATH/lol.png":"BTN" '@bash -c "button_click PW_LOL"' \
 | 
			
		||||
    --field="   Gameforge Client"!"$PW_GUI_ICON_PATH/gameforge.png":"BTN" '@bash -c "button_click  PW_GAMEFORGE"' \
 | 
			
		||||
    --field="   ITCH.IO"!"$PW_GUI_ICON_PATH/itch.png":"BTN" '@bash -c "button_click PW_ITCH"' & 
 | 
			
		||||
 | 
			
		||||
    # --field="   Glyph Client"!"$PW_GUI_ICON_PATH/glyph.png":"BTN" '@bash -c "button_click  PW_GLYPH"' \
 | 
			
		||||
 | 
			
		||||
    "${pw_yad}" --plug=${KEY} --tabnum=1 --columns=3 --form --separator=";" \
 | 
			
		||||
    --image "$PW_GUI_ICON_PATH/port_proton.png" \
 | 
			
		||||
    --field=":CB" "VULKAN (DXVK and VKD3D)!OPENGL" \
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#Author: Castro-Fidel (PortWINE-Linux.ru)
 | 
			
		||||
#SCRIPTS_NEXT_VERSION=2066
 | 
			
		||||
#SCRIPTS_NEXT_VERSION=2070
 | 
			
		||||
#PORT_NEXT_VERSION=97
 | 
			
		||||
########################################################################
 | 
			
		||||
export PW_MANGOHUD=1
 | 
			
		||||
@@ -25,7 +25,7 @@ export PW_MUST_HAVE_DLL="physx mfc42 vcrun2019"
 | 
			
		||||
export PW_WINEDBG_DISABLE=1
 | 
			
		||||
export PW_WINDOWS_VER="10"
 | 
			
		||||
export WINEARCH="win64"
 | 
			
		||||
export PW_LIBS_VER="_v19.2"
 | 
			
		||||
export PW_LIBS_VER="_v21"
 | 
			
		||||
export PORTWINE_URL="http://portwine-linux.ru/"
 | 
			
		||||
export GDK_BACKEND="x11"
 | 
			
		||||
export PW_USE_GSTREAMER="1"
 | 
			
		||||
@@ -33,7 +33,7 @@ export WINEPREFIX="${PORT_WINE_PATH}/data/pfx"
 | 
			
		||||
export WINE_WIN_START="start.exe /i /unix"
 | 
			
		||||
###DEFAULT_WINE###
 | 
			
		||||
export PW_WINE_USE=PROTON_GE
 | 
			
		||||
export PW_PLUGINS_VER="_v1"
 | 
			
		||||
export PW_PLUGINS_VER="_v2"
 | 
			
		||||
###WINE_PROTON_STEAM###
 | 
			
		||||
export PW_STEAM_VER="6.3-8C_PW2"
 | 
			
		||||
export PW_PROTON_STEAM_VER="PROTON_STEAM_${PW_STEAM_VER}"
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user