Commit a8c6ee55 authored by Mikhail Tergoev's avatar Mikhail Tergoev

Merge branch 'devel'

parents 81d72ff0 c99435d2
MIT License
Copyright (c) 2024 Castro-Fidel (linux-gaming.ru)
Copyright (c) 2025 Castro-Fidel (linux-gaming.ru)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
......
......@@ -2,6 +2,28 @@ You can help us in the development of the project on the website: https://linux-
----------------------------------------
Changelog:
###Scripts version 2388### / stable / Date: 04.02.2025 / Download update size: 10 megabytes
* cumulative update to the stable version of PortProton scripts
###Scripts version 2387### / Date: 04.02.2025 / Download update size: 10 megabytes
* updated versions:
* DXVK_GIT "2.5.3-31" (shared with dxvk-nvapi)
* VKD3D_GIT "1.1-4367" (shared with vkd3d-shader)
* added the ability to replace WINEDEBUG variable arguments in user.conf or .ppdb settings files.
* improved icon creation functions (thanks to Htylol)
* added Steam Play support for games supported via PortProton and the selected Proton version on Steam (thanks to alex2844)
* fixed windows operation, paths in game launch arguments (thanks to Boria138)
* fixed errors with empty "dist" directory
###Scripts version 2386### / Date: 09.01.2025 / Download update size: 4 megabytes
* corrected permissions when creating desktop files (thanks to Boria138)
* fixed the function of rolling back scripts from the archive if there is no scripts_backup directory (thanks to Boria138)
* added the ability to remove a game from the list in the Steam library using the functionality of changing the shortcut in PortProton (thanks to alex2844)
* when adding a game to the steam library, a check for the availability of the steamgriddb site has been added (thanks alex2844)
* added auto-installation of games (thanks to minergenon):
* Last Chaos
* Fractured Online
###Scripts version 2385### / stable / Date: 29.12.2024 / Download update size: 195 megabytes
* cumulative update to the stable version of PortProton scripts
......
......@@ -2,6 +2,28 @@
-----------------------------------------
История изменений:
###Scripts version 2388### / stable / Дата: 04.02.2025 / Размер скачиваемого обновления: 10 мегабайт
* кумулятивное обновление стабильной версии скриптов PortProton
###Scripts version 2387### / Дата: 04.02.2025 / Размер скачиваемого обновления: 10 мегабайт
* обновлены версии:
* DXVK_GIT "2.5.3-31" (совместно с dxvk-nvapi)
* VKD3D_GIT "1.1-4367" (совместно vkd3d-shader)
* добавлена возможность замещения аргументов переменной WINEDEBUG в user.conf или .ppdb файлах настроек
* улучшение функций создания иконок (спасибо Htylol)
* добавлена поддержка Steam Play для игр установленных с помощью PortProton и когда выбрана версия proton в steam (спасибо alex2844)
* исправлена работа windows путей в аргументах запуска к игре (спасибо Boria138)
* исправлены ошибки при пустом каталоге "dist"
###Scripts version 2386### / Дата: 09.01.2025 / Размер скачиваемого обновления: 4 мегабайта
* исправление прав при создании desktop файлов (спасибо Boria138)
* исправлена функция отката скриптов из архива, если нет каталога scripts_backup (спасибо Boria138)
* добавлена возможность удаления игры из списка в библиотеке Steam с помощью функционала изменения ярлыка в PortProton (спасибо alex2844)
* при добавлении игры в библиотеку steam добавлена проверка на доступность сайта steamgriddb (спасибо alex2844)
* добавлены автоустановки игр (спасибо minergenon):
* Last Chaos
* Fractured Online
###Scripts version 2385### / stable / Дата: 29.12.2024 / Размер скачиваемого обновления: 195 мегабайт
* кумулятивное обновление стабильной версии скриптов PortProton
......
......@@ -3,16 +3,18 @@
#HogwartsLegacy.exe
#Rating=1-5
#####################examples###########################
if [[ "$LANGUAGE" == "ru" ]] ; then
export PW_COMMENT_DB="Если у вас игра не запускается, то необходимо добавить
if [[ $(cat /proc/cpuinfo | grep umip) ]] ; then
if [[ "$LANGUAGE" == "ru" ]] ; then
export PW_COMMENT_DB="Если у вас игра не запускается, то необходимо добавить
clearcpuid=514 в раздел GRUB_CMDLINE_LINUX_DEFAULT
в файле /etc/default/grub. Для упрощения можно использовать
утилиту Grub Customizer"
else
export PW_COMMENT_DB="If your game does not start, you need to add
else
export PW_COMMENT_DB="If your game does not start, you need to add
clearcpuid=514 to the GRUB_CMDLINE_LINUX_DEFAULT section
in the /etc/default/grub file. To simplify things, you can use
Grub Customizer utility"
fi
fi
export PW_VULKAN_USE="2"
#!/usr/bin/env bash
# Author: chal55rus
# type: games
# name: Fractured Online (ENG)
# image: fracturedonline
# info_en: Fractured Online is the first open-world sandbox MMORPG mixing action combat with fully interactable environments, appealing equally to lovers of competitive and cooperative gameplay. Jump right into the fray from day one. Defeat your enemies through your own skill and cleverness, not equipment or level. Gather resources, craft, trade and venture into legendary travels as a solitary hero, or start a settlement with your guild and grow it into the next empire.
# info_ru: Fractured Online — это первая массовая многопользовательская ролевая онлайн-игра с открытым миром, сочетающая динамичные сражения с полностью интерактивным окружением. Она одинаково понравится любителям соревновательного и кооперативного игрового процесса. С самого первого дня погрузитесь в бой. Побеждайте врагов благодаря собственным навыкам и смекалке, а не снаряжению или уровню. Собирайте ресурсы, создавайте предметы, торгуйте и отправляйтесь в легендарные путешествия в одиночку или создайте поселение со своей гильдией и превратите его в следующую империю.
########################################################################
export PW_PREFIX_NAME="FRACTURED_ONLINE"
export LAUNCH_PARAMETERS="/S"
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/fractured-online-setup.exe"
export PORTWINE_CREATE_SHORTCUT_NAME="Fractured Online"
start_portwine
if try_download "https://assets.fracturedmmo.com/clients/3f990010d1afb2cabadc44c6c849116c/fractured-online-setup.exe" "${PW_AUTOINSTALL_EXE}" no_mirror
then
pw_start_progress_bar_install_game "Fractured Online."
pw_run "${PW_AUTOINSTALL_EXE}"
portwine_exe="$WINEPREFIX/drive_c/Program Files/Fractured Online/FracturedOnline.exe"
try_remove_file "${PW_AUTOINSTALL_EXE}"
try_remove_file "${portwine_exe}.ppdb"
kill_portwine
pw_stop_progress_bar
portwine_create_shortcut
fi
stop_portwine
#!/usr/bin/env bash
# Author: chal55rus
# type: games
# name: Last Chaos
# image: lastchaos
# info_en: Last Chaos is a classic MMORPG with six classes, castle sieges, a Korean grind and kilometers of dungeons. The confrontation between Apollo and Eres is gaining momentum, so hurry up to take one of the sides.
# info_ru: Last Chaos – классическая MMORPG с шестью классами, осадами замков, корейским гриндом и километрами подземелий. Противостояние Апполона и Эреса набирает обороты, так что спешите принять одну из сторон.
########################################################################
export PW_PREFIX_NAME="LAST_CHAOS"
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Last Chaos.zip"
export PORTWINE_CREATE_SHORTCUT_NAME="Last Chaos"
start_portwine
if try_download "https://last-chaos.ru/download/Last%20Chaos.zip" "${PW_AUTOINSTALL_EXE}" no_mirror
then
pw_start_progress_bar_install_game "Last Chaos."
"$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"${WINEPREFIX}/drive_c/Program Files/"
portwine_exe="${WINEPREFIX}/drive_c/Program Files/Last Chaos/LC.exe"
try_remove_file "${PW_AUTOINSTALL_EXE}"
try_remove_file "${portwine_exe}.ppdb"
kill_portwine
pw_stop_progress_bar
portwine_create_shortcut
fi
stop_portwine
......@@ -6,6 +6,11 @@ export url_site="https://linux-gaming.ru/portproton/"
export url_cloud="https://cloud.linux-gaming.ru/portproton"
export url_git="https://git.linux-gaming.ru/CastroFidel/PortWINE"
########################################################################
if [[ "${START_FROM_FLATPAK:-0}" == 1 ]] && [[ -z "${STEAM_COMPAT_DATA_PATH:-}" ]] && command -v "flatpak" &>/dev/null; then
unset START_FROM_FLATPAK
flatpak run ru.linux_gaming.PortProton "$@"
exit
fi
echo '
█░░ █ █▄░█ █░█ ▀▄▀ ▄▄ █▀▀ ▄▀█ █▀▄▀█ █ █▄░█ █▀▀ ░ █▀█ █░█
█▄▄ █ █░▀█ █▄█ █░█ ░░ █▄█ █▀█ █░▀░█ █ █░▀█ █▄█ ▄ █▀▄ █▄█
......@@ -96,7 +101,7 @@ fi
unset MANGOHUD MANGOHUD_DLSYM PW_NO_ESYNC PW_NO_FSYNC PW_VULKAN_USE WINEDLLOVERRIDES PW_NO_WRITE_WATCH PW_YAD_SET PW_ICON_FOR_YAD
unset PW_CHECK_AUTOINSTALL PW_VKBASALT_EFFECTS PW_VKBASALT_FFX_CAS PORTWINE_DB PORTWINE_DB_FILE RADV_PERFTEST
unset CHK_SYMLINK_FILE PW_MESA_GL_VERSION_OVERRIDE PW_VKD3D_FEATURE_LEVEL PATH_TO_GAME PW_START_DEBUG PORTPROTON_NAME PW_PATH
unset PW_PREFIX_NAME WINEPREFIX VULKAN_MOD PW_WINE_VER PW_ADD_TO_ARGS_IN_RUNTIME PW_GAMEMODERUN_SLR PW_WINE_CPU_TOPOLOGY
unset PW_PREFIX_NAME VULKAN_MOD PW_WINE_VER PW_ADD_TO_ARGS_IN_RUNTIME PW_GAMEMODERUN_SLR PW_WINE_CPU_TOPOLOGY
unset MANGOHUD_CONFIG FPS_LIMIT PW_WINE_USE WINEDLLPATH WINE WINEDIR WINELOADER WINESERVER PW_USE_RUNTIME PORTWINE_CREATE_SHORTCUT_NAME MIRROR
unset PW_LOCALE_SELECT PW_SETTINGS_INDICATION PW_GUI_START PW_AUTOINSTALL_EXE NOSTSTDIR RADV_DEBUG PW_NO_AUTO_CREATE_SHORTCUT
unset PW_TERM PW_EXEC_FROM_DESKTOP WEBKIT_DISABLE_DMABUF_RENDERER PW_AMD_VULKAN_USE PW_VK_ICD_FILENAMES LAUNCH_URI
......@@ -115,15 +120,14 @@ echo "" > "${PW_TMPFS_PATH}/tmp_yad_form"
echo "" > "${PW_TMPFS_PATH}/tmp_yad_form_vulkan"
create_new_dir "${PORT_WINE_PATH}/data/dist"
pushd "${PORT_WINE_PATH}/data/dist/" 1>/dev/null || fatal
for dist_dir in ./* ; do
[[ -d "$dist_dir" ]] || continue
dist_dir_new="${dist_dir//[[:blank:]]/_}"
IFS=$'\n'
for dist_dir in $(ls -1 "${PORT_WINE_PATH}/data/dist") ; do
dist_dir_new=$(echo "${dist_dir}" | awk '$1=$1' | sed -e s/[[:blank:]]/_/g)
if [[ ! -d "${PORT_WINE_PATH}/data/dist/${dist_dir_new^^}" ]] ; then
mv -- "${PORT_WINE_PATH}/data/dist/$dist_dir" "${PORT_WINE_PATH}/data/dist/${dist_dir_new^^}"
fi
done
popd 1>/dev/null || fatal
IFS="$orig_IFS"
create_new_dir "${PORT_WINE_PATH}/data/prefixes/DEFAULT"
create_new_dir "${PORT_WINE_PATH}/data/prefixes/DOTNET"
......@@ -163,7 +167,10 @@ export PW_WINELIB="${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}"
try_remove_dir "${PW_WINELIB}/var"
install_ver="$(<"${PORT_WINE_TMP_PATH}/PortProton_ver")"
export install_ver
scripts_install_ver="$(<"${PORT_WINE_TMP_PATH}/scripts_ver")"
if [[ -f "${PORT_WINE_TMP_PATH}/scripts_ver" ]]
then scripts_install_ver="$(<"${PORT_WINE_TMP_PATH}/scripts_ver")"
else scripts_install_ver="2025"
fi
export scripts_install_ver
export WINETRICKS_DOWNLOADER="curl"
export USER_CONF="${PORT_WINE_PATH}/data/user.conf"
......@@ -191,6 +198,12 @@ if [[ $TRANSLATIONS_VER != "$scripts_install_ver" ]] ; then
source "$PW_CACHE_LANG_PATH/$LANGUAGE"
fi
if [[ -n "${STEAM_COMPAT_DATA_PATH:-}" ]]; then
steamplay_launch "${@:2}"
exit
fi
unset WINEPREFIX
# check PortProton theme
if [[ -n "$GUI_THEME" ]] \
&& [[ -f "$PW_GUI_THEMES_PATH/$GUI_THEME.pptheme" ]]
......@@ -645,6 +658,12 @@ else
fi
[[ $line1 =~ ^Icon= ]] && PW_ICON_PATH["$AMOUNT_GENERATE_BUTTONS"]=${line1//Icon=/}
done < "$desktop_file"
if fix_icon_name_png "${PW_ICON_PATH["$AMOUNT_GENERATE_BUTTONS"]}" "$desktop_file" ; then
ICON_NAME_REGEX=(\! % \$ \& \<)
for i in "${ICON_NAME_REGEX[@]}" ; do
PW_ICON_PATH["$AMOUNT_GENERATE_BUTTONS"]="${PW_ICON_PATH["$AMOUNT_GENERATE_BUTTONS"]//$i/}"
done
fi
PW_ALL_DF["$AMOUNT_GENERATE_BUTTONS"]="$desktop_file_new"
# Для конвертации существующих .desktop файлов flatpak в натив и наоборот
if [[ ${PW_NAME_D_ICON["$AMOUNT_GENERATE_BUTTONS"]} =~ ^"Exec=flatpak run ru.linux_gaming.PortProton " ]] ; then
......@@ -702,20 +721,6 @@ else
for dp in "${PW_AMOUNT_NEW_DESKTOP[@]}" "${PW_AMOUNT_OLD_DESKTOP[@]}" ; do
PW_DESKTOP_FILES="${PW_ALL_DF[$dp]}"
PW_DESKTOP_FILES_SHOW="$PW_DESKTOP_FILES"
PW_ICON_PATH[dp]=${PW_ICON_PATH[dp]%.png}
PW_NAME_D_ICON_NEW="${PW_NAME_D_ICON[dp]//\"/}"
PW_NAME_D_ICON_128="${PW_ICON_PATH[dp]}"
resize_png "$PW_NAME_D_ICON_NEW" "${PW_NAME_D_ICON_128//"${PORT_WINE_PATH}/data/img/"/}" "128"
if [[ $PW_DESKTOP_FILES =~ [\!\%\$\&\<] || ${PW_ICON_PATH[dp]} =~ [\!\%\$\&\<] ]] ; then
PW_DESKTOP_FILES_SHOW_REGEX=(\! % \$ \& \<)
for i in "${PW_DESKTOP_FILES_SHOW_REGEX[@]}" ; do
PW_DESKTOP_FILES_SHOW="${PW_DESKTOP_FILES_SHOW//$i/}"
PW_ICON_PATH[dp]="${PW_ICON_PATH[dp]//$i/}"
done
fi
PW_NAME_D_ICON_48="${PW_ICON_PATH[dp]}_48"
resize_png "$PW_NAME_D_ICON_NEW" "${PW_NAME_D_ICON_48//"${PORT_WINE_PATH}/data/img/"/}" "48"
if [[ $PW_DESKTOP_FILES =~ [\(\)\!\$\%\&\`\'\"\>\<\\\|\;] ]] ; then
PW_DESKTOP_FILES_REGEX=(\( \) \! \$ % \& \` \' \" \> \< \\ \| \;)
......@@ -726,7 +731,19 @@ else
done
fi
PW_GENERATE_BUTTONS+="--field= $(print_wrapped "${PW_DESKTOP_FILES_SHOW//".desktop"/""}" "25" "...")!${PW_NAME_D_ICON_48}.png!:FBTNR%@bash -c \"button_click --desktop "${PW_DESKTOP_FILES// /#@_@#}"\"%"
if [[ $PW_DESKTOP_FILES_SHOW =~ [\!\%\$\&\<] ]] ; then
PW_DESKTOP_FILES_SHOW_REGEX=(\! % \$ \& \<)
for i in "${PW_DESKTOP_FILES_SHOW_REGEX[@]}" ; do
PW_DESKTOP_FILES_SHOW="${PW_DESKTOP_FILES_SHOW//$i/}"
done
fi
PW_ICON_PATH[dp]=${PW_ICON_PATH[dp]%.png}
PW_NAME_D_ICON_NEW="${PW_NAME_D_ICON[dp]//\"/}"
resize_png "$PW_NAME_D_ICON_NEW" "${PW_ICON_PATH[dp]//"${PORT_WINE_PATH}/data/img/"/}" "48" "128"
PW_GENERATE_BUTTONS+="--field= $(print_wrapped "${PW_DESKTOP_FILES_SHOW//".desktop"/""}" "25" "...")!${PW_ICON_PATH[dp]}_48.png!:FBTNR%@bash -c \"button_click --desktop "${PW_DESKTOP_FILES// /#@_@#}"\"%"
done
if [[ $AMOUNT_GENERATE_BUTTONS == 1 ]] ; then
......
......@@ -4,9 +4,10 @@ credits_devel () { echo "
Boria138
Vano Majukin
Eljeyna
chal55rus
minergenon (chal55rus)
SDR
Mels
alex2844
Cefeiko
Dezert1r
Taz_mania
......
#!/usr/bin/env bash
#Author: Castro-Fidel (linux-gaming.ru)
#SCRIPTS_NEXT_VERSION=2385
#SCRIPTS_STABLE_VERSION=2385
#SCRIPTS_NEXT_VERSION=2388
#SCRIPTS_STABLE_VERSION=2388
########################################################################
export AI_TOP_GAMES="PW_LGC PW_VKPLAY PW_EPIC PW_BATTLE_NET PW_WORLD_OF_SEA_BATTLE PW_RUSSIAN_FISHING PW_HO_YO_PLAY PW_FARLIGHT84 PW_WARFRAME PW_WGC PW_UBISOFT"
# export PROTON_USE_XALIA="1"
......@@ -55,9 +55,9 @@ export PW_VULKAN_USE="2"
export VKD3D_LIMIT_TESS_FACTORS="64"
export DXVK_LEGACY_VER="1.6.1"
export DXVK_STABLE_VER="1.10.3-28"
export DXVK_GIT_VER="2.5.2-1"
export DXVK_GIT_VER="2.5.3-31"
export VKD3D_STABLE_VER="1.1-2602"
export VKD3D_GIT_VER="1.1-4326"
export VKD3D_GIT_VER="1.1-4367"
###VKBASALT###
export PW_VKBASALT_EFFECTS="Curves:cas"
export PW_VKBASALT_FFX_CAS="0.50"
......
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