Commit 8270098a authored by Mikhail Tergoev's avatar Mikhail Tergoev

Update download Vulkan and minor fixes

parent 2f50fd23
......@@ -23,7 +23,7 @@ check_variables WINEDLLOVERRIDES "winemenubuilder.exe=d"
check_variables STAGING_SHARED_MEMORY "1"
check_variables WINE_LARGE_ADDRESS_AWARE "1"
check_variables WINE_FULLSCREEN_FSR "1"
check_variables PROTON_DISABLE_LSTEAMCLIENT "1"
# check_variables PROTON_DISABLE_LSTEAMCLIENT "1"
check_variables WINE_DO_NOT_CREATE_DXGI_DEVICE_MANAGER "0"
check_variables WINE_HEAP_DELAY_FREE "0"
check_variables WINE_ALLOW_XIM "0"
......@@ -165,7 +165,7 @@ try_unpack_file () {
try_download () {
DOWNLOAD_FILE_NAME="$(basename $1)"
print_info "Try download $DOWNLOAD_FILE_NAME from $1"
if curl --progress-bar -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" -L "$1" -o "$2" ; then
if curl -f --progress-bar -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" -L "$1" -o "$2" ; then
print_info "Download $DOWNLOAD_FILE_NAME successful."
return 0
else
......@@ -270,7 +270,7 @@ var_vk_istance_layers_config_update () {
##### USED WINED3D LIBRARY #####
init_opengl () {
if [[ "$USE_OPENGL" == 1 ]] ; then
WINED3D_FILES="d3d8 d3d9 d3d10_1 d3d10 d3d10core d3d11 dxgi d3d12 d3d12core"
WINED3D_FILES="d3d8 d3d9 d3d10_1 d3d10 d3d10core d3d11 dxgi d3d12" # d3d12core
for wined3dfiles in $WINED3D_FILES ; do
try_copy_wine_dll_to_pfx_64 "$wined3dfiles.dll"
try_copy_wine_dll_to_pfx_32 "$wined3dfiles.dll"
......@@ -290,7 +290,8 @@ init_d8vk () {
for D8VK_VAR_VER in "$USE_D8VK_VER" $@ ; do
if [[ ! -d "${PP_VULKAN_LIBDIR}/d8vk-$D8VK_VAR_VER" ]] ; then
D8VK_URL="https://github.com/AlpyneDreams/d8vk/releases/download/d8vk-v${D8VK_VAR_VER}/d8vk-v${D8VK_VAR_VER}.tar.gz"
D8VK_PACKAGE="${PP_VULKAN_LIBDIR}/d8vk-${D8VK_VAR_VER}.tar.gz"
D8VK_PACKAGE="${PP_VULKAN_LIBDIR}/d8vk-${D8VK_VAR_VER}.tar.$(echo ${D8VK_URL#*.tar.})"
if try_download "$D8VK_URL" "$D8VK_PACKAGE" ; then
if try_unpack_file "$D8VK_PACKAGE" "$PP_VULKAN_LIBDIR/d8vk-$D8VK_VAR_VER"
then
......@@ -307,23 +308,30 @@ init_d8vk () {
init_dxvk () {
check_variables USE_DXVK_VER "$DXVK_GIT_VER"
get_dxvk () {
DXVK_URL="$1"
DXVK_PACKAGE="${PP_VULKAN_LIBDIR}/dxvk-${DXVK_VAR_VER}.tar.$(echo ${DXVK_URL#*.tar.})"
if try_download "$DXVK_URL" "$DXVK_PACKAGE" \
&& try_unpack_file "$DXVK_PACKAGE" "$PP_VULKAN_LIBDIR"
then
try_remove_file "$DXVK_PACKAGE"
return 0
fi
return 1
}
for DXVK_VAR_VER in "$USE_DXVK_VER" $@ ; do
if [[ ! -d "${PP_VULKAN_LIBDIR}/dxvk-$DXVK_VAR_VER" ]] ; then
# DXVK_URL="https://github.com/doitsujin/dxvk/releases/download/v${DXVK_VAR_VER}/dxvk-${DXVK_VAR_VER}.tar.gz"
DXVK_URL="https://github.com/Castro-Fidel/vulkan/releases/download/dxvk-${DXVK_VAR_VER}/dxvk-${DXVK_VAR_VER}.tar.xz"
DXVK_PACKAGE="${PP_VULKAN_LIBDIR}/dxvk-${DXVK_VAR_VER}.tar.xz"
if try_download "$DXVK_URL" "$DXVK_PACKAGE"
then
if try_unpack_file "$DXVK_PACKAGE" "$PP_VULKAN_LIBDIR"
then try_remove_file "$DXVK_PACKAGE"
fi
if ! get_dxvk "https://github.com/Castro-Fidel/vulkan/releases/download/dxvk-${DXVK_VAR_VER}/dxvk-${DXVK_VAR_VER}.tar.xz"
then get_dxvk "https://github.com/doitsujin/dxvk/releases/download/v${DXVK_VAR_VER}/dxvk-${DXVK_VAR_VER}.tar.gz"
fi
fi
done
if [[ "${PP_USE_WINE_DXGI}" == 1 ]] ; then
DXVK_FILES="d3d9 d3d10_1 d3d10 d3d10core d3d11" # dxvk_config openvr_api_dxvk"
var_winedlloverride_update dxgi=b
try_copy_wine_dll_to_pfx_64 "dxgi.dll"
try_copy_wine_dll_to_pfx_32 "dxgi.dll"
else
DXVK_FILES="d3d9 d3d10_1 d3d10 d3d10core d3d11 dxgi" # dxvk_config openvr_api_dxvk"
fi
......@@ -339,16 +347,22 @@ init_dxvk () {
init_vkd3d () {
check_variables USE_VKD3D_VER "$VKD3D_GIT_VER"
get_vkd3d () {
VKD3D_URL="$1"
VKD3D_PACKAGE="${PP_VULKAN_LIBDIR}/vkd3d-proton-${VKD3D_VAR_VER}.tar.$(echo ${VKD3D_URL#*.tar.})"
if try_download "$VKD3D_URL" "$VKD3D_PACKAGE" \
&& try_unpack_file "$VKD3D_PACKAGE" "$PP_VULKAN_LIBDIR"
then
try_remove_file "$VKD3D_PACKAGE"
return 0
fi
return 1
}
for VKD3D_VAR_VER in "$USE_VKD3D_VER" $@ ; do
if [[ ! -d "${PP_VULKAN_LIBDIR}/vkd3d-proton-$VKD3D_VAR_VER" ]] ; then
# VKD3D_URL="https://github.com/HansKristian-Work/vkd3d-proton/releases/download/v${VKD3D_VAR_VER}/vkd3d-proton-${VKD3D_VAR_VER}.tar.zst"
VKD3D_URL="https://github.com/Castro-Fidel/vulkan/releases/download/vkd3d-proton-${VKD3D_VAR_VER}/vkd3d-proton-${VKD3D_VAR_VER}.tar.xz"
VKD3D_PACKAGE="${PP_VULKAN_LIBDIR}/vkd3d-proton-${VKD3D_VAR_VER}.tar.xz"
if try_download "$VKD3D_URL" "$VKD3D_PACKAGE"
then
if try_unpack_file "$VKD3D_PACKAGE" "$PP_VULKAN_LIBDIR"
then try_remove_file "$VKD3D_PACKAGE"
fi
if ! get_vkd3d "https://github.com/Castro-Fidel/vulkan/releases/download/vkd3d-proton-${VKD3D_VAR_VER}/vkd3d-proton-${VKD3D_VAR_VER}.tar.xz"
then get_vkd3d "https://github.com/HansKristian-Work/vkd3d-proton/releases/download/v${VKD3D_VAR_VER}/vkd3d-proton-${VKD3D_VAR_VER}.tar.zst"
fi
fi
done
......@@ -450,6 +464,7 @@ init_wine_ver () {
check_variables DXVK_LOG_PATH "none"
check_variables VKBASALT_LOG_LEVEL "none"
check_variables DXVK_NVAPI_LOG_LEVEL "none"
export PP_WDBG='2>/dev/null'
else
check_variables WINEDEBUG "fixme-all,err+loaddll,err+dll,err+file,err+reg"
check_variables DXVK_LOG_LEVEL "error"
......@@ -458,6 +473,7 @@ init_wine_ver () {
check_variables VK_LOADER_DEBUG "error"
check_variables VKBASALT_LOG_LEVEL "error"
check_variables DXVK_NVAPI_LOG_LEVEL "error"
export PP_WDBG=""
fi
}
......@@ -517,10 +533,7 @@ use_winetricks () {
USE_WT_FROM_DB=0
[[ ! -f "$WINEPREFIX/winetricks.log" ]] && touch "$WINEPREFIX/winetricks.log"
for need_install_dll_to_pfx in $PP_DLL_INSTALL ; do
if [[ "$need_install_dll_to_pfx" == vcrun2015 ]] \
|| [[ "$need_install_dll_to_pfx" == vcrun2017 ]] \
|| [[ "$need_install_dll_to_pfx" == vcrun2019 ]]
then
if [[ "$need_install_dll_to_pfx" == vcrun201[5-9] ]] ; then
sed -i "/${need_install_dll_to_pfx}/d" "$WINEPREFIX/winetricks.log"
need_install_dll_to_pfx="vcrun2022"
fi
......@@ -564,6 +577,7 @@ check_win_file () {
winefile) WIN_FILE_EXEC="winefile" ;;
wineconsole) WIN_FILE_EXEC="wineconsole" ;;
*)
unset WIN_FILE_EXEC
print_error "F: check_win_file"
return 1 ;;
esac
......@@ -613,7 +627,11 @@ if ! init_opengl ; then
init_vkd3d
fi
cd "$WIN_FILE_PATH"
$MANGOHUD_RUN "$WINELOADER" "$WIN_FILE_EXEC"
if [[ -n "$WIN_FILE_EXEC" ]] ; then
cd "$WIN_FILE_PATH"
$MANGOHUD_RUN "$WINELOADER" "$WIN_FILE_EXEC" $PP_WDBG
else
print_info "Nothing to do... Exit."
fi
exit 0
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment