diff --git a/data_from_portwine/changelog_eng b/data_from_portwine/changelog_eng index 3506005b..63d98b95 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 2239### Date: 17.12.2023 / Download update size: 8 megabytes +* fixed the launch of League of Legends (to fix it, run the auto-installation) +* added correct verification of the vulkan driver, without installing vulkan-tools into the system +* implemented automatic addition of mounted disks to the prefix (thanks to Boria138) +* fixed the launch of GAMESCOPE when there are several NVIDIA graphics cards in the system (thanks to Vano) + ###Scripts version 2238### Date: 12.12.2023 / Download update size: 8 megabytes * fixed GAMESCOPE and vkBasalt collaboration * optimized prefix creation and updating diff --git a/data_from_portwine/changelog_rus b/data_from_portwine/changelog_rus index ad5db166..c07de82b 100755 --- a/data_from_portwine/changelog_rus +++ b/data_from_portwine/changelog_rus @@ -2,6 +2,12 @@ ----------------------------------------- История изменений: +###Scripts version 2239### Дата: 17.12.2023 / Размер скачиваемого обновления: 8 мегабайт +* исправлен запуск League of Legends (для исправления запустите автоустановку) +* добавлена корректная проверка драйвера vulkan, без установки в систему vulkan-tools +* реализовано автоматическое добавление примонтированных дисков в префикс (спасибо Boria138) +* исправлен запуск GAMESCOPE при наличии нескольких видеокарт NVIDIA в системе (спасибо Vano) + ###Scripts version 2238### Дата: 12.12.2023 / Размер скачиваемого обновления: 8 мегабайт * исправлена совмеcтная работа GAMESCOPE и vkBasalt * оптимизировано создание и обновление префикса diff --git a/data_from_portwine/scripts/portwine_db/League of Legends b/data_from_portwine/scripts/portwine_db/League of Legends index 229bc2db..944c9450 100755 --- a/data_from_portwine/scripts/portwine_db/League of Legends +++ b/data_from_portwine/scripts/portwine_db/League of Legends @@ -23,7 +23,6 @@ export PW_DISABLED_CREATE_DB=1 export PW_USE_D3D_EXTRAS=1 export PW_USE_EAC_AND_BE="0" export DISABLE_CP_DEFPFX=1 -export GST_GL_WINDOW=x11 try_remove_dir "${PORT_WINE_PATH}/data/dist/WINE_LOL_GE_8.12" gui_proton_downloader silent "${PW_WINE_USE}" diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_LOL b/data_from_portwine/scripts/pw_autoinstall/PW_LOL index cbffb041..31eec29d 100755 --- a/data_from_portwine/scripts/pw_autoinstall/PW_LOL +++ b/data_from_portwine/scripts/pw_autoinstall/PW_LOL @@ -10,11 +10,12 @@ export PW_WINE_USE=WINE_LOL_GE_8.27 # export WINEDLLOVERRIDES="mscoree,mshtml=" export PW_USE_D3D_EXTRAS=1 export DISABLE_CP_DEFPFX=1 -export GST_GL_WINDOW=x11 gui_proton_downloader silent "${PW_WINE_USE}" +pw_clear_pfx start_portwine +wait_wineserver if try_download_game "https://lol.secure.dyn.riotcdn.net/channels/public/x/installer/current/live.na.exe" "${PW_AUTOINSTALL_EXE}" then pw_start_progress_bar_block "Installing League of Legends. ${loc_gui_please_wait} " @@ -24,7 +25,6 @@ then if [ "${update_loc}" = "ENG" ] ; then zenity --info --width=500 --text "You must click the install button without changing the settings!" fi - rm -f "$WINEPREFIX"/*.reg &>/dev/null pw_kill_autostart RiotClientServices.exe & pw_run "${PW_AUTOINSTALL_EXE}" portwine_exe="$WINEPREFIX/drive_c/Riot Games/Riot Client/RiotClientServices.exe" diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index 8e433acf..342bd703 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -125,8 +125,8 @@ start_portwine () { export INTEL_DEBUG=norbc fi if [[ "${PW_GPU_USE}" != "disabled" ]] ; then - PW_vendorID="$(vulkaninfo --summary 2>/dev/null | grep -B3 "${PW_GPU_USE}" | grep vendorID | sort -u | awk -F'0x' '{print $2}')" - PW_deviceID="$(vulkaninfo --summary 2>/dev/null | grep -B3 "${PW_GPU_USE}" | grep deviceID | sort -u | awk -F'0x' '{print $2}')" + PW_vendorID="$("$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep -B3 "${PW_GPU_USE}" | grep vendorID | sort -u | awk -F'0x' '{print $2}')" + PW_deviceID="$("$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep -B3 "${PW_GPU_USE}" | grep deviceID | sort -u | awk -F'0x' '{print $2}')" PW_ID_VIDEO="--prefer-vk-device ${PW_vendorID}:${PW_deviceID}" else unset PW_ID_VIDEO @@ -294,28 +294,30 @@ start_portwine () { try_force_link_file "${WINEDIR}/share/fonts/"msgothic.ttc "${WINEPREFIX}/drive_c/windows/Fonts/"msgothic.ttc try_force_link_file "${WINEDIR}/share/wine/fonts/"tahoma.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"tahoma.ttf - } - check_user_drives() { - DRIVES=(a b d e f g i j k l m n o p q r s t u v w x y) + find "${WINEPREFIX}/dosdevices" -xtype l -maxdepth 1 2>/dev/null -exec rm {} \; + + rm -f "${WINEPREFIX}/dosdevices/"*:: + DRIVES=(d e f g i j k l m n o p q r s t u v w x y) DEF_MOUNT_DIRS=('/media' "/media/$USER" '/mnt' '/run/media' "/run/media/$USER") MOUNT_DIRS=($(find "${DEF_MOUNT_DIRS[@]}" -maxdepth 1 -type d 2>/dev/null | sort -u)) - for drive_dir in "${MOUNT_DIRS[@]}"; do - if [[ ! "${DEF_MOUNT_DIRS[@]}" =~ "$drive_dir" ]]; then + for drive_dir in "${MOUNT_DIRS[@]}" ; do + if [[ ! "${DEF_MOUNT_DIRS[@]}" =~ "$drive_dir" ]] \ + && ! realpath "${WINEPREFIX}/dosdevices"/*: | grep "$drive_dir" &>/dev/null ; then drive_num=0 - while [[ "$drive_num" -lt "${#DRIVES[@]}" ]]; do + while [[ "$drive_num" -lt "${#DRIVES[@]}" ]] ; do drive_path="${WINEPREFIX}/dosdevices/${DRIVES[$drive_num]}:" - if [ ! -d "$drive_path" ]; then + if [ ! -d "$drive_path" ] ; then ln -sf "$drive_dir" "$drive_path" break else - drive_num="$((drive_num + 1))" + ((drive_num++)) fi done fi - done -} + done + } PROGPFX_URL="github.com/Castro-Fidel/PortWINE/releases/download/progpfx${PROGPFX_VER}/progpfx${PROGPFX_VER}.tar.xz" if [[ "${PW_PREFIX_NAME}" == "PROGRAMS" && ! -f "${WINEPREFIX}"/.progpfx ]] ; then @@ -351,21 +353,13 @@ start_portwine () { then pw_clear_pfx check_dirs_and_files_in_pfx - check_user_drives if [[ -f "${PW_WINELIB}/default_pfx.tar.xz" ]] && [[ "${DISABLE_CP_DEFPFX}" != 1 ]] ; then unpack_tar_xz "${PW_WINELIB}/default_pfx.tar.xz" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/" silent - fi - echo "${PW_WINE_USE}" > "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" - elif [[ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" ]] \ - || [[ -z "`cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" | grep ${PW_WINE_USE}`" ]] \ - || [[ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices" ]] ; then - check_dirs_and_files_in_pfx - check_user_drives - echo "${PW_WINE_USE}" > "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" + fi fi + echo "${PW_WINE_USE}" > "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" + check_dirs_and_files_in_pfx - [ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/c:" ] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/c:" - [ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/z:" ] && try_force_link_dir "/" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/z:" create_new_dir "${WINEPREFIX}/drive_c/users/steamuser" if [ ! -d "${WINEPREFIX}/drive_c/users/${USER}" ]; then try_force_link_dir "${WINEPREFIX}/drive_c/users/steamuser" "${WINEPREFIX}/drive_c/users/${USER}" @@ -800,8 +794,7 @@ create_new_dir "${PORT_WINE_TMP_PATH}"/mono export PW_VULKAN_DIR="${PORT_WINE_TMP_PATH}/VULKAN" create_new_dir "${PW_VULKAN_DIR}" -export VULKAN_API_DRIVER_VERSION="$(vulkaninfo --summary 2>/dev/null | grep "api" | head -n 1 | awk '{print $3}')" -export VULKAN_DRIVER_NAME="$(vulkaninfo --summary 2>/dev/null | grep driverName | awk '{print$3}' | head -1)" + export LSPCI_VGA="$(lspci -k | grep -E 'VGA|3D' | tr -d '\n')" cd "${PORT_SCRIPTS_PATH}" @@ -826,7 +819,9 @@ if [[ -z "${INSTALLING_PORT}" ]] ; then . "${USER_CONF}" pw_port_update pw_download_libs - # pw_check_and_download_wine ${PW_PROTON_LG_VER} + export PW_VULKANINFO_PORTABLE="$PW_WINELIB/pressure-vessel/libexec/steam-runtime-tools-0/x86_64-linux-gnu-vulkaninfo" + export VULKAN_API_DRIVER_VERSION="$("$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep "api" | head -n 1 | awk '{print $3}')" + export VULKAN_DRIVER_NAME="$("$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep driverName | awk '{print$3}' | head -1)" pw_check_and_download_plugins pw_init_db . "${PORT_SCRIPTS_PATH}"/lang diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index 30a9b3be..aebb72c1 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -182,7 +182,7 @@ portwine_start_debug () { fi echo "----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/${portname}.log" - [[ `command -v vulkaninfo` ]] && vulkaninfo --summary 2>/dev/null | grep -E '^GPU|deviceName|driverName' >> "${PORT_WINE_PATH}/${portname}.log" + [[ `command -v vulkaninfo` ]] && "$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep -E '^GPU|deviceName|driverName' >> "${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" diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index 2f769498..691fb43c 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=2238 +#SCRIPTS_NEXT_VERSION=2239 ######################################################################## 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 diff --git a/data_from_portwine/scripts/zen_yad_gui b/data_from_portwine/scripts/zen_yad_gui index 05f8deb0..d6fa6488 100755 --- a/data_from_portwine/scripts/zen_yad_gui +++ b/data_from_portwine/scripts/zen_yad_gui @@ -170,7 +170,7 @@ pw_gui_for_edit_db () { GPU_VAR="disabled" fi - GET_GPU_NAMES=$(vulkaninfo --summary 2>/dev/null | awk -F '=' '/deviceName/{print $2}' | sed '/llvm/d'| sort -u | sed 's/^ //' | paste -sd '!') + GET_GPU_NAMES=$("$PW_VULKANINFO_PORTABLE" 2>/dev/null | awk -F '=' '/deviceName/{print $2}' | sed '/llvm/d'| sort -u | sed 's/^ //' | paste -sd '!') GET_REFRASH_RATE="30!45!60!75!120!144!165!240"